html {
        overflow-y: scroll !important;
      }

      .header,
      .rf-header {
        background: #0b1b3a !important;
        color: #ffffff !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 1000 !important;
        border-bottom: 1px solid rgba(255,255,255,0.1) !important;
      }

      .header .wrap.header-inner,
      .header .header-inner,
      .rf-header-inner {
        width: min(1440px, calc(100vw - 40px)) !important;
        max-width: 1440px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        height: 64px !important;
        min-height: 64px !important;
        display: grid !important;
        grid-template-columns: 160px minmax(380px, 1fr) 280px 160px !important;
        grid-template-areas: "logo nav search auth" !important;
        align-items: center !important;
        justify-content: normal !important;
        gap: 24px !important;
        flex-wrap: nowrap !important;
        box-sizing: border-box !important;
      }

      .header .logo,
      .rf-logo {
        grid-area: logo !important;
        color: #ffffff !important;
        font-size: 18px !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        text-transform: uppercase !important;
        white-space: nowrap !important;
        text-decoration: none !important;
        line-height: 1 !important;
      }

      .header .nav-links,
      .rf-nav {
        grid-area: nav !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 8px !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        overflow: visible !important;
        order: initial !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        line-height: 1 !important;
        height: 36px !important;
      }

      .header .nav-links a,
      .rf-nav a {
        display: inline-flex !important;
        align-items: center !important;
        min-height: 36px !important;
        padding: 8px 12px !important;
        border-radius: 4px !important;
        color: rgba(255,255,255,0.88) !important;
        white-space: nowrap !important;
        text-decoration: none !important;
        line-height: 1 !important;
      }

      .header .nav-links a:hover,
      .rf-nav a:hover {
        background: rgba(255,255,255,0.1) !important;
        color: #ffffff !important;
      }

      .header .header-search,
      .rf-header-search {
        grid-area: search !important;
        display: flex !important;
        align-items: center !important;
        position: relative !important;
        width: 280px !important;
        margin: 0 !important;
        padding: 0 !important;
      }

      .header .header-search input,
      .rf-header-search input {
        width: 280px !important;
        height: 36px !important;
        padding: 8px 12px 8px 36px !important;
        border: 1px solid rgba(255,255,255,0.2) !important;
        border-radius: 4px !important;
        background: #ffffff !important;
        color: #0e1116 !important;
        font-size: 14px !important;
        outline: none !important;
      }

      .header .header-search svg,
      .header .header-search-icon,
      .rf-search-icon {
        position: absolute !important;
        left: 12px !important;
        width: 16px !important;
        height: 16px !important;
        color: #5a6270 !important;
        pointer-events: none !important;
      }

      .header .header-auth,
      .rf-header-auth {
        grid-area: auth !important;
        display: flex !important;
        justify-content: flex-end !important;
        align-items: center !important;
        gap: 12px !important;
        width: auto !important;
        margin: 0 !important;
        font-size: 14px !important;
        line-height: 1 !important;
        height: 36px !important;
      }

      .header .header-auth a,
      .rf-header-auth a {
        display: inline-flex !important;
        align-items: center !important;
        min-height: 36px !important;
        padding: 8px 16px !important;
        border-radius: 4px !important;
        color: rgba(255,255,255,0.9) !important;
        white-space: nowrap !important;
        text-decoration: none !important;
        line-height: 1 !important;
      }

      .header .header-auth a:hover,
      .rf-header-auth a:hover {
        background: rgba(255,255,255,0.15) !important;
        color: #ffffff !important;
      }

      .rf-menu-toggle {
        display: none !important;
      }

      @media (max-width: 1024px) {
        .header .wrap.header-inner,
        .header .header-inner,
        .rf-header-inner {
          height: auto !important;
          min-height: 64px !important;
          padding: 12px 0 !important;
          grid-template-columns: auto minmax(180px, 280px) auto !important;
          grid-template-areas:
            "logo search auth"
            "nav nav nav" !important;
          gap: 12px 24px !important;
        }

        .header .nav-links,
        .rf-nav {
          justify-content: flex-start !important;
          width: 100% !important;
          overflow-x: auto !important;
          padding-top: 8px !important;
          border-top: 1px solid rgba(255,255,255,0.1) !important;
        }

        .header .header-search,
        .rf-header-search,
        .header .header-search input,
        .rf-header-search input {
          width: 280px !important;
        }
      }

      @media (max-width: 640px) {
        .header .wrap.header-inner,
        .header .header-inner,
        .rf-header-inner {
          width: min(100vw - 24px, 1440px) !important;
          grid-template-columns: 1fr auto !important;
          grid-template-areas:
            "logo auth"
            "search search"
            "nav nav" !important;
          gap: 8px 12px !important;
        }

        .header .nav-links,
        .rf-nav {
          gap: 4px !important;
          font-size: 12px !important;
        }

        .header .nav-links a,
        .rf-nav a {
          padding: 4px 8px !important;
        }

        .header .header-search,
        .rf-header-search,
        .header .header-search input,
        .rf-header-search input {
          width: 100% !important;
        }
        .rf-header-auth {font-size:12px !important;gap:4px !important;}
        .rf-header-auth a {padding:4px 6px !important;}
      }
      @media(max-width:360px){.rf-header-inner{grid-template-areas:"logo logo" "auth auth" "search search" "nav nav" !important;}.rf-header-auth{justify-content:flex-start !important;}}

/* Preserve keyboard visibility with the current interaction code. */
html body :is(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid #2471a3 !important; outline-offset: 3px; }
.header :is(a, button):focus-visible, .rf-header :is(a, button):focus-visible { outline-color: #fff !important; }
.header .header-search input:focus-visible, .rf-header-search input:focus-visible { outline: 3px solid #2471a3 !important; outline-offset: 3px; }
.price-option.keyboard-active { background: #f0f7ff; color: #071d33; outline: 2px solid #2471a3; outline-offset: -2px; }
/* Long headings must stay readable on the narrowest phones. */
@media(max-width:360px) { h1 { overflow-wrap: anywhere; } }
