:root{
--bg:#0b0d10;--bg2:#12151a;--card:#161a20;--line:#252b34;--tx:#e8eaed;--mut:#9aa3ae;--acc:#c8a96a;--max:1100px;
/* Golden ratio (phi = 1.618) system */
--phi:1.618;
/* type scale */
--t-2:.618rem;--t-1:.786rem;--t0:1rem;--t1:1.272rem;--t2:1.618rem;--t3:2.618rem;--t4:4.236rem;--t5:6.854rem;
/* line heights */
--lh-body:1.618;--lh-head:1.18;--lh-tight:1;
/* spacing scale */
--s-2:.236rem;--s-1:.382rem;--s0:.618rem;--s1:1rem;--s2:1.618rem;--s3:2.618rem;--s4:4.236rem;--s5:6.854rem;
--measure:66ch}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Inter,sans-serif;font-size:var(--t0);line-height:var(--lh-body);background:var(--bg);color:var(--tx);-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--s2)}
.narrow{max-width:calc(var(--measure) + 2 * var(--s2))}
.skip{position:absolute;left:-999px;top:var(--s0);background:var(--acc);color:#000;padding:var(--s0) var(--s1);border-radius:6px;z-index:10}
.skip:focus{left:var(--s0)}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:4px}
.nav{position:sticky;top:0;background:rgba(11,13,16,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);z-index:5}
.nav-in{display:flex;justify-content:space-between;align-items:center;height:var(--s4);gap:var(--s1)}
.logo{display:flex;align-items:center;text-decoration:none}
.logo img{height:calc(var(--s2) * 1.382);width:auto;display:block}
.nav ul{display:flex;gap:var(--s2);list-style:none}
.nav a{text-decoration:none;color:var(--mut);font-size:var(--t0)}
.nav a:hover{color:var(--tx)}
.hero{padding:var(--s5) 0 var(--s4);background:radial-gradient(900px 400px at 50% 0%,rgba(200,169,106,.12),transparent 70%)}
.eyebrow{color:var(--acc);text-transform:uppercase;letter-spacing:.2em;font-size:var(--t-1);font-weight:600;line-height:var(--lh-head);margin-bottom:var(--s1)}
h1{font-size:clamp(var(--t3),10vw,var(--t5));line-height:var(--lh-tight);letter-spacing:-.02em;font-weight:800}
.hero-mark{display:block;width:min(26.18rem,88vw);height:auto;margin:calc(-1 * var(--s3)) auto var(--s1)}
@media (max-width:600px){.hero-mark{margin-top:calc(-1 * var(--s2))}}
.lead{font-size:clamp(var(--t1),2.2vw,var(--t2));line-height:1.382;color:var(--mut);max-width:38ch;margin:0 0 var(--s3)}
.cta{display:flex;flex-wrap:wrap;gap:var(--s1)}
.btn{display:inline-block;padding:var(--s0) calc(var(--s0) * var(--phi) * 1.618);line-height:var(--lh-body);border:1px solid var(--line);border-radius:var(--s0);text-decoration:none;font-weight:600;transition:border-color .2s,background .2s}
.btn:hover{border-color:var(--acc)}
.btn.primary{background:var(--acc);color:#111;border-color:var(--acc)}
.btn.primary:hover{background:#d9bc80}
.section{padding:var(--s5) 0}
.section.alt{background:var(--bg2);border-block:1px solid var(--line)}
h2{font-size:clamp(var(--t2),4vw,var(--t3));line-height:var(--lh-head);margin-bottom:var(--s0);letter-spacing:-.01em}
.sub,.section p{color:var(--mut);max-width:var(--measure)}
.section p+.btn{margin-top:var(--s2)}
.grid{list-style:none;display:grid;grid-template-columns:1fr;gap:var(--s2);margin-top:var(--s3)}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--s1);padding:var(--s2);display:flex;flex-direction:column;gap:var(--s0);transition:border-color .2s,transform .2s}
.card:hover{border-color:var(--acc);transform:translateY(-2px)}
.card h3{font-size:var(--t1);line-height:var(--lh-head)}
.card p{flex:1}
.tag{align-self:flex-start;font-size:var(--t-1);line-height:var(--lh-body);letter-spacing:.06em;text-transform:uppercase;color:var(--acc);border:1px solid rgba(200,169,106,.4);padding:0 var(--s0);border-radius:999px}
.more{color:var(--acc);text-decoration:none;font-weight:600;margin-top:var(--s-1)}
.more:hover{text-decoration:underline}
.foot{padding:var(--s3) 0;color:var(--mut);font-size:var(--t-1);border-top:1px solid var(--line)}
.wm{height:.9em;width:auto;vertical-align:-.05em;display:inline-block}
/* Card grid on Fibonacci columns: row 1 = 7/7/7, row 2 = 13/8 (≈ 61.8 / 38.2) */
@media (min-width:901px){.grid{grid-template-columns:repeat(21,1fr)}.grid>.card{grid-column:span 7}.grid>.card:nth-child(4){grid-column:span 13}.grid>.card:nth-child(5){grid-column:span 8}}
@media (min-width:601px) and (max-width:900px){.grid{grid-template-columns:1.618fr 1fr}.grid>.card:nth-child(4n+2),.grid>.card:nth-child(4n+3){}.grid>.card:nth-child(even){}.grid>.card:last-child{grid-column:1/-1}}
@media (max-width:600px){
.wrap{padding:0 var(--s1)}
.nav ul{gap:var(--s0)}.nav a{font-size:var(--t-1)}.logo img{height:var(--t1)}
.hero{padding:var(--s4) 0 var(--s3)}.section{padding:var(--s4) 0}
.grid{gap:var(--s1)}}
/* Centered layout */
.hero .wrap,.section .wrap,.foot .wrap{text-align:center}
.lead,.sub,.section p{margin-left:auto;margin-right:auto}
.cta{justify-content:center}
.narrow{margin-left:auto;margin-right:auto}
.card{align-items:center;text-align:center}
.tag{align-self:center}
