/* Silverback Fitness — ink, brushed silver, logo teal */
:root{
  --ink:#0e1011; --coal:#151819; --slate:#1d2124; --line:#2c3236;
  --bone:#ece9e3; --mute:#a3a9ae; --silver:#c9ced3; --silver-d:#7d848b;
  --teal:#46bfa0; --teal-d:#2e8f77; --teal-glow:rgba(70,191,160,.22);
  --f-head:"Antonio","Arial Narrow",sans-serif;
  --f-body:"Onest",system-ui,sans-serif;
  --f-brush:"Caveat Brush","Segoe Print",cursive;
  --r:14px; --wrap:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
body{margin:0;background:var(--ink);color:var(--bone);font:400 17px/1.65 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
main,header,footer{position:relative;z-index:1}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
p a,.sub a,summary+p a{color:var(--teal);text-underline-offset:3px}
.wrap{width:min(var(--wrap),100% - 40px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:8px;background:var(--teal);color:var(--ink);padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:12px}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px}

h1,h2,h3{font-family:var(--f-head);font-weight:700;letter-spacing:.005em;line-height:1.02;margin:0;text-transform:uppercase}
h2{font-size:clamp(2.4rem,5.4vw,4.2rem)}
h3{font-size:1.6rem}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.55em;justify-content:center;background:var(--teal);color:#06110e;font:600 1rem/1 var(--f-body);text-decoration:none;padding:1rem 1.5rem;border-radius:999px;border:0;cursor:pointer;transition:transform .2s,background .2s,box-shadow .2s;box-shadow:0 0 0 0 var(--teal-glow)}
.btn:hover{transform:translateY(-2px);background:#5bd3b4;box-shadow:0 10px 30px -8px var(--teal-glow)}
.btn svg{width:18px;height:18px;fill:currentColor}
.btn-ghost{background:transparent;color:var(--bone);border:1.5px solid #3b4247}
.btn-ghost:hover{background:#1b1f22;border-color:var(--silver-d)}
.btn-sm{padding:.7rem 1.1rem;font-size:.92rem}
.btn-full{width:100%}

/* spine rail */
.spine{position:fixed;left:22px;top:50%;transform:translateY(-50%);z-index:5;display:none;flex-direction:column;gap:9px}
.spine span{display:block;width:22px;height:14px;border-radius:5px;background:#24292d;position:relative;transition:background .4s,box-shadow .4s}
.spine span::after{content:"";position:absolute;left:50%;top:100%;width:2px;height:9px;background:#24292d;transform:translateX(-50%)}
.spine span:last-child::after{display:none}
.spine span.on{background:linear-gradient(135deg,#f2f4f6,#8f969d);box-shadow:0 0 14px rgba(220,226,232,.35)}
.spine span.on::after{background:#9aa1a8}
@media (min-width:1320px){.spine{display:flex}}

/* header */
.top{position:fixed;inset:0 0 auto;z-index:20;transition:background .3s,border-color .3s,backdrop-filter .3s;border-bottom:1px solid transparent}
.top.scrolled{background:rgba(14,16,17,.82);backdrop-filter:blur(12px);border-color:#22272a}
.top-in{display:flex;align-items:center;gap:28px;height:72px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand img{width:40px;height:auto}
.brand-word{font:700 1.25rem/1 var(--f-head);text-transform:uppercase;letter-spacing:.04em;display:flex;flex-direction:column}
.brand-word em{font-style:normal;font-weight:500;font-size:.62rem;letter-spacing:.42em;color:var(--mute);margin-top:4px}
.nav{display:flex;gap:26px;margin-left:auto}
.nav a{text-decoration:none;font-size:.93rem;color:var(--mute);transition:color .2s}
.nav a:hover{color:var(--bone)}
@media (max-width:940px){.nav{display:none}.top .btn-sm{margin-left:auto}}

/* hero */
.hero{position:relative;min-height:100svh;padding:120px 0 0;display:flex;flex-direction:column;overflow:hidden;isolation:isolate}
.hero-bg{position:absolute;inset:0;z-index:-1}
.saddle{position:absolute;inset:0;width:100%;height:100%;opacity:.16}
.saddle-stroke{stroke-dasharray:1800;stroke-dashoffset:1800;animation:draw 2.4s .2s cubic-bezier(.6,0,.2,1) forwards}
.saddle-stroke.s2{animation-delay:.6s}
@keyframes draw{to{stroke-dashoffset:0}}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:200px;background:linear-gradient(transparent,var(--ink));z-index:-1}
.hero-in{flex:1;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding-bottom:40px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 22px;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--silver);border:1px solid #2d3337;border-radius:999px;padding:7px 14px;background:rgba(21,24,25,.6)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px var(--teal-glow);animation:pulse 2.4s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px transparent}}
h1{display:flex;flex-direction:column;gap:14px}
.h1-brand{font:400 clamp(1.7rem,2.6vw,2.2rem)/1 var(--f-brush);text-transform:none;color:var(--teal);letter-spacing:.01em}
.h1-main{font-size:clamp(2.7rem,5.6vw,4.9rem);line-height:.98}
.h1-main em{font-style:normal;background:linear-gradient(100deg,#7f878e 0%,#f3f5f7 38%,#a9b0b6 60%,#e6eaed 85%);-webkit-background-clip:text;background-clip:text;color:transparent}
.lede{max-width:560px;font-size:1.12rem;color:#c5cacd;margin:26px 0 30px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.hero-tags{list-style:none;padding:0;margin:30px 0 0;display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--mute);font-size:.9rem}
.hero-tags li{display:flex;align-items:center;gap:8px}
.hero-tags li::before{content:"";width:14px;height:2px;background:linear-gradient(90deg,var(--silver),transparent)}
.hero-art{position:relative;display:grid;place-items:center}
.glow{position:absolute;width:78%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(70,191,160,.22),rgba(201,206,211,.06) 45%,transparent 70%);filter:blur(10px)}
.hero-logo{position:relative;width:min(560px,100%);filter:drop-shadow(0 30px 40px rgba(0,0,0,.55));animation:rise 1.2s .2s cubic-bezier(.2,.7,.2,1) both}
@keyframes rise{from{opacity:0;transform:translateY(30px) scale(.97)}}
.hero-note{position:absolute;right:4%;bottom:-2%;margin:0;font:400 1.6rem/1 var(--f-brush);color:var(--silver);transform:rotate(-6deg);opacity:.85}
@media (max-width:900px){
  .hero{padding-top:96px;min-height:auto}
  .hero-in{grid-template-columns:1fr;gap:10px}
  .hero-art{order:-1;max-width:330px;margin:0 auto}
  .hero-note{font-size:1.25rem;right:-4%}
}

/* ticker */
.ticker{border-block:1px solid #22272a;background:rgba(21,24,25,.7);overflow:hidden;padding:16px 0}
.ticker-track{display:flex;align-items:center;gap:28px;width:max-content;animation:tick 34s linear infinite}
.ticker span{font:700 1.5rem/1 var(--f-head);text-transform:uppercase;letter-spacing:.06em;color:transparent;-webkit-text-stroke:1px #6f777e}
.ticker span:nth-child(4n+1){color:var(--silver);-webkit-text-stroke:0}
.ticker i{width:8px;height:8px;background:var(--teal);transform:rotate(45deg)}
@keyframes tick{to{transform:translateX(-50%)}}

/* sections */
.sec{padding:clamp(76px,9vw,120px) 0}
.sec-head{margin-bottom:46px;max-width:720px}
.num{display:flex;align-items:center;gap:12px;margin:0 0 16px;font:600 .8rem/1 var(--f-body);letter-spacing:.2em;color:var(--teal)}
.num span{color:var(--mute);letter-spacing:.14em;text-transform:uppercase}
.num::after{content:"";width:46px;height:1px;background:linear-gradient(90deg,var(--silver-d),transparent)}
.sub{color:var(--mute);font-size:1.08rem;margin:16px 0 0}

/* pain picker */
.pain{background:linear-gradient(180deg,var(--ink),var(--coal))}
.pain-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}
.anat{margin:0;background:radial-gradient(circle at 50% 45%,#1d2225,var(--coal) 72%);border:1px solid #23292c;border-radius:24px;padding:26px 22px 18px;position:sticky;top:100px}
.anat svg{width:100%;height:auto;display:block;overflow:visible}
.anat .bones>*{fill:url(#bone)}
.anat .labels text{font:600 13px var(--f-body);fill:#5d656b;text-anchor:middle}
.anat .tendon{fill:none;stroke:#7d848b;stroke-width:5;stroke-linecap:round}
.anat .discs rect{fill:#2c3337;transition:fill .4s}
.anat .zone{opacity:.28;transition:opacity .5s}
.anat .zone.on{opacity:1}
.anat .zone.on .discs .key{fill:var(--teal);filter:url(#glow)}
.anat .zone.on .discs rect:not(.key){fill:#3f6f63}
.anat .ring{fill:none;stroke:var(--teal);stroke-width:2;opacity:0;transform-box:fill-box;transform-origin:center}
.anat .zone.on .ring{animation:ping 2s infinite}
@keyframes ping{0%{opacity:.7;transform:scale(.4)}100%{opacity:0;transform:scale(1.25)}}
.anat figcaption{display:flex;justify-content:space-around;margin-top:10px;font:600 .74rem/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:#5d656b}
.anat figcaption span{transition:color .4s}
.anat figcaption span.on{color:var(--teal)}
.pain-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.pain-tabs button{font:600 .95rem/1 var(--f-body);color:var(--mute);background:var(--slate);border:1px solid #2c3236;border-radius:999px;padding:.85rem 1.2rem;cursor:pointer;transition:all .2s}
.pain-tabs button:hover{color:var(--bone)}
.pain-tabs button[aria-selected="true"]{background:var(--bone);color:var(--ink);border-color:var(--bone)}
.pain-panel{background:var(--slate);border:1px solid #2a3034;border-radius:24px;padding:clamp(24px,3.5vw,40px);animation:fade .35s ease}
@keyframes fade{from{opacity:0;transform:translateY(8px)}}
.pain-panel h3{font-size:2rem;margin-bottom:20px}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.label{font:600 .78rem/1 var(--f-body);letter-spacing:.16em;text-transform:uppercase;color:var(--silver-d);margin:0 0 14px}
.ticks,.steps-mini{margin:0;padding:0;list-style:none;display:grid;gap:12px;font-size:.98rem;color:#cdd1d4}
.ticks li{padding-left:26px;position:relative}
.ticks li::before{content:"";position:absolute;left:0;top:.55em;width:12px;height:12px;border-radius:50%;border:2px solid var(--silver-d)}
.steps-mini{counter-reset:s}
.steps-mini li{padding-left:34px;position:relative;counter-increment:s}
.steps-mini li::before{content:counter(s);position:absolute;left:0;top:.1em;width:22px;height:22px;border-radius:50%;background:var(--teal);color:#06110e;font:700 .75rem/22px var(--f-body);text-align:center}
.link-arrow{display:inline-flex;gap:8px;margin-top:26px;color:var(--teal);font-weight:600;text-decoration:none}
.link-arrow span{transition:transform .2s}
.link-arrow:hover span,.card:hover .link-arrow span{transform:translateX(4px)}
.pull{margin:0 0 20px;font:700 clamp(1.5rem,2.6vw,2.1rem)/1.15 var(--f-head);text-transform:uppercase;border-left:3px solid var(--teal);padding-left:20px}
.pull cite{display:block;margin-top:12px;font:400 .9rem/1 var(--f-body);text-transform:none;color:var(--mute);font-style:normal}
@media (max-width:900px){.pain-grid{grid-template-columns:1fr}.anat{position:relative;top:0;max-width:440px;margin:0 auto;width:100%}.cols{grid-template-columns:1fr}}

/* method */
.method-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:m}
.method-list li{position:relative;background:var(--coal);border:1px solid #22282b;border-radius:var(--r);padding:30px 24px 28px;overflow:hidden}
.method-list li::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,var(--silver),var(--silver-d) 60%,transparent);transform-origin:left;transform:scaleX(.18);transition:transform .8s}
.method-list li.in::before{transform:scaleX(1)}
.m-num{display:block;font:700 3.6rem/1 var(--f-head);color:transparent;-webkit-text-stroke:1px #4b5358;margin-bottom:18px}
.method-list h3{font-size:1.9rem;margin-bottom:10px}
.method-list p{margin:0;color:var(--mute);font-size:.98rem}
.method-list li:nth-child(2){transition-delay:.08s}.method-list li:nth-child(3){transition-delay:.16s}.method-list li:nth-child(4){transition-delay:.24s}
@media (max-width:980px){.method-list{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.method-list{grid-template-columns:1fr}}

/* why silverback */
.why{position:relative;padding:clamp(70px,9vw,110px) 0;background:linear-gradient(115deg,#1b1f22,#2a2f33 40%,#1b1f22);overflow:hidden}
.why::before{content:"";position:absolute;inset:-40% -10%;background:repeating-linear-gradient(100deg,transparent 0 14px,rgba(255,255,255,.025) 14px 15px);transform:rotate(-4deg)}
.why-in{position:relative;max-width:900px;text-align:center}
.why-kicker{font:400 2rem/1 var(--f-brush);color:var(--teal);margin:0 0 18px}
.why-text{font-size:clamp(1.2rem,2.2vw,1.55rem);line-height:1.55;color:#d6dadd;margin:0}
.why-text strong{color:var(--bone);font-weight:600}

/* about */
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(36px,6vw,80px);align-items:center}
.reel{position:relative;display:block;border-radius:22px;overflow:hidden;border:1px solid #2a3034;max-width:380px;margin-inline:auto;box-shadow:0 40px 80px -30px rgba(0,0,0,.8)}
.reel img{width:100%;aspect-ratio:9/16;object-fit:cover;transition:transform .6s}
.reel:hover img{transform:scale(1.03)}
.reel-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:70px;height:70px;border-radius:50%;background:rgba(14,16,17,.6);backdrop-filter:blur(6px);display:grid;place-items:center;border:1px solid rgba(255,255,255,.25)}
.reel-play svg{width:28px;fill:var(--bone);margin-left:4px}
.reel-cap{position:absolute;left:0;right:0;bottom:0;padding:40px 18px 18px;background:linear-gradient(transparent,rgba(0,0,0,.85));font-weight:600;font-size:.95rem}
.about-copy p{color:#c9cdd0;max-width:620px}
.about-copy .pull{margin:28px 0}
.mission{margin-top:28px;padding:18px 22px;border-radius:var(--r);background:var(--slate);border:1px solid #2a3034;font:700 1.35rem/1.2 var(--f-head);text-transform:uppercase;color:var(--bone)!important}
.mission span{display:block;font:600 .75rem/1 var(--f-body);letter-spacing:.18em;color:var(--teal);margin-bottom:8px}
@media (max-width:860px){.about-grid{grid-template-columns:1fr}.about-media{order:2}}

/* results */
.results{background:var(--coal)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{display:flex;flex-direction:column;text-decoration:none;background:var(--slate);border:1px solid #2a3034;border-radius:var(--r);padding:28px;transition:transform .25s,border-color .25s}
.card:hover{transform:translateY(-4px);border-color:#46505a}
.card h3{font-size:1.7rem;margin:18px 0 8px}
.card p{margin:0;color:var(--mute)}
.card .link-arrow{margin-top:auto;padding-top:22px}
.card-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#262b2f}
.card-icon svg{width:24px;fill:none;stroke:var(--teal);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.card-partner{background:linear-gradient(150deg,#22282b,#16302a)}
.code{margin-top:auto;align-self:flex-start;font:700 1.6rem/1 var(--f-head);letter-spacing:.12em;border:1.5px dashed var(--teal);color:var(--teal);padding:12px 16px;border-radius:10px;margin-top:22px}
@media (max-width:860px){.cards{grid-template-columns:1fr}}

/* faq */
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.faq-list{display:grid;gap:10px}
.faq details{background:var(--coal);border:1px solid #23292c;border-radius:var(--r);padding:0 24px}
.faq summary{list-style:none;cursor:pointer;padding:22px 30px 22px 0;font-weight:600;font-size:1.06rem;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:4px;top:50%;width:12px;height:12px;border-right:2px solid var(--silver-d);border-bottom:2px solid var(--silver-d);transform:translateY(-70%) rotate(45deg);transition:transform .25s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg);border-color:var(--teal)}
.faq details p{margin:0 0 22px;color:#c3c8cb}
@media (max-width:860px){.faq-grid{grid-template-columns:1fr;gap:10px}}

/* instagram */
.insta{background:linear-gradient(180deg,var(--ink),#121516)}
.insta-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.btn-ig{background:linear-gradient(120deg,#f2f4f6,#a8afb5);color:var(--ink)}
.btn-ig:hover{background:linear-gradient(120deg,#fff,#c3c9ce)}
.btn-ig svg{fill:none;stroke:currentColor;stroke-width:2}
.btn-ig svg circle:last-child{fill:currentColor;stroke:none}
.ig-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ig-tile{position:relative;display:block;border-radius:12px;overflow:hidden;aspect-ratio:4/5;background:var(--slate)}
.ig-tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s,filter .5s;filter:saturate(.85)}
.ig-tile:hover img{transform:scale(1.05);filter:saturate(1)}
.ig-cap{position:absolute;inset:auto 0 0;padding:34px 14px 14px;background:linear-gradient(transparent,rgba(0,0,0,.88));font-size:.86rem;line-height:1.35;opacity:0;transform:translateY(8px);transition:all .3s}
.ig-tile:hover .ig-cap,.ig-tile:focus-visible .ig-cap{opacity:1;transform:none}
.ig-tile::after{content:"";position:absolute;top:10px;right:10px;width:22px;height:22px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E");filter:drop-shadow(0 1px 3px rgba(0,0,0,.6))}
.ig-tile.photo::after{display:none}
@media (max-width:860px){.ig-grid{grid-template-columns:repeat(2,1fr)}.ig-cap{opacity:1;transform:none;font-size:.8rem}}

/* contact */
.contact{background:radial-gradient(ellipse at 80% 20%,rgba(70,191,160,.08),transparent 60%),var(--coal)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,80px);align-items:start}
.direct{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.direct a{display:flex;align-items:center;gap:18px;text-decoration:none;background:var(--slate);border:1px solid #2a3034;border-radius:var(--r);padding:16px 20px;font-weight:600;transition:border-color .2s,transform .2s;overflow-wrap:anywhere}
.direct a:hover{border-color:var(--teal);transform:translateX(4px)}
.direct span{font:600 .72rem/1 var(--f-body);letter-spacing:.18em;text-transform:uppercase;color:var(--teal);min-width:48px}
.form{background:var(--slate);border:1px solid #2a3034;border-radius:24px;padding:clamp(22px,3.5vw,36px);display:grid;gap:16px}
.form label{display:grid;gap:7px;font-size:.88rem;font-weight:600;color:var(--silver)}
.form input,.form select,.form textarea{font:400 1rem/1.4 var(--f-body);color:var(--bone);background:var(--ink);border:1px solid #333a3f;border-radius:10px;padding:.85rem .9rem;width:100%}
.form textarea{resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-glow)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-status{margin:0;font-size:.92rem;min-height:1.2em}
.form-status.ok{color:var(--teal)}.form-status.bad{color:#ff8f7a}
@media (max-width:860px){.contact-grid{grid-template-columns:1fr}}
@media (max-width:520px){.row2{grid-template-columns:1fr}}

/* footer */
.foot{background:#0a0b0c;border-top:1px solid #1d2124;padding:60px 0 100px}
.foot-in{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}
.foot-brand img{width:150px;margin-bottom:12px}
.foot p{color:var(--mute);font-size:.94rem;margin:0}
.foot a{text-decoration:none}.foot a:hover{color:var(--teal)}
.foot-h{font:600 .75rem/1 var(--f-body)!important;letter-spacing:.18em;text-transform:uppercase;color:var(--silver)!important;margin-bottom:14px!important}
.foot-base{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:44px;padding-top:22px;border-top:1px solid #1d2124}
.foot-base p{font-size:.85rem}
@media (max-width:760px){.foot-in{grid-template-columns:1fr}}
@media (min-width:861px){.foot{padding-bottom:40px}}

/* mobile dock */
.dock{position:fixed;left:12px;right:12px;bottom:12px;z-index:30;display:none;grid-template-columns:1fr 1fr 1.4fr;gap:8px;padding:8px;background:rgba(21,24,25,.92);backdrop-filter:blur(10px);border:1px solid #2a3034;border-radius:18px;transform:translateY(130%);transition:transform .35s}
.dock.show{transform:none}
.dock a{text-align:center;text-decoration:none;font-weight:600;padding:12px 0;border-radius:12px;background:#252a2e}
.dock .dock-main{background:var(--teal);color:#06110e}
@media (max-width:860px){.dock{display:grid}}

/* reveal */
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.js .reveal.in{opacity:1;transform:none}
