/* ===========================================================
   QFS — THEME OVERRIDES (qfs-overrides.css)
   Purpose: global layout + header/nav styling that used to live
            in user.css (to reduce conflicts).
   =========================================================== */

/* Prevent accidental horizontal scroll when we break out */
html, body { overflow-x: hidden !important; }

/* ---------- Global base (scoped to public site) ---------- */
body.publicContentView{
  background-color: #999999;
  color: #f3f3f3;
}

/* Content typography */
body.publicContentView .mLayout.layoutMain p,
body.publicContentView .mLayout.layoutMain li{ color:#e5e5e5; }

body.publicContentView .mLayout.layoutMain h1,
body.publicContentView .mLayout.layoutMain h2,
body.publicContentView .mLayout.layoutMain h3,
body.publicContentView .mLayout.layoutMain h4{ color:#ffffff; }

body.publicContentView .mLayout.layoutMain a{ color:#f7d26a; }

/* ---------- FULL BLEED (all widths) ---------- */
/* WA centers everything inside an outer wrapper. We break #layout
   out to the viewport so header/content/footer are full-bleed. */
body.publicContentView #layout,
body.publicContentView #layout > div,
body.publicContentView #mtLayout,
body.publicContentView #mtLayout > div{
  max-width: none !important;
}

/* Breakout pattern: full viewport width regardless of wrapper width */
body.publicContentView #layout{
  position: relative !important;
  left: 50% !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: -50vw !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Ensure zones/placeholder wrappers don’t reintroduce gutters */
body.publicContentView .zonePlace,
body.publicContentView .WaPlaceHolder,
body.publicContentView .WaPlaceHolderContent,
body.publicContentView .WaLayoutRow,
body.publicContentView .WaLayoutColumn,
body.publicContentView .waPageContainer,
body.publicContentView .sheet,
body.publicContentView #idBodyContainer,
body.publicContentView #idHeaderContainer,
body.publicContentView #idContentContainer,
body.publicContentView #idFooterContainer{
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* ---------- Header/nav tokens ---------- */
:root{
  --qfs-dark:#1F272B;
  --qfs-gold:#E0C46F;
  --qfs-cream:#EFE2A1;
  --qfs-white:#FFFFFF;
  --qfs-gold-deep:#C4A54E;
  --qfs-shadow: 0 8px 20px rgba(0,0,0,.25);
  --qfs-radius: 999px;
  --qfs-gap: 12px;
  --qfs-menu-size: 17px;
}

/* Utility bar */
.qfs-utility-tabs{
  display:flex;
  justify-content:flex-end;
  gap:var(--qfs-gap);
  padding:8px 16px;
  background: var(--qfs-gold);
  border-bottom:1px solid rgba(0,0,0,.08);
  position:relative;
  z-index:20;
}
.qfs-utility-tabs a{
  color:var(--qfs-dark);
  background:var(--qfs-white);
  border:1px solid rgba(0,0,0,.08);
  border-radius:var(--qfs-radius);
  padding:6px 12px;
  font-weight:700;
  text-decoration:none;
  line-height:1;
  transition:transform .12s ease, background-color .12s ease, border-color .12s ease;
}
.qfs-utility-tabs a:hover,
.qfs-utility-tabs a:focus{
  background:var(--qfs-cream);
  border-color:rgba(0,0,0,.2);
  transform:translateY(-1px);
  outline:none;
}

/* Main header block polish */
.zoneHeader2 > .WaPlaceHolder{
  background: rgba(31,39,43,.92) !important;
  backdrop-filter: saturate(130%) blur(6px);
  -webkit-backdrop-filter: saturate(130%) blur(6px);
  box-shadow: var(--qfs-shadow);
}

/* Logo area */
#id_Br8mDIe .gadgetStyleBody{ padding:14px 10px 8px 10px !important; }
#id_Br8mDIe img{ max-height:88px; width:auto; height:auto; display:block; }

/* Tagline */
#id_C8YeKBE .gadgetStyleBody{ padding-top:14px !important; }
#id_C8YeKBE p{
  margin:0;
  font-size:18px;
  letter-spacing:.3px;
  color:var(--qfs-cream);
}

/* Login link */
#id_SAIIAhF .loginContainer .loginLink{
  color:#cfd6db;
  text-decoration:none;
  font-weight:600;
  padding:4px 8px;
  border-radius:6px;
  transition: background-color .12s ease, color .12s ease;
}
#id_SAIIAhF .loginContainer .loginLink:hover,
#id_SAIIAhF .loginContainer .loginLink:focus{
  background: rgba(255,255,255,.08);
  color: var(--qfs-white);
  outline:none;
}

/* Horizontal menu */
#id_yOhi7Wr{
  position:relative;
  z-index:1100;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(0,0,0,.35);
  box-shadow: 0 6px 18px rgba(0,0,0,.28);
}
#id_yOhi7Wr .menuInner{
  padding:0 12px;
  overflow-x:auto;
  overflow-y:visible;
  scrollbar-width:thin;
}
#id_yOhi7Wr ul.firstLevel{
  display:flex;
  align-items:center;
  gap:2px;
  white-space:nowrap;
}
#id_yOhi7Wr .firstLevel > li .item > a{
  display:inline-block;
  padding:12px 14px;
  font-size:var(--qfs-menu-size);
  font-weight:800;
  letter-spacing:.15px;
  text-transform:uppercase;
  color:#EDE7C8;
  text-decoration:none;
  border-radius:8px;
  line-height:1;
  position:relative;
  transition: background-color .12s ease, color .12s ease;
}
#id_yOhi7Wr .firstLevel > li .item > a::after{
  content:'';
  position:absolute;
  left:12px;
  right:12px;
  bottom:6px;
  height:2px;
  background: linear-gradient(90deg,var(--qfs-gold),var(--qfs-gold-deep));
  transform: scaleX(0);
  transform-origin:left;
  transition: transform .16s ease;
  border-radius:2px;
}
#id_yOhi7Wr .firstLevel > li .item > a:hover,
#id_yOhi7Wr .firstLevel > li .item > a:focus{
  color:#FFFFFF;
  background: rgba(255,255,255,.06);
}
#id_yOhi7Wr .firstLevel > li .item > a:hover::after,
#id_yOhi7Wr .firstLevel > li .item > a:focus::after,
#id_yOhi7Wr .firstLevel > li.sel .item > a::after{
  transform: scaleX(1);
}
#id_yOhi7Wr .firstLevel > li.sel .item > a{
  color:#FFFFFF;
  background: rgba(255,255,255,.10);
  box-shadow: inset 0 -2px 0 var(--qfs-gold);
}

/* Dropdown (phantom) */
#id_yOhi7Wr .firstLevel > li.phantom > .item > a{
  font-size:22px;
  padding:8px 12px;
  color:#F4E7B0;
}
#id_yOhi7Wr .firstLevel > li.phantom .secondLevel{
  background: var(--qfs-dark);
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px;
  box-shadow: 0 14px 28px rgba(0,0,0,.35);
  padding:6px 0;
  margin-top:8px;
}
#id_yOhi7Wr .secondLevel li .item > a{
  display:block;
  padding:10px 14px;
  color:#EDE7C8;
  text-decoration:none;
  white-space:nowrap;
  transition: background-color .12s ease, color .12s ease;
}
#id_yOhi7Wr .secondLevel li .item > a:hover{
  background: rgba(255,255,255,.06);
  color:#FFFFFF;
}

/* Responsive tweaks */
@media (max-width: 900px){
  .qfs-utility-tabs{
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
    padding:8px 10px;
  }
  #id_Br8mDIe img{ max-height:70px; margin:4px auto; }
  #id_C8YeKBE p{ text-align:center; font-size:16px; padding:6px 8px; }
  #id_yOhi7Wr .firstLevel > li .item > a{ padding:11px 12px; font-size:15px; }
}

/* Motion sensitivity */
@media (prefers-reduced-motion: reduce){
  *{ transition:none !important; }
  #id_yOhi7Wr .firstLevel > li .item > a::after{ transition:none !important; }
}
