/* Fly World — Header & Navigation v1.4.0 */
:root {
  --fwhn-navy:#092858;
  --fwhn-gold:#C59335;
  --fwhn-dark:#070B12;
  --fwhn-white:#FFFFFF;
  --fwhn-ivory:#F8F6F1;
  --fwhn-solid-text:#092858;
  --fwhn-desktop-height:86px;
  --fwhn-sticky-height:72px;
  --fwhn-mobile-height:70px;
  --fwhn-container:1240px;
  --fwhn-logo-width:190px;
  --fwhn-mobile-logo-width:172px;
  --fwhn-panel-top:86px;
  --fwhn-admin-offset:0px;
  --fwhn-menu-gap:8px;
  --fwhn-ease:cubic-bezier(.22,.61,.36,1);
  --fwhn-shadow:0 26px 72px rgba(6,26,57,.14);
}

.fwhn-site-header,
.fwhn-site-header * { box-sizing:border-box; }

.fwhn-site-header {
  position:fixed;
  z-index:9990;
  top:var(--fwhn-admin-offset);
  left:0;
  right:0;
  height:var(--fwhn-desktop-height);
  color:var(--fwhn-solid-text);
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 9% -80%,rgba(197,147,53,.12),transparent 36%),
    linear-gradient(102deg,#fffdfa 0%,#fbfaf7 46%,#ffffff 100%);
  border-bottom:1px solid rgba(9,40,88,.075);
  box-shadow:0 7px 26px rgba(7,28,61,.045);
  transition:height .32s var(--fwhn-ease),box-shadow .32s ease,background .32s ease,border-color .32s ease;
  isolation:isolate;
}

.admin-bar .fwhn-site-header { --fwhn-admin-offset:32px; }
@media (max-width:782px){ .admin-bar .fwhn-site-header { --fwhn-admin-offset:46px; } }

.fwhn-header-aura {
  position:absolute;
  inset:auto 0 -1px;
  height:1px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(197,147,53,.22) 18%,rgba(9,40,88,.12) 50%,rgba(197,147,53,.22) 82%,transparent 100%);
  opacity:.72;
}

.fwhn-site-header.is-scrolled {
  height:var(--fwhn-sticky-height);
  background:linear-gradient(102deg,#fffdfa 0%,#fcfbf8 48%,#ffffff 100%);
  border-bottom-color:rgba(9,40,88,.09);
  box-shadow:0 14px 42px rgba(6,26,57,.075);
}

.fwhn-header-inner {
  width:min(calc(100% - 48px),var(--fwhn-container));
  height:100%;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:30px;
}

.fwhn-brand {
  position:relative;
  z-index:3;
  flex:0 0 var(--fwhn-logo-width);
  width:var(--fwhn-logo-width);
  min-width:var(--fwhn-logo-width);
  height:58px;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  text-decoration:none;
}

.fwhn-logo {
  display:block;
  width:100%;
  height:auto;
  max-height:58px;
  object-fit:contain;
  object-position:left center;
  transition:transform .3s var(--fwhn-ease);
}
.fwhn-site-header.is-scrolled .fwhn-logo { transform:scale(.97); transform-origin:left center; }
.fwhn-brand-text { color:var(--fwhn-navy); font-weight:800; line-height:1.1; letter-spacing:-.02em; }

.fwhn-desktop {
  flex:1 1 auto;
  min-width:0;
  height:100%;
  align-items:center;
  justify-content:flex-end;
  gap:20px;
}
.fwhn-mobile { margin-left:auto; align-items:center; }

.fwhn-nav {
  flex:1 1 auto;
  min-width:0;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
.fwhn-nav-list,.fwhn-dropdown,.fwhn-mega-group ul,.fwhn-mobile-list { list-style:none; padding:0; margin:0; }
.fwhn-nav-list {
  height:100%;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
}
.fwhn-nav-item {
  position:relative;
  height:100%;
  display:flex;
  align-items:center;
}
.fwhn-nav-item.is-utility-start { margin-left:10px; padding-left:16px; }
.fwhn-nav-item.is-utility-start::before {
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:1px;
  height:26px;
  transform:translateY(-50%);
  background:linear-gradient(180deg,transparent,rgba(9,40,88,.16),transparent);
}

/* Premium pill navigation */
.fwhn-nav-link {
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:40px;
  padding:0 13px;
  border:1px solid transparent;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:var(--fwhn-navy);
  text-decoration:none;
  font-size:13px;
  line-height:1;
  font-weight:690;
  letter-spacing:-.012em;
  white-space:nowrap;
  background:transparent;
  transition:color .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease;
}
.fwhn-nav-label,.fwhn-chevron { position:relative; z-index:2; }
.fwhn-nav-glare {
  position:absolute;
  z-index:1;
  top:-85%;
  left:-45%;
  width:34%;
  height:270%;
  transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),rgba(255,255,255,.72),rgba(255,255,255,.16),transparent);
  opacity:0;
  pointer-events:none;
}
.fwhn-nav-link:hover,
.fwhn-nav-link:focus-visible,
.fwhn-nav-item.is-open > .fwhn-nav-link,
.fwhn-nav-item.is-current > .fwhn-nav-link {
  color:var(--fwhn-navy);
  border-color:rgba(9,40,88,.10);
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(241,245,250,.80));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 8px 22px rgba(9,40,88,.075),0 0 0 1px rgba(197,147,53,.035);
  transform:translateY(-1px);
}
.fwhn-nav-item.is-current > .fwhn-nav-link { border-color:rgba(197,147,53,.22); }
.fwhn-nav-link:hover .fwhn-nav-glare,
.fwhn-nav-link:focus-visible .fwhn-nav-glare,
.fwhn-nav-item.is-open > .fwhn-nav-link .fwhn-nav-glare { opacity:.9; animation:fwhn-nav-shine .78s var(--fwhn-ease) 1; }
@keyframes fwhn-nav-shine { from { left:-45%; } to { left:130%; } }

.fwhn-chevron { width:12px; height:12px; display:inline-flex; opacity:.65; transition:transform .2s ease; }
.fwhn-chevron svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
.fwhn-nav-item.is-open > .fwhn-nav-link .fwhn-chevron { transform:rotate(180deg); }

.fwhn-actions { display:flex; align-items:center; flex:0 0 auto; }

/* Conversion CTA */
.fwhn-cta {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:46px;
  padding:0 21px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  color:#fff;
  text-decoration:none;
  background:linear-gradient(118deg,#082653 0%,#0d3a72 60%,#315e8f 83%,#b8872f 145%);
  border:1px solid rgba(197,147,53,.28);
  box-shadow:0 13px 30px rgba(9,40,88,.20),inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(0,0,0,.08);
  font-size:13.5px;
  font-weight:760;
  letter-spacing:-.01em;
  transition:transform .22s var(--fwhn-ease),box-shadow .22s ease,border-color .22s ease,filter .22s ease;
}
.fwhn-cta-label,.fwhn-cta-arrow { position:relative; z-index:2; }
.fwhn-cta-arrow { font-size:15px; transition:transform .22s var(--fwhn-ease); }
.fwhn-cta-glare {
  position:absolute;
  z-index:1;
  top:-80%;
  left:-55%;
  width:36%;
  height:270%;
  transform:rotate(17deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),rgba(255,255,255,.72),rgba(255,255,255,.18),transparent);
  opacity:.88;
  pointer-events:none;
}
.fwhn-cta:hover,.fwhn-cta:focus-visible {
  color:#fff;
  border-color:rgba(218,177,91,.58);
  box-shadow:0 18px 38px rgba(9,40,88,.26),0 0 0 1px rgba(197,147,53,.10),inset 0 1px 0 rgba(255,255,255,.22);
  transform:translateY(-2px);
  filter:saturate(1.04);
}
.fwhn-cta:hover .fwhn-cta-arrow,.fwhn-cta:focus-visible .fwhn-cta-arrow { transform:translate(2px,-2px); }
.fwhn-cta:hover .fwhn-cta-glare,.fwhn-cta:focus-visible .fwhn-cta-glare { animation:fwhn-cta-shine .88s var(--fwhn-ease) 1; }
@keyframes fwhn-cta-shine { from { left:-55%; } to { left:135%; } }

/* Desktop trays — shared tokens */
.fwhn-nav {
  --fwhn-tray-bg:linear-gradient(180deg,rgba(251,249,245,.97),rgba(249,246,240,.955));
  --fwhn-tray-blur:blur(18px) saturate(120%);
  --fwhn-tray-border:rgba(197,147,53,.14);
  --fwhn-tray-rule:rgba(9,40,88,.075);
  --fwhn-tray-shadow:0 20px 50px rgba(4,22,47,.14),0 4px 14px rgba(4,22,47,.06),inset 0 1px 0 rgba(255,255,255,.72);
  --fwhn-tray-ease:cubic-bezier(.2,.7,.2,1);
  --fwhn-tray-link:#1b2e4c;
  --fwhn-tray-muted:#566579;
  --fwhn-tray-focus:#a87422;
  --fwhn-mega-width:760px;
  --fwhn-mega-rail:216px;
}
/* Without backdrop-filter support the surface stays near-opaque so text never sits on a busy image */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  .fwhn-nav { --fwhn-tray-bg:rgba(251,249,245,.985); }
}

/* Parent trigger while its tray is open (open state only; default and sticky header styling unchanged) */
.fwhn-nav-item.has-children.is-open > .fwhn-nav-link {
  color:var(--fwhn-navy);
  border-color:rgba(197,147,53,.24);
  background:linear-gradient(135deg,rgba(255,253,249,.97),rgba(247,242,233,.9));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 8px 22px rgba(4,22,47,.065),0 0 0 1px rgba(197,147,53,.04);
}
.fwhn-nav-item.has-children > .fwhn-nav-link .fwhn-chevron { transition:transform .22s var(--fwhn-tray-ease),opacity .2s ease,color .2s ease; }
.fwhn-nav-item.has-children.is-open > .fwhn-nav-link .fwhn-chevron { opacity:1; color:var(--fwhn-gold); }

/* Same gap for dropdown and mega menu */
.fwhn-hover-bridge { position:absolute; left:0; right:0; top:0; height:calc(var(--fwhn-menu-gap) + 4px); }

/* Glass tray surface shared by the mega menu and simple dropdowns.
   The fade/settle runs on the surface itself: an ancestor with opacity < 1
   would stop backdrop-filter from sampling the page during the transition. */
.fwhn-mega-shell,
.fwhn-nav-item > .fwhn-dropdown-wrap > .fwhn-dropdown {
  position:relative;
  border:1px solid var(--fwhn-tray-border);
  background:var(--fwhn-tray-bg);
  -webkit-backdrop-filter:var(--fwhn-tray-blur);
  backdrop-filter:var(--fwhn-tray-blur);
  box-shadow:var(--fwhn-tray-shadow);
  opacity:0;
  transform:translateY(-3px);
  transition:opacity .2s var(--fwhn-tray-ease),transform .2s var(--fwhn-tray-ease);
}
/* Restrained gold accent along the top edge */
.fwhn-mega-shell::before,
.fwhn-nav-item > .fwhn-dropdown-wrap > .fwhn-dropdown::before {
  content:"";
  position:absolute;
  top:0;
  left:22px;
  right:22px;
  height:1px;
  background:linear-gradient(90deg,rgba(197,147,53,0),rgba(197,147,53,.42) 50%,rgba(197,147,53,0));
  pointer-events:none;
}
.fwhn-nav-item.is-mega.is-open > .fwhn-mega-wrap .fwhn-mega-shell,
.fwhn-nav-item.is-mega:focus-within > .fwhn-mega-wrap .fwhn-mega-shell,
.fwhn-nav-item.is-dropdown.is-open > .fwhn-dropdown-wrap > .fwhn-dropdown,
.fwhn-nav-item.is-dropdown:focus-within > .fwhn-dropdown-wrap > .fwhn-dropdown { opacity:1; transform:none; }

/* Shared link language: clean text, gold underline grows from the left, small gold arrow */
.fwhn-link-text,
.fwhn-dropdown .fwhn-dropdown-link .fwhn-nav-label { position:relative; min-width:0; padding-bottom:2px; }
.fwhn-mega-link .fwhn-link-text::after,
.fwhn-mega-hub-link .fwhn-link-text::after,
.fwhn-mega-rail-cta .fwhn-link-text::after,
.fwhn-dropdown .fwhn-dropdown-link .fwhn-nav-label::after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,rgba(197,147,53,.5),var(--fwhn-gold) 70%,#dcb468);
  box-shadow:0 0 6px rgba(220,180,104,0);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .22s var(--fwhn-tray-ease),box-shadow .22s ease;
  pointer-events:none;
}
.fwhn-mega-link:hover .fwhn-link-text::after,
.fwhn-mega-link:focus-visible .fwhn-link-text::after,
.fwhn-mega-hub-link:hover .fwhn-link-text::after,
.fwhn-mega-hub-link:focus-visible .fwhn-link-text::after,
.fwhn-mega-rail-cta:hover .fwhn-link-text::after,
.fwhn-mega-rail-cta:focus-visible .fwhn-link-text::after,
.fwhn-dropdown .fwhn-dropdown-link:hover .fwhn-nav-label::after,
.fwhn-dropdown .fwhn-dropdown-link:focus-visible .fwhn-nav-label::after { transform:scaleX(1); box-shadow:0 0 6px rgba(220,180,104,.45); }

.fwhn-link-arrow,
.fwhn-dropdown-item:not(.has-children) > .fwhn-dropdown-link::after {
  flex:0 0 auto;
  color:var(--fwhn-gold);
  font-size:13px;
  line-height:1;
  transition:opacity .2s var(--fwhn-tray-ease),transform .2s var(--fwhn-tray-ease);
}
.fwhn-mega-link .fwhn-link-arrow,
.fwhn-dropdown-item:not(.has-children) > .fwhn-dropdown-link::after { opacity:0; transform:translateX(-3px); }
.fwhn-dropdown-item:not(.has-children) > .fwhn-dropdown-link::after { content:"→"; position:relative; z-index:2; }
.fwhn-mega-link:hover .fwhn-link-arrow,
.fwhn-mega-link:focus-visible .fwhn-link-arrow,
.fwhn-dropdown-item:not(.has-children) > .fwhn-dropdown-link:hover::after,
.fwhn-dropdown-item:not(.has-children) > .fwhn-dropdown-link:focus-visible::after { opacity:1; transform:translateX(0); }
.fwhn-mega-hub-link:hover .fwhn-link-arrow,
.fwhn-mega-hub-link:focus-visible .fwhn-link-arrow,
.fwhn-mega-rail-cta:hover .fwhn-link-arrow,
.fwhn-mega-rail-cta:focus-visible .fwhn-link-arrow { transform:translateX(3px); }

/* Focus: a refined ring that hugs the link text, not the whole row */
.fwhn-mega-link:focus-visible,
.fwhn-mega-hub-link:focus-visible,
.fwhn-mega-rail-cta:focus-visible,
.fwhn-dropdown .fwhn-dropdown-link:focus-visible { outline:none; }
.fwhn-mega-link:focus-visible .fwhn-link-text,
.fwhn-mega-hub-link:focus-visible .fwhn-link-text,
.fwhn-mega-rail-cta:focus-visible .fwhn-link-text,
.fwhn-dropdown .fwhn-dropdown-link:focus-visible .fwhn-nav-label {
  outline:2px solid var(--fwhn-tray-focus);
  outline-offset:3px;
  border-radius:3px;
}

/* Simple dropdown */
.fwhn-nav-item.is-dropdown > .fwhn-dropdown-wrap {
  position:absolute;
  z-index:9994;
  top:calc(100% + 1px); /* clears the header's 1px bottom border, matching the mega gap */
  left:-6px; /* row text lines up with the trigger label */
  width:240px;
  padding-top:var(--fwhn-menu-gap);
  visibility:hidden;
  pointer-events:none;
  transition:visibility 0s linear .2s;
}
.fwhn-nav-item.is-dropdown.is-open > .fwhn-dropdown-wrap,
.fwhn-nav-item.is-dropdown:focus-within > .fwhn-dropdown-wrap { visibility:visible; pointer-events:auto; transition-delay:0s; }
.fwhn-dropdown-wrap > .fwhn-hover-bridge { top:-2px; height:calc(var(--fwhn-menu-gap) + 6px); }
.fwhn-dropdown { padding:6px; border-radius:12px; }
.fwhn-dropdown-item { position:relative; margin:0; }
.fwhn-dropdown-item > .fwhn-dropdown-wrap {
  position:absolute;
  z-index:9995;
  top:-7px;
  left:calc(100% - 1px);
  width:240px;
  padding-left:8px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(6px);
  transition:opacity .2s var(--fwhn-tray-ease),transform .2s var(--fwhn-tray-ease),visibility .2s ease;
}
.fwhn-dropdown-item > .fwhn-dropdown-wrap > .fwhn-dropdown { border:1px solid var(--fwhn-tray-border); background:rgba(251,249,245,.985); box-shadow:var(--fwhn-tray-shadow); }
.fwhn-dropdown-item:hover > .fwhn-dropdown-wrap,.fwhn-dropdown-item:focus-within > .fwhn-dropdown-wrap { opacity:1; visibility:visible; pointer-events:auto; transform:translateX(0); }
.fwhn-dropdown .fwhn-dropdown-link {
  width:100%;
  height:auto;
  min-height:42px;
  padding:0 12px;
  border:0;
  border-radius:8px;
  justify-content:flex-start;
  gap:10px;
  overflow:visible;
  color:var(--fwhn-tray-link);
  font-size:13.5px;
  line-height:1.3;
  font-weight:600;
  letter-spacing:-.005em;
  white-space:normal;
  background:none;
  transition:color .2s var(--fwhn-tray-ease);
}
.fwhn-dropdown-link .fwhn-nav-glare { display:none; }
.fwhn-dropdown .fwhn-dropdown-link:hover,
.fwhn-dropdown .fwhn-dropdown-link:focus-visible,
.fwhn-dropdown .fwhn-dropdown-link[aria-current="page"] { color:var(--fwhn-navy); background:none; border-color:transparent; box-shadow:none; transform:none; }
.fwhn-dropdown .fwhn-dropdown-link[aria-current="page"]::before {
  content:"";
  position:absolute;
  left:3px;
  top:50%;
  width:4px;
  height:4px;
  margin-top:-2px;
  border-radius:50%;
  background:var(--fwhn-gold);
}
.fwhn-dropdown-item.has-children > .fwhn-dropdown-link { justify-content:space-between; }
.fwhn-dropdown-item.has-children > .fwhn-dropdown-link .fwhn-chevron { transform:rotate(-90deg); }

/* Compact editorial mega menu */
.fwhn-mega-wrap {
  position:fixed;
  z-index:9993;
  top:var(--fwhn-panel-top);
  left:0;
  right:0;
  padding-top:var(--fwhn-menu-gap);
  pointer-events:none; /* full-width positioning layer only; the shell captures the pointer */
  visibility:hidden;
  transition:visibility 0s linear .2s;
}
.fwhn-nav-item.is-mega.is-open > .fwhn-mega-wrap,
.fwhn-nav-item.is-mega:focus-within > .fwhn-mega-wrap { visibility:visible; transition-delay:0s; }
.fwhn-mega-shell {
  width:min(var(--fwhn-mega-width),calc(100vw - 48px));
  margin-left:var(--fwhn-mega-left,auto); /* set by JS beneath the trigger; centred without it */
  margin-right:auto;
  border-radius:14px;
}
.fwhn-nav-item.is-mega.is-open > .fwhn-mega-wrap .fwhn-mega-shell,
.fwhn-nav-item.is-mega:focus-within > .fwhn-mega-wrap .fwhn-mega-shell { pointer-events:auto; }
/* Spans the tray width and reaches up past the header edge, below the nav links */
.fwhn-mega-shell > .fwhn-hover-bridge { top:calc(-1 * var(--fwhn-menu-gap) - 10px); height:calc(var(--fwhn-menu-gap) + 12px); }
.fwhn-mega-panel {
  display:grid;
  grid-template-columns:minmax(0,1fr) var(--fwhn-mega-rail);
  max-height:calc(100vh - var(--fwhn-panel-top) - 24px);
  overflow-y:auto;
  overscroll-behavior:contain;
  border-radius:inherit;
}
.fwhn-mega-nav { min-width:0; padding:24px 28px 18px 26px; }
.fwhn-mega-label,
.fwhn-mega-rail-eyebrow {
  display:block;
  color:var(--fwhn-gold);
  font-size:10px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.fwhn-mega-label { margin:0 0 10px; }
.fwhn-mega-label::after {
  content:"";
  display:block;
  width:28px;
  height:1px;
  margin-top:9px;
  background:linear-gradient(90deg,var(--fwhn-gold),rgba(197,147,53,0));
}
.fwhn-mega-columns { min-width:0; display:grid; grid-template-columns:repeat(var(--fwhn-mega-cols),minmax(0,1fr)); column-gap:28px; align-items:start; }
.fwhn-mega-column,
.fwhn-mega-group ul { list-style:none; margin:0; padding:0; min-width:0; }
.fwhn-mega-column li,
.fwhn-mega-group li { margin:0; padding:0; }
.fwhn-mega-group { padding:2px 0 8px; }
.fwhn-mega-heading {
  display:block;
  padding:6px 0 4px;
  color:var(--fwhn-navy);
  font-size:12px;
  font-weight:760;
  text-decoration:none;
}
.fwhn-mega-link {
  position:relative;
  min-height:36px;
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--fwhn-tray-link);
  text-decoration:none;
  font-size:13.5px;
  line-height:1.3;
  font-weight:600;
  letter-spacing:-.005em;
  transition:color .2s var(--fwhn-tray-ease);
}
.fwhn-mega-link:hover,
.fwhn-mega-link:focus-visible,
.fwhn-mega-link[aria-current="page"] { color:var(--fwhn-navy); }
.fwhn-mega-link[aria-current="page"]::before {
  content:"";
  position:absolute;
  left:-11px;
  top:50%;
  width:4px;
  height:4px;
  margin-top:-2px;
  border-radius:50%;
  background:var(--fwhn-gold);
}

/* Editorial footer: one hub link under a thin warm rule */
.fwhn-mega-hub { position:relative; margin-top:14px; padding-top:15px; }
.fwhn-mega-hub::before {
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,rgba(197,147,53,.34),rgba(9,40,88,.08) 45%,rgba(9,40,88,0));
}
.fwhn-mega-hub-link,
.fwhn-mega-rail-cta {
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:24px;
  color:var(--fwhn-navy);
  text-decoration:none;
  font-size:13px;
  line-height:1.3;
  font-weight:760;
  letter-spacing:-.005em;
}
.fwhn-mega-rail-cta { font-size:12.8px; font-weight:720; }

/* Editorial side rail: text only, a warm wash integrated into the tray */
.fwhn-mega-rail {
  min-width:0;
  padding:24px 24px 22px;
  border-left:1px solid rgba(197,147,53,.14);
  background:linear-gradient(180deg,rgba(197,147,53,.06),rgba(9,40,88,.02));
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
}
.fwhn-mega-rail-title {
  display:block;
  color:var(--fwhn-navy);
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:24px;
  line-height:1.08;
  font-weight:600;
  letter-spacing:-.01em;
}
.fwhn-mega-rail-text {
  margin:0;
  color:var(--fwhn-tray-muted);
  font-size:12.5px;
  line-height:1.55;
  font-weight:500;
}
.fwhn-mega-rail-cta { margin-top:2px; }

/* Mobile header */
.fwhn-menu-toggle,
.fwhn-drawer-close,
.fwhn-mobile-expand {
  appearance:none;
  border:0;
  background:none;
  color:inherit;
  cursor:pointer;
  padding:0;
}
.fwhn-menu-toggle {
  width:44px;
  height:44px;
  border:1px solid rgba(9,40,88,.11);
  border-radius:999px;
  display:grid;
  place-content:center;
  gap:4px;
  background:rgba(255,255,255,.82);
  box-shadow:0 6px 18px rgba(9,40,88,.06),inset 0 1px 0 rgba(255,255,255,.9);
}
.fwhn-menu-toggle span { display:block; width:17px; height:1.5px; border-radius:10px; background:var(--fwhn-navy); }
.fwhn-header-spacer { height:var(--fwhn-desktop-height); }

/* Drawer */
.fwhn-drawer-backdrop {
  position:fixed;
  z-index:10000;
  inset:0;
  background:rgba(2,12,28,.56);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
  opacity:0;
  transition:opacity .28s ease;
}
.fwhn-drawer-backdrop[hidden] { display:none!important; }
.fwhn-drawer-backdrop.is-open { opacity:1; }
.fwhn-drawer {
  position:fixed;
  z-index:10010;
  top:0;
  right:0;
  bottom:0;
  width:min(440px,94vw);
  display:flex;
  flex-direction:column;
  color:var(--fwhn-navy);
  background:linear-gradient(180deg,#fff 0%,#fdfcf9 100%);
  box-shadow:-28px 0 80px rgba(3,17,40,.22);
  transform:translateX(104%);
  visibility:hidden;
  transition:transform .34s var(--fwhn-ease),visibility .34s ease;
}
.admin-bar .fwhn-drawer { top:32px; }
@media (max-width:782px){ .admin-bar .fwhn-drawer { top:46px; } }
.fwhn-drawer.is-open { transform:translateX(0); visibility:visible; }
.fwhn-drawer-head {
  min-height:82px;
  padding:12px 20px;
  border-bottom:1px solid rgba(9,40,88,.07);
  display:flex;
  align-items:center;
  gap:16px;
  background:linear-gradient(90deg,rgba(248,246,241,.58),#fff 48%);
}
.fwhn-drawer-head .fwhn-brand { width:var(--fwhn-mobile-logo-width); min-width:var(--fwhn-mobile-logo-width); height:50px; }
.fwhn-drawer-head .fwhn-logo { max-height:50px; }
.fwhn-drawer-close { margin-left:auto; width:42px; height:42px; border:1px solid rgba(9,40,88,.10); border-radius:999px; display:grid; place-items:center; background:#fff; transition:background .18s ease,transform .18s ease; }
.fwhn-drawer-close:hover { background:rgba(9,40,88,.035); transform:rotate(4deg); }
.fwhn-drawer-close svg,.fwhn-whatsapp svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.fwhn-drawer-body { flex:1 1 auto; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:18px 20px 28px; }
.fwhn-drawer-intro { padding:4px 2px 16px; display:grid; gap:4px; }
.fwhn-drawer-intro span { color:var(--fwhn-gold); font-size:9.5px; font-weight:830; letter-spacing:.15em; text-transform:uppercase; }
.fwhn-drawer-intro strong { color:var(--fwhn-navy); font-family:"Cormorant Garamond",Georgia,serif; font-size:27px; line-height:1.03; font-weight:600; letter-spacing:-.025em; }

.fwhn-mobile-list.depth-0 > .fwhn-mobile-item { border-bottom:1px solid rgba(9,40,88,.07); }
.fwhn-mobile-item.is-utility-start { margin-top:12px; padding-top:12px; border-top:1px solid rgba(197,147,53,.18); }
.fwhn-mobile-row { min-height:58px; display:flex; align-items:center; gap:10px; }
.fwhn-mobile-link { flex:1; min-width:0; color:var(--fwhn-navy); text-decoration:none; font-size:15px; line-height:1.3; font-weight:730; letter-spacing:-.015em; }
.fwhn-mobile-link[aria-current="page"] { color:#a87422; }
.fwhn-mobile-list.depth-1 { padding:2px 0 14px 12px; }
.fwhn-mobile-list.depth-1 .fwhn-mobile-row { min-height:42px; }
.fwhn-mobile-list.depth-1 .fwhn-mobile-link { font-size:13.2px; font-weight:620; color:#344760; }
.fwhn-mobile-list.depth-2 { padding-left:13px; }
.fwhn-mobile-expand { width:38px; height:38px; border-radius:999px; background:#f4f7fa; position:relative; flex:0 0 auto; border:1px solid rgba(9,40,88,.055); }
.fwhn-mobile-expand span { position:absolute; left:50%; top:50%; width:12px; height:1.5px; background:var(--fwhn-navy); transform:translate(-50%,-50%); transition:transform .22s ease; }
.fwhn-mobile-expand span:last-child { transform:translate(-50%,-50%) rotate(90deg); }
.fwhn-mobile-expand[aria-expanded="true"] span:last-child { transform:translate(-50%,-50%) rotate(0); }
.fwhn-mobile-panel[hidden] { display:none!important; }
.fwhn-mobile-view-all { margin:3px 0 13px 12px; min-height:42px; padding:0 12px; border:1px dashed rgba(9,40,88,.12); border-radius:11px; display:flex; align-items:center; justify-content:space-between; color:var(--fwhn-navy); text-decoration:none; font-size:12.5px; font-weight:740; background:linear-gradient(90deg,rgba(9,40,88,.025),rgba(197,147,53,.035)); }
.fwhn-mobile-view-all span:last-child { color:var(--fwhn-gold); }
.fwhn-drawer-footer { padding:16px 20px max(18px,env(safe-area-inset-bottom)); border-top:1px solid rgba(9,40,88,.07); display:grid; gap:10px; background:rgba(255,255,255,.985); box-shadow:0 -14px 30px rgba(9,40,88,.035); }
.fwhn-cta--mobile { width:100%; min-height:51px; }
.fwhn-whatsapp { min-height:46px; border-radius:11px; display:inline-flex; justify-content:center; align-items:center; gap:9px; border:1px solid rgba(9,40,88,.12); color:var(--fwhn-navy); text-decoration:none; font-size:13px; font-weight:720; background:#fff; transition:background .18s ease,border-color .18s ease; }
.fwhn-whatsapp:hover { background:rgba(9,40,88,.03); border-color:rgba(9,40,88,.18); }

body.fwhn-lock-scroll { overflow:hidden!important; }

.fwhn-nav-link:focus-visible,
.fwhn-cta:focus-visible,
.fwhn-menu-toggle:focus-visible,
.fwhn-drawer-close:focus-visible,
.fwhn-mobile-link:focus-visible,
.fwhn-mobile-expand:focus-visible,
.fwhn-whatsapp:focus-visible,
.fwhn-mobile-view-all:focus-visible { outline:2px solid var(--fwhn-gold); outline-offset:3px; }

.screen-reader-text { border:0; clip:rect(1px,1px,1px,1px); clip-path:inset(50%); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute!important; width:1px; word-wrap:normal!important; }

@media (max-width:1320px){
  .fwhn-header-inner { width:min(calc(100% - 34px),var(--fwhn-container)); gap:22px; }
  .fwhn-nav-list { gap:5px; }
  .fwhn-nav-link { padding-inline:11px; font-size:12.7px; }
  .fwhn-cta { padding-inline:18px; }
}

@media (max-width:760px){
  .fwhn-header-inner { width:calc(100% - 28px); gap:14px; }
  .fwhn-brand { width:var(--fwhn-mobile-logo-width); min-width:var(--fwhn-mobile-logo-width); height:50px; }
  .fwhn-logo { max-height:50px; }
}

@media (prefers-reduced-motion:reduce){
  .fwhn-site-header,
  .fwhn-site-header *,
  .fwhn-drawer,
  .fwhn-drawer-backdrop,
  .fwhn-dropdown-wrap,
  .fwhn-dropdown,
  .fwhn-mega-wrap,
  .fwhn-mega-shell { scroll-behavior:auto!important; transition-duration:.001ms!important; animation-duration:.001ms!important; }
  .fwhn-cta-glare,.fwhn-nav-glare { animation:none!important; }
  .fwhn-mega-shell,
  .fwhn-nav-item > .fwhn-dropdown-wrap > .fwhn-dropdown,
  .fwhn-dropdown-item > .fwhn-dropdown-wrap,
  .fwhn-link-arrow,
  .fwhn-dropdown-item:not(.has-children) > .fwhn-dropdown-link::after { transform:none!important; }
}
