.newsletter-dialog{position:fixed;inset:0;width:min(680px,calc(100% - 32px));max-height:min(90vh,850px);overflow:auto;border:0;border-radius:24px;padding:0;background:#fff;color:#24372f;box-shadow:0 24px 90px #18251f55}
.newsletter-dialog::backdrop{background:#14221ccc;backdrop-filter:blur(4px)}
.newsletter-intro{padding:36px 42px 27px;background:#c6d6cc}
.newsletter-intro .eyebrow{margin:0 0 12px;font-style:italic;font-size:clamp(1.6rem,4vw,2.5rem);font-weight:600;letter-spacing:-.03em}
.newsletter-intro h2{margin:0 0 12px;font-size:clamp(1.25rem,3vw,1.7rem);font-weight:600}
.newsletter-intro>p:last-child{margin:0;line-height:1.65;color:#36483f}
.newsletter-intro>img{display:block;width:100%;height:180px;object-fit:cover;object-position:center 40%;margin-top:20px;border-radius:17px}
.newsletter-close{position:absolute;right:15px;top:14px;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:#24372f;font-size:27px;line-height:1;cursor:pointer}
.newsletter-popup-form{display:grid;gap:14px;padding:26px 42px 34px}
.newsletter-popup-form label{display:grid;gap:7px;font-size:.92rem;font-weight:600;color:#48514c}
.newsletter-popup-form label span{font-weight:400;color:#747a76}
.newsletter-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.newsletter-popup-form input:not([type=checkbox]),.newsletter-popup-form select{box-sizing:border-box;width:100%;min-height:48px;border:1px solid #d7ddd9;border-radius:9px;background:#fff;padding:11px 13px;font:inherit;color:#26372f}
.newsletter-popup-form input:focus,.newsletter-popup-form select:focus{outline:2px solid #89a394;outline-offset:1px}
.newsletter-popup-form .newsletter-consent{display:flex;align-items:flex-start;gap:10px;font-size:.82rem;line-height:1.5;font-weight:400}
.newsletter-consent input{width:17px;height:17px;margin:2px 0 0;accent-color:#789483;flex:0 0 auto}
.newsletter-popup-form>button{min-height:54px;border:0;border-radius:10px;background:#c6d6cc;color:#24372f;font:inherit;font-weight:700;letter-spacing:.03em;text-transform:uppercase;cursor:pointer}
.newsletter-popup-form>button:disabled{opacity:.65;cursor:wait}
.newsletter-form-message{min-height:1.2em;margin:0;text-align:center;font-size:.9rem;color:#315a42}
.newsletter-form-message.is-error{color:#9a3028}
@media(max-width:560px){.newsletter-dialog{width:calc(100% - 20px);border-radius:18px}.newsletter-intro{padding:32px 23px 22px}.newsletter-intro>img{height:130px}.newsletter-popup-form{padding:22px 23px 27px}.newsletter-fields{grid-template-columns:1fr;gap:14px}}
