:root{
  --ink:#0B0B0C; --green:#00A88F; --green-lt:#6FE3CE; --green-deep:#006A5D;
  --red:#EA1B2F; --red-lt:#FF8A96;
  --t1:rgba(255,255,255,0.95); --t2:rgba(255,255,255,0.70); --t3:rgba(255,255,255,0.46);
  --line:rgba(255,255,255,0.10); --card:rgba(255,255,255,0.045); --card-hi:rgba(255,255,255,0.08);
  --maxw:720px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--ink);color:var(--t1);line-height:1.7;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;position:relative;min-height:100vh}

.glow{position:fixed;border-radius:50%;pointer-events:none;z-index:0;will-change:transform}
.g1{width:720px;height:720px;top:-24%;left:-24%;
  background:radial-gradient(circle,rgba(0,168,143,0.28) 0%,rgba(0,106,93,0.09) 45%,transparent 70%);
  filter:blur(70px);animation:d1 24s ease-in-out infinite alternate}
.g2{width:560px;height:560px;bottom:-14%;right:-18%;
  background:radial-gradient(circle,rgba(0,106,93,0.30) 0%,transparent 72%);
  filter:blur(80px);animation:d2 28s ease-in-out infinite alternate}
.g3{width:380px;height:380px;top:46%;right:-10%;
  background:radial-gradient(circle,rgba(234,27,47,0.15) 0%,transparent 66%);
  filter:blur(70px);animation:d3 20s ease-in-out infinite alternate}
@keyframes d1{to{transform:translate(55px,65px) scale(1.1)}}
@keyframes d2{to{transform:translate(-50px,-42px) scale(1.12)}}
@keyframes d3{to{transform:translate(-38px,44px) scale(1.14)}}
.grain{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:0.05;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:220px}
.progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:60;
  background:linear-gradient(90deg,var(--green-deep),var(--green) 55%,var(--red));transition:width .12s linear}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px;position:relative;z-index:1}

.mast{padding:30px 0 0;display:flex;align-items:center;justify-content:space-between;gap:14px}
.mast img{width:112px;height:auto;display:block}
.mast .unit{font-size:9.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--t3);
  text-align:right;line-height:1.55;font-weight:500}
.rule{height:1px;border:none;margin:20px 0 0;
  background:linear-gradient(90deg,var(--green-deep),rgba(255,255,255,0.13) 42%,rgba(255,255,255,0.05) 72%,var(--red))}

.eyebrow{display:inline-flex;align-items:center;gap:9px;margin:30px 0 18px;padding:6px 14px 6px 10px;
  background:rgba(0,168,143,0.11);border:1px solid rgba(0,168,143,0.30);border-radius:100px;
  font-size:10px;font-weight:700;letter-spacing:1.9px;text-transform:uppercase;color:var(--green-lt)}
.eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--red);
  box-shadow:0 0 10px rgba(234,27,47,0.9)}

h1{font-family:'Newsreader',Georgia,serif;font-weight:500;text-wrap:balance;
  font-size:clamp(2rem,7.2vw,3rem);line-height:1.12;letter-spacing:-0.018em;color:#fff;margin-bottom:22px}
h1 em{font-style:italic;color:var(--green-lt)}

.dek{font-size:1.04rem;color:var(--t2);line-height:1.8;margin-bottom:6px}
.body p{font-size:1.02rem;color:var(--t2);line-height:1.82;margin-top:20px}
.body p strong{color:var(--t1);font-weight:500}

figure{margin:34px 0 0}
.hero{margin:26px 0 0}
.hero-img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;
  border-radius:16px;border:1px solid var(--line);background:#0e1412}
@media (max-width:640px){.hero-img{border-radius:13px}.hero{margin:20px 0 0}}
.dg{width:100%;height:auto;display:block;background:rgba(255,255,255,0.028);
  border:1px solid var(--line);border-radius:16px;padding:14px 10px}
figcaption{margin-top:11px;font-size:12.5px;color:var(--t3);line-height:1.65}

.pull{margin:36px 0 0;padding:22px 0 22px 22px;border-left:2px solid var(--red)}
.pull p{font-family:'Newsreader',Georgia,serif;font-size:1.22rem;font-style:italic;line-height:1.58;color:var(--t1)}

.video{display:block;margin:36px 0 0;text-decoration:none;color:inherit;border-radius:16px;overflow:hidden;
  border:1px solid var(--line);background:var(--card);transition:border-color .25s,background .25s}
.video:hover{border-color:rgba(0,168,143,0.45);background:var(--card-hi)}
.thumb{position:relative;display:block;aspect-ratio:16/9;background:#000}
.thumb img{width:100%;height:100%;object-fit:cover;display:block;
  filter:saturate(0.72) contrast(0.94) brightness(0.86)}
.thumb::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(160deg,rgba(0,106,93,0.20),rgba(11,11,12,0.10) 45%,rgba(11,11,12,0.55));
  mix-blend-mode:multiply}
.video:hover .thumb img{filter:saturate(0.9) contrast(0.97) brightness(0.96)}
.play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.play span{width:64px;height:64px;border-radius:50%;background:rgba(11,11,12,0.72);
  border:1.5px solid rgba(255,255,255,0.55);display:flex;align-items:center;justify-content:center;
  backdrop-filter:blur(6px)}
.play span::after{content:'';border-style:solid;border-width:11px 0 11px 18px;
  border-color:transparent transparent transparent #fff;margin-left:4px}
.vmeta{padding:16px 18px 18px}
.vlabel{font-size:9.5px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--red-lt);margin-bottom:8px}
.vmeta h4{font-size:1rem;font-weight:600;color:#fff;line-height:1.38;margin-bottom:5px}
.vby{font-size:12px;color:var(--t3);margin-bottom:9px}
.vnote{font-size:0.885rem;color:var(--t2);line-height:1.68}

.links{margin:36px 0 0}
.links h3{font-size:10px;letter-spacing:1.9px;text-transform:uppercase;color:var(--green-lt);font-weight:700;margin-bottom:12px}
.lk{display:block;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--line);
  border-radius:12px;padding:15px 16px;margin-bottom:9px;position:relative;overflow:hidden;
  transition:background .22s,border-color .22s,transform .22s;-webkit-tap-highlight-color:transparent}
.lk::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--green);opacity:0;transition:opacity .22s}
.lk:hover,.lk:active{background:var(--card-hi);border-color:rgba(255,255,255,0.2);transform:translateY(-2px)}
.lk:hover::before,.lk:active::before{opacity:1}
.lk:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.lk h4{font-size:0.95rem;font-weight:600;color:#fff;line-height:1.4;margin-bottom:4px;text-wrap:balance}
.lk .src{font-size:11.5px;color:var(--t3)}

.next{margin:40px 0 0;padding:22px 20px;border-radius:16px;
  background:linear-gradient(150deg,rgba(0,106,93,0.20),rgba(255,255,255,0.025) 60%,rgba(234,27,47,0.07));
  border:1px solid rgba(255,255,255,0.13)}
.next .lbl{font-size:10px;letter-spacing:1.9px;text-transform:uppercase;color:var(--green-lt);font-weight:700;margin-bottom:9px}
.next p{font-size:1.02rem;color:var(--t2);line-height:1.72}
.next .closing{font-family:'Newsreader',Georgia,serif;font-size:1.1rem;line-height:1.55;color:#fff}

.nav{display:flex;gap:9px;margin:26px 0 0;flex-wrap:wrap}
.nav a{flex:1;min-width:130px;text-align:center;text-decoration:none;font-size:11px;font-weight:600;
  letter-spacing:1.3px;text-transform:uppercase;color:var(--t2);background:var(--card);
  border:1px solid var(--line);border-radius:10px;padding:13px 10px;transition:background .2s,color .2s,border-color .2s}
.nav a:hover{background:var(--card-hi);color:#fff;border-color:rgba(255,255,255,0.2)}
.nav a.on{color:var(--green-lt);border-color:rgba(0,168,143,0.4);background:rgba(0,168,143,0.10)}

footer{padding:38px 0 52px;margin-top:34px;border-top:1px solid var(--line);
  font-size:11.5px;color:var(--t3);line-height:1.8}

/* ── Hub ── */
.hub-h1{font-size:clamp(2.2rem,8.5vw,3.5rem)}
.hub-sub{font-size:1.06rem;color:var(--t2);line-height:1.8;max-width:56ch}
.drops{margin:34px 0 0}
.drop{display:block;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--line);
  border-radius:15px;padding:20px 20px;margin-bottom:11px;position:relative;overflow:hidden;
  transition:background .22s,border-color .22s,transform .22s}
.drop::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--green);opacity:0;transition:opacity .22s}
.drop:hover{background:var(--card-hi);border-color:rgba(255,255,255,0.2);transform:translateY(-2px)}
.drop:hover::before{opacity:1}
.drop .top{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}
.drop .num{font-family:'Newsreader',Georgia,serif;font-size:1.5rem;color:var(--green-lt);line-height:1}
.drop .day{font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--t3)}
.drop h3{font-size:1.06rem;font-weight:600;color:#fff;line-height:1.38;text-wrap:balance}
.drop p{font-size:0.9rem;color:var(--t2);line-height:1.68;margin-top:8px}

@media (max-width:640px){
  .wrap{padding:0 17px}
  .mast img{width:96px}
  h1{font-size:2.05rem}
  .dek{font-size:1rem;line-height:1.72}
  .body p{font-size:0.99rem;line-height:1.74}
  .pull{padding-left:17px}
  .pull p{font-size:1.08rem}
  .dg{padding:10px 6px;border-radius:13px}
  .next{padding:19px 17px}
  .nav a{min-width:100%}
  .g1{width:400px;height:400px;filter:blur(55px)}
  .g2{width:340px;height:340px;filter:blur(55px)}
  .g3{width:250px;height:250px;filter:blur(48px)}
}
@media (prefers-reduced-motion:reduce){.glow{animation:none!important}*{scroll-behavior:auto}}

.dglegend{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:12px}
.dglegend span{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--t2);line-height:1.5}
.dglegend i{width:11px;height:11px;border-radius:3px;flex:none}
.dgnote{margin-top:12px;font-size:13.5px;color:var(--t2);line-height:1.6}
