/* ============================================================
   WIN WIND BLADES — v3 Innovative Layout
   Font: Syne (bold display) + DM Sans (body)
   Palette: Crisp White · Warm Off-White · Near-Black · Forest Green
   Layout: Asymmetric · Overlapping · Full-Bleed · Magazine-Grid
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Hanken+Grotesk:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,400&display=swap');
:root {
  --w:         #ffffff;
  --w2:        #f7f7f7;
  --w3:        #efefef;
  --ink:       #1a1a1a;
  --ink2:      #2e2e2e;
  --muted:     #888888;
  --line:      #e2e2e2;
  --green:     #8ec63f;
  --green2:    #a8d44e;
  --green3:    #f2fad4;
  --accent:    #c8f542;  /* electric lime — single punchy accent */

  --fh: 'Hanken Grotesk', sans-serif;
  --fb: 'Hanken Grotesk', sans-serif;

  --ease: cubic-bezier(0.16, 1, 0.3, 1);
  --t:   0.4s;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--fb);background:var(--w);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button,input,select,textarea{font-family:var(--fb)}

/* ═══ NAV ═══════════════════════════════════════════ */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  height:68px;padding:0 48px;
  transition:background var(--t),box-shadow var(--t);
}
.nav.solid{background:var(--w);box-shadow:0 1px 0 var(--line)}
.nav__logo{display:flex;align-items:center;gap:10px}
.nav__logo-box{width:34px;height:34px;background:var(--accent);border-radius:3px;display:flex;align-items:center;justify-content:center}
.nav__logo-box svg{width:18px;height:18px;fill:var(--w)}
.nav__wordmark{font-family:var(--fh);font-size:14px;font-weight:700;color:var(--w);line-height:1.15;transition:color var(--t)}
.nav__wordmark small{display:block;font-weight:400;font-size:8.5px;letter-spacing:2.5px;text-transform:uppercase;opacity:0.6}
.nav.solid .nav__wordmark{color:var(--ink)}
.nav__right{display:flex;align-items:center;gap:32px}
.nav__link{font-family:var(--fh);font-size:11px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,0.75);transition:color var(--t)}
.nav__link:hover,.nav__link.on{color:var(--w)}
.nav.solid .nav__link{color:var(--muted)}
.nav.solid .nav__link:hover,.nav.solid .nav__link.on{color:var(--ink)}
.nav__btn{font-family:var(--fh);font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:9px 20px;background:var(--accent);color:#111110 !important;border-radius:2px;transition:opacity var(--t);display:inline-flex;align-items:center;text-decoration:none;line-height:1;}
.nav__btn:hover{opacity:0.85}
.nav__btn:hover{opacity:0.85}
.nav__ham{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;z-index:101;position:relative}
.nav__ham span{display:block;width:22px;height:1.5px;border-radius:1px;background:var(--w);transition:background var(--t)}
.nav.solid .nav__ham span{background:var(--ink)}
/* Mobile overlay */
.mob-nav{display:none;position:fixed;inset:0;z-index:100;background:var(--ink);padding:80px 32px 40px;flex-direction:column;gap:4px}
.mob-nav.open{display:flex}
.mob-nav a{font-family:var(--fh);font-size:1.8rem;font-weight:700;color:rgba(255,255,255,0.7);padding:14px 0;border-bottom:1px solid rgba(255,255,255,0.08);transition:color var(--t)}
.mob-nav a:hover{color:var(--accent)}
.mob-close{position:absolute;top:18px;right:20px;background:none;border:none;color:var(--w);font-size:2rem;cursor:pointer;line-height:1;z-index:102}

/* ═══ HERO — SPLIT ASYMMETRIC ════════════════════════ */
/* Left: big type | Right: full-bleed image */
.hero{
  display:grid;
  grid-template-columns:42% 58%;
  min-height:100vh;
  background:var(--ink);
}
.hero__left{
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:120px 64px 80px 48px;
  position:relative;z-index:2;
  background:var(--ink);
}
.hero__eyebrow{
  display:flex;align-items:center;gap:10px;
  margin-bottom:36px;
}
.hero__eyebrow-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}
.hero__eyebrow span{font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.5)}
.hero__title{
  font-family:var(--fh);
  font-size:clamp(3rem,5.5vw,5.6rem);
  font-weight:800;line-height:0.95;
  letter-spacing:-2.5px;
  color:var(--w);
  margin-bottom:40px;
}
.hero__title .accent-word{
  display:block;
  color:var(--accent);
  font-style:italic;font-weight:400;
}
.hero__desc{
  font-size:0.95rem;color:rgba(255,255,255,0.5);
  line-height:1.78;max-width:400px;margin-bottom:48px;
}
.hero__btns{display:flex;gap:14px;flex-wrap:wrap}
.btn-solid{
  font-family:var(--fh);font-size:10.5px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  padding:13px 26px;background:var(--accent);color:var(--ink);
  border-radius:2px;border:none;cursor:pointer;
  transition:opacity var(--t),transform var(--t);display:inline-flex;align-items:center;gap:8px;
}
.btn-solid:hover{opacity:0.88;transform:translateY(-1px)}
.btn-outline{
  font-family:var(--fh);font-size:10.5px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  padding:12px 25px;background:transparent;color:rgba(255,255,255,0.7);
  border:1.5px solid rgba(255,255,255,0.25);border-radius:2px;cursor:pointer;
  transition:all var(--t);display:inline-flex;align-items:center;gap:8px;
}
.btn-outline:hover{border-color:var(--w);color:var(--w)}
.btn-outline-dark{
  font-family:var(--fh);font-size:10.5px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  padding:12px 25px;background:transparent;color:var(--ink);
  border:1.5px solid var(--line);border-radius:2px;cursor:pointer;
  transition:all var(--t);display:inline-flex;align-items:center;gap:8px;
}
.btn-outline-dark:hover{border-color:var(--ink);background:var(--ink);color:var(--w)}
.btn-green{
  font-family:var(--fh);font-size:10.5px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  padding:13px 26px;background:var(--green);color:var(--w);
  border-radius:2px;border:none;cursor:pointer;
  transition:background var(--t),transform var(--t);display:inline-flex;align-items:center;gap:8px;
}
.btn-green:hover{background:var(--green2);transform:translateY(-1px)}
.btn svg{width:14px;height:14px;transition:transform 0.2s}
.btn-solid:hover svg,.btn-green:hover svg{transform:translateX(3px)}

.hero__right{
  position:relative;overflow:hidden;
}
.hero__right img{
  width:100%;height:100%;object-fit:cover;
  filter:brightness(0.75) saturate(0.85);
}
/* Vertical label on right edge */
.hero__vert-label{
  position:absolute;right:24px;top:50%;
  transform:translateY(-50%) rotate(90deg);
  transform-origin:center center;
  font-family:var(--fh);font-size:9px;font-weight:600;
  letter-spacing:3px;text-transform:uppercase;
  color:rgba(255,255,255,0.35);white-space:nowrap;
}
/* Hero bottom stats bar */
.hero__stats{
  position:absolute;bottom:0;left:0;right:0;
  display:grid;grid-template-columns:repeat(4,1fr);
  background:rgba(255,255,255,0.06);
  backdrop-filter:blur(12px);
  border-top:1px solid rgba(255,255,255,0.08);
}
.hero__stat{
  padding:18px 24px;
  border-right:1px solid rgba(255,255,255,0.08);
  text-align:center;
}
.hero__stat:last-child{border-right:none}
.hero__stat-n{font-family:var(--fh);font-size:1.5rem;font-weight:800;color:var(--accent);line-height:1}
.hero__stat-l{font-size:0.72rem;color:rgba(255,255,255,0.45);text-transform:uppercase;letter-spacing:1px;margin-top:4px}

/* ═══ TICKER ════════════════════════════════════════ */
.ticker{background:var(--green);padding:12px 0;overflow:hidden;white-space:nowrap}
.ticker-track{display:inline-flex;animation:tick 30s linear infinite}
.ticker-item{display:inline-flex;align-items:center;gap:24px;padding:0 36px;font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.82)}
.ticker-sep{width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,0.4);flex-shrink:0}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ═══ ABOUT — BENTO GRID ════════════════════════════ */
/*
  NOT a 2-column layout.
  A bento-style irregular grid:
  [ BIG TEXT ] [ IMAGE ]
  [ IMAGE    ] [ CAPS GRID ]
*/
.about{background:var(--w);padding:120px 0}
.about__wrap{max-width:1320px;margin:0 auto;padding:0 48px}
.about__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-template-rows:auto auto;
  gap:16px;
}
.about__cell{border-radius:6px;overflow:hidden;position:relative}
/* Cell A — headline + text (top-left) */
.about__cell-a{
  background:var(--w2);
  padding:56px 52px;
  display:flex;flex-direction:column;justify-content:space-between;
  min-height:480px;
}
.about__pretitle{font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--green);margin-bottom:20px;display:flex;align-items:center;gap:10px}
.about__pretitle::before{content:'';width:28px;height:1px;background:var(--green)}
.about__h2{font-family:var(--fh);font-size:clamp(2rem,3.5vw,3rem);font-weight:800;letter-spacing:-1.2px;line-height:1.05;color:var(--ink);margin-bottom:24px}
.about__body{font-size:0.925rem;color:var(--muted);line-height:1.8;max-width:460px}
/* Cell B — factory image (top-right) */
.about__cell-b{min-height:480px;background:var(--w3)}
.about__cell-b img{width:100%;height:100%;object-fit:cover}
/* Cell C — blade close-up image (bottom-left) */
.about__cell-c{min-height:360px;background:var(--ink);position:relative}
.about__cell-c img{width:100%;height:100%;object-fit:cover;opacity:0.85}
.about__cell-c-label{
  position:absolute;bottom:28px;left:28px;
  font-family:var(--fh);font-size:10px;font-weight:600;
  letter-spacing:2.5px;text-transform:uppercase;
  color:rgba(255,255,255,0.6);
  background:rgba(0,0,0,0.4);padding:6px 12px;border-radius:2px;
  backdrop-filter:blur(4px);
}
/* Cell D — capabilities (bottom-right) */
.about__cell-d{
  background:#1a1a1a;
  padding:52px 48px;
  display:flex;flex-direction:column;justify-content:center;
  min-height:360px;
}
.about__cell-d-title{font-family:var(--fh);font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.55);margin-bottom:32px}
.caps-list{display:flex;flex-direction:column;gap:0}
.cap-row{
  display:flex;align-items:center;gap:14px;
  padding:16px 0;
  border-bottom:1px solid rgba(255,255,255,0.15);
  transition:padding-left var(--t);
}
.cap-row:last-child{border-bottom:none}
.cap-row:hover{padding-left:8px}
.cap-n{font-family:var(--fh);font-size:10px;font-weight:700;color:var(--green2);min-width:24px}
.cap-t{font-family:var(--fh);font-size:14px;font-weight:600;color:rgba(255,255,255,0.75);letter-spacing:-0.2px}
/* ISO badge overlapping cells */
.about__badge{
  position:absolute;top:-18px;right:28px;
  background:var(--accent);color:var(--ink);
  width:76px;height:76px;border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  font-family:var(--fh);font-weight:800;
  box-shadow:0 8px 24px rgba(0,0,0,0.18);
  z-index:5;
}
.about__badge-n{font-size:1.2rem;line-height:1}
.about__badge-l{font-size:7px;letter-spacing:1.5px;text-transform:uppercase;opacity:0.7;margin-top:2px}

/* ═══ VISION — FULL-BLEED DARK STACKED ══════════════ */
/*
  NOT a 4-column card grid.
  Alternating horizontal strips with large numbering.
*/
.vision{background:#1a1a1a; padding:120px 0 0}
.vision__top{max-width:1320px;margin:0 auto;padding:0 48px 64px;display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:end}
/* .vision__top-left{} */
.vision__tag{font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:20px}
.vision__h2{font-family:var(--fh);font-size:clamp(2.4rem,4.5vw,4rem);font-weight:800;letter-spacing:-1.5px;line-height:1.0;color:#ffffff}
.vision__statement{font-style:italic;font-size:1.05rem;color:rgba(255,255,255,0.45);line-height:1.8;font-weight:300;border-left:2px solid var(--green);padding-left:24px}

/* Values as horizontal strips */
/* .vision__strips{} */
.vstrip{
  display:grid;
  grid-template-columns:120px 1fr 1fr;
  align-items:start;
  padding:44px 48px;
  max-width:1320px;margin:0 auto;
  border-top:1px solid rgba(255,255,255,0.1);
  gap:40px;
  transition:background var(--t);
}
.vstrip:hover{background:rgba(255,255,255,0.04)}
.vstrip:last-child{border-bottom:1px solid rgba(255,255,255,0.1)}
.vstrip__num{font-family:var(--fh);font-size:4.5rem;font-weight:800;letter-spacing:-3px;color:rgba(255,255,255,0.06);line-height:1}
.vstrip__title{font-family:var(--fh);font-size:1.4rem;font-weight:700;color:var(--w);letter-spacing:-0.4px;padding-top:8px}
.vstrip__label{font-family:var(--fh);font-size:9.5px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--green2);margin-bottom:12px}
.vstrip__body{font-size:0.9rem;color:rgba(255,255,255,0.48);line-height:1.78}

/* ═══ WHY — OVERLAPPING SPLIT ═══════════════════════ */
/*
  Image bleeds out of container on left.
  Text floats over with white card.
*/
.why{background:var(--w2);padding:120px 0;overflow:hidden}
.why__outer{max-width:1320px;margin:0 auto;padding:0 48px}
.why__header{margin-bottom:72px}
.why__tag{font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--green);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.why__tag::before{content:'';width:28px;height:1px;background:var(--green)}
.why__h2{font-family:var(--fh);font-size:clamp(2rem,3.8vw,3.4rem);font-weight:800;letter-spacing:-1.2px;line-height:1.0}
.why__layout{
  display:grid;
  grid-template-columns:55% 45%;
  gap:0;
  align-items:start;
  position:relative;
}
.why__img-col{
  position:relative;
  margin-left:-48px; /* bleed past container */
}
.why__img{
  width:100%;
  aspect-ratio:3/4;
  object-fit:cover;
  border-radius:0 8px 8px 0;
  display:block;
  max-height: 420px;
  object-fit: cover;
}
/* floating number overlay on image */
.why__big-num{
  position:absolute;
  top:-24px;right:-28px;
  font-family:var(--fh);font-size:8rem;font-weight:800;
  color:var(--w2);line-height:1;
  letter-spacing:-4px;
  user-select:none;
  pointer-events:none;
}
.why__items-col{padding:0 0 0 40px}
.why__item{
  padding:32px 0;
  border-bottom:1px solid var(--line);
  cursor:pointer;
  transition:padding-left var(--t);
}
.why__item:first-child{border-top:1px solid var(--line)}
.why__item:hover{padding-left:12px}
.why__item-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.why__item-title{font-family:var(--fh);font-size:1.05rem;font-weight:700;color:var(--ink);letter-spacing:-0.2px}
.why__item-num{font-family:var(--fh);font-size:10px;font-weight:700;color:var(--green);letter-spacing:1.5px}
.why__item-body{font-size:0.875rem;color:var(--muted);line-height:1.75}

/* ═══ PARTNERS ════════════════════════════════════════ */
.partners{background:var(--w);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:52px 0}
.partners__inner{max-width:1320px;margin:0 auto;padding:0 48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;text-align:center}
.partners__lbl{font-family:var(--fh);font-size:9.5px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:#b0aea8;white-space:nowrap;flex-shrink:0}
.partners__rule{display:none}
.partners__logos{display:flex;align-items:center;gap:52px;flex-wrap:wrap}
/* ★ Replace with <img> */
.partner-logo-slot{
  height:46px;min-width:130px;padding:0 20px;
  background:transparent;border:none;border-radius:3px;}
.partner-logo-slot:hover{border-color:var(--green);color:var(--green);background:var(--green3)}

/* ═══ LOCATION ════════════════════════════════════════ */
/*
  NOT a side-by-side.
  Text overlaps the map from a floating card on left.
*/
.location{position:relative;background:var(--w);overflow:hidden}
.location__map{width:100%;height:520px;background:#e2e0d8;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.location__map img,.location__map iframe{width:100%;height:100%;object-fit:cover;border:none;display:block}
.location {
  z-index: 1;
  position: relative;
}

.location__card {
  height: auto !important;
  min-height: unset !important;
  padding-bottom: 80px;
}

.location__map {
  min-height: 550px;
}

.location__map iframe {
  min-height: 550px;
}

@media (min-width: 1024px) {
  .location {
    min-height: 750px;
  }
  .location__map {
    min-height: 750px;
  }
  .location__map iframe {
    height: 750px;
  }
}
/* map grid pattern for placeholder */
.map-grid{
  width:100%;height:100%;
  background-color:#dddbd3;
  background-image:
    linear-gradient(rgba(0,0,0,0.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,0,0,0.05) 1px,transparent 1px),
    linear-gradient(rgba(0,0,0,0.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,0,0,0.025) 1px,transparent 1px);
  background-size:80px 80px,80px 80px,20px 20px,20px 20px;
  display:flex;align-items:center;justify-content:center;
  flex-direction:column;gap:12px;
}
.map-grid-pin{color:var(--green);display:flex;flex-direction:column;align-items:center;gap:8px}
.map-grid-pin svg{width:40px;height:40px;stroke:var(--green);fill:none}
.map-grid-pin span{font-family:var(--fh);font-size:9.5px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--muted)}
/* Floating card overlaps map */
.location__card{
  position:absolute;left:60px;top:50%;transform:translateY(-50%);
  background:var(--ink);padding:36px 36px;border-radius:6px;
  min-width:300px;max-width:320px;
  box-shadow:0 24px 80px rgba(0,0,0,0.35);
  z-index:5;
  max-height:90%;
  overflow:hidden;
}
.location__card-tag{font-family:var(--fh);font-size:9.5px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.location__card h3{font-family:var(--fh);font-size:1.6rem;font-weight:800;color:var(--w);letter-spacing:-0.6px;margin-bottom:32px;line-height:1.1}
.loc-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}
.loc-icon{width:28px;height:28px;background:rgba(255,255,255,0.07);border-radius:2px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.loc-icon svg{width:13px;height:13px;stroke:var(--accent);fill:none;stroke-width:2}
.loc-row-lbl{font-family:var(--fh);font-size:9px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-bottom:4px}
.loc-row-val{font-size:0.875rem;color:rgba(255,255,255,0.55);line-height:1.6}

/* ═══ CTA BAND ════════════════════════════════════════ */
.cta{background:#1a1a1a;padding:0}
.cta__inner{
  max-width:1320px;margin:0 auto;padding:80px 48px;
  display:grid;grid-template-columns:1fr auto;
  align-items:center;gap:48px;
}
.cta h2{font-family:var(--fh);font-size:clamp(1.8rem,3vw,2.8rem);font-weight:800;letter-spacing:-1px;color:#ffffff;line-height:1.1}
.cta p{font-size:0.95rem;color:rgba(255,255,255,0.6);margin-top:10px;line-height:1.7}
.btn-white{
  font-family:var(--fh);font-size:10.5px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  padding:14px 28px;background:var(--accent);color:var(--ink);
  border-radius:2px;border:none;cursor:pointer;white-space:nowrap;
  transition:opacity var(--t);display:inline-flex;align-items:center;gap:8px;
}
.btn-white:hover{opacity:0.9}

/* ═══ FOOTER ══════════════════════════════════════════ */
.footer{background:#0e0e0b;padding:72px 0 0}
.footer__inner{max-width:1320px;margin:0 auto;padding:0 48px}
.footer__grid{display:grid;grid-template-columns:2.2fr 1fr 1fr;gap:72px;padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,0.06)}
.footer__brand p{font-size:0.875rem;color:rgba(255,255,255,0.35);line-height:1.8;margin:20px 0 28px;max-width:310px}
.footer__socials{display:flex;gap:10px}
.fsoc{width:36px;height:36px;border:1px solid rgba(255,255,255,0.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.35);transition:all var(--t)}
.fsoc:hover{border-color:var(--accent);color:var(--accent)}
.fsoc svg{width:14px;height:14px;fill:currentColor}
.footer__col h5{font-family:var(--fh);font-size:9.5px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.45);margin-bottom:20px}
.footer__col a{display:block;font-size:0.875rem;color:rgba(255,255,255,0.32);padding:5px 0;transition:color var(--t)}
.footer__col a:hover{color:rgba(255,255,255,0.75)}
.fcrow{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px}
.fcrow svg{width:13px;height:13px;stroke:var(--green2);fill:none;margin-top:4px;flex-shrink:0}
.fcrow span,.fcrow a{font-size:0.875rem;color:rgba(255,255,255,0.32);transition:color var(--t)}
.fcrow a:hover{color:var(--green2)}
.footer__bottom{display:flex;align-items:center;justify-content:space-between;padding:22px 0}
.footer__copy{font-size:0.75rem;color:rgba(255,255,255,0.2)}

/* ═══ PAGE HERO ════════════════════════════════════════ */
/*
  NOT centered text on dark bg.
  Full-bleed with large number + text left-aligned at bottom.
*/
.phero{
  background:var(--ink);
  min-height:52vh;
  display:flex;align-items:flex-end;
  position:relative;overflow:hidden;
  padding-bottom:0;
}
.phero__bg-num{
  position:absolute;right:-20px;top:50%;transform:translateY(-50%);
  font-family:var(--fh);font-size:clamp(12rem,22vw,22rem);font-weight:800;
  color:rgba(255,255,255,0.025);line-height:1;letter-spacing:-10px;
  user-select:none;pointer-events:none;
}
.phero__content{
  max-width:1320px;margin:0 auto;padding:140px 48px 72px;
  width:100%;position:relative;z-index:2;
}
.phero__tag{font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:10px;margin-bottom:24px}
.phero__tag::before{content:'';width:28px;height:1px;background:var(--accent)}
.phero h1{font-family:var(--fh);font-size:clamp(3rem,6vw,6rem);font-weight:800;letter-spacing:-2.5px;line-height:0.95;color:var(--w)}
.phero p{font-size:1rem;color:rgba(255,255,255,0.45);margin-top:24px;max-width:480px;line-height:1.72}
.phero__rule{height:2px;background:linear-gradient(to right,var(--accent),transparent 50%);margin-top:64px}

/* ═══ EVENTS — MAGAZINE STAGGER ═════════════════════ */
/*
  NOT identical cards in a grid.
  Alternating: full-wide, then 60/40, then 40/60.
*/
.events{background:var(--w);padding:120px 0}
.events__wrap{max-width:1320px;margin:0 auto;padding:0 48px}
.events__header{margin-bottom:80px}
.events__header-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}

/* event item types */
.ev{margin-bottom:4px;border-radius:8px;overflow:hidden}
/* Type A: 55/45 image/text */
.ev-a{display:grid;grid-template-columns:55% 45%}
/* Type B: reversed 45/55 */
.ev-b{display:grid;grid-template-columns:45% 55%}

.ev__img{overflow:hidden;position:relative}
.ev__img img{width:100%;height:100%;object-fit:cover;min-height:380px;display:block;transition:transform 0.6s var(--ease)}
.ev:hover .ev__img img{transform:scale(1.03)}
.ev__body{
  background:var(--w2);
  padding:56px 52px;
  display:flex;flex-direction:column;justify-content:center;
}
.ev__date{font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--green);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.ev__date::before{content:'';width:20px;height:1px;background:var(--green)}
.ev__title{font-family:var(--fh);font-size:clamp(1.4rem,2.2vw,2rem);font-weight:800;letter-spacing:-0.6px;line-height:1.1;color:var(--ink);margin-bottom:18px}
.ev__text{font-size:0.9rem;color:var(--muted);line-height:1.78}
.ev__meta{margin-top:28px;display:flex;align-items:center;gap:8px;font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--green)}
.ev__meta svg{width:13px;height:13px;stroke:currentColor;fill:none}

/* ═══ AWARDS — MASONRY-STYLE ══════════════════════════ */
/*
  NOT a uniform 3-col grid.
  2 columns, first col has bigger first card.
*/
.awards{background:var(--w2);padding:120px 0}
.awards__wrap{max-width:1320px;margin:0 auto;padding:0 48px}
.awards__header{text-align:center;margin-bottom:72px}
.awards__header-tag{font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--green);margin-bottom:16px}
.awards__header h2{font-family:var(--fh);font-size:clamp(2.2rem,4vw,3.6rem);font-weight:800;letter-spacing:-1.2px;line-height:1.05}
.awards__header p{font-size:0.95rem;color:var(--muted);margin-top:14px;line-height:1.72}
/* Two-column asymmetric layout */
.awards__cols{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.awards__col{display:flex;flex-direction:column;gap:4px}
.award-card{background:var(--w);overflow:hidden;border-radius:6px;position:relative;cursor:pointer;transition:transform 0.3s var(--ease),box-shadow 0.3s}
.award-card:hover{transform:translateY(-3px);box-shadow:0 20px 56px rgba(0,0,0,0.1)}
.award-card img{width:100%;height:auto;object-fit:contain;display:block;transition:transform 0.5s var(--ease)}
.award-card:hover img{transform:scale(1.04)}
.award-card--tall img{height:auto}
.award-card--short img{height:auto}
.award-card__foot{padding:16px 20px;display:flex;align-items:center;gap:10px;border-top:1px solid var(--line)}
.award-card__foot svg{width:13px;height:13px;stroke:var(--green);fill:none;flex-shrink:0}
.award-card__foot span{font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}

/* ═══ CAREERS ══════════════════════════════════════════ */
/*
  Big number + desc | job list side by side
  Jobs as horizontal rows with hover expand
*/
.careers{background:var(--w);padding:120px 0}
.careers__wrap{max-width:1320px;margin:0 auto;padding:0 48px}
.careers__top{display:grid;grid-template-columns:5fr 7fr;gap:80px;align-items:start;margin-bottom:80px}
/* .careers__top-left{} */
.careers__tag{font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--green);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.careers__tag::before{content:'';width:28px;height:1px;background:var(--green)}
.careers__h2{font-family:var(--fh);font-size:clamp(2rem,3.8vw,3.4rem);font-weight:800;letter-spacing:-1.2px;line-height:1.02;margin-bottom:28px}
.careers__desc{font-size:0.925rem;color:var(--muted);line-height:1.8}
.careers__note{margin-top:28px;padding:18px 22px;background:var(--green3);border:1px solid var(--green);border-radius:4px;display:flex;align-items:flex-start;gap:12px}
.careers__note svg{width:16px;height:16px;stroke:var(--green);fill:none;flex-shrink:0;margin-top:2px}
.careers__note p{font-size:0.85rem;color:var(--green);line-height:1.6}
/* .careers__top-right{} */

/* Job list: bold horizontal rows */
.job-list{display:flex;flex-direction:column}
.job-row{
  display:grid;grid-template-columns:1fr auto;
  align-items:center;gap:24px;
  padding:24px 0;
  border-bottom:1px solid var(--line);
  transition:padding-left var(--t);
  cursor:pointer;
}
.job-row:first-child{border-top:1px solid var(--line)}
.job-row:hover{padding-left:8px}
.job-tags{display:flex;gap:8px;margin-bottom:8px}
.jtag{font-family:var(--fh);font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:3px 9px;border-radius:2px}
.jtag--d{background:var(--green3);color:var(--green)}
.jtag--t{background:var(--w2);color:var(--muted)}
.job-title{font-family:var(--fh);font-size:1.05rem;font-weight:700;color:var(--ink);letter-spacing:-0.2px;margin-bottom:5px}
.job-meta{display:flex;gap:16px}
.job-meta span{font-size:0.8rem;color:var(--muted);display:flex;align-items:center;gap:5px}
.job-meta svg{width:11px;height:11px;stroke:currentColor;fill:none}

/* ═══ FORMS ════════════════════════════════════════════ */
/*
  NOT two cards side by side.
  Full-width form, with sidebar info column.
*/
.forms-section{background:var(--w2);padding:120px 0}
.forms-section__wrap{max-width:1320px;margin:0 auto;padding:0 48px}
.forms-hdr{text-align:center;margin-bottom:72px}
.forms-hdr-tag{font-family:var(--fh);font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--green);margin-bottom:16px}
.forms-hdr h2{font-family:var(--fh);font-size:clamp(2.2rem,4vw,3.4rem);font-weight:800;letter-spacing:-1.2px;line-height:1.05}
.forms-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
/* Apply card */
.form-card{background:var(--w);padding:56px 52px;border-radius:6px}
.form-card--dark{background:var(--ink)}
.form-card h3{font-family:var(--fh);font-size:1.4rem;font-weight:800;letter-spacing:-0.5px;margin-bottom:6px;color:var(--ink)}
.form-card--dark h3{color:var(--w)}
.form-card>p{font-size:0.875rem;color:var(--muted);margin-bottom:36px;line-height:1.7}
.form-card--dark>p{color:rgba(255,255,255,0.38)}
.frow2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fg{margin-bottom:18px}
.fg label{display:block;font-family:var(--fh);font-size:9.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.form-card--dark .fg label{color:rgba(255,255,255,0.3)}
.fg input,.fg select,.fg textarea{
  width:100%;padding:12px 15px;
  border:1.5px solid var(--line);border-radius:3px;
  font-size:0.9rem;color:var(--ink);background:var(--w);
  transition:border-color 0.2s,box-shadow 0.2s;outline:none;
  -webkit-appearance:none;appearance:none;
}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(46,107,73,0.1)}
.form-card--dark .fg input,.form-card--dark .fg select,.form-card--dark .fg textarea{background:rgba(255,255,255,0.05);border-color:rgba(255,255,255,0.1);color:var(--w)}
.form-card--dark .fg input:focus,.form-card--dark .fg select:focus,.form-card--dark .fg textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(200,245,66,0.08)}
.form-card--dark .fg input::placeholder,.form-card--dark .fg textarea::placeholder{color:rgba(255,255,255,0.2)}
.fg textarea{resize:vertical;min-height:120px}
.fg input[type=file]{background:var(--w2);border-style:dashed;cursor:pointer;padding:10px 14px}
.fg-note{font-size:0.77rem;color:#b0aea8;margin-top:-10px;margin-bottom:14px}
.submit-btn{width:auto;padding:13px 32px;font-size:11px;justify-content:center}
.suc-msg{display:none;align-items:center;gap:9px;background:var(--green3);border:1px solid var(--green);border-radius:3px;padding:12px 16px;color:var(--green);font-size:0.875rem;font-weight:600;margin-top:14px}
.suc-msg.show{display:flex}
.suc-msg:empty{display:none!important}
.suc-msg svg{width:15px;height:15px;stroke:currentColor;fill:none;flex-shrink:0}
.err-msg{background:#fef2f2;border:1px solid #fca5a5;border-radius:3px;padding:11px 14px;color:#991b1b;font-size:0.875rem;margin-bottom:16px;display:none}
.err-msg:not(:empty){display:block}
.contact-direct{margin-top:32px;padding-top:28px;border-top:1px solid rgba(255,255,255,0.07)}
.contact-direct-lbl{font-family:var(--fh);font-size:9px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.25);margin-bottom:18px}
.cdr{display:flex;align-items:flex-start;gap:10px;margin-bottom:13px}
.cdr svg{width:13px;height:13px;stroke:var(--accent);fill:none;margin-top:3px;flex-shrink:0}
.cdr a,.cdr span{font-size:0.875rem;color:rgba(255,255,255,0.38);transition:color var(--t)}
.cdr a:hover{color:rgba(200,245,66,0.8)}

/* ═══ SCROLL REVEAL ════════════════════════════════════ */
.sr{opacity:0;transform:translateY(28px);transition:opacity 0.55s var(--ease),transform 0.55s var(--ease)}
.sr.in{opacity:1;transform:translateY(0)}
.sr-d1{transition-delay:0.08s}
.sr-d2{transition-delay:0.16s}
.sr-d3{transition-delay:0.24s}

/* ═══ RESPONSIVE ═══════════════════════════════════════ */
@media(max-width:1100px){
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero__left{padding:120px 40px 60px;min-height:60vh}
  .hero__right{height:55vw;min-height:300px}
  .hero__stats{position:relative;grid-template-columns:1fr 1fr}
  .about__grid{grid-template-columns:1fr}
  .about__cell-a{min-height:auto;padding:52px 40px}
  .about__cell-c,.about__cell-d{min-height:280px}
  .about__badge{top:auto;bottom:16px;right:16px}
  .vision__top{grid-template-columns:1fr;gap:32px}
  .vstrip{grid-template-columns:80px 1fr;gap:24px}
  .vstrip__num{font-size:3rem}
  .why__img-col{margin-left:0}
  .why__big-num{display:none}
  .why__layout{grid-template-columns:1fr}
  .location__card{position:relative;left:auto;top:auto;transform:none;max-width:100%;border-radius:0;min-width:unset}
  .location{display:flex;flex-direction:column}
  .location__map{height:400px}
  .cta__inner{grid-template-columns:1fr;gap:28px}
  .careers__top{grid-template-columns:1fr;gap:48px}
  .forms-grid{grid-template-columns:1fr}
  .events__header-grid{grid-template-columns:1fr;gap:24px}
  .ev-a,.ev-b{grid-template-columns:1fr}
  .awards__cols{grid-template-columns:1fr 1fr}
  .footer__grid{grid-template-columns:1fr 1fr;gap:40px}
}

/* ═══ MOBILE FIXES ══════════════════════════════════ */
@media(max-width:1100px){
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero__left{padding:120px 40px 60px;min-height:60vh}
  .hero__right{height:55vw;min-height:300px}
  .hero__stats{position:relative;grid-template-columns:1fr 1fr}
  .about__grid{grid-template-columns:1fr}
  .about__cell-a{min-height:auto;padding:52px 40px}
  .about__cell-c,.about__cell-d{min-height:280px}
  .about__badge{top:auto;bottom:16px;right:16px}
  .vision__top{grid-template-columns:1fr;gap:32px}
  .vstrip{grid-template-columns:80px 1fr;gap:24px}
  .vstrip__num{font-size:3rem}
  .why__img-col{margin-left:0}
  .why__big-num{display:none}
  .why__layout{grid-template-columns:1fr}
  .location__card{position:relative;left:auto;top:auto;transform:none;max-width:100%;border-radius:0;min-width:unset}
  .location{display:flex;flex-direction:column}
  .location__map{height:400px}
  .cta__inner{grid-template-columns:1fr;gap:28px}
  .careers__top{grid-template-columns:1fr;gap:48px}
  .forms-grid{grid-template-columns:1fr}
  .events__header-grid{grid-template-columns:1fr;gap:24px}
  .ev-a,.ev-b{grid-template-columns:1fr}
  .awards__cols{grid-template-columns:1fr 1fr}
  .footer__grid{grid-template-columns:1fr 1fr;gap:40px}
}

@media(max-width:768px){
  /* Nav */
  .nav{padding:0 20px;height:60px}
  .nav__right .nav__link,.nav__btn{display:none}
  .nav__ham{display:flex}
  .mob-nav a{font-size:1.8rem}

  /* Hero */
  .hero__left{padding:90px 20px 48px}
  .hero__title{font-size:2.6rem;letter-spacing:-1.5px}
  .hero__desc{font-size:0.88rem;max-width:100%}
  .hero__btns{flex-direction:row;gap:10px;flex-wrap:wrap}
  .hero__btns .btn-solid,.hero__btns .btn-outline{width:auto;justify-content:center}
  .hero__stats{grid-template-columns:1fr 1fr}
  .hero__stat{padding:14px 12px}
  .hero__stat-n{font-size:1.2rem}
  .hero__vert-label{display:none}

  /* About */
  .about{padding:64px 0}
  .about__wrap{padding:0 20px}
  .about__cell-a{padding:36px 24px}
  .about__h2{font-size:1.8rem}
  .about__cell-b{min-height:260px}
  .about__cell-c{min-height:220px}
  .about__cell-d{padding:32px 24px;min-height:auto}
  .about__badge{width:60px;height:60px}
  .about__badge-n{font-size:1rem}

  /* Vision */
  .vision{padding:64px 0 0}
  .vision__top{padding:0 20px 48px}
  .vision__h2{font-size:2rem}
  .vstrip{padding:28px 20px;grid-template-columns:1fr;gap:12px}
  .vstrip__num{font-size:2rem;display:none}
  .vstrip__title{font-size:1.2rem}

  /* Why */
  .why{padding:64px 0}
  .why__outer{padding:0 20px}
  .why__h2{font-size:2rem}
  .why__img{aspect-ratio:16/9}
  .why__items-col{padding:0}
  .why__item{padding:24px 0}

  /* Partners */
  .partners__inner{flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:0 20px;text-align:center}
  .partners__rule{display:none}
  .partners__logos{gap:20px}

  /* Location */
  .location__card{padding:28px 20px}
  .location__card h3{font-size:1.3rem;margin-bottom:20px}
  .location__map{height:320px}

  /* CTA */
  .cta__inner{padding:52px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px}
  .cta h2{font-size:1.6rem}
  .btn-white{width:auto;display:inline-flex;justify-content:center}

  /* Events */
  .events{padding:64px 0}
  .events__wrap{padding:0 20px}
  .ev__body{padding:28px 20px}
  .ev__title{font-size:1.3rem}
  .ev__img img{min-height:240px}

  /* Awards */
  .awards{padding:64px 0}
  .awards__wrap{padding:0 20px}
  .awards__cols{grid-template-columns:1fr}
  .award-card--tall img{height:auto}
  .award-card--short img{height:auto}

  /* Careers */
  .careers{padding:64px 0}
  .careers__wrap{padding:0 20px}
  .careers__h2{font-size:2rem}
  .job-row{grid-template-columns:1fr;gap:12px}
  .job-row a{width:100%;justify-content:center}

  /* Forms */
  .forms-section{padding:64px 0}
  .forms-section__wrap{padding:0 20px}
  .form-card{padding:28px 20px}
  .frow2{grid-template-columns:1fr}
  .forms-hdr h2{font-size:2rem}

  /* Footer */
  .footer__inner{padding:0 20px}
  .footer__grid{grid-template-columns:1fr;gap:32px}
  .footer__bottom{flex-direction:column;gap:8px;text-align:center}

  /* Page hero */
  .phero__content{padding:100px 20px 48px}
  .phero h1{font-size:2.6rem;letter-spacing:-1.5px}
  .phero__bg-num{display:none}
}

@media(max-width:400px){
  .hero__title{font-size:2.1rem}
  .hero__stats{grid-template-columns:1fr 1fr}
  .vision__h2{font-size:1.7rem}
  .careers__h2{font-size:1.7rem}
  .phero h1{font-size:2rem}
}

/* ── AWARDS TABS ───────────────────────────────────── */
.awards-tabs {
  display: flex;
  gap: 0;
  margin-bottom: 48px;
  border-bottom: 2px solid rgba(255,255,255,0.08);
  justify-content: center;
}
.awards-tab {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 32px;
  background: transparent;
  border: none;
  border-bottom: 3px solid transparent;
  margin-bottom: -2px;
  font-family: var(--fh);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: var(--muted);
  cursor: pointer;
  transition: color 0.25s, border-color 0.25s;
}
.awards-tab svg {
  width: 17px;
  height: 17px;
  opacity: 0.7;
}
.awards-tab:hover { color: var(--fg); }
.awards-tab--active {
  color: var(--green);
  border-bottom-color: var(--green);
}
.awards-tab--active svg { opacity: 1; }

.awards-panel { display: none; }
.awards-panel--active { display: block; }

/* ── MONTHLY STATS BAR ─────────────────────────────── */
.monthly-stats {
  display: flex;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 48px;
}
.monthly-stat {
  flex: 1;
  padding: 28px 24px;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,0.07);
}
.monthly-stat:last-child { border-right: none; }
.monthly-stat__n {
  font-family: var(--fh);
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  font-weight: 800;
  color: var(--green);
  line-height: 1;
  margin-bottom: 6px;
}
.monthly-stat__l {
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--muted);
}

/* ── MONTHLY CARDS GRID ────────────────────────────── */
.monthly-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 28px;
}
.monthly-card {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 20px;
  overflow: hidden;
  transition: transform 0.28s ease, border-color 0.28s;
}
.monthly-card:hover {
  transform: translateY(-6px);
  border-color: rgba(34,197,94,0.35);
}
.monthly-card__img-wrap {
  position: relative;
  aspect-ratio: 4/3;
  background: rgba(255,255,255,0.04);
  overflow: hidden;
}
.monthly-card__img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.monthly-card:hover .monthly-card__img-wrap img {
  transform: scale(1.04);
}
.monthly-card__img-wrap.no-img {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 200px;
  color: var(--muted);
  font-size: 0.85rem;
}
.monthly-card__badge {
  position: absolute;
  top: 14px;
  left: 14px;
  background: var(--green);
  color: #0a0f0a;
  border-radius: 10px;
  padding: 6px 14px;
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.15;
  box-shadow: 0 4px 16px rgba(0,0,0,0.3);
}
.monthly-card__mon {
  font-family: var(--fh);
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.monthly-card__yr {
  font-family: var(--fh);
  font-size: 0.95rem;
  font-weight: 900;
}
.monthly-card__body {
  padding: 22px 24px 20px;
}
.monthly-card__dept {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--green);
  margin-bottom: 6px;
}
.monthly-card__name {
  font-family: var(--fh);
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--fg);
  margin-bottom: 10px;
  letter-spacing: -0.3px;
}
.monthly-card__cite {
  font-size: 0.83rem;
  color: var(--muted);
  line-height: 1.65;
  font-style: italic;
  margin-bottom: 16px;
}
.monthly-card__footer {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--green);
}
.monthly-card__footer svg {
  width: 14px;
  height: 14px;
}

@media (max-width: 640px) {
  .awards-tabs { flex-direction: column; border-bottom: none; }
  .awards-tab { border-bottom: 1px solid rgba(255,255,255,0.08); border-left: 3px solid transparent; }
  .awards-tab--active { border-left-color: var(--green); color: var(--green); }
  .monthly-stats { flex-direction: column; }
  .monthly-stat { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.07); }
  .monthly-stat:last-child { border-bottom: none; }
  .monthly-grid { grid-template-columns: 1fr; }
}

@media (max-width: 1024px) {
  .vstrip {
    display: grid;
    grid-template-columns: 60px 1fr;
    grid-template-rows: auto auto;
    gap: 12px 20px;
  }
  .vstrip__num {
    grid-column: 1;
    grid-row: 1;
  }
  .vstrip__title {
    grid-column: 2;
    grid-row: 1;
  }
  .vstrip__body {
    grid-column: 1 / -1;
    grid-row: 2;
    max-width: 100%;
    width: 100%;
  }
}