/* GemTrove R4S - consistent visible mobile header. Scoped to shared public header only.
   Loads after all legacy header styles. No changes to business or navigation logic. */
@media (max-width: 1023px) {
  html, body.gt-public-body { overflow-x: clip; }
  html body.gt-public-body header.gt-site-header {
    display:block!important; position:relative!important; margin:0!important; padding:0!important;
    width:100%!important; min-width:0!important; max-width:none!important;
    overflow:visible!important; background:#fff!important; box-sizing:border-box!important;
  }
  /* Full-bleed navy. The old gt-shell-wide maximum width caused the white right cutout. */
  html body.gt-public-body header.gt-site-header > .gt-utility-bar.gt-shell-wide {
    display:flex!important; position:relative!important;
    width:100%!important; min-width:0!important; max-width:none!important;
    margin:0!important; padding:0 12px!important;
    height:52px!important; min-height:52px!important; max-height:52px!important;
    box-sizing:border-box!important; border:0!important; border-radius:0!important;
    background:#10213d!important; background-image:none!important;
    overflow:hidden!important; transform:none!important; inset:auto!important;
  }
  html body.gt-public-body header.gt-site-header > .gt-utility-bar.gt-shell-wide::before,
  html body.gt-public-body header.gt-site-header > .gt-utility-bar.gt-shell-wide::after {
    content:none!important; display:none!important;
  }
  html body.gt-public-body header.gt-site-header .gt-r4r-utility {
    display:flex!important; width:100%!important; max-width:none!important; min-width:0!important;
    align-items:center!important; justify-content:space-between!important;
    background:transparent!important; margin:0!important; padding:0!important; gap:7px!important;
  }
  html body.gt-public-body header.gt-site-header .gt-r4r-utility .gt-r4r-quick-actions {
    display:flex!important; flex:0 0 auto!important; gap:clamp(0px,1vw,8px)!important;
    align-items:center!important; justify-content:flex-end!important;
  }
  html body.gt-public-body header.gt-site-header .gt-r4r-utility a {
    display:inline-flex!important; align-items:center!important; justify-content:center!important;
    color:#fff!important; opacity:1!important; visibility:visible!important;
    font-family:Arial,Helvetica,sans-serif!important; font-size:14px!important; font-weight:500!important;
    text-decoration:none!important; width:43px!important; min-width:43px!important;
    height:46px!important; min-height:44px!important; flex:0 0 43px!important;
    padding:0!important; margin:0!important; background:transparent!important;
  }
  html body.gt-public-body header.gt-site-header .gt-r4r-utility a.gt-r4q-phone {
    flex:0 1 auto!important; width:auto!important; min-width:0!important;
    justify-content:flex-start!important; white-space:nowrap!important;
    gap:7px!important; font-size:clamp(12px,2.95vw,14px)!important;
    letter-spacing:.015em!important; font-weight:500!important;
    font-variant-numeric:lining-nums tabular-nums!important;
  }
  html body.gt-public-body header.gt-site-header .gt-r4r-utility svg {
    display:block!important; width:21px!important; height:21px!important;
    flex:0 0 auto!important; stroke:#fff!important; stroke-width:2!important;
    fill:none!important; opacity:1!important;
  }
  html body.gt-public-body header.gt-site-header > .gt-brand-row.gt-shell-wide {
    display:flex!important; grid-template-columns:none!important; align-items:center!important;
    justify-content:space-between!important;
    width:100%!important; min-width:0!important; max-width:none!important;
    height:76px!important; min-height:76px!important; max-height:76px!important;
    margin:0!important; padding:8px 15px!important; gap:14px!important;
    box-sizing:border-box!important; border:0!important; border-bottom:1px solid #e6e6e6!important;
    border-radius:0!important; background:#fff!important;
    overflow:visible!important; transform:none!important; contain:none!important;
  }
  html body.gt-public-body header.gt-site-header > .gt-brand-row > a.gt-brand-logo {
    display:flex!important; position:relative!important; grid-column:auto!important;grid-row:auto!important;
    flex:0 1 auto!important; min-width:0!important; max-width:190px!important;
    align-items:center!important; justify-content:flex-start!important;
    margin:0!important; padding:0!important; transform:none!important;
    opacity:1!important; visibility:visible!important;
  }
  html body.gt-public-body header.gt-site-header > .gt-brand-row > a.gt-brand-logo img {
    display:block!important; width:min(40vw,185px)!important; min-width:0!important;
    max-width:185px!important; height:auto!important; max-height:58px!important;
    object-fit:contain!important; object-position:left center!important;
    margin:0!important; padding:0!important; filter:none!important; opacity:1!important;
    transform:none!important;
  }
  html body.gt-public-body header.gt-site-header > .gt-brand-row > .gt-header-account,
  html body.gt-public-body header.gt-site-header > .gt-brand-row > .gt-header-search,
  html body.gt-public-body header.gt-site-header > .gt-brand-row > .gt-r1-mobile-phone {
    display:none!important;
  }
  /* One canonical button in both header branches. Stop old inner-page pseudo icon. */
  html body.gt-public-body header.gt-site-header > .gt-brand-row > button.gt-mobile-menu-button {
    display:flex!important; grid-column:auto!important; grid-row:auto!important;
    align-items:center!important; justify-content:center!important; flex-direction:column!important;
    flex:0 0 50px!important; justify-self:auto!important; align-self:center!important;
    position:relative!important; inset:auto!important;
    width:50px!important; min-width:50px!important; max-width:50px!important;
    height:50px!important; min-height:50px!important; max-height:50px!important;
    margin:0 0 0 auto!important; padding:0!important; gap:6px!important;
    background:#10213d!important; background-image:none!important;
    border:2px solid #bf9858!important; border-radius:5px!important;
    box-shadow:none!important; opacity:1!important; visibility:visible!important;
    transform:none!important; overflow:visible!important; z-index:10002!important;
    font-size:0!important; color:#fff!important;
  }
  html body.gt-public-body header.gt-site-header > .gt-brand-row > button.gt-mobile-menu-button::before,
  html body.gt-public-body header.gt-site-header > .gt-brand-row > button.gt-mobile-menu-button::after {
    content:none!important; display:none!important; width:0!important; height:0!important;
    background:none!important; box-shadow:none!important;
  }
  html body.gt-public-body header.gt-site-header > .gt-brand-row > button.gt-mobile-menu-button > span:not(.sr-only) {
    display:block!important; position:static!important;
    width:25px!important; min-width:25px!important; height:2.5px!important; min-height:2.5px!important;
    margin:0!important; padding:0!important; border:0!important; border-radius:2px!important;
    background:#fff!important; background-image:none!important;
    box-shadow:none!important; opacity:1!important; visibility:visible!important;
    transform:none!important; inset:auto!important;
  }
  html body.gt-public-body header.gt-site-header > .gt-brand-row > button.gt-mobile-menu-button > em,
  html body.gt-public-body header.gt-site-header > .gt-brand-row > button.gt-mobile-menu-button > .sr-only {
    position:absolute!important; width:1px!important;height:1px!important; overflow:hidden!important;
    clip:rect(0,0,0,0)!important; white-space:nowrap!important; padding:0!important;
  }
  html body.gt-public-body header.gt-site-header > .gt-brand-row > button.gt-mobile-menu-button:focus-visible {
    outline:3px solid #bf9858!important; outline-offset:3px!important;
  }
  html body.gt-public-body header.gt-site-header.menu-open #gt-primary-navigation {
    background:#fffdfa!important; right:0!important; left:auto!important;
  }
}
@media (max-width: 360px) {
 html body.gt-public-body header.gt-site-header > .gt-utility-bar.gt-shell-wide {padding:0 7px!important}
 html body.gt-public-body header.gt-site-header .gt-r4r-utility a {width:36px!important; min-width:36px!important; flex-basis:36px!important}
 html body.gt-public-body header.gt-site-header .gt-r4r-utility svg {width:19px!important;height:19px!important}
 html body.gt-public-body header.gt-site-header .gt-r4r-utility a.gt-r4q-phone {font-size:11.5px!important;gap:4px!important}
 html body.gt-public-body header.gt-site-header > .gt-brand-row.gt-shell-wide {padding:8px 12px!important}
}
