/* Newsletter: main-site shell and theme parity */
body.newsletter-page { min-height: 100svh; background: var(--theme-bg, #f5f7fa); }
body.newsletter-page nav { top: 0; background: rgba(7, 23, 42, .82); border-bottom-color: rgba(151, 193, 235, .18); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
body.newsletter-page nav.scrolled {
  top: 0;
  background: rgba(255, 255, 255, .88);
}
body.newsletter-page .bulten-hero { min-height: 560px; padding: 138px 5% 92px; background: radial-gradient(circle at 83% 22%, rgba(35, 132, 245, .36), transparent 27%), radial-gradient(circle at 17% 100%, rgba(32, 101, 193, .3), transparent 33%), linear-gradient(135deg, #061426, #102d4c 55%, #0a1d34); }
body.newsletter-page .bulten-hero::after { content: ''; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(157, 204, 255, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(157, 204, 255, .06) 1px, transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .82), transparent 92%); }
body.newsletter-page .bulten-hero > * { z-index: 1; }
body.newsletter-page .bulten-hero h1 { max-width: 780px; }
body.newsletter-page .bulten-hero .hero-desc { max-width: 660px; }
body.newsletter-page .news-section { position: relative; z-index: 2; padding: 78px 5% 100px; background: var(--theme-surface, #fff); }
body.newsletter-page .news-grid { max-width: 1420px; margin: 0 auto; gap: 24px; }
body.newsletter-page .news-card { overflow: hidden; background: var(--theme-surface, #fff); border: 1px solid rgba(45, 91, 138, .13); border-radius: 20px; box-shadow: 0 16px 38px rgba(11, 35, 63, .08); }
body.newsletter-page .news-img-wrap { aspect-ratio: 16 / 10; }
body.newsletter-page .news-card:hover { transform: translateY(-5px); border-color: rgba(27, 123, 229, .35); }
body.newsletter-page .news-date { color: var(--brand-blue); }
html.dark-theme body.newsletter-page { background: #07101d; color: #e8f1fb; }
html.dark-theme body.newsletter-page .news-section { background: #07101d; }
/* This fallback deliberately lives outside dark-mode.css. It keeps the
   newsletter footer dark even during a restored mobile tab or a cached
   stylesheet transition. */
html.dark-theme body.newsletter-page footer,
html.dark-theme body.newsletter-page .footer-reveal-wrapper {
  background: #050c16 !important;
  border-color: rgba(137, 183, 230, .18) !important;
}
html.dark-theme body.newsletter-page .news-card { background: #10223a; border-color: rgba(137, 183, 230, .22); box-shadow: 0 20px 46px rgba(0, 0, 0, .28); }
html.dark-theme body.newsletter-page .news-card h3 { color: #f2f7fc !important; }
html.dark-theme body.newsletter-page .news-card p { color: #bed0e3 !important; }
html.dark-theme body.newsletter-page .newsletter-input-group { background: #f6f9fd; }
html.dark-theme body.newsletter-page .newsletter-input { color: #14253a; }
body.newsletter-page .newsletter-input:disabled,
body.newsletter-page .newsletter-btn:disabled {
  cursor: not-allowed;
  opacity: .62;
}
body.newsletter-page .newsletter-btn:disabled {
  filter: saturate(.35);
  transform: none !important;
}
html.dark-theme body.newsletter-page nav,
html.dark-theme body.newsletter-page nav.scrolled {
  top: 0;
  background: rgba(7, 23, 42, .94) !important;
  border-bottom-color: rgba(151, 193, 235, .18) !important;
}
html.dark-theme body.newsletter-page .floating-socials {
  background: rgba(11, 29, 49, .96) !important;
  border-color: rgba(139, 188, 239, .23) !important;
  box-shadow: 0 14px 36px rgba(0, 0, 0, .34) !important;
}
html.dark-theme body.newsletter-page .floating-socials .social-icon,
html.dark-theme body.newsletter-page .floating-socials .mobile-lang-wrapper {
  background: #14314f !important;
  border-color: rgba(143, 194, 244, .25) !important;
  color: #eaf3ff !important;
}
html.dark-theme body.newsletter-page .floating-socials .social-icon svg {
  fill: #eaf3ff !important;
}
html.dark-theme body.newsletter-page .floating-socials .mobile-lang-select {
  color: #eaf3ff !important;
  background: transparent !important;
}
@media (max-width: 1024px) {
  body.newsletter-page nav { top: 0; padding: 14px 5%; }
  body.newsletter-page nav.scrolled { top: 0; }
  body.newsletter-page nav .logo-container img { height: 43px; }
  body.newsletter-page .menu-toggle { display: flex; width: 52px; height: 48px; padding: 0; align-items: center; justify-content: center; border: 1px solid rgba(156, 200, 246, .3); border-radius: 14px; background: rgba(20, 57, 93, .76); }
  body.newsletter-page .menu-toggle span { width: 25px; }
  body.newsletter-page .nav-links, body.newsletter-page[dir=rtl] .nav-links { top: 0; right: -100%; left: auto; width: min(86vw, 390px); max-width: min(86vw, 390px); min-height: 100dvh; padding: 108px 28px 36px; gap: 8px; background: #0c1d31; border-left: 1px solid rgba(146, 190, 235, .2); box-shadow: -24px 0 70px rgba(0, 0, 0, .3); transition: right .35s ease; }
  body.newsletter-page .nav-links.active { right: 0; }
  body.newsletter-page .nav-links a, body.newsletter-page nav.scrolled .nav-links a { display: block; padding: 12px 8px; color: #e8f1fb !important; font-size: 1rem; }
  body.newsletter-page .nav-links .lang-select { width: 100%; margin: 10px 0 0; color: #f5f9ff; background: rgba(255,255,255,.08); }
  body.newsletter-page .bulten-hero { min-height: auto; padding: 102px 6% 70px; }
  body.newsletter-page .news-section { padding: 54px 6% 74px; }
  body.newsletter-page .floating-socials { z-index: 1150; }
}
@media (max-width: 640px) {
  body.newsletter-page .bulten-hero h1 { font-size: clamp(2rem, 9vw, 2.7rem); }
  body.newsletter-page .news-grid { gap: 16px; }
  body.newsletter-page .news-card { border-radius: 17px; }
}

/* Keep the newsletter inside legacy 320px phone viewports. */
@media (max-width: 359px) {
  body.newsletter-page .bulten-hero,
  body.newsletter-page .news-section { padding-right: 16px; padding-left: 16px; }
  body.newsletter-page .bulten-hero .logo-badge {
    box-sizing: border-box;
    max-width: 100%;
    padding-right: 12px;
    padding-left: 12px;
    gap: 7px;
  }
  body.newsletter-page .bulten-hero .logo-badge .badge-text {
    min-width: 0;
    overflow: hidden;
    font-size: 9px;
    letter-spacing: .6px;
    text-overflow: ellipsis;
  }
  body.newsletter-page .bulten-hero .logo-badge img.products-brand-logo {
    max-width: 122px;
    height: 14px;
  }
  body.newsletter-page .bulten-hero h1 {
    max-width: 100%;
    font-size: clamp(1.78rem, 9vw, 2rem);
    overflow-wrap: anywhere;
  }
  body.newsletter-page .news-grid,
  body.newsletter-page .news-card {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
  }
  body.newsletter-page .news-grid { grid-template-columns: minmax(0, 1fr); }
}

/* The original newsletter had a separate mobile form shell.  Keep its input
   and action as two clean, non-overlapping controls on the current site grid. */
@media (max-width: 768px) {
  body.newsletter-page .newsletter-form-wrapper { max-width: 100%; margin-top: 26px; }
  body.newsletter-page .newsletter-input-group {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  body.newsletter-page .newsletter-input,
  body.newsletter-page .newsletter-btn {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 60px !important;
    margin: 0 !important;
    border-radius: 18px !important;
  }
  body.newsletter-page .newsletter-input {
    padding: 14px 20px !important;
    text-align: center !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .16) !important;
  }
  body.newsletter-page .newsletter-btn { padding: 14px 20px !important; }
  body.newsletter-page .bulten-checkbox-area { margin-top: 18px; padding: 0 4px !important; }
}
