:root{
  --paper:#f3f3f1;
  --ink:#0b1117;
  --muted:#4c5560;
  --line:rgba(11,17,23,.16);
  --max:1320px;
  --blue:#8cc6fa;
  --mint:#c1f1e8;
  --red:#c00000;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--paper);color:var(--ink)}
body{
  font-family:"IBM Plex Sans", sans-serif;
  line-height:1.58;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

img,video{display:block;max-width:100%}

.news-hero{position:relative;min-height:100svh;background:var(--paper)}
.news-hero__grid{min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"copy media";align-items:stretch}
.news-hero__copy{grid-area:copy;display:flex;align-items:center;justify-content:center;padding:7vh 4.5vw 6vh 3.2vw;background:var(--paper)}
.news-hero__copy-inner{width:min(100%,560px);margin-left:0;text-align:center}
.news-hero__brand{margin:0 0 22px;padding-top:1cm;font-family:"IBM Plex Sans",sans-serif;font-size:19px;line-height:1;letter-spacing:.18em;font-weight:700;text-transform:uppercase;color:var(--ink)}
.news-hero__title{margin:0 0 18px;font-family:"Libre Bodoni",serif;font-weight:700;font-size:clamp(50px,5.4vw,86px);line-height:.98;letter-spacing:-.03em;color:var(--ink);text-wrap:balance}
.news-hero__dek{margin:0;font-family:"IBM Plex Serif",serif;font-size:clamp(18px,1.45vw,29px);line-height:1.34;color:rgba(11,17,23,.9);text-wrap:balance}
.news-hero__cta{margin-top:28px;display:flex;justify-content:center}
.news-hero__button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid #0a1520;border-radius:0;background:#0a1520;color:#fcfcfc;font-family:"IBM Plex Sans",sans-serif;font-size:14px;line-height:1;letter-spacing:.02em;font-weight:700;text-decoration:none;box-shadow:none}
.news-hero__media{grid-area:media;position:relative;min-height:100svh;overflow:hidden;background:#000}
.news-hero__video{width:100%;height:100%;object-fit:cover}

@media (max-width:1024px){
  .news-hero__grid{grid-template-columns:1fr;grid-template-areas:"media"}
  .news-hero__media{grid-area:media;grid-column:1;grid-row:1;min-height:100svh}
  .news-hero__copy{grid-area:media;grid-column:1;grid-row:1;position:relative;z-index:2;min-height:100svh;align-items:flex-end;padding:9vh 22px 9vh 18px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.14) 28%,rgba(0,0,0,.56) 64%,rgba(0,0,0,.78) 100%)}
  .news-hero__copy-inner{width:min(100%,760px);text-align:left}
  .news-hero__brand,.news-hero__title,.news-hero__dek{color:#fff}
  .news-hero__dek{max-width:30ch;margin:0;color:rgba(255,255,255,.92)}
  .news-hero__cta{justify-content:flex-start}
  .news-hero__button{background:#0a1520;color:#fcfcfc;border-color:#0a1520}
}

@media (max-width:560px){
  .news-hero__copy{padding:10vh 18px 9vh 16px}
  .news-hero__title{font-size:clamp(36px,9.6vw,56px);line-height:1}
  .news-hero__dek{max-width:30ch;font-size:18px}
}

.atlante-section{padding:clamp(42px,6vw,84px) 0;background:var(--paper)}
.atlante-section--dark{background:#184042;color:#f3f3f1}
.atlante-container{width:min(100%,var(--max));margin:0 auto;padding:0 28px}
.atlante-editorial-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,6vw,96px);align-items:start}
.atlante-kicker{display:inline-flex;align-items:center;min-height:24px;margin:0 0 16px;padding:0 9px;background:#0a1520;color:#f3f3f1;font-family:"IBM Plex Sans",sans-serif;font-size:11px;line-height:1;letter-spacing:.16em;font-weight:700;text-transform:uppercase}
.atlante-section--dark .atlante-kicker{background:var(--blue);color:#0a1520}
.atlante-title{margin:0;font-family:"Libre Bodoni",serif;font-size:clamp(44px,5vw,82px);line-height:.96;letter-spacing:-.035em;font-weight:800;color:var(--ink);text-wrap:balance}
.atlante-section--dark .atlante-title{color:#b3f3e8}
.atlante-copy{margin:0;font-family:"IBM Plex Sans",sans-serif;font-size:clamp(18px,1.45vw,24px);line-height:1.52;color:rgba(11,17,23,.88)}
.atlante-section--dark .atlante-copy{color:rgba(255,255,255,.9)}

.access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.access-card{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);padding:26px 24px 28px;min-height:260px}
.access-card__level{margin:0 0 16px;font-family:"Libre Bodoni",serif;font-size:clamp(30px,3vw,48px);line-height:1;letter-spacing:-.02em;font-weight:700;color:#b3f3e8}
.access-card__text{margin:0;font-family:"IBM Plex Sans",sans-serif;font-size:18px;line-height:1.52;color:rgba(255,255,255,.88)}

.signup-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,6vw,96px);align-items:start}
.signup-panel{border:1px solid rgba(11,17,23,.16);background:#fff;padding:28px 30px 30px;box-shadow:0 18px 34px rgba(11,17,23,.08)}
.signup-form{display:grid;gap:14px}
.signup-field{display:grid;gap:8px}
.signup-label{font-family:"IBM Plex Sans",sans-serif;font-size:11px;line-height:1;letter-spacing:.14em;font-weight:700;text-transform:uppercase;color:rgba(11,17,23,.68)}
.signup-input{width:100%;min-height:52px;padding:0 14px;border:1px solid rgba(11,17,23,.18);border-radius:0;background:#fff;color:#0b1117;font-family:"IBM Plex Sans",sans-serif;font-size:15px}
.signup-button{margin-top:8px;display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:52px;padding:0 22px;border:1px solid #0a1520;border-radius:0;background:#0a1520;color:#fcfcfc;font-family:"IBM Plex Sans",sans-serif;font-size:14px;line-height:1;letter-spacing:.02em;font-weight:700;text-decoration:none;cursor:pointer}
.signup-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:2px}
.signup-option{position:relative;display:flex;align-items:center;justify-content:center;min-height:46px;padding:0 14px;border:1px solid #0a1520;border-radius:0;background:#0a1520;color:#fcfcfc;font-family:"IBM Plex Sans",sans-serif;font-size:13px;line-height:1.15;letter-spacing:.01em;font-weight:700;text-align:center;cursor:pointer}
.signup-option input{position:absolute;opacity:0;pointer-events:none}
.signup-option:has(input:checked){background:#8cc6fa;border-color:#8cc6fa;color:#0a1520}
.signup-option--full{grid-column:1 / -1}
.signup-delete{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 14px;border:1px solid #0a1520;border-radius:0;background:#0a1520;color:#fcfcfc;font-family:"IBM Plex Sans",sans-serif;font-size:13px;line-height:1.15;letter-spacing:.01em;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}

.signup-option a{
  color:inherit;
  text-decoration:underline;
  text-underline-offset:3px;
}

.signup-option a:hover{
  color:inherit;
}

.signup-option--privacy{
  justify-content:flex-start;
  min-height:auto;
  padding:14px 16px;
  text-align:left;
  line-height:1.35;
}

.signup-option--privacy span{
  display:block;
  width:100%;
}
.signup-note{margin:14px 0 0;font-family:"IBM Plex Sans",sans-serif;font-size:13px;line-height:1.45;color:rgba(11,17,23,.62)}

.signup-alert{
  margin:16px 0 0;
  padding:15px 16px;
  border:2px solid #c00000;
  background:#fff4f2;
  color:#0b1117;
  font-family:"IBM Plex Sans",sans-serif;
  font-size:15px;
  line-height:1.42;
  font-weight:700;
}

.signup-alert::before{
  content:"!";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  margin-right:9px;
  background:#c00000;
  color:#fff;
  font-family:"IBM Plex Sans",sans-serif;
  font-size:15px;
  line-height:1;
  font-weight:800;
  vertical-align:middle;
}

.signup-alert.is-ok{
  border-color:#184042;
  background:#eefaf7;
}

.signup-alert.is-ok::before{
  content:"✓";
  background:#184042;
}

@media (max-width:980px){
  .atlante-editorial-grid,.signup-grid{grid-template-columns:1fr}
  .access-grid{grid-template-columns:1fr}
  .access-card{min-height:auto}
}

@media (max-width:740px){
  .atlante-container{padding:0 18px}
  .atlante-section{padding:34px 0}
  .signup-panel{padding:22px 18px 24px}
  .signup-options{grid-template-columns:1fr}
}
