.fh-subscription {
    --fh-subscription-accent: #b85c4d;
    color: #17372f;
    position: relative;
}
.fh-subscription--background {
    background: #eee5d5;
    background-image: linear-gradient(90deg, rgba(250,246,238,.97) 0%, rgba(250,246,238,.9) 37%, rgba(250,246,238,.18) 78%), var(--fh-subscription-background, linear-gradient(135deg,#eee5d5,#dce8df));
    background-position: center, var(--fh-subscription-focal, center);
    background-size: cover;
    padding: 28px 0 24px;
}
.fh-subscription--overlay-forest { background-image: linear-gradient(90deg,rgba(16,54,45,.97),rgba(16,54,45,.82)),var(--fh-subscription-background,linear-gradient(135deg,#17372f,#285f50)); color:#fff; }
.fh-subscription--overlay-navy { background-image: linear-gradient(90deg,rgba(18,43,59,.97),rgba(18,43,59,.82)),var(--fh-subscription-background,linear-gradient(135deg,#122b3b,#284f66)); color:#fff; }
.fh-subscription__panel { max-width: 540px; }
.fh-subscription--align-center .fh-subscription__panel { margin-inline:auto; text-align:center; }
.fh-subscription__eyebrow { color:var(--fh-subscription-accent); font-size:12px; font-weight:800; letter-spacing:.13em; margin:0 0 12px; text-transform:uppercase; }
.fh-subscription--overlay-forest .fh-subscription__eyebrow,.fh-subscription--overlay-navy .fh-subscription__eyebrow { color:#f1c989; }
.fh-subscription h2,.fh-subscribe-page h1 { color:inherit; font-family:Georgia,serif; font-size:clamp(31px,3.45vw,48px); line-height:1.06; margin:0 0 14px; }
.fh-subscription__copy { font-size:16px; line-height:1.45; margin:0 0 24px; max-width:500px; }
.fh-subscription--align-center .fh-subscription__copy { margin-inline:auto; }
.fh-subscription__disclaimer { font-size:13px; line-height:1.5; margin:16px 0 0; opacity:.8; }
.fh-subscription__split { background:#f8f3ea; display:grid; grid-template-columns:var(--fh-subscription-image-width,50%) 1fr; min-height:640px; padding:0; }
.fh-subscription__image { align-items:flex-end; background:linear-gradient(145deg,#d7c7a7,#446b5f); background-position:center; background-size:cover; display:flex; min-height:560px; padding:42px; position:relative; }
.fh-subscription__image::after { background:linear-gradient(0deg,rgba(10,38,31,.72),transparent 65%); content:""; inset:0; position:absolute; }
.fh-subscription__image p { color:#fff; font-family:Georgia,serif; font-size:28px; line-height:1.3; margin:0; max-width:420px; position:relative; z-index:1; }
.fh-subscription__content { padding:54px clamp(28px,5vw,70px); }
.e3nl-subscribe { display:grid; gap:18px; text-align:left; }
.e3nl-subscribe p { margin:0; }
.e3nl-subscribe input[type="email"] { background:#fff; border:1px solid #b9c7c1; border-radius:8px; box-sizing:border-box; font:inherit; margin-top:7px; min-height:48px; padding:11px 13px; width:100%; }
.e3nl-subscribe--compact { gap:10px; max-width:440px; }
.e3nl-subscribe__row { display:flex; gap:0; }
.e3nl-subscribe--compact input[type="email"] { border-color:#d9dedb; border-radius:8px 0 0 8px; margin:0; min-height:42px; }
.e3nl-subscribe--compact button { background:#075f38; border-radius:0 8px 8px 0; flex:0 0 auto; min-height:42px; padding-inline:24px; width:auto; }
.e3nl-compact-interest { height:1px; left:-9999px; overflow:hidden; position:absolute; width:1px; }
.e3nl-subscribe--compact .e3nl-consent { font-size:11px; line-height:1.35; margin:0; max-width:500px; }
.e3nl-subscribe--compact .e3nl-consent label { gap:7px; }
.e3nl-subscribe--compact [role="status"] { font-size:14px; }
.e3nl-subscribe fieldset { border:0; display:grid; gap:10px; margin:0; padding:0; }
.e3nl-subscribe legend { font-weight:800; margin-bottom:10px; }
.e3nl-interest { align-items:flex-start; background:rgba(255,255,255,.83); border:1px solid rgba(29,75,63,.18); border-radius:9px; cursor:pointer; display:flex; gap:11px; padding:12px; }
.e3nl-interest input { flex:0 0 auto; margin-top:4px; }
.e3nl-interest span { display:grid; gap:3px; }
.e3nl-interest strong { color:#17372f; }
.e3nl-interest em { color:#7b5b2b; font-size:12px; font-style:normal; font-weight:700; }
.e3nl-interest small { color:#53635e; line-height:1.45; }
.e3nl-consent label { align-items:flex-start; display:flex; gap:10px; line-height:1.5; }
.e3nl-consent input { flex:0 0 auto; margin-top:5px; }
.e3nl-subscribe button { align-items:center; background:#b85c4d; border:0; border-radius:999px; color:#fff; cursor:pointer; display:inline-flex; font:inherit; font-weight:800; justify-content:center; min-height:48px; padding:12px 26px; width:max-content; }
.e3nl-subscribe button:disabled { cursor:wait; opacity:.65; }
.e3nl-subscribe [role="status"] { font-weight:700; min-height:1.5em; }
.fh-subscription--overlay-forest .e3nl-consent,.fh-subscription--overlay-navy .e3nl-consent { color:#fff; }
.fh-subscription__meta { display:grid; gap:5px; margin-top:10px; }
.fh-subscription__disclaimer { align-items:center; display:flex; gap:7px; margin:0; opacity:.72; }
.fh-subscription__meta-icon { display:inline-flex; flex:0 0 auto; height:15px; width:15px; }
.fh-subscription__meta-icon svg { height:100%; width:100%; }
body.encounter3-site .fh-subscription__preferences-link { align-items:center; background:transparent; border:0; border-radius:0; color:inherit; cursor:pointer; display:inline-flex; font:inherit; font-size:13px; gap:7px; justify-self:start; min-height:0; padding:0; text-align:left; text-decoration:underline; text-underline-offset:3px; }
.fh-subscription__preferences-dialog { border:0; border-radius:16px; box-shadow:0 24px 72px rgba(10,38,31,.32); color:#17372f; max-width:min(720px,calc(100% - 28px)); padding:clamp(24px,4vw,42px); width:100%; }
.fh-subscription__preferences-dialog::backdrop { background:rgba(9,29,24,.65); }
.fh-subscription__preferences-dialog-header { align-items:flex-start; display:flex; gap:20px; justify-content:space-between; }
.fh-subscription__preferences-dialog .fh-subscription__eyebrow { margin-bottom:8px; }
.fh-subscription__preferences-dialog h2 { font-size:clamp(30px,4vw,42px); }
.fh-subscription__preferences-close { background:transparent; border:0; color:#17372f; cursor:pointer; font-size:32px; line-height:1; padding:0 4px; }
.fh-subscription__preferences-intro { line-height:1.55; margin:0 0 22px; }
.fh-subscription__preferences-dialog .e3nl-subscribe { max-width:none; }
.fh-subscribe-page { background:#f8f3ea; }
.fh-subscribe-hero { background:#17372f; color:#fff; padding:58px 0 0; }
.fh-subscribe-hero__layout { align-items:stretch; display:grid; grid-template-columns:1.05fr .95fr; min-height:430px; }
.fh-subscribe-hero__intro { align-self:center; padding:50px clamp(20px,5vw,72px) 64px 0; }
.fh-subscribe-hero__intro>p:last-child { font-size:19px; line-height:1.65; max-width:650px; }
.fh-subscribe-hero__image { background-position:center; background-size:cover; min-height:360px; }
.fh-subscribe-form-section { padding:64px 0 82px; }
.fh-subscribe-form-section__inner { background:#fff; border-radius:18px; box-shadow:0 18px 50px rgba(21,50,42,.12); max-width:820px; padding:clamp(26px,5vw,58px); }
@media (max-width:780px) {
    .fh-subscription--background { background-image:linear-gradient(90deg,rgba(250,246,238,.96),rgba(250,246,238,.72)),var(--fh-subscription-background,linear-gradient(135deg,#eee5d5,#dce8df)); padding:36px 0; }
    .fh-subscription__split,.fh-subscribe-hero__layout { grid-template-columns:1fr; }
    .fh-subscription__image { min-height:320px; }
    .fh-subscription--form-first .fh-subscription__image { order:2; }
    .fh-subscription--form-first .fh-subscription__content { order:1; }
    .fh-subscription__content { padding:38px 24px; }
    .fh-subscribe-hero { padding-top:30px; }
    .fh-subscribe-hero__intro { padding:36px 0 42px; }
    .fh-subscribe-hero__image { min-height:280px; }
    .fh-subscribe-form-section { padding:34px 0 54px; }
}
@media (max-width:520px) {
    .e3nl-subscribe__row { display:grid; gap:10px; }
    .e3nl-subscribe--compact input[type="email"],.e3nl-subscribe--compact button { border-radius:8px; width:100%; }
}
@media (prefers-reduced-motion:reduce) { .e3nl-subscribe button { transition:none; } }
