.fleet-sommelier { max-width: 52rem; margin: 0 auto 3rem; }
.somm-kicker { letter-spacing: .12em; text-transform: uppercase; font-size: .75rem; color: var(--muted, #64748b); margin: 0 0 .35rem; }
.somm-quota { font-size: .9rem; color: var(--muted, #64748b); }
.somm-tabs { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1rem 0 1.25rem; }
.somm-tab { border: 1px solid #cbd5e1; border-radius: 999px; padding: .4rem .9rem; text-decoration: none; color: inherit; }
.somm-tab.is-active { background: #0f172a; color: #fff; border-color: #0f172a; }
.somm-form { display: grid; gap: .85rem; }
.somm-form label { display: grid; gap: .3rem; font-weight: 600; }
.somm-form input, .somm-form select, .somm-form textarea { font: inherit; padding: .55rem .7rem; border: 1px solid #cbd5e1; border-radius: .5rem; }
.somm-form button, .somm-btn { font: inherit; font-weight: 650; background: #0f172a; color: #fff; border: 0; border-radius: .5rem; padding: .7rem 1rem; cursor: pointer; text-decoration: none; display: inline-block; }
.somm-btn-ghost { background: transparent; color: inherit; border: 1px solid #cbd5e1; }
.somm-help, .somm-file { font-weight: 500; color: var(--muted, #64748b); font-size: .9rem; }
.somm-preview img { max-width: 100%; border-radius: .5rem; }
.somm-inline { display: flex; gap: 1rem; border: 0; padding: 0; }
.somm-cards { display: grid; gap: 1rem; margin-top: 1.25rem; }
.somm-card { border: 1px solid #e2e8f0; border-radius: .85rem; padding: 1rem 1.1rem; background: #fff; }
.somm-card h3 { margin: 0 0 .35rem; }
.somm-tiers { display: grid; gap: .65rem; margin: .75rem 0; }
@media (min-width: 700px) { .somm-tiers { grid-template-columns: repeat(3, 1fr); } }
.somm-tier { background: #f8fafc; border-radius: .6rem; padding: .7rem; }
.somm-tier strong { display: block; font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; color: #64748b; }
.somm-shops { display: flex; flex-wrap: wrap; gap: .4rem; }
.somm-shops a { font-size: .85rem; }
.somm-paywall { margin-top: 1.25rem; padding: 1rem; border: 1px dashed #94a3b8; border-radius: .75rem; }
.somm-pricing { border: 1px solid #e2e8f0; border-radius: .85rem; padding: 1.1rem; }
.somm-journal { padding-left: 1.1rem; }
.somm-print { margin-top: 1rem; }
@media print {
  .site-header, .site-footer, .somm-tabs, .somm-form, .somm-kicker, .directory-crumbs { display: none !important; }
  .somm-card { break-inside: avoid; }
}
