/* FREESTYLE 2026-10-31: all internal page iPad header alignment.
   Does not affect homepage / forms / content sections. */
.fs-unified-header, .fs-unified-header * { box-sizing:border-box; }
.fs-unified-header .fsb-header-inner { min-width:0; }
.fs-unified-header .fsb-contact { position:relative; inset:auto; align-self:center; }
@media (min-width:681px) and (max-width:1366px) {
  .fs-unified-header { height:88px !important; }
  .fs-unified-header .fsb-container { width:calc(100% - 38px) !important; max-width:none; }
  .fs-unified-header .fsb-header-inner { display:flex !important; align-items:center !important; flex-wrap:nowrap !important; gap:12px !important; justify-content:flex-end !important; }
  .fs-unified-header .fsb-brand { flex:0 1 auto !important; margin-right:auto !important; gap:9px !important; min-width:0 !important; }
  .fs-unified-header .fsb-brand img { width:clamp(46px,5vw,58px) !important; height:clamp(46px,5vw,58px) !important; }
  .fs-unified-header .fsb-brand-name { min-width:0 !important; }
  .fs-unified-header .fsb-brand-name strong { font-size:clamp(20px,2.3vw,28px) !important; }
  .fs-unified-header .fsb-brand-name small { font-size:clamp(9px,1vw,11px) !important; }
  .fs-unified-header .fsb-nav { display:none !important; }
  .fs-unified-header .fsb-contact {
    display:inline-flex !important; position:static !important; inset:auto !important;
    transform:none !important; float:none !important; flex:0 0 auto !important;
    min-width:0 !important; width:auto !important; height:46px !important;
    margin:0 !important; padding:0 15px !important; gap:8px !important;
    font-size:13px !important; line-height:1 !important; white-space:nowrap !important;
    align-items:center !important; justify-content:center !important; border-radius:10px !important;
  }
  .fs-unified-header .fsb-contact span { display:inline !important; }
  .fs-unified-header .fsb-contact .fsb-icon-arrow { display:none !important; }
  .fs-unified-header .fsb-contact .fsb-icon-mail { width:20px !important; height:20px !important; }
  .fs-unified-header .fsb-menu {
    display:flex !important; position:static !important; inset:auto !important; transform:none !important;
    flex:0 0 45px !important; width:45px !important; min-width:45px !important; height:45px !important;
    align-items:center !important; justify-content:center !important; margin:0 !important; padding:9px !important;
    background:#fff !important; border:1px solid #bad6f5 !important;
    border-radius:10px !important; box-shadow:none !important;
  }
  .fs-unified-header .fsb-mobile-nav { left:19px !important; right:19px !important; }
}
@media (max-width:680px) {
  .fs-unified-header {height:76px !important;}
  .fs-unified-header .fsb-container {width:calc(100% - 30px) !important;}
  .fs-unified-header .fsb-header-inner {display:flex !important;align-items:center !important;gap:8px !important;flex-wrap:nowrap !important;justify-content:flex-end !important;}
  .fs-unified-header .fsb-brand {flex:0 1 auto !important; min-width:0 !important;gap:6px !important;margin-right:auto !important;}
  .fs-unified-header .fsb-brand img {width:43px !important;height:43px !important;}
  .fs-unified-header .fsb-brand-name strong {font-size:clamp(18px,5.1vw,25px) !important;}
  .fs-unified-header .fsb-brand-name small {font-size:9px !important;}
  .fs-unified-header .fsb-nav{display:none !important;}
  .fs-unified-header .fsb-contact {
     display:inline-flex !important;position:static !important;inset:auto !important;transform:none !important;
     flex:0 0 42px !important;width:42px !important;min-width:42px !important;height:42px !important;
     margin:0 !important;padding:0 !important;align-items:center !important;justify-content:center !important;gap:0 !important;
  }
  .fs-unified-header .fsb-contact span,.fs-unified-header .fsb-contact .fsb-icon-arrow {display:none !important;}
  .fs-unified-header .fsb-contact .fsb-icon-mail{width:21px !important;height:21px !important;}
  .fs-unified-header .fsb-menu{display:flex !important;position:static !important;inset:auto !important;transform:none !important;flex:0 0 42px !important;width:42px !important;min-width:42px !important;height:42px !important;margin:0 !important;padding:8px !important;align-items:center !important;justify-content:center !important;}
  .fs-unified-header .fsb-mobile-nav{left:15px !important;right:15px !important;}
}
@media (max-width:350px) {
 .fs-unified-header .fsb-brand-name strong {font-size:18px !important;}
 .fs-unified-header .fsb-brand img{width:37px!important;height:37px!important;}
 .fs-unified-header .fsb-contact,.fs-unified-header .fsb-menu{flex-basis:38px!important;width:38px!important;min-width:38px!important;height:38px!important;}
}

/* iPad Pro landscape 1201–1366px: nav must actually open when hamburger is shown. */
@media (min-width:1201px) and (max-width:1366px) {
  .fs-unified-header .fsb-mobile-nav {
    position:absolute !important; top:100% !important; right:19px !important; left:19px !important;
    z-index:110 !important; background:#fff !important; box-shadow:0 15px 40px rgba(6,48,99,.16) !important;
    border-radius:0 0 18px 18px !important; padding:12px 22px 19px !important;
    flex-direction:column !important; gap:0 !important;
  }
  .fs-unified-header .fsb-mobile-nav:not([hidden]):not([inert]) {
    display:flex !important; visibility:visible !important; opacity:1 !important;
    transform:none !important; pointer-events:auto !important; max-height:none !important;
  }
  .fs-unified-header .fsb-mobile-nav[hidden],
  .fs-unified-header .fsb-mobile-nav[inert] { display:none !important; }
  .fs-unified-header .fsb-mobile-nav a {
    display:block !important; padding:13px 6px !important; border-bottom:1px solid #eef2f6 !important;
    color:#14345c !important; text-decoration:none !important; font-weight:800 !important; line-height:1.5 !important;
  }
  .fs-unified-header .fsb-mobile-nav a[aria-current="page"] { color:#0068eb !important; background:#f6fbff !important; }
  .fs-unified-header .fsb-mobile-nav .fsb-mobile-contact {
    margin-top:12px !important; border:0 !important; text-align:center !important;
    background:#056fec !important; color:#fff !important; border-radius:9px !important;
  }
}
