.sp{position:relative}
.sp{--bg:#0a0a0a;--paper:#f4f1e9;--lime:#d9ff3f;--text:#101010;--white:#fff}
.sp *{box-sizing:border-box}
.sp{margin:0;background:var(--bg);color:#fff;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}
.sp img{width:100%;height:100%;object-fit:cover;display:block}
.sp a{color:inherit;text-decoration:none}
.sp nav{position:absolute;inset:0 0 auto 0;z-index:30;height:68px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;color:#fff;mix-blend-mode:difference;font-size:12px;text-transform:uppercase;letter-spacing:.14em}
.sp nav strong{font-size:17px;letter-spacing:.12em}
.sp .sp-hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;padding:7vw 4vw 5vw;overflow:hidden}
.sp .sp-hero img{position:absolute;inset:0}
.sp .sp-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.18) 45%,rgba(0,0,0,.8))}
.sp .hero-copy{position:relative;z-index:2;max-width:1180px}
.sp .sp-hero h1{margin:0;font-size:clamp(52px,9vw,145px);line-height:.84;letter-spacing:-.06em;font-weight:780}
.sp .sp-hero p{margin:24px 0 0;max-width:760px;font-size:clamp(18px,2.1vw,30px);line-height:1.15}
.sp .section{padding:9vw 5vw;display:grid;grid-template-columns:.78fr 1.22fr;gap:8vw}
.sp .light{background:var(--paper);color:var(--text)}
.sp .dark{background:var(--bg);color:#fff}
.sp .acid{background:var(--lime);color:var(--text)}
.sp .kicker{font-size:12px;text-transform:uppercase;letter-spacing:.18em;position:sticky;top:90px;align-self:start}
.sp .copy h2{margin:0 0 24px;font-size:clamp(42px,6vw,92px);line-height:.9;letter-spacing:-.05em;font-weight:760}
.sp .copy p{margin:0;max-width:820px;font-size:clamp(18px,1.85vw,28px);line-height:1.22}
.sp .photo-full{height:72svh;overflow:hidden}
.sp .photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#000}
.sp .photo-pair figure, .sp .photo-grid figure{margin:0;overflow:hidden;min-height:58svh}
.sp .achievement-band{display:grid;grid-template-columns:.85fr 1.15fr;background:#0a0a0a;color:#fff}
.sp .achievement-band figure{margin:0;min-height:78svh;overflow:hidden}
.sp .achievement-copy{padding:7vw 5vw;display:flex;flex-direction:column;justify-content:center}
.sp .metric{font-size:clamp(88px,13vw,210px);line-height:.78;letter-spacing:-.075em;font-weight:800;margin-bottom:32px}
.sp .achievement-copy h2{margin:0 0 22px;font-size:clamp(36px,5vw,74px);line-height:.92;letter-spacing:-.05em}
.sp .achievement-copy p{margin:0;font-size:clamp(18px,1.8vw,27px);line-height:1.2;max-width:680px}
.sp .photo-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:2px}
.sp .photo-grid .tall{grid-row:span 2;min-height:116svh}
.sp .photo-grid .wide{grid-column:span 2}
.sp .cta{background:var(--paper);color:var(--text);padding:8vw 5vw;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}
.sp .cta h2{margin:0;font-size:clamp(48px,8vw,126px);line-height:.84;letter-spacing:-.06em;max-width:950px}
.sp .cta p{margin:28px 0 0;font-size:clamp(18px,1.9vw,28px);max-width:730px;line-height:1.2}
.sp .button{display:inline-flex;align-items:center;justify-content:center;min-width:240px;padding:20px 28px;border:2px solid currentColor;border-radius:999px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;transition:.25s}
.sp .button:hover{background:#111;color:#fff}
.sp footer{padding:24px 5vw 32px;display:flex;justify-content:space-between;gap:20px;color:#bdbdbd;font-size:11px;text-transform:uppercase;letter-spacing:.13em}
.sp .reveal{opacity:0;transform:translateY(24px);transition:.75s ease}
.sp .reveal.in{opacity:1;transform:none}
/* --- Mobile layout: verified for 320–480px --- */
.sp .mobile-title{display:none}


@media (max-width: 600px) {
.sp{ width:100%; max-width:100%; overflow-x:hidden; }
.sp *{ min-width:0; }
.sp{ -webkit-text-size-adjust:100%; }
/* No hidden-on-scroll text on mobile. */
.sp .reveal{ opacity:1 !important; transform:none !important; transition:none !important; }
.sp nav{
    height:52px;
    padding:0 18px;
    background:rgba(10,10,10,.72);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    mix-blend-mode:normal;
  }
.sp nav strong{ font-size:14px; }
.sp nav span{ display:none; }
.sp .sp-hero{
    min-height:78svh;
    min-height:78dvh;
    padding:84px 20px 30px;
  }
.sp .sp-hero img{ object-position:52% center; }
.sp .sp-hero:after{ background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.12) 42%,rgba(0,0,0,.84)); }
.sp .desktop-title{ display:none; }
.sp .mobile-title{
    display:flex;
    flex-direction:column;
    gap:10px;
    max-width:100%;
    text-transform:uppercase;
  }
.sp .mobile-title strong{
    font-size:clamp(58px,19vw,82px);
    line-height:.78;
    letter-spacing:-.065em;
  }
.sp .mobile-title span{
    font-size:clamp(24px,8vw,34px);
    line-height:.92;
    letter-spacing:-.045em;
    font-weight:700;
  }
.sp .sp-hero p{
    margin:22px 0 0;
    max-width:320px;
    font-size:17px;
    line-height:1.28;
  }
.sp .section{
    display:block;
    padding:54px 20px 58px;
  }
.sp .kicker{
    position:static;
    margin:0 0 24px;
    font-size:10px;
    line-height:1.3;
    letter-spacing:.15em;
  }
.sp .copy h2{
    margin:0 0 20px;
    font-size:clamp(34px,10.5vw,46px);
    line-height:.96;
    letter-spacing:-.045em;
  }
.sp .copy p{
    max-width:none;
    font-size:17px;
    line-height:1.42;
  }
.sp .photo-pair{
    display:block;
  }
.sp .photo-pair figure{
    width:100%;
    min-height:0;
    height:auto;
    aspect-ratio:4/3;
    margin:0 0 2px;
  }
.sp .achievement-band{
    display:flex;
    flex-direction:column;
  }
.sp .achievement-band figure{
    width:100%;
    min-height:0;
    aspect-ratio:4/5;
  }
.sp .achievement-copy{
    padding:52px 20px 58px;
  }
.sp .metric{
    margin:0 0 24px;
    font-size:clamp(88px,30vw,126px);
    line-height:.75;
  }
.sp .achievement-copy h2{
    margin:0 0 20px;
    font-size:clamp(34px,10vw,44px);
    line-height:.96;
  }
.sp .achievement-copy p{
    font-size:17px;
    line-height:1.42;
  }
/* Editorial mobile mosaic: full-width key image, then compact pairs. */
.sp .photo-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:2px;
  }
.sp .photo-grid figure, .sp .photo-grid .tall, .sp .photo-grid .wide{
    min-height:0;
    height:auto;
    margin:0;
    grid-row:auto;
  }
.sp .photo-grid .tall{
    grid-column:1 / -1;
    aspect-ratio:4/3;
  }
.sp .photo-grid figure:not(.tall):not(.wide){
    aspect-ratio:1/1.15;
  }
.sp .photo-grid .wide{
    grid-column:1 / -1;
    aspect-ratio:16/10;
  }
.sp .cta{
    display:block;
    padding:58px 20px 64px;
  }
.sp .cta h2{
    margin:0;
    font-size:clamp(44px,14vw,58px);
    line-height:.88;
    letter-spacing:-.055em;
  }
.sp .cta p{
    margin:22px 0 0;
    max-width:none;
    font-size:17px;
    line-height:1.38;
  }
.sp .button{
    width:100%;
    min-width:0;
    margin-top:32px;
    padding:17px 18px;
    font-size:12px;
  }
.sp footer{
    display:block;
    padding:22px 20px 30px;
    font-size:9px;
    line-height:1.5;
  }
.sp footer span{ display:block; }
.sp footer span + span{ margin-top:6px; }


}


@media (max-width: 360px) {
.sp .sp-hero{ padding-left:16px; padding-right:16px; }
.sp .section, .sp .achievement-copy, .sp .cta{ padding-left:16px; padding-right:16px; }
.sp .mobile-title strong{ font-size:54px; }
.sp .mobile-title span{ font-size:23px; }
.sp .copy h2, .sp .achievement-copy h2{ font-size:33px; }
.sp .copy p, .sp .achievement-copy p, .sp .cta p, .sp .sp-hero p{ font-size:16px; }


}
