*,*::before,*::after{box-sizing:border-box}
:root{
  --bg:#0D0F12; --bg-2:#131619; --card:#181B20; --card-2:#1E2228;
  --line:#272C33; --line-2:#333941;
  --text:#F1F2F4; --muted:#9BA3AE; --dim:#767E88;
  --copper:#C98A5E; --copper-l:#E8B98F; --lime:#D9F227;
  --r:16px; --r-s:10px;
  --shell:1200px;
}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);
  font-family:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:16.5px;line-height:1.7;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:"Sora","Manrope",sans-serif;font-weight:600;line-height:1.14;
  letter-spacing:-.022em;margin:0}
p{margin:0}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.shell{max-width:var(--shell);margin:0 auto;padding:0 24px}
.shell-n{max-width:780px;margin:0 auto;padding:0 24px}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:50;background:rgba(13,15,18,.78);
  backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;gap:28px;height:70px}
.logo{display:flex;align-items:center;gap:11px;font-family:"Sora",sans-serif;
  font-weight:600;font-size:1.02rem;letter-spacing:-.01em}
.logo-mark{width:30px;height:30px;border-radius:9px;flex:none;
  background:linear-gradient(140deg,var(--copper-l),var(--copper) 55%,#8B5A38);
  display:grid;place-items:center;box-shadow:0 0 0 1px rgba(232,185,143,.25)}
.logo-mark i{width:10px;height:10px;border-radius:50%;background:#0D0F12;display:block}
.nav{margin-left:auto}
.nav ul{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.nav a{display:block;padding:9px 14px;border-radius:999px;font-size:.92rem;
  color:var(--muted);transition:.18s}
.nav a:hover{color:var(--text);background:var(--card)}
.nav a[aria-current="page"]{color:var(--bg);background:var(--lime);font-weight:600}
.burger{display:none;margin-left:auto;width:42px;height:38px;border-radius:10px;
  border:1px solid var(--line-2);background:var(--card);cursor:pointer;padding:0}
.burger span{display:block;width:16px;height:1.5px;background:var(--text);margin:3px auto;border-radius:2px}

/* ---------- hero ---------- */
.hero{position:relative;isolation:isolate;min-height:min(92vh,820px);display:flex;
  align-items:flex-end;overflow:hidden;border-bottom:1px solid var(--line)}
.hero-stage{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-bg{width:100%;height:100%;object-fit:cover;object-position:center 42%;
  transform:scale(1.06);animation:heroDrift 22s ease-in-out infinite alternate}
.hero-veil{position:absolute;inset:0;
  background:
    linear-gradient(105deg,rgba(8,10,12,.94) 0%,rgba(8,10,12,.78) 42%,rgba(8,10,12,.35) 68%,rgba(8,10,12,.55) 100%),
    linear-gradient(to top,rgba(13,15,18,.92) 0%,transparent 42%),
    radial-gradient(55% 50% at 72% 40%,rgba(201,138,94,.22),transparent 70%)}
.hero-in{position:relative;z-index:1;width:100%;padding:110px 24px 78px;max-width:var(--shell);margin:0 auto}
.hero-brand{font-family:"Sora",sans-serif;font-size:clamp(2.8rem,7.2vw,5.4rem);font-weight:700;
  letter-spacing:-.045em;line-height:0.92;max-width:12ch;margin:0 0 28px;
  background:linear-gradient(120deg,#fff 10%,var(--copper-l) 55%,var(--copper) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  animation:heroRise .9s cubic-bezier(.22,1,.36,1) both}
.kicker{display:inline-flex;align-items:center;gap:9px;font-size:.74rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--copper-l);border:1px solid rgba(201,138,94,.4);
  background:rgba(13,15,18,.45);backdrop-filter:blur(8px);padding:7px 14px;border-radius:999px;
  margin-bottom:22px;animation:heroRise .9s .08s cubic-bezier(.22,1,.36,1) both}
.kicker b{width:5px;height:5px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 3px rgba(217,242,39,.18)}
.hero h1{font-size:clamp(1.55rem,2.8vw,2.15rem);max-width:22ch;font-weight:500;color:#E8EAED;
  animation:heroRise .9s .14s cubic-bezier(.22,1,.36,1) both}
.hero h1 em{font-style:normal;color:var(--copper-l)}
.hero-sub{margin-top:18px;color:#B7BEC8;font-size:1.05rem;max-width:46ch;
  animation:heroRise .9s .2s cubic-bezier(.22,1,.36,1) both}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;
  animation:heroRise .9s .28s cubic-bezier(.22,1,.36,1) both}
.btn{display:inline-flex;align-items:center;gap:9px;padding:13px 22px;border-radius:999px;
  font-size:.94rem;font-weight:600;transition:transform .2s,filter .2s,border-color .2s,color .2s;
  border:1px solid transparent}
.btn-a{background:var(--lime);color:#0D0F12}
.btn-a:hover{filter:brightness(1.08);transform:translateY(-2px)}
.btn-b{border-color:rgba(241,242,244,.35);color:var(--text);background:rgba(13,15,18,.35);
  backdrop-filter:blur(6px)}
.btn-b:hover{border-color:var(--copper);color:var(--copper-l);transform:translateY(-2px)}
@keyframes heroRise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes heroDrift{from{transform:scale(1.06) translate3d(0,0,0)}to{transform:scale(1.12) translate3d(-1.5%,-1%,0)}}
@media (prefers-reduced-motion:reduce){
  .hero-bg,.hero-brand,.kicker,.hero h1,.hero-sub,.hero-cta{animation:none}
}

/* ---------- stats ---------- */
.stats{border-bottom:1px solid var(--line);background:var(--bg-2)}
.stats-in{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}
.stat{background:var(--bg-2);padding:30px 26px}
.stat b{display:block;font-family:"Sora",sans-serif;font-size:1.9rem;font-weight:600;
  letter-spacing:-.03em;color:var(--copper-l)}
.stat span{display:block;margin-top:5px;font-size:.84rem;color:var(--dim);
  letter-spacing:.07em;text-transform:uppercase}

/* ---------- sections ---------- */
.sec{padding:92px 0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:44px}
.sec-head h2{font-size:clamp(1.7rem,3vw,2.35rem)}
.sec-head p{color:var(--muted);max-width:46ch;font-size:1rem}
.eyebrow{font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--copper);
  margin-bottom:14px;display:block}

/* ---------- category grid ---------- */
.grid-cat{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.cat{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r);
  padding:32px 30px 28px;transition:.2s;overflow:hidden;display:block}
.cat::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,var(--copper),transparent);opacity:0;transition:.2s}
.cat:hover{border-color:var(--line-2);background:var(--card-2);transform:translateY(-3px)}
.cat:hover::before{opacity:1}
.cat-no{font-family:"Sora",sans-serif;font-size:.8rem;color:var(--dim);letter-spacing:.14em}
.cat h3{font-size:1.5rem;margin:14px 0 10px}
.cat p{color:var(--muted);font-size:.97rem}
.cat-foot{display:flex;align-items:center;justify-content:space-between;margin-top:24px;
  padding-top:18px;border-top:1px solid var(--line)}
.pill{font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--copper-l);
  border:1px solid rgba(201,138,94,.3);border-radius:999px;padding:5px 12px}
.arrow{color:var(--lime);font-size:.92rem;font-weight:600}

/* ---------- how / notes ---------- */
.notes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.note{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r);padding:28px}
.note h3{font-size:1.08rem;margin-bottom:10px}
.note p{color:var(--muted);font-size:.95rem}
.note i{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;
  background:rgba(201,138,94,.12);color:var(--copper-l);font-style:normal;
  font-family:"Sora",sans-serif;font-size:.9rem;margin-bottom:18px}

/* ---------- band ---------- */
.band{background:linear-gradient(120deg,#171A1F,#101317);border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);padding:70px 0}
.band-in{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.band h2{font-size:clamp(1.5rem,2.6vw,2rem);max-width:22ch}
.band p{color:var(--muted);margin-top:14px;max-width:56ch}

/* ---------- page header ---------- */
.phead{border-bottom:1px solid var(--line);padding:64px 0 0;position:relative}
.crumbs{font-size:.84rem;color:var(--dim);margin-bottom:20px}
.crumbs a:hover{color:var(--copper-l)}
.phead h1{font-size:clamp(2.1rem,4vw,3.1rem)}
.phead .lede{color:var(--muted);margin-top:20px;max-width:62ch;font-size:1.06rem}
.phead-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.phead-pad{padding-bottom:58px}
.phero{margin-top:44px;border-radius:20px 20px 0 0;overflow:hidden;border:1px solid var(--line-2);
  border-bottom:none;position:relative;max-height:430px}
.phero img{width:100%;object-fit:cover;object-position:center 38%;max-height:430px}
.phero::after{content:"";position:absolute;inset:0;
  background:linear-gradient(to top,rgba(13,15,18,.92),rgba(13,15,18,0) 55%)}

/* ---------- entries ---------- */
.entries{display:flex;flex-direction:column;gap:22px;padding:70px 0 0}
.entry{background:var(--card);border:1px solid var(--line);border-radius:var(--r);
  padding:36px 38px;display:grid;grid-template-columns:76px 1fr;gap:26px;transition:.2s}
.entry:hover{border-color:var(--line-2);background:var(--card-2)}
.entry-no{font-family:"Sora",sans-serif;font-size:1.05rem;color:var(--copper);
  border-right:1px solid var(--line);padding-top:6px}
.entry h3{font-size:1.5rem}
.entry .loc{color:var(--lime);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;margin-top:9px}
.entry .body{margin-top:20px;display:flex;flex-direction:column;gap:15px}
.entry .body p{color:#C9CFD7;max-width:74ch}
.tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:26px 0 0;padding:0}
.tags li{font-size:.79rem;color:var(--muted);background:var(--bg-2);border:1px solid var(--line);
  border-radius:999px;padding:6px 14px}

/* ---------- longform ---------- */
.lf{padding:56px 0 30px}
.lf h2{font-size:1.28rem;margin:40px 0 12px;color:var(--text)}
.lf p{color:#C4CAD3;margin-bottom:16px}
.lf ul{color:#C4CAD3;padding-left:20px;margin:0 0 18px}
.lf li{margin-bottom:9px}
.lf a{color:var(--copper-l);text-decoration:underline;text-underline-offset:3px}
.lf strong{color:var(--text)}

/* ---------- footer ---------- */
.ftr{border-top:1px solid var(--line);background:var(--bg-2);margin-top:0;padding:64px 0 30px}
.ftr-grid{display:grid;grid-template-columns:2.1fr 1fr 1fr;gap:48px}
.ftr h4{font-size:.76rem;letter-spacing:.17em;text-transform:uppercase;color:var(--dim);margin-bottom:18px}
.ftr ul{list-style:none;margin:0;padding:0}
.ftr li{margin-bottom:11px}
.ftr li a{color:var(--muted);font-size:.95rem}
.ftr li a:hover{color:var(--copper-l)}
.ftr-about p{color:var(--muted);font-size:.95rem;max-width:42ch;margin-top:16px}
.ftr-end{margin-top:46px;padding-top:24px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
  color:var(--dim);font-size:.86rem}

@media (max-width:960px){
  .hero{min-height:min(88vh,760px)}
  .hero-in{padding:88px 24px 64px}
  .hero-veil{background:
    linear-gradient(to top,rgba(8,10,12,.96) 0%,rgba(8,10,12,.72) 38%,rgba(8,10,12,.45) 100%),
    radial-gradient(70% 50% at 50% 20%,rgba(201,138,94,.18),transparent 70%)}
  .grid-cat,.notes{grid-template-columns:1fr}
  .stats-in{grid-template-columns:1fr 1fr}
  .ftr-grid{grid-template-columns:1fr;gap:34px}
  .band-in{grid-template-columns:1fr}
  .sec{padding:66px 0}
  .sec-head{flex-direction:column;align-items:flex-start;gap:16px}
  .burger{display:block}
  .nav{position:absolute;left:0;right:0;top:70px;background:var(--bg-2);
    border-bottom:1px solid var(--line);display:none;padding:10px 24px 18px}
  .nav.open{display:block}
  .nav ul{flex-direction:column;gap:2px}
  .nav a{padding:12px 14px}
  .entry{grid-template-columns:1fr;gap:0;padding:30px 24px}
  .entry-no{border:none;padding:0 0 12px}
}
@media (max-width:520px){
  .stats-in{grid-template-columns:1fr}
  .hero-brand{font-size:2.55rem}
  .hero h1{font-size:1.4rem}
}
