.nl-center{--nl-ink:#13263b;--nl-gold:#c4a367;--nl-ivory:#f6efdf;--nl-line:#d8ceba;max-width:1160px;margin:0 auto;color:var(--nl-ink);overflow-wrap:anywhere}
.nl-center *{box-sizing:border-box;min-width:0}
.nl-center h2{font-size:clamp(1.4rem,2.8vw,2rem);line-height:1.4;margin:0 0 1.2rem}
.nl-center h3{font-size:1.13rem;line-height:1.5;margin:.5rem 0}
.nl-center p,.nl-center li{font-size:1rem;line-height:1.9}
.nl-opening{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;align-items:start}
.nl-letter{padding:clamp(24px,4vw,48px);border:1px solid var(--nl-line);background:linear-gradient(145deg,#fffdf7,#f5efdf);border-radius:6px;margin:0 0 24px}
.nl-letter p{max-width:70ch}.nl-eyebrow,.nl-number{color:#816331;font-size:.78rem;letter-spacing:.12em}
.nl-letter .nl-greeting{font-weight:600}.nl-signature{margin-top:2rem;color:#765c2d}
.nl-text-link{display:inline-block;margin-top:1rem;color:#74581f;text-decoration:underline;text-underline-offset:5px}
.nl-subscribe{padding:clamp(24px,3vw,36px);background:linear-gradient(135deg,#10273b,#153d45);color:var(--nl-ivory);border-top:3px solid var(--nl-gold);border-radius:6px;margin-bottom:24px}
.nl-center .nl-subscribe h2{color:var(--nl-gold)!important}
.nl-center .nl-subscribe :is(p,li,label,a,span){color:var(--nl-ivory)!important}

/* The newsletter hero keeps the supplied artwork as a visual field while
   leaving all language-specific words in the HTML layer. */
.newsletter-page .editorial-hero{
  position:relative;
  min-height:clamp(360px,38vw,570px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(86px,10vw,150px) max(28px,calc((100vw - 1180px)/2));
  overflow:hidden;
  isolation:isolate;
  background-color:#10192b;
  background-image:linear-gradient(90deg,rgba(13,16,34,.96) 0%,rgba(13,16,34,.88) 28%,rgba(13,16,34,.44) 52%,rgba(13,16,34,.05) 78%),url('/static/newsletter-hero-20260919.png');
  background-repeat:no-repeat;
  background-position:center,center;
  background-size:cover,cover;
}
.newsletter-page .editorial-hero>*{position:relative;z-index:1;max-width:610px}
.newsletter-page .editorial-hero .editorial-kicker{color:#c4a367;font-size:11px;letter-spacing:.2em}
.newsletter-page .editorial-hero h1{margin:18px 0 14px;color:#c4a367!important;-webkit-text-fill-color:#c4a367!important;text-shadow:0 2px 18px rgba(0,0,0,.28)}
.newsletter-page .editorial-hero p{max-width:520px;color:#f6efdf!important;font-size:clamp(15px,1.45vw,19px);line-height:1.75;text-shadow:0 2px 12px rgba(0,0,0,.38)}
@media(max-width:700px){
  .newsletter-page .editorial-hero{min-height:500px;padding:112px 24px 58px;background-image:linear-gradient(180deg,rgba(13,16,34,.84) 0%,rgba(13,16,34,.72) 47%,rgba(13,16,34,.3) 100%),url('/static/newsletter-hero-20260919.png');background-position:center,68% center;background-size:cover,auto 100%;}
  .newsletter-page .editorial-hero>*{max-width:92%}
}

/* Welcome letter hero: local to the letter page, leaving the newsletter index unchanged. */
.portal.newsletter-page.newsletter-welcome-page header.editorial-hero{
  background-image:linear-gradient(90deg,rgba(20,25,31,.78) 0%,rgba(20,25,31,.48) 34%,rgba(20,25,31,.08) 62%,rgba(20,25,31,0) 100%),url('/static/newsletter-welcome-hero-20260919.png');
  background-position:center,center;
  background-size:cover,cover;
}
.newsletter-welcome-page .editorial-hero h1{color:#c4a367!important;-webkit-text-fill-color:#c4a367!important}
.newsletter-welcome-page .editorial-hero p{color:#f6efdf!important}
html body.portal.newsletter-welcome-page .editorial-body{padding-block:clamp(24px,3vw,40px)}
html body.portal.newsletter-welcome-page .editorial-grid{grid-template-columns:minmax(0,1fr)!important;gap:0!important}
html body.portal.newsletter-welcome-page .editorial-aside{display:none!important}
html body.portal.newsletter-welcome-page .editorial-copy,
html body.portal.newsletter-welcome-page .nl-center{width:100%;max-width:none;min-width:0;margin:0}
html body.portal.newsletter-welcome-page .nl-letter{width:100%;max-width:none;min-height:0;margin:0;padding:clamp(18px,2.5vw,32px)}
html body.portal.newsletter-welcome-page .nl-letter p{width:100%;max-width:none;margin:0 0 1.1em;text-align:justify;text-align-last:start;white-space:normal;overflow-wrap:break-word}
html body.portal.newsletter-welcome-page .nl-letter p:last-child{margin-bottom:0}
@media(max-width:700px){
  .portal.newsletter-page.newsletter-welcome-page header.editorial-hero{min-height:500px;background-image:linear-gradient(180deg,rgba(20,25,31,.76) 0%,rgba(20,25,31,.42) 48%,rgba(20,25,31,.1) 100%),url('/static/newsletter-welcome-hero-20260919.png');background-position:center,64% center;background-size:cover,auto 100%}
}
.nl-subscribe ol{padding-inline-start:1.3rem;margin:0 0 1.4rem}
.nl-subscribe li{padding-inline-start:.25rem;font-size:.92rem}
.nl-subscribe form{display:grid;gap:12px}.nl-subscribe label{font-size:.93rem;line-height:1.65}
.nl-subscribe input[type=email]{width:100%;min-height:48px;border:1px solid #aeaf9e;border-radius:3px;background:#fffdf7;color:var(--nl-ink);font:inherit;padding:10px 12px}
.nl-consent{display:flex;gap:10px;align-items:flex-start}.nl-consent input{flex:none;width:18px;height:18px;margin-top:4px;accent-color:#c4a367}
.nl-subscribe form>a{font-size:.85rem;text-underline-offset:4px}
.nl-center .nl-button{font:inherit;min-height:48px;border:1px solid #dec58f;border-radius:3px;padding:12px 20px;background:#e5cd96;color:#192a35;cursor:pointer;white-space:normal;line-height:1.5}
.nl-center .nl-button:hover{background:#f0ddb4}
.nl-center :is(a,button,input,summary):focus-visible{outline:3px solid #b08636;outline-offset:4px}
.nl-topics,.nl-faq{margin:40px 0}.nl-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.nl-topic{padding:24px 20px;background:#fffdf7;border:1px solid var(--nl-line);border-top:3px solid #668b80;border-radius:4px}
.nl-topic p{font-size:.93rem}.nl-topic a{color:var(--nl-ink);text-decoration:underline;text-decoration-color:#b59a62;text-underline-offset:5px}
.nl-faq details{border-top:1px solid var(--nl-line);padding:18px 0}.nl-faq details:last-child{border-bottom:1px solid var(--nl-line)}
.nl-faq summary{cursor:pointer;font-weight:600;line-height:1.6;padding:4px 0}.nl-faq details p{max-width:75ch;margin:.8rem 0 0}
.nl-status{padding:20px 24px;border-inline-start:4px solid #4f8374;background:#e7f1e8;color:#19392f;border-radius:3px}
@media(max-width:900px){.nl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nl-opening{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.nl-grid{grid-template-columns:minmax(0,1fr)}.nl-letter,.nl-subscribe{padding:24px 20px}.nl-topic{padding:20px}.nl-topics,.nl-faq{margin:30px 0}}
