.qb-newsletter, .qb-newsletter * { box-sizing: border-box; }
.qb-newsletter { position: relative; z-index: 1; padding: 0 0 56px; }
.qb-newsletter[hidden] { display: none; }
.qb-newsletter-shell { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 48px; padding: 36px 40px; border: 1px solid #b5e9f33d; border-radius: 24px; background: linear-gradient(115deg,#a6ecff16,#ffffff07); }
.qb-newsletter-eyebrow { color: #95e1f0; font-size: 11px; font-weight: 750; letter-spacing: .14em; }
.qb-newsletter-intro h2 { margin: 13px 0 12px; color: #fff; font-size: clamp(27px,2.7vw,38px); line-height: 1.15; letter-spacing: -.035em; }
.qb-newsletter-intro p { color: #e1edf3; font-size: 15px; line-height: 1.65; }
.qb-newsletter-intro .qb-newsletter-note { margin-top: 14px; color: #b9ccd7; font-size: 12px; }
.qb-newsletter-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.qb-newsletter-fields label { display: grid; gap: 7px; min-width: 0; color: #e1edf3; font-size: 12px; }
.qb-newsletter-fields input { width: 100%; min-width: 0; height: 44px; padding: 0 14px; border: 1px solid #beddeb55; border-radius: 10px; background: #ffffff0a; color: #fff; font: inherit; font-size: 15px; }
.qb-newsletter-fields input:focus { outline: 2px solid #8edff0; outline-offset: 2px; }
.qb-newsletter-consent { display: flex; align-items: flex-start; gap: 10px; margin-top: 15px; color: #dae7ee; font-size: 12px; line-height: 1.65; cursor: pointer; }
.qb-newsletter-consent input { appearance: auto; width: 17px; height: 17px; flex: 0 0 17px; margin-top: 2px; accent-color: #58bbd3; }
.qb-newsletter-actions { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin-top: 16px; }
.qb-newsletter-actions button { padding: 11px 24px; border-radius: 999px; background: #d8f5fc; color: #19364c; font: inherit; font-weight: 700; font-size: 14px; cursor: pointer; }
.qb-newsletter-actions button:disabled { opacity: .6; cursor: wait; }
.qb-newsletter-actions a { color: #b9e8f1; font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
.qb-newsletter-status { min-height: 20px; margin-top: 12px; color: #b3f2d0; font-size: 13px; line-height: 1.5; }
.qb-newsletter-status[data-error=true] { color: #fed7aa; }
.qb-newsletter-honey { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media(max-width:850px) { .qb-newsletter-shell { grid-template-columns: 1fr; gap: 26px; } }
@media(max-width:500px) { .qb-newsletter-shell { padding: 27px 20px; } .qb-newsletter-fields { grid-template-columns: 1fr; } }
