.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:9px; 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; opacity:.72; padding:0; text-align:left; text-decoration:underline; text-underline-offset:3px; }
.fh-subscription__preferences-dialog { background:#fff; border:0; border-radius:24px; box-shadow:0 24px 72px rgba(10,38,31,.3); color:#123f45; max-width:min(592px,calc(100% - 32px)); padding:32px; width:100%; }
.fh-subscription__preferences-dialog::backdrop { background:rgba(36,64,68,.35); backdrop-filter:blur(3px); }
.fh-subscription__preferences-dialog-header { align-items:flex-start; display:flex; gap:20px; justify-content:space-between; }
.fh-subscription__preferences-dialog .fh-subscription__eyebrow { color:#9b641a; font-size:12px; margin-bottom:6px; }
.fh-subscription__preferences-dialog h2 { color:#123f45; font-family:inherit; font-size:34px; line-height:1.1; margin:0; }
body.encounter3-site .fh-subscription__preferences-close { align-items:center; background:#edf2f3; border:0; border-radius:12px; color:#123f45; cursor:pointer; display:inline-flex; font-size:27px; font-weight:400; height:44px; justify-content:center; line-height:1; min-height:44px; padding:0; width:44px; }
.fh-subscription__preferences-intro { color:#60747a; font-size:16px; line-height:1.45; margin:8px 0 22px; }
.fh-subscription__preferences-dialog .e3nl-subscribe { gap:20px; max-width:none; }
.e3nl-subscribe--preferences input[type="email"] { background:transparent; border:0; border-radius:0; margin:0; min-height:0; padding:0; }
.e3nl-preference-email { display:grid; gap:7px; }
.e3nl-preference-email>label { color:#123f45; font-size:13px; font-weight:800; }
.e3nl-preference-email>span { align-items:center; background:#f7fafb; border:1px solid #d4e0e2; border-radius:14px; display:flex; gap:13px; min-height:52px; padding:0 17px; }
.e3nl-preference-email svg { fill:none; height:19px; stroke:#365b60; stroke-width:2; width:19px; }
.e3nl-preference-email input { color:#245560; font-size:16px; width:100%; }
.e3nl-subscribe--preferences fieldset { display:grid; gap:10px; }
.e3nl-subscribe--preferences legend { color:#123f45; font-size:13px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.e3nl-preference-toggle { align-items:center; background:#fff; border:1px solid #d5e0e2; border-radius:16px; cursor:pointer; display:flex; gap:14px; min-height:78px; padding:13px 18px; }
.e3nl-preference-toggle:has(input:checked) { background:#f4f9fc; border-color:#123f6a; }
.e3nl-preference-toggle input { height:1px; opacity:0; position:absolute; width:1px; }
.e3nl-preference-toggle__copy { display:grid; gap:4px; }
.e3nl-preference-toggle__copy strong { color:#123f45; font-size:16px; }
.e3nl-preference-toggle__copy small { color:#60747a; font-size:14px; line-height:1.35; }
.e3nl-preference-toggle__switch { background:#a8bcc0; border-radius:999px; height:28px; margin-left:auto; position:relative; transition:.18s ease; width:48px; }
.e3nl-preference-toggle__switch::after { background:#fff; border-radius:50%; content:""; height:22px; left:3px; position:absolute; top:3px; transition:.18s ease; width:22px; }
.e3nl-preference-toggle:has(input:checked) .e3nl-preference-toggle__switch { background:#204b70; }
.e3nl-preference-toggle:has(input:checked) .e3nl-preference-toggle__switch::after { transform:translateX(20px); }
.e3nl-preference-coming { gap:9px!important; }
.e3nl-preference-coming legend { color:#966019!important; display:flex; gap:9px; }
.e3nl-preference-coming legend small { color:#60747a; font-size:13px; font-weight:400; letter-spacing:0; text-transform:none; }
.e3nl-preference-coming>div { display:flex; flex-wrap:wrap; gap:8px; }
.e3nl-preference-chip { align-items:center; border:1px dashed #8fa6aa; border-radius:999px; color:#123f45; cursor:pointer; display:inline-flex; font-size:14px; font-weight:700; gap:7px; min-height:40px; padding:0 15px; }
.e3nl-preference-chip input { height:1px; opacity:0; position:absolute; width:1px; }
.e3nl-preference-chip__tick { display:none; font-size:19px; line-height:1; }
.e3nl-preference-chip:has(input:checked) { background:#123f45; border-color:#123f45; color:#fff; }
.e3nl-preference-chip:has(input:checked) .e3nl-preference-chip__plus { display:none; }
.e3nl-preference-chip:has(input:checked) .e3nl-preference-chip__tick { display:inline; }
.e3nl-preference-notice { align-items:flex-start; background:#edf9f1; border:1px solid #abdac0; border-radius:13px; color:#2b6848; display:flex; font-size:14px; line-height:1.45; margin:2px 0 0!important; padding:13px 16px; }
.e3nl-subscribe--preferences .e3nl-consent { color:#60747a; font-size:12px; line-height:1.45; }
.e3nl-subscribe--preferences .e3nl-consent input { appearance:none; border:3px solid #163f62; border-radius:4px; height:21px; margin:0; width:21px; }
.e3nl-subscribe--preferences .e3nl-consent input:checked { background:#163f62; box-shadow:inset 0 0 0 3px #fff; }
body.encounter3-site .e3nl-subscribe--preferences button[type="submit"] { background:#204b70; border:0; border-radius:13px; min-height:52px; width:100%; }
.e3nl-preference-unsubscribe { color:#526b71; font-size:14px; justify-self:center; text-decoration:underline; text-underline-offset:3px; }
.fh-subscribe-page { background:#f8f3ea; }
.fh-subscribe-hero { align-items:center; background-color:#17372f; background-image:linear-gradient(90deg,rgba(8,38,31,.2),transparent 62%),var(--fh-subscribe-hero-image,linear-gradient(135deg,#17372f,#356b5d)); background-position:center; background-size:cover; color:#fff; display:flex; min-height:520px; padding:64px 0; }
.fh-subscribe-hero__layout { align-items:center; display:flex; width:100%; }
.fh-subscribe-hero__intro { backdrop-filter:blur(7px); -webkit-backdrop-filter:blur(7px); background:rgba(15,63,52,.75); border-radius:18px; box-shadow:0 18px 50px rgba(6,32,26,.24); max-width:560px; padding:42px 44px 40px; width:54%; }
.fh-subscribe-hero__intro .fh-subscription__eyebrow { color:#f1c989; }
.fh-subscribe-hero h1 { font-size:clamp(40px,4.8vw,62px); letter-spacing:-.035em; }
.fh-subscribe-hero__intro>p:last-child { color:rgba(255,255,255,.92); font-size:17px; line-height:1.65; margin-bottom:0; max-width:460px; }
.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 { 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 { align-items:flex-end; background-image:linear-gradient(180deg,transparent 24%,rgba(4,30,24,.3) 70%,rgba(4,30,24,.48)),var(--fh-subscribe-hero-image,linear-gradient(135deg,#17372f,#356b5d)); background-position:66% center; min-height:620px; padding:260px 0 24px; }
    .fh-subscribe-hero__layout { display:block; }
    .fh-subscribe-hero__intro { border-radius:15px; max-width:none; padding:28px 26px 30px; width:100%; }
    .fh-subscribe-hero h1 { font-size:clamp(35px,10vw,47px); }
    .fh-subscribe-hero__intro>p:last-child { font-size:15px; }
    .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; } }
