/* Shared reference header and newsletter. Use the existing control layer so
   legacy theme rules cannot change these controls back into framed buttons. */
@layer site-controls {
  .site-header { position: fixed !important; inset: 0 0 auto !important; padding: 20px 24px !important; background: transparent !important; box-shadow: none !important; }
  .site-header .top-wrap { width: fit-content !important; max-width: 100% !important; min-height: 65px !important; margin: 0 auto !important; padding: 7px 7px 7px 24px !important; border: 0 !important; border-radius: 999px !important; background: #fffffff2 !important; backdrop-filter: blur(20px) !important; box-shadow: 0 4px 40px #00000006 !important; overflow: visible !important; }
  .site-header .menu-wrap { display: flex !important; align-items: center !important; justify-content: flex-start !important; gap: 22px !important; width: auto !important; margin: 0 !important; padding: 0 !important; }
  .site-header .menu-item { flex: 0 0 auto !important; margin: 0 !important; padding: 0 !important; }
  .site-header .menu-item-logo { margin-right: 20px !important; }
  .site-header .logo { display: flex !important; align-items: center !important; gap: 8px !important; width: auto !important; height: 40px !important; }
  .site-header .logo .logo-light { display: none !important; }
  .site-header .logo .logo-dark { display: block !important; position: static !important; width: 22px !important; height: 34px !important; object-fit: contain !important; opacity: 1 !important; filter: none !important; }
  .site-header .header-wordmark { font: 500 22px/1 'Switzer Section', Arial, sans-serif !important; letter-spacing: -1px !important; color: #000 !important; white-space: nowrap !important; }
  .site-header .header-nav-link { display: inline-flex !important; align-items: center !important; min-height: 44px !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; color: #626262 !important; box-shadow: none !important; }
  .site-header .header-nav-label, .site-header .header-nav-label > span { font: 500 15px/1.4 'Switzer Section', Arial, sans-serif !important; letter-spacing: -.03em !important; text-transform: none !important; color: inherit !important; }
  .site-header .header-nav-link:hover, .site-header .header-nav-link[aria-current='page'] { color: #000 !important; background: transparent !important; }
  .site-header .header-nav-marker { display: none !important; }
  .site-header .header-nav-caret { margin-left: 4px !important; }
  .site-header .menu-segment--cta { order: 2 !important; margin-left: 8px !important; }
  .site-header .menu-segment--cta .header-nav-link { padding: 14px 20px !important; min-height: 50px !important; border-radius: 999px !important; background: #111111 !important; color: #fff !important; }
  .site-header .menu-segment--cta .header-nav-link:hover { background: #292929 !important; }
  .site-header .header-submenu { border-radius: 20px !important; background: #fff !important; padding: 12px 18px !important; box-shadow: 0 10px 40px #00000012 !important; }
  .site-header .header-submenu .header-nav-link { width: 100% !important; }
  .site-header .hamburger-wrap { display: none !important; }
  .js-newsletter-form { font-family: 'Switzer Section', Arial, sans-serif !important; }
  .ft .ft__news { display: block !important; width: 100% !important; max-width: 426px !important; padding: 0 !important; margin: 64px 0 48px auto !important; background: transparent !important; border-radius: 0 !important; }
  .ft .ft__news-intro { margin: 0 0 20px !important; }
  .ft .ft__news-intro .ft__head, .newsletter-form > span:first-child { display: block !important; color: #000 !important; font: 500 38px/1.2 'Switzer Section', Arial, sans-serif !important; letter-spacing: -.04em !important; text-transform: none !important; }
  .js-newsletter-form .ft__news-row { display: flex !important; flex-wrap: nowrap !important; align-items: center !important; gap: 4px !important; width: 100% !important; max-width: 426px !important; box-sizing: border-box !important; min-height: 61px !important; padding: 5px !important; background: #f3f5f3 !important; border: 0 !important; border-radius: 999px !important; }
  .js-newsletter-form .ft__news-row input { flex: 1 1 0 !important; min-width: 0 !important; width: 0 !important; height: 50px !important; padding: 0 18px !important; margin: 0 !important; background: transparent !important; border: 0 !important; border-radius: 999px !important; box-shadow: none !important; color: #111 !important; font: 500 16px/1.4 'Switzer Section', Arial, sans-serif !important; }
  .js-newsletter-form .ft__news-row input::placeholder { color: #666666 !important; opacity: 1 !important; }
  .js-newsletter-form .ft__news-row .ft__news-submit { flex: 0 0 auto !important; width: auto !important; min-width: 106px !important; height: 50px !important; min-height: 50px !important; padding: 14px 22px !important; margin: 0 !important; background: #111111 !important; color: #fff !important; border: 0 !important; border-radius: 999px !important; font: 500 15px/1.4 'Switzer Section', Arial, sans-serif !important; }
  .js-newsletter-form .ft__news-submit:hover { background: #292929 !important; }
  .js-newsletter-form :is(.ft__news-consent,.newsletter-consent) { display: flex !important; align-items: flex-start !important; gap: 9px !important; margin: 16px 4px 0 !important; color: #626262 !important; font-size: 13px !important; line-height: 1.5 !important; }
  .js-newsletter-form input[type='checkbox'] { flex: 0 0 16px !important; width: 16px !important; height: 16px !important; margin: 2px 0 0 !important; accent-color: #111111; }
  .js-newsletter-form .form-status { margin: 12px 4px 0 !important; color: #333 !important; font-size: 14px !important; line-height: 1.5 !important; }
  .js-newsletter-form input:focus-visible { outline: 2px solid #479c73 !important; outline-offset: 2px !important; }
  @media (max-width: 1199px) {
    .site-header { padding: 16px 20px !important; }
    .site-header .top-wrap { width: min(720px, 100%) !important; justify-content: space-between !important; box-sizing: border-box !important; }
    .site-header .menu-wrap > .menu-segment { display: none !important; }
    .site-header .hamburger-wrap { display: flex !important; }
    .site-header .hamburger { background: #111111 !important; }
  }
  @media (max-width: 479px) {
    .site-header { padding: 12px !important; }
    .site-header .top-wrap { padding-left: 18px !important; min-height: 60px !important; }
    .site-header .header-wordmark { font-size: 20px !important; }
    .ft .ft__news-intro { margin-bottom: 16px !important; }
    .ft .ft__news-intro .ft__head, .newsletter-form > span:first-child { font-size: 32px !important; }
    .js-newsletter-form .ft__news-row input { padding: 0 10px !important; font-size: 14px !important; }
    .js-newsletter-form .ft__news-row .ft__news-submit { min-width: 85px !important; padding: 14px 16px !important; }
  }
}
@layer site-controls {
  footer.ft { background: #fff !important; }
}
