/* Roof Identifier offer page. Public register from sites/roof-identifier-v1/DESIGN.md: felt, slate, galvanized,
   chalk blue (yours, the action), sun (hot, Tier 1), red chalk (taken). Big Shoulders / Martian Mono / Instrument Sans. */
/* Fonts: self-hosted latin subsets from Google Fonts, SIL Open Font License 1.1 (licenses in /fonts/OFL-*.txt). */
@font-face{ font-family:'Big Shoulders Display'; font-style:normal; font-weight:800 900; font-display:swap; src:url(/fonts/big-shoulders-display-latin.woff2) format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face{ font-family:'Instrument Sans'; font-style:normal; font-weight:400 600; font-display:swap; src:url(/fonts/instrument-sans-latin.woff2) format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face{ font-family:'Martian Mono'; font-style:normal; font-weight:500; font-display:swap; src:url(/fonts/martian-mono-latin.woff2) format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root{
  --felt:#131A19;
  --slate:#1E2928;
  --slate-2:#273433;
  --galv:#E3E8E7;
  --paper:#F4F6F5;
  --aim:#6EA6FF;
  --aim-ink:#1F5BC8;
  --red:#E2553A;
  --sun:#F4C04E;
  --ink-soft:#4C5857;
  --on-dark-soft:#A9B6B4;
  --rule-dark:rgba(227,232,231,.14);
  --rule-light:rgba(19,26,25,.16);
  --f-display:'Big Shoulders Display', 'Arial Narrow', sans-serif;
  --f-body:'Instrument Sans', system-ui, sans-serif;
  --f-mono:'Martian Mono', ui-monospace, Menlo, monospace;
  --gut:16px;
  --max:1280px;
  --r:2px;
}
@media (min-width:768px){ :root{ --gut:32px; } }
@media (min-width:1200px){ :root{ --gut:48px; } }

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:76px; }
@media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } *{ transition:none!important; } }
body{ margin:0; background:var(--felt); color:var(--galv); font:400 17px/1.55 var(--f-body); overflow-x:hidden; -webkit-font-smoothing:antialiased; }
@media (min-width:768px){ body{ font-size:18px; } }
img,svg{ display:block; max-width:100%; }
a{ color:inherit; }
h1,h2,h3,p{ margin:0; }
b{ font-weight:600; }
[hidden]{ display:none!important; }

.wrap{ width:100%; max-width:var(--max); margin:0 auto; padding:0 var(--gut); }
.sr-only{ position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.skip{ position:absolute; left:8px; top:-60px; z-index:100; background:var(--sun); color:var(--felt); padding:10px 14px; font-weight:600; }
.skip:focus{ top:8px; }
:focus-visible{ outline:2px solid var(--focus, var(--sun)); outline-offset:3px; }
.sample,.offer,.faq{ --focus:var(--felt); }
.plan--main{ --focus:var(--sun); }
.hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }

.mono,.kicker,.eyebrow,.stats dt,.lead__sub,.plan__tag,.guarantee__k,.bars__cap,.foot__meta dt{
  font-family:var(--f-mono); text-transform:uppercase; letter-spacing:.08em; font-weight:500;
}
.kicker{ font-size:12px; color:var(--aim-ink); margin-bottom:16px; display:flex; align-items:center; gap:10px; }
.kicker::before{ content:""; width:22px; height:2px; background:currentColor; }
.zips .kicker,.everitt .kicker{ color:var(--aim); }
.kicker--ink{ color:var(--felt); }
.dot{ display:inline-block; width:8px; height:8px; border-radius:50%; flex:none; }
.dot--sun{ background:var(--sun); }
.u-chalk{ color:var(--aim); }
.sample .u-chalk,.faq .u-chalk{ color:var(--aim-ink); }

/* buttons: a short mechanical drop on press */
.btn{
  --b:var(--aim);
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  min-height:52px; padding:0 22px; border:2px solid var(--b); border-radius:var(--r);
  font:600 16px/1 var(--f-body); text-decoration:none; cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, background-color .15s ease, color .15s ease;
}
.btn--aim{ background:var(--b); color:var(--felt); box-shadow:4px 4px 0 var(--galv); }
.btn--aim:hover{ transform:translate(2px,2px); box-shadow:2px 2px 0 var(--galv); }
.btn--aim:active{ transform:translate(4px,4px); box-shadow:0 0 0 var(--galv); }
.btn--aim[disabled]{ opacity:.6; cursor:progress; transform:none; box-shadow:4px 4px 0 var(--galv); }
.btn--ghost{ --b:rgba(227,232,231,.4); color:var(--galv); background:transparent; }
.btn--ghost:hover{ --b:var(--galv); }
.btn--line{ --b:var(--felt); color:var(--felt); background:transparent; }
.btn--line:hover{ background:var(--felt); color:var(--sun); }
.btn--block{ width:100%; }

/* ---------- header ---------- */
.top{ position:sticky; top:0; z-index:50; background:var(--felt); border-bottom:1px solid var(--rule-dark); }
.top__in{ max-width:var(--max); margin:0 auto; padding:0 var(--gut); height:60px; display:flex; align-items:center; gap:24px; }
.brand{ display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--galv); }
.brand__mark{ width:28px; height:28px; color:var(--aim); flex:none; }
.brand__word{ font:800 21px/1 var(--f-display); text-transform:uppercase; letter-spacing:.04em; }
.brand__word b{ font-weight:800; color:var(--aim); margin-left:.18em; }
.nav{ display:none; gap:28px; margin-left:auto; }
.nav a{ font-size:15px; text-decoration:none; color:var(--on-dark-soft); padding:6px 0; border-bottom:2px solid transparent; }
.nav a:hover{ color:var(--galv); border-color:var(--aim); }
.top__phone{ margin-left:auto; font:500 13px/1 var(--f-mono); letter-spacing:.04em; color:var(--galv); text-decoration:none; padding:12px 0; white-space:nowrap; }
.top__phone:hover{ color:var(--sun); }
@media (min-width:980px){ .nav{ display:flex; } .top__phone{ margin-left:8px; } }
@media (max-width:359px){ .top__in{ gap:10px; } .brand__word{ font-size:18px; } .brand__mark{ width:24px; height:24px; } .top__phone{ font-size:11.5px; letter-spacing:0; } }

/* ---------- hero ---------- */
.hero{ padding:36px 0 64px; border-bottom:1px solid var(--rule-dark); }
.hero__grid{ display:grid; gap:36px; align-items:start; }
.eyebrow{ font-size:12px; color:var(--sun); display:flex; align-items:center; gap:10px; margin-bottom:16px; }
.hero__title{ font:900 clamp(52px, 14vw, 100px)/.86 var(--f-display); text-transform:uppercase; letter-spacing:-.005em; margin:0 0 22px; text-wrap:balance; }
.hero__title .u-chalk{ display:block; margin-top:.08em; }
.hero__lead{ font-size:18px; line-height:1.55; max-width:44ch; color:#CBD4D2; }
.hero__proof{ min-width:0; }
.stats{ margin:0; display:grid; grid-template-columns:1fr; border-top:1px solid var(--rule-dark); }
.stats div{ display:flex; justify-content:space-between; align-items:baseline; gap:16px; padding:12px 0; border-bottom:1px solid var(--rule-dark); }
.stats dt{ font-size:11px; color:var(--on-dark-soft); }
.stats dd{ margin:0; font:800 30px/1 var(--f-display); letter-spacing:.01em; font-variant-numeric:tabular-nums; }
.stats__src{ margin-top:10px; font-size:13px; color:var(--on-dark-soft); max-width:52ch; }
@media (min-width:640px){
  .stats{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 20px; }
  .stats div{ flex-direction:column-reverse; justify-content:flex-end; gap:6px; }
  .stats dd{ font-size:40px; }
}
@media (min-width:1040px){
  .hero{ padding:56px 0 80px; }
  .hero__grid{ grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr); gap:40px 56px; }
  .hero__copy{ grid-column:1; grid-row:1; }
  .hero__proof{ grid-column:1; grid-row:2; }
  .hero .lead{ grid-column:2; grid-row:1 / span 2; position:sticky; top:84px; }
}

/* the one form */
.lead{ background:var(--slate); border:1px solid rgba(110,166,255,.45); box-shadow:6px 6px 0 rgba(110,166,255,.22); padding:22px 18px 18px; display:grid; gap:14px; position:relative; }
.lead::before,.lead::after{ content:""; position:absolute; width:14px; height:14px; border:2px solid var(--aim); }
.lead::before{ top:-2px; left:-2px; border-right:0; border-bottom:0; }
.lead::after{ bottom:-2px; right:-2px; border-left:0; border-top:0; }
.lead__title{ font:800 30px/1 var(--f-display); text-transform:uppercase; letter-spacing:.01em; }
.lead__sub{ margin-top:8px; font-size:11px; color:var(--sun); }
.lead__banner{ font-size:15px; padding:10px 12px; border-left:3px solid var(--sun); background:rgba(244,192,78,.1); }
.lead__note{ font-size:14px; color:var(--on-dark-soft); }
.lead__note.is-error{ color:#FF9C86; }
.lead__note.is-ok{ color:var(--galv); }
.field{ display:grid; gap:6px; }
.field span{ font-size:14px; font-weight:600; }
.field input,.field select{
  width:100%; min-height:50px; padding:12px 14px; border:1px solid rgba(227,232,231,.28); border-radius:var(--r);
  background:var(--felt); color:var(--galv); font:400 17px/1.2 var(--f-body);
}
.field select{ appearance:none; background-image:linear-gradient(45deg,transparent 50%,var(--aim) 50%),linear-gradient(135deg,var(--aim) 50%,transparent 50%); background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%; background-size:6px 6px; background-repeat:no-repeat; padding-right:40px; }
.field input:focus,.field select:focus{ outline:none; border-color:var(--aim); box-shadow:0 0 0 2px rgba(110,166,255,.35); }
.field [aria-invalid="true"],.field [aria-invalid="true"]:focus{ border-color:#FF9C86; }
.field [aria-invalid="true"]:focus{ box-shadow:0 0 0 2px rgba(255,156,134,.35); }
.field__hint{ margin-top:-8px; font-size:13px; color:var(--on-dark-soft); }
.lead__done{ display:grid; gap:12px; }
.lead__done h2{ font:800 30px/1 var(--f-display); text-transform:uppercase; }
.lead__done p{ color:#CBD4D2; }
.lead__done a{ color:var(--aim); font-weight:600; text-underline-offset:4px; }

/* ---------- sample sheet (light: the paperwork you get) ---------- */
.sample{ background:var(--galv); color:var(--felt); padding:72px 0 80px; }
.sechead{ margin:0 0 32px; max-width:900px; }
.sechead__title{ font:800 clamp(40px, 9vw, 84px)/.92 var(--f-display); text-transform:uppercase; text-wrap:balance; }
.sechead__title .u-chalk,.sechead__title span{ display:block; }
.sechead__sub{ margin-top:16px; font-size:18px; max-width:56ch; color:var(--ink-soft); }
.sechead--dark .sechead__sub{ color:var(--on-dark-soft); }
.sheet{ margin:0; }
.sheet__scroll{ overflow-x:auto; background:var(--paper); border:1px solid var(--rule-light); box-shadow:8px 8px 0 rgba(19,26,25,.12); }
.sheet__scroll:focus-visible{ outline-offset:2px; }
.sheet__table{ width:100%; min-width:880px; border-collapse:collapse; font-size:15px; }
.sheet__table th{ text-align:left; font:500 10.5px/1.2 var(--f-mono); text-transform:uppercase; letter-spacing:.08em; color:var(--ink-soft); padding:16px 14px 10px; border-bottom:2px solid var(--felt); white-space:nowrap; }
.sheet__table td{ padding:12px 14px; border-bottom:1px solid var(--rule-light); white-space:nowrap; }
.sheet__table tbody tr:last-child td{ border-bottom:0; }
.sheet__table tbody tr:hover{ background:rgba(110,166,255,.08); }
.sheet__table .rk{ font:800 22px/1 var(--f-display); }
.sheet__table .ad{ font-weight:600; }
.sheet__table .x{ display:inline-block; width:.62em; height:.78em; background:var(--felt); margin-left:2px; vertical-align:-.06em; }
.sheet__table .x + .x{ margin-left:1px; }
.sheet__table .n,.sheet__table .nw{ font-variant-numeric:tabular-nums; }
.sheet__table .n{ text-align:right; }
.sheet__cap{ margin-top:16px; font-size:15px; color:var(--ink-soft); max-width:72ch; }
.sheet__cap b{ color:var(--felt); }

/* ---------- ZIP bars: the proof and the picker ---------- */
.zips{ padding:72px 0 80px; }
.zips__grid{ display:grid; gap:8px; }
@media (min-width:1040px){ .zips__grid{ grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:56px; align-items:start; } .zips .sechead{ position:sticky; top:96px; } }
.bars{ margin:0; }
.bars__cap{ display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:11px; color:var(--on-dark-soft); padding-bottom:10px; border-bottom:1px solid var(--rule-dark); }
.bars__keys{ display:inline-flex; gap:16px; }
.bars__key{ display:inline-flex; align-items:center; gap:8px; color:var(--galv); }
.bars__swatch{ width:14px; height:8px; border-radius:0 3px 3px 0; background:rgba(227,232,231,.32); }
.bars__swatch--aim{ background:var(--aim); }
.bars__swatch--t1{ background:var(--sun); }
.bars__list{ list-style:none; margin:0; padding:0; }
.bars__list button{
  --c:rgba(227,232,231,.32);
  width:100%; display:grid; grid-template-columns:56px minmax(0,1fr) auto; grid-template-areas:"z a n" "bar bar bar"; gap:4px 12px; align-items:baseline;
  padding:10px 4px 9px; background:none; border:0; border-bottom:1px solid var(--rule-dark); color:var(--galv); text-align:left; cursor:pointer; font:inherit;
}
.bars__list button::after{ content:""; grid-area:bar; height:8px; width:calc(var(--v) * 1%); min-width:3px; background:var(--c); border-radius:0 3px 3px 0; transition:filter .15s ease; }
.bars__list button.is-t1{ --c:var(--sun); }
.bars__list button:hover{ background:rgba(110,166,255,.06); }
.bars__list button:hover::after{ filter:brightness(1.12); }
.bars__list button[aria-pressed="true"]{ --c:var(--aim); background:rgba(110,166,255,.12); box-shadow:inset 3px 0 0 var(--aim); }
.bars__z{ grid-area:z; font:500 14px/1 var(--f-mono); letter-spacing:.04em; }
.bars__a{ grid-area:a; font-size:15px; color:var(--on-dark-soft); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.bars__n{ grid-area:n; font:800 22px/1 var(--f-display); font-variant-numeric:tabular-nums; }
.bars__t{ display:none; }
.bars__list li.is-more{ display:none; }
.bars.is-open .bars__list li.is-more{ display:block; }
.bars__more{ margin-top:14px; background:none; border:1px solid var(--rule-dark); color:var(--galv); font:500 12px/1 var(--f-mono); text-transform:uppercase; letter-spacing:.08em; padding:14px 16px; min-height:44px; cursor:pointer; border-radius:var(--r); }
.bars__more:hover{ border-color:var(--aim); }
.bars__note{ margin-top:18px; font-size:14px; color:var(--on-dark-soft); max-width:64ch; }

/* ---------- offer (sun ground: early, hot) ---------- */
.offer{ background:var(--sun); color:var(--felt); padding:72px 0 80px; }
.sechead--ink .sechead__title span{ color:var(--felt); }
.steps{ list-style:none; margin:0 0 40px; padding:0; display:grid; gap:0; border-top:2px solid var(--felt); }
.steps li{ display:grid; grid-template-columns:44px minmax(0,1fr); gap:14px; padding:16px 0; border-bottom:1px solid rgba(19,26,25,.25); }
.steps__n{ font:900 34px/1 var(--f-display); }
.steps p{ font-size:17px; max-width:52ch; }
@media (min-width:900px){ .steps{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 28px; } .steps li{ grid-template-columns:1fr; gap:8px; border-bottom:0; align-content:start; } }
.plans{ display:grid; gap:20px; align-items:start; }
@media (min-width:900px){ .plans{ grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:28px; } }
.plan{ padding:26px 22px 22px; display:grid; gap:12px; }
.plan--main{ background:var(--felt); color:var(--galv); box-shadow:8px 8px 0 rgba(19,26,25,.28); }
.plans__side{ display:flex; flex-direction:column; justify-content:space-between; gap:24px; align-self:stretch; }
.plans__side .offer__math{ margin-top:0; font-size:18px; color:var(--felt); max-width:30ch; }
.offer__big{ font:900 clamp(40px, 5vw, 64px)/.9 var(--f-display); text-transform:uppercase; margin-bottom:14px; }
.plans__aside{ border-top:2px solid var(--felt); padding-top:16px; font-size:16px; max-width:44ch; }
.plans__q{ font:800 26px/1 var(--f-display); text-transform:uppercase; margin-bottom:8px; }
.plans__aside a{ font-weight:600; text-underline-offset:3px; }
.plan__tag{ font-size:11px; color:var(--sun); }
.plan__name{ font:900 44px/.9 var(--f-display); text-transform:uppercase; }
.plan__price{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; }
.plan__amt{ font:900 72px/.9 var(--f-display); font-variant-numeric:tabular-nums; }
.plan__per{ font-size:17px; font-weight:600; }
.plan__after{ font-size:15px; color:var(--on-dark-soft); max-width:46ch; }
.plan__list{ list-style:none; margin:4px 0 8px; padding:0; display:grid; gap:0; }
.plan__list li{ padding:10px 0 10px 22px; border-top:1px solid var(--rule-dark); position:relative; font-size:16px; }
.plan__list li::before{ content:""; position:absolute; left:2px; top:19px; width:10px; height:2px; background:var(--aim); }
.plan--main .btn--aim{ box-shadow:4px 4px 0 var(--sun); }
.plan--main .btn--aim:hover{ box-shadow:2px 2px 0 var(--sun); }
.plan__fine{ font-size:13px; color:var(--on-dark-soft); text-align:center; }
.guarantee{ margin-top:28px; display:grid; gap:8px; padding:20px 0; border-top:2px solid var(--felt); border-bottom:2px solid var(--felt); }
@media (min-width:768px){ .guarantee{ grid-template-columns:240px minmax(0,1fr); gap:24px; align-items:baseline; } }
.guarantee__k{ font-size:12px; }
.guarantee__v{ font:800 clamp(22px, 3.2vw, 30px)/1.15 var(--f-display); text-transform:uppercase; letter-spacing:.01em; max-width:40ch; }
.offer__math{ margin-top:18px; font-size:16px; max-width:62ch; color:rgba(19,26,25,.8); }

/* ---------- faq ---------- */
.faq{ background:var(--paper); color:var(--felt); padding:72px 0 88px; }
.faq__grid{ display:grid; gap:8px; }
@media (min-width:1040px){ .faq__grid{ grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:56px; } }
.faq__list details{ border-bottom:1px solid var(--rule-light); }
.faq__list details:first-child{ border-top:2px solid var(--felt); }
.faq summary{ list-style:none; cursor:pointer; padding:18px 44px 18px 0; position:relative; font:800 24px/1.1 var(--f-display); text-transform:uppercase; letter-spacing:.01em; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{ content:""; position:absolute; right:6px; top:50%; width:12px; height:12px; margin-top:-9px; border-right:2.5px solid var(--aim-ink); border-bottom:2.5px solid var(--aim-ink); transform:rotate(45deg); transition:transform .2s ease, margin .2s ease; }
.faq details[open] summary::after{ transform:rotate(-135deg); margin-top:-2px; }
.faq summary:hover{ color:var(--aim-ink); }
.faq details p{ padding:0 0 20px; max-width:62ch; color:var(--ink-soft); font-size:17px; }

/* ---------- everitt + close ---------- */
.everitt{ padding:80px 0 96px; }
.everitt__grid{ display:grid; gap:36px; align-items:center; }
@media (min-width:900px){ .everitt__grid{ grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:64px; } }
.everitt__photo{ margin:0; max-width:400px; }
@media (max-width:899px){ .everitt__photo{ max-width:200px; } }
.everitt__photo img{ width:100%; height:auto; aspect-ratio:4/4.4; object-fit:cover; object-position:50% 30%; border:2px solid var(--galv); box-shadow:8px 8px 0 var(--aim); }
.everitt__title{ font:900 clamp(46px, 11vw, 96px)/.88 var(--f-display); text-transform:uppercase; }
.everitt__title .u-chalk{ display:block; }
.everitt__lead{ margin-top:20px; font-size:18px; max-width:46ch; color:#CBD4D2; }
.bigphone{ display:inline-flex; flex-direction:column; gap:8px; margin-top:28px; text-decoration:none; font:900 clamp(44px, 12vw, 84px)/.9 var(--f-display); color:var(--sun); }
.bigphone .mono{ font-size:12px; color:var(--on-dark-soft); }
.bigphone:hover{ color:var(--galv); }
.everitt__ctas{ display:flex; flex-wrap:wrap; gap:14px; margin-top:28px; }
.everitt__ctas .btn{ flex:1 1 200px; max-width:280px; }

/* ---------- footer ---------- */
.foot{ border-top:1px solid var(--rule-dark); padding:40px 0 104px; }
@media (min-width:768px){ .foot{ padding-bottom:48px; } }
.foot__grid{ display:grid; gap:24px; }
@media (min-width:900px){ .foot__grid{ grid-template-columns:1fr 1fr; } .foot__fine{ grid-column:1 / -1; } }
.foot__brand p{ margin-top:10px; font-size:15px; color:var(--on-dark-soft); }
.foot__meta{ margin:0; display:grid; gap:12px; }
.foot__meta dt{ font-size:10.5px; color:var(--on-dark-soft); }
.foot__meta dd{ margin:4px 0 0; overflow-wrap:anywhere; }
.foot__meta a{ text-underline-offset:4px; display:inline-block; padding:4px 0; }
.foot__fine{ font-size:13px; color:var(--on-dark-soft); max-width:90ch; }
.foot__fine a{ color:var(--galv); text-underline-offset:3px; }

/* ---------- phone dock ---------- */
.dock{ position:fixed; left:0; right:0; bottom:0; z-index:60; display:grid; grid-template-columns:1fr 1fr 1.4fr; background:var(--felt); border-top:1px solid var(--rule-dark); transform:translateY(100%); visibility:hidden; transition:transform .25s ease, visibility 0s linear .25s; padding-bottom:env(safe-area-inset-bottom); }
.dock.is-on{ transform:none; visibility:visible; transition:transform .25s ease, visibility 0s; }
.dock a{ display:flex; align-items:center; justify-content:center; min-height:56px; font-weight:600; text-decoration:none; border-right:1px solid var(--rule-dark); }
.dock .dock__aim{ background:var(--aim); color:var(--felt); border-right:0; }
@media (min-width:768px){ .dock{ display:none; } }

