
@font-face{font-family:"Inter";src:url(/fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Inter Tight";src:url(/fonts/inter-tight-800.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Inter Tight";src:url(/fonts/inter-tight-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Tight Fallback";src:local("Arial");size-adjust:92%;ascent-override:94%;descent-override:24%}
@font-face{font-family:"Inter Fallback";src:local("Arial");size-adjust:107%;ascent-override:90%;descent-override:22%}
:root{
--ground:#08080a; --tile:#121217; --tile-2:#1a1a21; --tile-3:#24242c;
--ink:#ececf1; --muted:#b4b4c2; --dim:#8a8a99;
--gold:#e8c27a; --on-gold:#0b0b0d; --peach:#fdba8c; --cyan:#38bdf8; --pink:#f472b6; --paper:#ececf1;
--gap:8px; --edge:10px; --r:10px; --pad:clamp(20px,2vw,28px);
--display:"Inter Tight","Tight Fallback",system-ui,sans-serif;
--sans:"Inter","Inter Fallback",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
--s-xxl:clamp(88px,14.4vw,220px); --s-xl:clamp(34px,4.6vw,68px); --s-l:clamp(21px,2.1vw,30px); --s-m:17px; --s-s:15px;
--ease:cubic-bezier(.16,1,.3,1);
color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;background:var(--ground);color:var(--ink);font:400 var(--s-m)/1.55 var(--sans);font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,video,svg{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{text-decoration-color:var(--gold)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:4px}
::selection{background:var(--gold);color:var(--on-gold)}
h1,h2,h3,h4,h5,h6{font-family:var(--display);font-weight:800;letter-spacing:-.025em;line-height:1.02;margin:0;text-wrap:balance}
p{margin:0 0 1em}
p:last-child{margin-bottom:0}
ul,ol{margin:0 0 1em;padding-left:1.2em}
strong,b{font-weight:650}
.skip{position:absolute;left:12px;top:-60px;z-index:200;background:var(--gold);color:var(--on-gold);padding:12px 18px;border-radius:var(--r);font-weight:650}
.skip:focus{top:12px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tnum{font-variant-numeric:tabular-nums}
.board{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);padding:0 var(--edge);margin-top:var(--gap)}
.t{background:var(--tile);border-radius:var(--r);padding:var(--pad);min-width:0;position:relative;overflow:hidden}
.t2{background:var(--tile-2)}.t3{background:var(--tile-3)}
.tg{background:var(--gold);color:var(--on-gold)}.tp{background:var(--peach);color:var(--on-gold)}.tc{background:var(--cyan);color:var(--on-gold)}.tk{background:var(--paper);color:var(--on-gold)}
.tg a,.tp a,.tc a,.tk a{color:inherit}
.t a.btn-ink{color:var(--ink)}.t a.btn-gold{color:var(--on-gold)}.t a.btn-ghost{color:var(--ink)}
.tg strong,.tp strong,.tc strong,.tk strong{color:inherit}
.tph{padding:0;background:var(--tile-2)}
.tph img{width:100%;height:100%;object-fit:cover}
.span-12{grid-column:span 12}.span-9{grid-column:span 9}.span-8{grid-column:span 8}.span-7{grid-column:span 7}.span-6{grid-column:span 6}.span-5{grid-column:span 5}.span-4{grid-column:span 4}.span-3{grid-column:span 3}.span-2{grid-column:span 2}
.gap-section{margin-top:clamp(96px,11vw,168px)}
.muted{color:var(--muted)}
.lead{font-size:var(--s-l);line-height:1.25;letter-spacing:-.01em;font-weight:450}
.small{font-size:var(--s-s);line-height:1.45}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:14px 24px;border-radius:999px;font:650 16px/1 var(--sans);text-decoration:none;border:0;cursor:pointer;transition:transform .25s var(--ease),background-color .2s}
.btn:hover{transform:translateY(-2px)}.btn:active{transform:scale(.97)}
.btn-gold{background:var(--gold);color:var(--on-gold)}
.btn-gold:hover{background:#f0d196}
.btn-ink{background:var(--on-gold);color:var(--ink)}
.btn-ghost{background:var(--tile-3);color:var(--ink)}
.btn-ghost:hover{background:#2e2e38}
.bar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:var(--gap);padding:var(--gap) var(--edge);background:var(--ground)}
.bar .brand{display:flex;align-items:center;gap:12px;background:var(--tile);border-radius:var(--r);padding:12px 18px;text-decoration:none;min-height:56px}
.bar .brand img{width:118px;height:auto}
.bar .brand span{font:650 14px/1.15 var(--sans);color:var(--muted)}
.bar nav{flex:1;display:flex;gap:var(--gap)}
.bar nav a{flex:1;display:flex;align-items:center;background:var(--tile);border-radius:var(--r);padding:0 18px;min-height:56px;text-decoration:none;font-weight:550;transition:background-color .2s}
.bar nav a:hover,.bar nav a[aria-current]{background:var(--tile-3)}
.bar .act{min-height:56px;border-radius:var(--r);padding:0 22px}
.menu{display:none}
@media (max-width:980px){
.bar nav,.bar .act{display:none}
.bar .brand{flex:1}
.menu{display:block;position:static}
.menu summary{list-style:none;display:flex;align-items:center;justify-content:center;min-width:56px;min-height:56px;background:var(--tile);border-radius:var(--r);cursor:pointer;font-weight:650;padding:0 18px}
.menu summary::-webkit-details-marker{display:none}
.menu[open] .sheet{position:absolute;left:var(--edge);right:var(--edge);top:72px;display:grid;grid-template-columns:1fr 1fr;gap:6px}
.menu .sheet a{display:flex;align-items:center;min-height:64px;padding:0 18px;background:var(--tile-2);border-radius:var(--r);text-decoration:none;font-weight:600}
.menu .sheet a.full{grid-column:span 2;background:var(--gold);color:var(--on-gold);justify-content:center}
}
.menu:not([open]) .sheet{display:none}
.hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:170px 64px minmax(520px,calc(100svh - 266px));gap:var(--gap);padding:var(--gap) var(--edge) 0}
.band{grid-column:1/-1;display:flex;align-items:center;justify-content:center;background:var(--tile);border-radius:var(--r);overflow:hidden;text-decoration:none;padding:0}
.band b{font:800 var(--s-xxl)/.8 var(--display);letter-spacing:-.045em;white-space:nowrap;text-transform:uppercase;color:var(--ink);transform:translateY(.06em)}
.links{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.links a{background:var(--tile);border-radius:var(--r);padding:20px 22px;text-decoration:none;font-weight:600;font-size:16px;transition:background-color .2s}
.links a:hover{background:var(--tile-3)}
.rail-l{grid-column:1/span 2;display:grid;grid-template-rows:1.15fr 1fr;gap:var(--gap);min-height:0}
.rail-l .tph{min-height:0}
.facts{list-style:none;margin:0;padding:var(--pad);display:flex;flex-direction:column;justify-content:space-between;gap:10px;font-size:var(--s-s);line-height:1.3}
.facts b{display:block;font-size:20px;font-family:var(--display);letter-spacing:-.02em}
.stage{grid-column:3/span 8;position:relative;padding:0;min-height:0}
.stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.statement{position:absolute;left:var(--gap);right:var(--gap);bottom:var(--gap);background:var(--ground);border-radius:var(--r);padding:clamp(22px,2.4vw,34px)}
.statement h1{font-size:clamp(32px,3.6vw,58px);line-height:.98;text-transform:uppercase;letter-spacing:-.035em;max-width:16ch}
.statement p{margin:14px 0 0;font-size:clamp(17px,1.35vw,20px);color:var(--muted);max-width:56ch}
.rail-r{grid-column:11/span 2;display:grid;grid-template-rows:repeat(4,1fr) 1.35fr;gap:var(--gap);min-height:0}
.rail-r .t{padding:18px;font-size:var(--s-s);line-height:1.3;display:flex;flex-direction:column;justify-content:flex-end}
.rail-r .t b{font:800 22px/1 var(--display);letter-spacing:-.02em;display:block;margin-bottom:6px}
.rail-r .act{justify-content:space-between;text-decoration:none}
.rail-r .act b{font-size:clamp(22px,1.9vw,30px);line-height:1}
.rail-r .act:hover{background:#f0d196}
.r1{background:#ececf1;color:#0b0b0d}.r2{background:#c9c9d3;color:#0b0b0d}.r3{background:#3a3a45}.r4{background:#22222a}
@media (max-width:980px){
.hero{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:6px;padding:6px 6px 0}
.band{height:110px}.band b{font-size:26vw}
.links{grid-template-columns:1fr 1fr;gap:6px}
.links{order:1}.stage{order:2}.rail-r{order:3}.rail-l{order:4}
.stage{grid-column:1/-1;aspect-ratio:auto;background:none;overflow:visible;display:flex;flex-direction:column;gap:6px;padding:0}
.stage>img{position:static;aspect-ratio:4/3;border-radius:var(--r)}
.statement{position:static;background:var(--tile)}
.statement h1{font-size:clamp(30px,8.4vw,44px)}
.rail-l{grid-column:1/-1;grid-template-columns:1fr 1.4fr;grid-template-rows:auto}
.rail-l .tph{aspect-ratio:3/4}
.rail-r{grid-column:1/-1;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:6px}
.rail-r .t{flex:0 0 42%;min-height:132px;scroll-snap-align:start}
.rail-r .act{flex-basis:70%}
}
.intro{padding:96px var(--edge) 0;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
.intro>.lead{grid-column:1/-1;max-width:none;font-size:clamp(22px,2.2vw,32px);line-height:1.22}
.intro .cols{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:48px}
.intro .cols p{font-size:16px;line-height:1.55;color:var(--muted);margin:0}
.intro .cols p b{color:var(--ink)}
@media (max-width:980px){.intro .cols{grid-template-columns:1fr 1fr;row-gap:32px}}
@media (max-width:560px){.intro .cols{grid-template-columns:1fr}}
.mosaic{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--gap);padding:0 var(--edge)}
.mosaic .m{aspect-ratio:1;border-radius:var(--r);overflow:hidden;position:relative;background-image:var(--img);background-size:600% 400%;background-repeat:no-repeat}
.mosaic .m i{position:absolute;inset:0;background:inherit;background-size:inherit;background-position:inherit;transition:transform .7s var(--ease)}
.mosaic .m:hover i{transform:scale(1.08)}
.mosaic .c{aspect-ratio:1;border-radius:var(--r);padding:16px;display:flex;flex-direction:column;justify-content:space-between;font-size:18px;line-height:1.25}
.mosaic .c h2{font-size:clamp(24px,2.6vw,40px);line-height:.95}
.mosaic .c b{font:800 clamp(28px,3vw,46px)/1 var(--display);letter-spacing:-.03em}
.mosaic .c.act{text-decoration:none;font-weight:650}
@media (max-width:760px){.mosaic{grid-template-columns:repeat(3,1fr);gap:6px}.mosaic .m{background-size:300% 600%}.mosaic .hd{grid-column:span 2;aspect-ratio:auto}.mosaic .c{font-size:15px}.mosaic .hide-s{display:none}}
.grow{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:10px;padding:0 var(--edge);align-items:end}
.grow h2{grid-column:1/span 7;grid-row:1;align-self:start;font-size:var(--s-xl)}
.grow .st{grid-row:2}
.grow .st .ph{border-radius:var(--r);overflow:hidden;background:var(--tile-2)}
.grow .st .ph img{width:100%;height:100%;object-fit:cover}
.grow .s1{grid-column:1/span 3}.grow .s1 .ph{height:30vh}
.grow .s2{grid-column:4/span 4}.grow .s2 .ph{height:44vh}
.grow .s3{grid-column:8/span 5}.grow .s3 .ph{height:60vh;margin-top:-28vh}
.grow h3{font:600 20px/1.2 var(--sans);letter-spacing:-.01em;margin:16px 0 6px}
.grow p{color:var(--muted);font-size:16px;max-width:42ch}
@media (max-width:860px){.grow{grid-template-columns:1fr;row-gap:28px}.grow h2,.grow .st{grid-column:1;grid-row:auto}.grow .s1 .ph{height:34vw}.grow .s2 .ph{height:46vw}.grow .s3 .ph{height:62vw;margin-top:0}}
.pricing{padding:0 var(--edge)}
.ptable{width:100%;border-collapse:separate;border-spacing:0;font-size:20px;border-radius:var(--r);overflow:hidden;background:var(--tile)}
.ptable th,.ptable td{text-align:left;vertical-align:top;padding:20px 22px}
.ptable thead th{padding-top:28px;padding-bottom:24px}
.ptable thead th .nm{display:block;font:800 clamp(26px,3vw,44px)/1 var(--display);letter-spacing:-.03em}
.ptable thead th .pr{display:block;font:400 clamp(26px,3vw,44px)/1.1 var(--display);margin-top:6px}
.ptable thead th .per{display:block;font:400 16px/1.3 var(--sans);color:var(--muted);margin-top:8px}
.ptable thead th.cap{font:800 var(--s-xl)/.95 var(--display);vertical-align:bottom}
.ptable tbody tr:nth-child(odd){background:var(--tile-2)}
.ptable tbody th{font-weight:500;color:var(--muted);width:24%}
.ptable .rec{background:var(--gold)!important;color:var(--on-gold)}
.ptable .rec .per{color:#3b3420}
.ptable tbody tr:nth-child(odd) .rec{background:#e3ba6c!important}
.ptable tfoot td{padding-bottom:28px}
.reviewed{margin-top:14px;font-size:var(--s-s);color:var(--muted)}
.pblocks{display:none}
@media (max-width:860px){
.ptable{display:none}.pblocks{display:grid;gap:8px}
.pblock{border-radius:var(--r);padding:24px;background:var(--tile)}
.pblock .nm{font:800 9vw/1 var(--display);letter-spacing:-.03em}.pblock .pr{font:400 9vw/1.1 var(--display)}
.pblock dl{margin:18px 0}.pblock dt{color:var(--muted);font-size:15px;margin-top:12px}.pblock dd{margin:2px 0 0;font-size:17px}
.pblock.rec{background:var(--gold);color:var(--on-gold)}.pblock.rec dt{color:#3b3420}
.pblock .btn{width:100%}
}
.finder{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);padding:0 var(--edge);margin-top:var(--gap)}
.finder fieldset{grid-column:span 7;border:0;margin:0;background:var(--tile);border-radius:var(--r);padding:var(--pad)}
.finder legend{float:left;width:100%;font:800 clamp(24px,2.4vw,36px)/1 var(--display);letter-spacing:-.025em;margin-bottom:18px}
.finder .q{clear:both;margin-bottom:22px}
.finder .q>span{display:block;font-weight:600;margin-bottom:10px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{position:relative}
.chips input{position:absolute;opacity:0;inset:0;cursor:pointer}
.chips span{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border-radius:999px;background:var(--tile-3);font-size:16px;transition:background-color .2s,color .2s}
.chips input:checked+span{background:var(--ink);color:var(--on-gold)}
.chips input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}
.finder .out{grid-column:span 5;border-radius:var(--r);padding:var(--pad);background:var(--gold);color:var(--on-gold);display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.finder .out .pn{font:800 clamp(30px,3.6vw,56px)/.95 var(--display);letter-spacing:-.035em}
.finder .out .pp{font:400 clamp(30px,3.6vw,56px)/1 var(--display)}
.finder .out p{font-size:17px;margin:12px 0 0;max-width:40ch}
@media (max-width:860px){.finder fieldset,.finder .out{grid-column:span 12}}
.shelf-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 32px;padding:0 var(--edge);margin-bottom:24px}
.shelf-head h2{font-size:28px}
.shelf-head p{margin:0;color:var(--muted);font-size:var(--s-s)}
.shelf{display:flex;gap:6px;padding:0 var(--edge);overflow-x:auto;scrollbar-width:thin}
.spine{flex:1 0 32px;writing-mode:vertical-rl;height:520px;display:flex;align-items:center;gap:12px;padding:14px 0;text-decoration:none;font-size:17px;font-weight:550;white-space:nowrap;border-radius:6px;background:var(--tile);transition:background-color .2s,color .2s}
.spine em{font-style:normal;font-size:14px;font-weight:600;padding:8px 4px;border-radius:4px;color:var(--on-gold)}
.spine:hover,.spine:focus-visible{background:var(--ink);color:var(--on-gold)}
.d-build em{background:var(--gold)}.d-retail em{background:var(--peach)}.d-service em{background:var(--cyan)}.d-learn em{background:var(--paper)}
@media (max-width:760px){.shelf{flex-wrap:wrap;gap:10px 10px;overflow:visible}.spine{writing-mode:horizontal-tb;height:auto;flex:0 0 auto;padding:10px 12px;font-size:17px}}
.quote{display:grid;grid-template-columns:5fr 7fr;margin:0 var(--edge);min-height:70svh;border-radius:var(--r);overflow:hidden}
.quote .who{background:var(--ink);color:var(--on-gold);padding:32px;display:flex;flex-direction:column;justify-content:flex-end}
.quote .who b{font-size:20px;font-weight:600}.quote .who span{font-size:16px;color:#4a4a55}
.quote blockquote{margin:0;background:var(--peach);color:var(--on-gold);padding:48px 48px 48px 64px}
.quote blockquote p{font:500 clamp(24px,2.6vw,36px)/1.18 var(--sans);letter-spacing:-.015em;max-width:26ch;text-indent:-.45em}
@media (max-width:760px){.quote{grid-template-columns:1fr;min-height:0}.quote blockquote{order:-1;padding:28px 24px 96px}.quote blockquote p{font-size:24px}.quote .who{min-height:110px;padding:20px 24px}}
.faq{margin:0 var(--edge);border-radius:var(--r);overflow:hidden}
.faq .fh{background:var(--gold);color:var(--on-gold);min-height:40svh;display:flex;align-items:flex-end;padding:32px}
.faq .fh h2{font-size:clamp(44px,7vw,108px);line-height:.9;text-transform:uppercase;letter-spacing:-.04em}
.faq .fq{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding:56px 32px;background:var(--tile)}
.faq .fq:nth-child(odd){background:var(--tile-2)}
.faq .fq h3{grid-column:1/span 5;font:700 clamp(22px,2vw,30px)/1.15 var(--sans);letter-spacing:-.015em}
.faq .fq div{grid-column:7/span 6;font-size:18px;line-height:1.55}
@media (max-width:760px){.faq .fh{min-height:30svh}.faq .fh h2{font-size:13vw}.faq .fq{grid-template-columns:1fr;padding:32px 20px;gap:12px}.faq .fq h3,.faq .fq div{grid-column:1}.faq .fq h3{font-size:22px}.faq .fq div{font-size:17px}}
.contact{margin:0 var(--edge);border-radius:var(--r);background:var(--gold);color:var(--on-gold);padding:48px 0 56px;overflow:hidden;min-height:80svh;display:flex;flex-direction:column}
.strip{display:flex;gap:8px;width:max-content}
.strip img{height:150px;width:auto;border-radius:6px}
.contact .in{padding:0 32px;margin-top:72px}
.contact h2{font-size:clamp(36px,4vw,60px);text-transform:uppercase;letter-spacing:-.035em;line-height:.95;max-width:18ch}
.contact .sub{font-size:18px;max-width:52ch;margin-top:14px}
.cbar{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:40px}
.cbar label{display:block}
.cbar input,.cbar button{width:100%;height:96px;border:0;border-radius:var(--r);background:#d6ad62;color:var(--on-gold);font:500 18px/1 var(--sans);text-align:center;padding:0 16px}
.cbar input::placeholder{color:#3b3420}
.cbar input:focus{background:#f5dfb2;outline:3px solid var(--on-gold);outline-offset:2px}
.cbar button{background:var(--on-gold);color:var(--ink);font-weight:700;cursor:pointer;transition:transform .2s var(--ease)}
.cbar button:hover{transform:translateY(-2px)}
.fine{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px;font-size:13px;line-height:1.4}
.fine span:nth-child(2){grid-column:3}
.contact .direct{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:36px;font-weight:600;font-size:18px}
@media (max-width:760px){.contact{min-height:0;padding:32px 0}.strip img{height:110px}.contact .in{padding:0 20px;margin-top:40px}.contact h2{font-size:9vw}.cbar{grid-template-columns:1fr}.cbar input,.cbar button{height:60px}.fine{grid-template-columns:1fr}.fine span:nth-child(2){grid-column:1}}
.marquee{overflow:hidden;padding:clamp(48px,6vw,96px) 0}
.marquee .track{display:flex;width:max-content;gap:.4em;font:800 clamp(56px,9vw,150px)/1 var(--display);letter-spacing:-.045em;text-transform:uppercase;white-space:nowrap}
.marquee .track span{padding-right:.4em}
.foot{margin:clamp(96px,11vw,168px) var(--edge) var(--edge);background:var(--tile);border-radius:var(--r);padding:32px}
.mark{display:flex;align-items:flex-end;gap:4px;height:34svh;min-height:200px}
.mark span{flex:1;display:flex;align-items:flex-end;justify-content:center;border-radius:6px;font:800 clamp(56px,10vw,170px)/.78 var(--display);color:var(--ground);padding-bottom:.04em;overflow:hidden}
.mark span:nth-child(5n+1){background:var(--gold);height:100%}.mark span:nth-child(5n+2){background:var(--paper);height:78%}.mark span:nth-child(5n+3){background:var(--peach);height:92%}.mark span:nth-child(5n+4){background:var(--cyan);height:66%}.mark span:nth-child(5n+5){background:#c9c9d3;height:86%}
.fcols{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;margin-top:56px}
.fcols nav{grid-column:span 2}.fcols .nap{grid-column:9/span 4}
.fcols h2{font:600 15px/1.2 var(--sans);letter-spacing:0;color:var(--muted);margin-bottom:12px}
.fcols ul{list-style:none;padding:0;margin:0;font-size:15px;line-height:1.9}
.fcols a{text-decoration:none}.fcols a:hover{text-decoration:underline}
.nap address{font-style:normal;font-size:15px;line-height:1.6}
.fbase{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:48px;font-size:14px;color:var(--muted)}
@media (max-width:860px){.mark{height:22svh;min-height:120px}.fcols{grid-template-columns:1fr 1fr}.fcols nav,.fcols .nap{grid-column:auto}.fcols .nap{grid-column:1/-1}}
.phero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);padding:0 var(--edge)}
.phero .main{grid-column:span 7;display:flex;flex-direction:column;justify-content:space-between;gap:32px;min-height:min(70svh,640px)}
.crumbs{font-size:14px;color:var(--muted)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0}
.crumbs li+li::before{content:"›";margin-right:6px}
.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}
.phero h1{font-size:clamp(38px,5.2vw,84px);line-height:.95;text-transform:uppercase;letter-spacing:-.04em;max-width:15ch}
.phero h1.post{font-size:clamp(30px,3.1vw,50px);line-height:1.02;text-transform:none;letter-spacing:-.03em;max-width:30ch}
.phero .sub{font-size:var(--s-l);line-height:1.3;color:var(--muted);max-width:40ch;margin:18px 0 0}
.phero .ctas{display:flex;flex-wrap:wrap;gap:10px}
.phero .pic{grid-column:span 5;padding:0;min-height:320px}
.phero .pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.phero .row{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.phero .row .t{padding:20px 22px;font-size:var(--s-s);line-height:1.35}
.phero .row b{display:block;font:800 clamp(22px,2vw,30px)/1.05 var(--display);letter-spacing:-.02em;margin-bottom:6px}
@media (max-width:980px){.phero .main,.phero .pic{grid-column:1/-1}.phero .main{min-height:0}.phero .pic{aspect-ratio:4/3;min-height:0}.phero .row{grid-template-columns:1fr 1fr}}
.answer{grid-column:1/-1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap)}
.answer .lab{grid-column:span 3;background:var(--ink);color:var(--on-gold);font:800 clamp(24px,2.4vw,36px)/1 var(--display);letter-spacing:-.025em;display:flex;align-items:flex-end}
.answer .txt{grid-column:span 9;font-size:var(--s-l);line-height:1.35}
@media (max-width:860px){.answer .lab,.answer .txt{grid-column:1/-1}.answer .txt{font-size:19px}}
.article{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);padding:0 var(--edge);align-items:start}
.toc{grid-column:span 3;position:sticky;top:80px;font-size:var(--s-s)}
.toc h2{font:600 15px/1.2 var(--sans);letter-spacing:0;color:var(--muted);margin-bottom:12px}
.toc ol{list-style:none;padding:0;margin:0;display:grid;gap:2px}
.toc a{display:block;padding:8px 10px;border-radius:6px;text-decoration:none;line-height:1.3}
.toc a:hover{background:var(--tile-3)}
.prose{grid-column:span 6;padding:clamp(24px,3.4vw,52px)}
.aside{grid-column:span 3;display:grid;gap:var(--gap);position:sticky;top:80px}
.aside .t{font-size:var(--s-s);line-height:1.45}
.aside .t b.big{display:block;font:800 30px/1 var(--display);letter-spacing:-.025em;margin-bottom:8px}
.aside .btn{width:100%;margin-top:14px}
@media (max-width:1100px){.toc{display:none}.prose{grid-column:span 8}.aside{grid-column:span 4}}
@media (max-width:820px){.prose,.aside{grid-column:1/-1}.aside{position:static}}
.prose>*+*{margin-top:1.1em}
.prose h2{font-size:clamp(28px,2.6vw,40px);line-height:1.02;margin-top:1.9em;text-transform:none;scroll-margin-top:90px}
.prose h3{font:700 22px/1.25 var(--sans);letter-spacing:-.012em;margin-top:1.6em}
.prose h4{font:650 19px/1.3 var(--sans);letter-spacing:-.005em;margin-top:1.4em}
.prose h5,.prose h6{font:650 17px/1.35 var(--sans);letter-spacing:0;margin-top:1.3em}
.prose h2+*,.prose h3+*,.prose h4+*,.prose h5+*,.prose h6+*{margin-top:.6em}
.prose p,.prose li{font-size:18px;line-height:1.65}
.prose li+li{margin-top:.45em}
.prose a{color:var(--gold)}
.prose table{width:100%;border-collapse:collapse;font-size:16px;border-radius:var(--r);overflow:hidden}
.prose th,.prose td{text-align:left;padding:12px 14px;vertical-align:top}
.prose thead th{background:var(--tile-3)}
.prose tbody tr:nth-child(odd){background:var(--tile-2)}
.prose blockquote{margin:1.4em 0;padding:22px 24px;background:var(--tile-2);border-radius:var(--r);font-size:19px}
.prose .figure{margin:0;border-radius:var(--r);overflow:hidden}
.prose figcaption{font-size:14px;color:var(--muted);padding-top:10px}
.byline{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:15px;color:var(--muted)}
.byline a{color:var(--ink)}
.tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.tags li{background:var(--tile-3);border-radius:999px;padding:6px 14px;font-size:14px}
.cards{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);padding:0 var(--edge)}
.card{grid-column:span 4;display:flex;flex-direction:column;background:var(--tile);border-radius:var(--r);overflow:hidden;text-decoration:none;transition:background-color .2s}
.card:hover{background:var(--tile-3)}
.card .ph{aspect-ratio:3/2;overflow:hidden;background:var(--tile-2)}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.card:hover .ph img{transform:scale(1.05)}
.card .bd{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.card time,.card .meta{font-size:14px;color:var(--muted)}
.card h2,.card h3{font:700 21px/1.22 var(--sans);letter-spacing:-.012em}
.card p{font-size:16px;color:var(--muted);margin:0}
.card.wide{grid-column:span 8}.card.wide .ph{aspect-ratio:16/9}
.card.wide h2,.card.wide h3{font:800 clamp(26px,2.6vw,40px)/1 var(--display);letter-spacing:-.03em}
@media (max-width:980px){.card{grid-column:span 6}.card.wide{grid-column:span 12}}
@media (max-width:620px){.card{grid-column:span 12}}
.tools{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);padding:0 var(--edge);margin-bottom:var(--gap)}
.tools .t{grid-column:span 12;display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center}
.tools input{flex:1 1 280px;min-height:52px;border:0;border-radius:999px;background:var(--tile-3);color:var(--ink);font:400 17px var(--sans);padding:0 22px}
.tools input:focus{outline:3px solid var(--gold);outline-offset:2px}
.svc{grid-column:span 4;display:flex;flex-direction:column;justify-content:space-between;gap:24px;min-height:220px;text-decoration:none;transition:background-color .2s}
.svc:hover{background:var(--tile-3)}
.svc h3{font:800 clamp(24px,2.2vw,34px)/1 var(--display);letter-spacing:-.025em}
.svc p{margin:0;color:var(--muted);font-size:16px}
.svc .fr{font-weight:650;font-size:16px}
@media (max-width:980px){.svc{grid-column:span 6}}@media (max-width:620px){.svc{grid-column:span 12}}
.sechead{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding:0 var(--edge);margin-bottom:28px;align-items:end}
.sechead h2{grid-column:span 7;font-size:var(--s-xl);text-transform:uppercase;letter-spacing:-.04em;line-height:.92}
.sechead p{grid-column:span 5;margin:0;color:var(--muted);font-size:18px}
@media (max-width:860px){.sechead h2,.sechead p{grid-column:1/-1}}
.awards{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);padding:0 var(--edge)}
.aw{grid-column:span 3;padding:0;display:flex;flex-direction:column;background:var(--tile)}
.aw img{aspect-ratio:4/3;object-fit:cover;width:100%}
.aw figcaption{padding:16px 18px;font-size:15px;line-height:1.35}
.aw figcaption b{display:block;font-size:17px;margin-bottom:2px}
@media (max-width:980px){.aw{grid-column:span 6}}
.wa{position:fixed;right:16px;bottom:16px;z-index:60;width:56px;height:56px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.45); transition:transform .25s var(--ease)}
.wa:hover{transform:scale(1.06)}
.wa svg{width:28px;height:28px;fill:#08080a}
@media (prefers-reduced-motion:no-preference){
.js .rv{opacity:0;transform:translateY(24px)}
}
@media (prefers-reduced-motion:reduce){
*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}
}
