/* Loiro Studio · Portfolio (/estudio/) */
@font-face{font-family:MonaSemi;src:url("fonts/MonaSansSemiCondensed-ExtraLight.woff2") format("woff2");font-weight:200 299;font-style:normal;font-display:swap}
@font-face{font-family:MonaSemi;src:url("fonts/MonaSansSemiCondensed-Regular.woff2") format("woff2");font-weight:300 449;font-style:normal;font-display:swap}
@font-face{font-family:MonaSemi;src:url("fonts/MonaSansSemiCondensed-Medium.woff2") format("woff2");font-weight:450 700;font-style:normal;font-display:swap}
@font-face{font-family:Mona;src:url("fonts/MonaSans-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}

:root{
  --bg:#000;--fg:#fff;--acc:#ff630f;--m1:#949494;--m2:#aaa;--m3:#b8b8b8;--r1:#222;--r2:#333;
  --disp:MonaSemi,"Arial Narrow",Arial,sans-serif;--body:Mona,Arial,sans-serif;--ui:"PP Neue Montreal",Arial,sans-serif;
  --ease:cubic-bezier(.44,0,.56,1);--out:cubic-bezier(.22,1,.36,1);--pad:3vw;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:auto;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:16px;line-height:1.45;overflow-x:hidden;-webkit-font-smoothing:antialiased}
::selection{background:var(--acc);color:#000}
a{color:inherit}
img,svg{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--acc);outline-offset:6px;box-shadow:0 0 0 8px rgba(0,0,0,.85)}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:16px;top:-80px;z-index:200;background:#fff;color:#000;padding:12px 18px;border-radius:999px;font:500 16px var(--ui);text-decoration:none;transition:top .2s}
.skip:focus{top:16px}
.label{font:400 18px/1.2 var(--ui);color:var(--fg)}
.muted{color:var(--m1)}
.sec{position:relative;border-top:1px solid var(--r1);container-type:inline-size;padding-left:var(--pad);padding-right:var(--pad)}
.sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px}

/* Pills */
.pill{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:16px 20px;border-radius:999px;background:#fff;color:#000;font:400 18px/1 var(--ui);text-decoration:none;white-space:nowrap;transition:background .25s var(--ease),transform .25s var(--ease)}
.pill:hover{background:var(--acc);transform:scale(1.04)}
.pill:active{transform:scale(.98)}

/* ---------- HERO ---------- */
.hero{position:relative;height:900px;max-height:100svh;min-height:760px;overflow:hidden;container-type:inline-size;background:#000}
@media (min-width:1441px){.hero{height:min(1100px,100svh)}}
.hero-media{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-layer{position:absolute;inset:0;transform-origin:50% 50%;will-change:transform}
.hero-bg{background:#000 center/cover no-repeat}
.hero-gl{width:100%;height:100%;opacity:0;transition:opacity .45s var(--ease);pointer-events:none}
.hero-gl.ready{opacity:1}
.hero-glow{position:absolute;width:520px;height:520px;margin:-260px 0 0 -260px;border-radius:50%;background:radial-gradient(circle,rgba(255,99,15,.22),rgba(255,99,15,0) 65%);pointer-events:none;opacity:0;transition:opacity .4s;z-index:0}
.hero.glow-on .hero-glow{opacity:1}
.hero.gl-ready .hero-glow{display:none}
.hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,0) 35%,rgba(0,0,0,0) 62%,rgba(0,0,0,.5) 100%)}

.nav{position:absolute;top:28px;left:var(--pad);right:var(--pad);z-index:40;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.clock{font:400 12px/1.3 var(--ui);color:var(--m2)}
.clock b{display:block;font:400 16px/1.2 var(--ui);color:#fff;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.menu-btn{justify-self:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:60px;min-height:48px;font:400 14px/1 var(--ui);letter-spacing:.06em}
.bars{display:flex;align-items:flex-end;gap:3px;height:12px}
.bars i{display:block;width:3px;background:#fff;transition:height .3s var(--out)}
.menu-open .bars i{height:4px!important}
.nav .pill{justify-self:end}

.hero-title{position:absolute;top:147px;left:var(--pad);right:var(--pad);z-index:2}
.h1row{display:flex;justify-content:space-between;align-items:flex-start;gap:3%;font:500 clamp(42px,12.6cqw,200px)/.76 var(--disp);font-size:clamp(42px,12.6vw,200px);font-size:clamp(42px,12.6cqw,200px);letter-spacing:-.055em;white-space:nowrap;padding-right:28px}
.h1row .w{display:inline-flex;position:relative}
.h1row .light{font-weight:250}
.ch{display:inline-block;padding:.08em 0 .1em;margin:-.08em 0 -.1em}
.sup{position:absolute;top:-.05em;right:-28px;font:400 14px/1 var(--ui);letter-spacing:0;opacity:1}
.subrow{display:flex;justify-content:space-between;gap:20px;margin-top:35px;font:400 13px/1.3 var(--ui);text-transform:uppercase;letter-spacing:.06em}
.down-wrap{margin-top:26px;padding-left:calc(70% - 26px)}
.down{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.6);background:rgba(0,0,0,.32);transition:background .25s,border-color .25s}
.down svg{width:25px;height:25px;stroke:#fff;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;animation:bounce 1.9s cubic-bezier(.45,0,.3,1) infinite}
.down:hover,.down:focus-visible{background:var(--acc);border-color:var(--acc)}
.down:hover svg,.down:focus-visible svg{stroke:#000;animation-play-state:paused}
.hero.off .down svg,body.menu-open .down svg,body.dialog-open .down svg,body.page-hidden .down svg{animation-play-state:paused}
@keyframes bounce{0%,70%,100%{transform:translateY(-3px)}35%{transform:translateY(5px)}}
.notes{position:absolute;left:var(--pad);bottom:40px;width:min(420px,60%);z-index:2;font:400 18px/1.35 var(--body)}
.notes p+p{color:var(--m2)}
.explore{position:absolute;right:var(--pad);bottom:34px;z-index:2}
.vlabel{position:absolute;right:calc(var(--pad) - 4px);top:52%;z-index:2;writing-mode:vertical-rl;font:400 10px/1 var(--ui);letter-spacing:.3em;color:var(--m3)}

/* Entrance */
.js .hero .ch{opacity:0}
.hero.play .ch{animation:letter .9s cubic-bezier(.16,1,.3,1) both}
@keyframes letter{0%{opacity:0;transform:translateY(115%) rotate(3deg) scale(.96);filter:blur(32px)}65%{opacity:1;filter:blur(0)}100%{opacity:1;transform:none;filter:none}}
.js .hero .nav,.js .hero .subrow>*,.js .hero .sup,.js .hero .notes,.js .hero .explore,.js .hero .down-wrap,.js .hero .vlabel{opacity:0}
.hero.shown .nav{animation:navIn .5s var(--out) both}
.hero.shown .subrow>*,.hero.shown .vlabel,.hero.shown .down-wrap{animation:fadeIn .5s var(--ease) 1.38s both}
.hero.shown .sup{animation:fadeIn .5s var(--ease) 1.78s both}
.hero.shown .notes{animation:rise .5s var(--out) 1.85s both}
.hero.shown .explore{animation:rise .5s var(--out) 2.3s both}
@keyframes navIn{from{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes rise{from{opacity:0;transform:translateY(56px)}to{opacity:1;transform:none}}

/* ---------- MENU ---------- */
.scrim{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:30;opacity:0;visibility:hidden;transition:opacity .42s var(--ease),visibility 0s .42s}
.panel{position:fixed;left:0;right:0;top:0;height:507px;z-index:35;background:#000;border-bottom:1px solid var(--r2);padding:105px 40px 80px;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:translateY(-24px);transition:opacity .42s var(--ease),transform .42s var(--ease),visibility 0s .42s}
body.menu-open .scrim,body.menu-open .panel{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.panel ul{list-style:none;display:flex;flex-direction:column;align-items:center;gap:48px}
.roll{display:inline-flex;text-decoration:none;font:500 96px/88px var(--disp);letter-spacing:-3.84px}
.roll .lt{display:inline-block;height:88px;overflow:hidden}
.roll .lt span{display:block;height:88px;transition:transform .5s var(--out);transition-delay:calc(var(--i)*34ms)}
.roll .lt span+span{color:var(--acc)}
.roll:hover .lt span,.roll:focus-visible .lt span{transform:translateY(-88px)}

/* ---------- ABOUT / STATEMENT ---------- */
.about{min-height:900px;padding-top:40px;padding-bottom:60px;display:flex;flex-direction:column}
@media (min-width:1441px){.about{min-height:1050px}}
.statement{margin-top:65px;font:500 clamp(30px,6.7vw,96px)/.98 var(--disp);font-size:clamp(30px,6.7cqw,96px);letter-spacing:-.04em}
.statement .ln{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
.statement .ln>span{display:block}
.js .reveal-lines .ln>span{transform:translateY(108%)}
.reveal-lines.in .ln>span{transform:none;transition:transform .9s var(--out);transition-delay:calc(var(--i)*110ms)}
.meta{margin-top:auto;padding-top:80px;display:flex;justify-content:space-between;align-items:flex-end;gap:40px;font-size:18px}
.meta p{max-width:520px;color:var(--m3)}
.disc{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.disc h3{font:400 14px var(--ui);letter-spacing:.1em;color:var(--m1)}
.tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;list-style:none}
.tags li{border:1px solid #777;border-radius:99px;padding:10px 14px;font:400 14px/1 var(--ui);color:var(--m3)}
.follower{position:fixed;left:0;top:0;width:280px;pointer-events:none;z-index:20;mix-blend-mode:difference;opacity:0;transform:translate3d(-999px,-999px,0) scale(.94);transition:opacity .3s var(--ease)}
.follower.on{opacity:1}

/* ---------- FEATURED ---------- */
.featured{min-height:1060px;padding-top:38px;perspective:850px;overflow:hidden}
.featured .sec-head small{font:400 13px var(--ui);color:var(--m1);letter-spacing:.06em}
.ftitle{margin-top:90px;text-align:center;font:500 clamp(52px,13.3vw,180px)/.84 var(--disp);font-size:clamp(52px,13.3cqw,180px);letter-spacing:-.04em;position:relative;z-index:1}
.ftitle .l{display:block}
.ftitle .m{font:400 14px var(--ui);letter-spacing:0;vertical-align:top;margin-left:10px}
.js .split-blur .c{display:inline-block;opacity:0;transform:translateY(40%);filter:blur(12px)}
.split-blur.in .c{opacity:1;transform:none;filter:none;transition:opacity .5s var(--ease),transform .5s var(--ease),filter .5s var(--ease);transition-delay:calc(var(--i)*.05s)}
.gband{position:absolute;left:0;right:0;top:660px;height:90px;border-top:1px solid var(--r2);border-bottom:1px solid var(--r2);background-image:repeating-linear-gradient(90deg,var(--r2) 0 1px,transparent 1px 6.25%);z-index:0}
.gband span{position:absolute;left:var(--pad);top:-22px;font:400 11px var(--ui);letter-spacing:.12em;color:var(--m1)}
.fcard-wrap{position:absolute;left:50%;top:500px;width:347px;height:347px;transform:translateX(-50%);z-index:3;mix-blend-mode:normal}
.fcard{display:block;width:100%;height:100%;transform:scale(1.025) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .5s var(--out);transform-style:preserve-3d;border-radius:0;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.55)}
.fcard img{width:100%;height:100%;object-fit:cover}
.fcard .arrow{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:rgba(0,0,0,.6);display:grid;place-items:center;border:1px solid rgba(255,255,255,.5)}
.fcard .arrow svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:1.6}
.fcap{position:absolute;left:0;right:0;top:880px;text-align:center;z-index:2;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:18px}
.fcap .muted{font-size:14px;margin-bottom:18px}
.cur-big{position:fixed;left:0;top:0;width:100px;height:100px;margin:-50px 0 0 -50px;border-radius:50%;background:var(--acc);color:#000;display:grid;place-items:center;text-align:center;font:500 14px/1.1 var(--ui);pointer-events:none;z-index:60;transform:scale(0);transition:transform .25s var(--out)}
.cur-big.on{transform:scale(1)}

/* ---------- WORK ---------- */
.work{min-height:760px;padding:40px 4vw 70px;background:linear-gradient(180deg,#000 0%,#000 48%,#ea4f16 78%,#f6af60 100%)}
.wtable{margin-top:70px;list-style:none}
.wrow-head,.wrow{display:grid;grid-template-columns:42px minmax(0,1fr) 210px 70px 40px;gap:12px;align-items:center}
.wrow-head{font:400 14px var(--ui);color:var(--m1);padding:0 16px 12px}
.wtable li{border-top:1px solid rgba(255,255,255,.25)}
.wtable li:last-child{border-bottom:1px solid rgba(255,255,255,.25)}
.wrow{position:relative;width:100%;min-height:72px;padding:16px;text-align:left;background:rgba(0,0,0,.73);overflow:visible;isolation:isolate}
.wrow::before{content:"";position:absolute;inset:0;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform .45s var(--out);mix-blend-mode:difference;z-index:2;pointer-events:none}
.wrow:hover::before,.wrow:focus-visible::before{transform:scaleX(1)}
.wrow .t{font:500 24px/1.1 var(--disp);letter-spacing:-.01em}
.wrow .d,.wrow .y,.wrow .i{font:400 14px var(--ui);color:var(--m3)}
.wrow .a{justify-self:end;font-size:20px}
.wrow .pv{position:absolute;left:62%;top:50%;width:180px;height:180px;margin-top:-90px;z-index:3;pointer-events:none;opacity:0;filter:blur(8px);transform:scale(.96);transition:opacity .42s var(--out),filter .42s var(--out),transform .42s var(--out)}
.wrow .pv img{width:100%;height:100%;object-fit:cover}
.wrow:hover .pv,.wrow:focus-visible .pv{opacity:1;filter:none;transform:none}
.wtable li:hover,.wtable li:focus-within{position:relative;z-index:4}
.js .wtable li,.js .caps .crow{opacity:0;transform:translateY(34px)}
.in .wtable li,.in.caps .crow{opacity:1;transform:none;transition:opacity .5s var(--ease),transform .5s var(--ease);transition-delay:calc(var(--i)*85ms)}
.wcta{margin-top:85px;display:flex;justify-content:space-between;align-items:center;gap:20px;font:500 clamp(22px,3vw,40px)/1 var(--disp);color:#140700;letter-spacing:-.02em}

/* ---------- CAPS ---------- */
.caps{min-height:680px;padding-top:60px;padding-bottom:50px}
.caps-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.caps h2{font:500 clamp(30px,6.4vw,86px)/1 var(--disp);font-size:clamp(30px,6.4cqw,86px);letter-spacing:-.045em}
.caps h2 .o{color:var(--acc)}
.caps h2 .wd{display:inline-block;white-space:nowrap}
.caps .split-blur .c{transition-delay:calc(var(--i)*.018s)}
.chead,.crow-main{display:grid;grid-template-columns:42px minmax(0,1.1fr) minmax(0,1.7fr) 140px;gap:16px;align-items:center}
.chead{margin-top:70px;padding-bottom:12px;font:400 14px var(--ui);color:var(--m1)}
.crow{border-top:1px solid var(--r2)}
.crow:last-of-type{border-bottom:1px solid var(--r2)}
.crow-main{padding:20px 0}
.crow h3{font:500 24px/1.1 var(--disp)}
.crow .sc{font-size:18px;color:var(--m3)}
.crow .i{font:400 14px var(--ui);color:var(--m1)}
.xbtn{justify-self:end;min-height:44px;padding:12px 18px;border-radius:999px;background:var(--acc);color:#000;font:400 16px var(--ui);transition:transform .25s}
.xbtn:hover{transform:scale(1.04)}
.cpanel{padding:0 0 26px 58px;max-width:900px;color:var(--m3);font-size:18px}
.cpanel p+p{margin-top:10px;color:var(--m1);font-size:16px}
.cnotes{margin-top:60px;display:flex;justify-content:space-between;gap:20px;color:var(--m1);font-size:16px}

/* ---------- CONTACT ---------- */
.contact{padding-top:110px;padding-bottom:36px}
.contact h2{margin-top:42px;font:500 clamp(38px,8.5vw,116px)/.9 var(--disp);font-size:clamp(38px,8.5cqw,116px);letter-spacing:-.04em}
.contact h2 span{display:block}.contact h2 .o{color:var(--acc)}
.cgrid{margin-top:60px;display:grid;grid-template-columns:1fr 1fr;gap:40px}
.cgrid p{max-width:480px;font-size:18px}
.cgrid small{display:block;margin-top:16px;color:var(--m1);font-size:14px}
.cdet{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.cdet .em{font:500 clamp(22px,2.6vw,34px)/1.1 var(--disp);text-decoration:none;border-bottom:1px solid var(--r2)}
.cdet .em:hover{color:var(--acc)}
.cbtns{display:flex;flex-wrap:wrap;gap:10px}
.ghost{display:inline-flex;align-items:center;min-height:44px;padding:12px 18px;border-radius:999px;border:1px solid #777;color:#fff;text-decoration:none;font:400 16px var(--ui);transition:border-color .2s,color .2s}
.ghost:hover{border-color:var(--acc);color:var(--acc)}
.status{min-height:1.3em;font-size:14px;color:var(--m2)}
.foot{margin-top:100px;padding-top:20px;border-top:1px solid var(--r1);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;font:400 14px var(--ui);color:var(--m2)}
.foot nav{display:flex;gap:18px;flex-wrap:wrap}
.foot a{text-decoration:none}.foot a:hover{color:#fff}
.foot-note{margin-top:14px;font-size:13px;color:#666}

/* ---------- DIALOG ---------- */
dialog.case{width:min(1040px,calc(100vw - 32px));max-height:calc(100svh - 32px);margin:auto;background:#101010;color:#f2f0e9;border:1px solid #444;padding:0;overflow:auto;opacity:0;transform:translateY(15px);transition:opacity .22s var(--ease),transform .22s var(--ease)}
dialog.case[open].show{opacity:1;transform:none}
dialog.case::backdrop{background:rgba(0,0,0,.85)}
.cbar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:14px 24px;background:#101010;border-bottom:1px solid #2a2a2a;font:400 14px var(--ui);color:var(--m2)}
.cbar button{min-height:44px;padding:10px 16px;border:1px solid #555;border-radius:999px}
.cbar button:hover{border-color:var(--acc);color:var(--acc)}
.cbody{padding:28px 40px 48px}
.cbody h2{font:500 clamp(40px,6vw,82px)/.95 var(--disp);letter-spacing:-.04em}
.cbody .sum{margin-top:16px;font-size:20px;max-width:760px;color:#d9d6cc}
.cbody figure{margin:28px 0;background:#1a1a1a}
.cbody figure img{width:100%;max-height:540px;object-fit:contain}
.cmeta{display:grid;grid-template-columns:1fr 1fr;gap:16px 40px;padding:20px 0;border-top:1px solid #2a2a2a;border-bottom:1px solid #2a2a2a}
.cmeta dt,.csec h3{font:400 13px var(--ui);color:var(--m1);text-transform:uppercase;letter-spacing:.08em}
.cmeta dd{margin-top:4px}
.csec{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid #2a2a2a}
.csec ul{padding-left:18px}
.cbody .pill{margin-top:28px}

/* Custom cursor */
.cur{position:fixed;left:0;top:0;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;border:1px solid #fff;background:rgba(255,255,255,.15);pointer-events:none;z-index:70;opacity:0;transition:opacity .2s}
.cur.on{opacity:1}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1200px){.about{min-height:820px}}
@media (max-width:900px){
  .hero{height:100svh;min-height:760px;max-height:none}
  .subrow{font-size:11px}.notes{font-size:16px}
  .featured{min-height:860px}
  .fcard-wrap{width:278px;height:278px;top:340px}
  .gband{top:440px}.fcap{top:650px}
  .wrow-head,.chead{display:none}
  .wrow{grid-template-columns:32px minmax(0,1fr) 56px 30px}
  .wrow .d{grid-column:2;grid-row:2;margin-top:-6px}
  .wrow .y{grid-column:3;grid-row:1}.wrow .a{grid-column:4;grid-row:1}
  .wrow .pv{display:none}
  .caps-top{flex-direction:column}
}
@media (max-width:700px){
  .h1row{font-size:clamp(30px,11.4cqw,200px);padding-right:22px}
  .hero-title{top:150px}.sup{font-size:12px;right:-22px}
  .subrow{margin-top:24px;font-size:10px;flex-wrap:wrap}
  .subrow>:first-child{max-width:58%}.subrow>:last-child{max-width:40%;text-align:right;white-space:nowrap}
  .panel{height:430px}.panel ul{gap:28px}
  .roll{font-size:64px;line-height:64px;letter-spacing:-2px}.roll .lt,.roll .lt span{height:64px}
  .roll:hover .lt span,.roll:focus-visible .lt span{transform:translateY(-64px)}
  .cgrid{grid-template-columns:1fr}
}
@media (max-width:560px){
  .hero{min-height:max(720px,100svh)}
  .nav{top:20px}.clock{font-size:10px}.clock b{font-size:14px}.nav .pill{min-height:44px;padding:12px 16px;font-size:15px}
  .hero-title{top:145px}
  .notes{bottom:105px;width:calc(100% - 2*var(--pad))}
  .explore{left:var(--pad);right:auto;bottom:28px}
  .down{width:46px;height:46px}.down svg{width:23px;height:23px}.down-wrap{margin-top:20px}
  .vlabel{display:none}
  .about{min-height:0}
  .statement{margin-top:45px;font-size:clamp(30px,9cqw,47px)}
  .meta{padding-top:55px;flex-direction:column;align-items:flex-start}
  .disc{align-items:flex-start}.tags{justify-content:flex-start}
  .featured{min-height:0;display:flex;flex-direction:column;align-items:center;padding-bottom:60px}
  .featured .sec-head{align-self:stretch}.featured .sec-head small{display:none}
  .ftitle{margin-top:50px;font-size:clamp(44px,13.5cqw,70px)}
  .fcard-wrap{position:relative;left:auto;top:auto;transform:none;width:208px;height:208px;margin-top:22px}
  .gband{display:none}
  .fcap{position:static;margin-top:28px}
  .work{min-height:0;padding-left:var(--pad);padding-right:var(--pad)}
  .wrow{grid-template-columns:24px minmax(0,1fr) 46px 24px;gap:8px;padding:14px 10px}
  .wrow .t{font-size:20px}.wrow .d{font-size:12px}
  .wcta{flex-direction:column;align-items:flex-start}
  .caps{min-height:0}.caps h2{font-size:9.1cqw}
  .crow-main{grid-template-columns:28px 1fr;gap:6px 10px}
  .crow-main .sc{grid-column:2}.crow-main .xbtn{grid-column:2;justify-self:start;margin-top:8px}
  .cpanel{padding-left:38px}
  .cnotes{flex-direction:column}
  .contact{padding-top:65px}.contact h2{font-size:11.4cqw}
  .foot{flex-direction:column}
  .cbody{padding:22px 18px 36px}.cmeta{grid-template-columns:1fr}.csec{grid-template-columns:1fr;gap:8px}
}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  .js .hero .ch,.js .hero .nav,.js .hero .subrow>*,.js .hero .sup,.js .hero .notes,.js .hero .explore,.js .hero .down-wrap,.js .hero .vlabel{opacity:1!important;animation:none!important;transform:none!important;filter:none!important}
  .js .reveal-lines .ln>span,.js .split-blur .c,.js .wtable li,.js .caps .crow{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  .down svg{animation:none}
  .roll .lt span{transition:none}
  .hero-gl,.hero-glow,.follower,.cur,.cur-big{display:none!important}
  .fcard{transform:scale(1.025)!important}
  .pill,.wrow::before{transition:none}
}
body.menu-open #menuBtn{visibility:hidden}
.panel{z-index:45}
.panel .menu-btn[hidden]{display:none}
