body.lock{overflow:hidden}
.linkish{background:none;border:0;padding:0;color:var(--mm-sys-color-primary);font:600 .9rem/1.4 var(--mm-ref-font-body);text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* ---------- hero badge ---------- */
.hero-badge{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;padding:6px 12px;border-radius:999px;background:rgb(11 14 19 / .55);border:1px solid rgb(245 184 61 / .35);font:600 .8rem/1 var(--mm-ref-font-body);color:var(--mm-ref-parchment);backdrop-filter:blur(6px)}
.hero-badge .dot{width:8px;height:8px;border-radius:50%;background:var(--mm-sys-color-success);box-shadow:0 0 0 4px rgb(63 201 122 / .25)}

/* ---------- sticky mini-nav ---------- */
.mininav{position:fixed;left:0;right:0;top:var(--topbar-h,60px);z-index:39;background:rgb(11 14 19 / .86);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--mm-sys-color-outline);transform:translateY(-110%);opacity:0;transition:transform .35s var(--mm-sys-motion-easing),opacity .25s;pointer-events:none}
.mininav.show{transform:none;opacity:1;pointer-events:auto}
.mininav-track{display:flex;gap:6px;overflow-x:auto;padding:7px var(--mm-sys-gutter);scrollbar-width:none;max-width:1120px;margin:0 auto}
.mininav-track::-webkit-scrollbar{display:none}
.mininav a{flex:none;padding:7px 13px;border-radius:999px;font:600 .82rem/1 var(--mm-ref-font-body);color:var(--mm-sys-color-on-surface-variant);text-decoration:none;border:1px solid transparent;transition:background .2s,color .2s}
.mininav a.on{background:rgb(245 184 61 / .14);color:var(--mm-sys-color-primary);border-color:rgb(245 184 61 / .45)}
body.q-open .mininav{opacity:0;pointer-events:none}
html{scroll-padding-top:110px}

/* ---------- reveal ---------- */
@media (prefers-reduced-motion:no-preference){
  html.js [data-reveal]{opacity:0;transform:translateY(26px) scale(.985);transition:opacity .7s var(--mm-sys-motion-easing) var(--d,0ms),transform .8s var(--mm-sys-motion-spring,cubic-bezier(.2,.9,.25,1.1)) var(--d,0ms)}
  html.js [data-reveal].in{opacity:1;transform:none}
}

.seg-sm{min-width:240px}
.seg-sm span{min-height:36px;font-size:.85rem;padding:0 14px}
.light .seg{background:rgb(20 17 11 / .06);border-color:rgb(20 17 11 / .18)}
.light .seg span{color:var(--mm-sys-color-inverse-on-surface)}
.light .seg input:checked + span{color:#1d1508}

/* ---------- size toggle ---------- */
.sizes{padding-top:var(--mm-sys-space-6)}
.size-toggle{max-width:360px;margin:var(--mm-sys-space-4) 0 0}
.size-compare .sc,.size-compare figcaption{transition:opacity .35s,transform .45s var(--mm-sys-motion-spring,ease),filter .35s}
.size-compare[data-view="30"] .sc-50 .sc,.size-compare[data-view="50"] .sc-30 .sc{opacity:.28;filter:grayscale(.6)}
.size-compare[data-view="30"] .sc-50 figcaption,.size-compare[data-view="50"] .sc-30 figcaption{opacity:.45}
.size-compare[data-view="30"] .sc-30 .sc,.size-compare[data-view="50"] .sc-50 .sc{box-shadow:inset 0 0 0 2px rgb(181 64 31 / .7),inset 0 0 0 5px rgb(43 33 16 / .5),0 10px 24px rgb(120 80 20 / .35)}
@media (prefers-reduced-motion:no-preference){.size-compare[data-view="30"] .sc-30 .sc,.size-compare[data-view="50"] .sc-50 .sc{animation:pulseCoin .6s var(--mm-sys-motion-spring,ease)}}
@keyframes pulseCoin{40%{transform:translateY(-6px)}}
.size-facts{margin-top:12px;min-height:72px}
.size-fact{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border-left:3px solid #B5401F;background:rgb(20 17 11 / .05);border-radius:0 10px 10px 0}
.size-fact b{font:800 1.05rem/1.2 var(--mm-ref-font-display);font-stretch:112%}
.size-fact span{color:var(--mm-sys-color-inverse-on-surface-variant)}

/* ---------- ways to order: swipe row on phones ---------- */
.plans.swipe{display:grid;grid-auto-flow:column;grid-auto-columns:82%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px var(--mm-sys-gutter) 10px;margin:var(--mm-sys-space-5) 0 0;scroll-padding:0 var(--mm-sys-gutter);scrollbar-width:none;list-style:none}
.plans.swipe::-webkit-scrollbar{display:none}
.plans.swipe .plan{scroll-snap-align:start}
.swipe-hint{margin:2px 0 0;font-size:.75rem;color:var(--mm-sys-color-on-surface-variant);text-align:right}
@media (min-width:768px){.plans.swipe{grid-auto-flow:row;grid-template-columns:repeat(4,1fr);grid-auto-columns:auto;overflow:visible;max-width:1120px;margin:var(--mm-sys-space-6) auto 0}.swipe-hint{display:none}}

/* ---------- hub tabs ---------- */
.hub{padding-top:var(--mm-sys-space-10)}
.hub-tabs{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:999px;background:var(--mm-comp-field-container-color,#11161e);border:1px solid var(--mm-sys-color-outline);margin-bottom:var(--mm-sys-space-6);position:sticky;top:calc(var(--topbar-h,60px) + 52px);z-index:5}
.hub-tabs button{position:relative;z-index:1;border:0;background:none;color:var(--mm-sys-color-on-surface-variant);font:700 .9rem/1 var(--mm-ref-font-body);min-height:42px;border-radius:999px;cursor:pointer;transition:color .25s}
.hub-tabs button[aria-selected=true]{color:var(--mm-sys-color-on-primary)}
.hub-tabs button:focus-visible{outline:2px solid var(--mm-sys-color-primary);outline-offset:2px}
.hub-ink{position:absolute;left:0;top:4px;bottom:4px;width:0;border-radius:999px;background:var(--mm-sys-color-primary);transition:transform .4s var(--mm-sys-motion-spring,ease),width .4s}
html.no-js .hub-ink,html.no-js .hub-tabs{display:none}
@media (prefers-reduced-motion:no-preference){html.js .hub-panel:not([hidden]){animation:panelIn .45s var(--mm-sys-motion-easing)}}
@keyframes panelIn{from{opacity:0;transform:translateY(12px)}}
.hub-panel .steps{margin-top:var(--mm-sys-space-5)}

/* ---------- pricing tables ---------- */
.ptable-head .badge{background:rgb(245 184 61 / .1);border-color:rgb(245 184 61 / .4);color:var(--mm-sys-color-primary)}
@media (min-width:768px){.ptables{grid-template-columns:1fr 1fr}}

/* ---------- quote sheet ---------- */
.qscrim{position:fixed;inset:0;z-index:60;background:rgb(5 7 10 / .62);backdrop-filter:blur(3px);opacity:0;transition:opacity .3s}
.qscrim.on{opacity:1}
html.js .qsheet{position:fixed;left:0;right:0;bottom:0;z-index:61;max-height:94dvh;max-height:94vh;display:flex;flex-direction:column;padding:0;background:#10141B;border-radius:22px 22px 0 0;border:1px solid var(--mm-sys-color-outline);border-bottom:0;box-shadow:0 -20px 60px rgb(0 0 0 / .5);transform:translateY(105%);visibility:hidden;transition:transform .42s cubic-bezier(.2,.9,.25,1),visibility 0s linear .42s}
html.js .qsheet.open{transform:none;visibility:visible;transition:transform .42s cubic-bezier(.2,.9,.25,1),visibility 0s}
@supports (height:100dvh){html.js .qsheet{max-height:94dvh}}
@media (prefers-reduced-motion:reduce){html.js .qsheet,html.js .qsheet.open{transition:none}}
.qsheet-inner{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 var(--mm-sys-gutter) calc(20px + env(safe-area-inset-bottom))}
html.no-js .qsheet .qclose,html.no-js .qgrab,html.no-js .qsteps{display:none}
html.no-js .qsheet{padding:var(--mm-sys-space-16) 0}
html.no-js .qsheet-inner{max-width:640px;margin:0 auto}
.qsheet-head{position:sticky;top:0;z-index:3;display:grid;grid-template-columns:1fr auto;align-items:start;gap:4px 12px;padding:10px 0 12px;background:#10141B;border-bottom:1px solid var(--mm-sys-color-outline);margin-bottom:var(--mm-sys-space-4)}
.qgrab{grid-column:1/-1;justify-self:center;width:44px;height:5px;border-radius:9px;background:rgb(255 255 255 / .22);margin-bottom:4px}
.qsheet-title .kicker{margin-bottom:2px}
.qsheet-title h2{font-size:1.35rem;margin:0}
.qclose{width:42px;height:42px;border-radius:50%;border:1px solid var(--mm-sys-color-outline);background:rgb(255 255 255 / .05);color:var(--mm-sys-color-on-surface);font-size:1.6rem;line-height:1;cursor:pointer}
.qsteps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;list-style:none;margin:10px 0 0;padding:0;counter-reset:q}
.qsteps li{counter-increment:q;font:600 .75rem/1 var(--mm-ref-font-body);color:var(--mm-sys-color-on-surface-variant);display:flex;align-items:center;gap:6px}
.qsteps li::before{content:counter(q);display:grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1px solid var(--mm-sys-color-outline);font-size:.7rem}
.qsteps li.on{color:var(--mm-sys-color-on-surface)}
.qsteps li.on::before{background:var(--mm-sys-color-primary);color:#1d1508;border-color:var(--mm-sys-color-primary)}
.qsheet-head .qprog{position:relative;grid-column:1/-1;height:3px;margin-top:10px;border-radius:3px;background:var(--mm-sys-color-outline);overflow:hidden}
.qsheet .qform,.qsheet .qdone{margin:0;padding:0;border:0;background:none;box-shadow:none;max-width:none}
.qsheet .qdone{padding:var(--mm-sys-space-8) 0}
html.js.q-ready .qstep{display:none}
html.js.q-ready .qstep.cur{display:block}
@media (prefers-reduced-motion:no-preference){html.js.q-ready .qstep.cur{animation:stepIn .35s var(--mm-sys-motion-easing)}}
@keyframes stepIn{from{opacity:0;transform:translateX(18px)}}
.qstep{border:0;padding:0;margin:0 0 var(--mm-sys-space-4)}
.qstep legend{outline:none}
html.no-js .qnav [data-next],html.no-js .qnav [data-back]{display:none}
.qnav{display:flex;gap:10px;margin-top:var(--mm-sys-space-5)}
.qnav .btn{flex:1}
.qnav [data-back]{flex:0 0 auto}
.qnav-final .btn-lg{flex:1}
@media (min-width:768px){
  html.js .qsheet{left:50%;right:auto;bottom:auto;top:50%;width:min(680px,92vw);max-height:88vh;border-radius:22px;border-bottom:1px solid var(--mm-sys-color-outline);transform:translate(-50%,-46%) scale(.97);opacity:0;transition:transform .35s var(--mm-sys-motion-easing),opacity .25s,visibility 0s linear .35s}
  html.js .qsheet.open{transform:translate(-50%,-50%);opacity:1;transition:transform .35s var(--mm-sys-motion-easing),opacity .25s,visibility 0s}
  .qgrab{display:none}
  .qsheet-head{padding-top:20px}
}
.plan-feature h3{padding-right:92px}

/* step 1: size cards */
.size-chips{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.size-chips .chip-card{border-radius:16px}
.size-chips .chip-card span{flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;min-height:64px;justify-content:center}
.size-chips .chip-card span::before{display:none}
.size-chips .chip-card i{font-size:.66rem}
.size-chips .chip-card b{font:800 1.08rem/1.15 var(--mm-ref-font-display);font-stretch:110%}
.size-chips .chip-card:has(input[data-other]){grid-column:1/-1}
.size-chips .chip-card:has(input[data-other]) span{min-height:48px;flex-direction:row;align-items:center;gap:10px}
.size-chips .chip-card:has(input:checked){box-shadow:0 0 0 1px var(--mm-sys-color-primary),0 8px 22px rgb(245 184 61 / .18)}
.finish-note{display:flex;align-items:center;gap:10px;margin:14px 0 4px;padding:10px 12px;border-radius:12px;background:rgb(245 184 61 / .07);border:1px solid rgb(245 184 61 / .25);font-size:.9rem;color:var(--mm-sys-color-on-surface-variant)}
.finish-note b{color:var(--mm-sys-color-on-surface)}
.swatch{flex:none;width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#F2CF7E,#B8862F 50%,#4A3412);box-shadow:inset 0 0 0 2px rgb(43 33 16 / .5)}
.qty-hint{font-size:.88rem}
.qty-hint b{color:var(--mm-sys-color-primary)}

/* step 2: bigger preview */
.qsheet .design-row{display:grid;gap:16px;margin:var(--mm-sys-space-4) 0}
.qsheet .coin-preview{width:auto;justify-self:center;display:grid;justify-items:center;gap:6px}
.qsheet .coin-preview svg{width:min(66vw,250px);height:auto;aspect-ratio:1}
.qsheet .coin-preview small{text-align:center;max-width:30ch}
.design-fields{display:grid;gap:4px}
.design-fields .field{margin-bottom:6px}
@media (min-width:600px){.qsheet .design-row{grid-template-columns:auto 1fr;align-items:start}.qsheet .coin-preview svg{width:230px}}

/* step 3: summary */
.qsummary{margin:6px 0 4px;padding:12px 14px;border-radius:14px;background:rgb(255 255 255 / .03);border:1px solid var(--mm-sys-color-outline)}
.qsummary:empty{display:none}
.qsummary .flabel{margin:0 0 6px}
.qsummary dl{display:grid;gap:4px;margin:0 0 8px}
.qsummary dl div{display:grid;grid-template-columns:96px 1fr;gap:8px;font-size:.88rem}
.qsummary dt{color:var(--mm-sys-color-on-surface-variant)}
.qsummary dd{margin:0;overflow-wrap:anywhere}

/* units heading (no sub line) */
.units-card h2{margin-bottom:10px}
