/* Persistent, nonmodal SNOAS comms window. Shared by the site and world tour. */
.header-newsletter { display: inline-flex; align-items: center; justify-content: center; gap: .8rem; min-height: 44px; padding: .5rem 1rem; border: 1px solid #866946; border-radius: 26px 8px 26px 8px; color: #e9cf9c; background: #2b1c2480; font: 500 1rem 'Barlow Condensed',sans-serif; letter-spacing: .05em; text-decoration: none; white-space: nowrap }
.header-newsletter:hover { border-color: #d7b87d; background: #46302e80; color: #fff0d5 }
.newsletter-window { position: fixed; z-index: 85; right: max(1.1rem,env(safe-area-inset-right)); bottom: max(2.8rem,calc(env(safe-area-inset-bottom) + 1rem)); width: 360px; max-width: calc(100vw - 1.5rem); max-height: calc(100dvh - 8rem); overflow-y: auto; box-sizing: border-box; display: grid; gap: 1rem; padding: 1.4rem 1.5rem 1.3rem; color: #f1e3cc; background: radial-gradient(ellipse at 0 0,#70512d38,transparent 65%),linear-gradient(145deg,#2e2032,#140e1e); border: 1px solid #b28a59; border-top: 2px solid #ddbb7e; border-radius: 44px 10px 30px 10px; box-shadow: 0 18px 60px #0009,0 0 0 5px #21142c80; text-align: left; cursor: default; scrollbar-width: thin }
.newsletter-window[hidden] { display: none }
.newsletter-close { position: absolute; top: .45rem; right: .45rem; width: 44px; height: 44px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; color: #ead6ed; background: #8d729018; font: 400 1.7rem/1 'Alegreya Sans',sans-serif; cursor: pointer }
.newsletter-close:hover { color: #fff5e6; background: #a28aa730 }
.newsletter-kicker { margin: 0 2rem .5rem 0; color: #d7b77f; font: 500 .74rem/1.4 'Barlow Condensed',sans-serif; letter-spacing: .12em; text-transform: uppercase }
.newsletter-copy h2 { margin: 0 1rem .5rem 0; color: #f1e3cc; font: 500 1.32rem/1.3 'Tektur',sans-serif; letter-spacing: -.02em }
.newsletter-copy > p:last-child { margin: 0; color: #c9b9cc; font: 400 1rem/1.45 'Alegreya Sans',sans-serif }
.newsletter-form label { display: block; margin-bottom: .4rem; color: #d8c6dd; font: 400 .95rem 'Alegreya Sans',sans-serif }
.newsletter-fields { display: grid; gap: .65rem }
.newsletter-input { min-width: 0; width: 100%; min-height: 44px; box-sizing: border-box; padding: .65rem .85rem; border: 1px solid #6e5476; border-radius: 15px 5px 15px 5px; background: #120c1be6; color: #f1e6f3; font: 400 1rem 'Alegreya Sans',sans-serif }
.newsletter-input::placeholder { color: #ab94b5 }
.newsletter-input:focus { outline: 2px solid #c9a0ff; outline-offset: 2px; border-color: #c9a0ff }
.newsletter-button { display: flex; align-items: center; justify-content: center; gap: .75rem; min-height: 44px; padding: .65rem 1rem; border: 1px solid #d9be86; border-radius: 5px 20px 5px 20px; background: #d9be86; color: #271b27; cursor: pointer; font: 600 1rem 'Alegreya Sans',sans-serif }
.newsletter-button:hover:not(:disabled) { background: #edd4a3 }
.newsletter-button:disabled { opacity: .7; cursor: wait }
.newsletter-message { margin: .65rem 0 0; color: #d6c4df; font: 400 1rem/1.45 'Alegreya Sans',sans-serif }
.newsletter-message:empty { display: none }
.newsletter-message.success { color: #b5e8c3 }
.newsletter-message.error { color: #ffb5a5 }
.newsletter-close:focus-visible,.newsletter-button:focus-visible { outline: 2px solid #eed3a0; outline-offset: 3px }
html.embedded .newsletter-window, html.embedded [data-newsletter] { display: none }
@media (max-width: 820px) {
    .header-newsletter { margin: .3rem .8rem .3rem 0; padding: .4rem .65rem; min-height: 40px; font-size: .94rem }
}
@media (max-width: 520px) {
    .newsletter-window { right: .75rem; bottom: max(2.6rem,env(safe-area-inset-bottom)); padding: 1.2rem; gap: .8rem; border-top-left-radius: 30px }
    .newsletter-copy h2 { font-size: 1.2rem }
    .newsletter-kicker { font-size: .68rem }
}

html:not(.newsletter-open) .newsletter-window { display:none }
