header .menu{display:flex;align-items:center;gap:22px}
header .nav-dropdown{position:relative}
header .nav-dropdown summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;font-size:14.5px;font-weight:600;color:#3a424e;padding:16px 0}
header .nav-dropdown summary::-webkit-details-marker{display:none}
header .nav-dropdown summary::after{content:'';width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-4px}
header .nav-dropdown[open] summary{color:var(--red,#D8262B)}
header .nav-dropdown[open] summary::after{transform:rotate(225deg);margin-top:4px}
header .nav-dropdown-panel{position:absolute;top:100%;left:0;width:290px;max-width:calc(100vw - 48px);max-height:60vh;overflow-y:auto;background:#fff;border:1px solid #efe2e2;border-radius:12px;padding:8px;box-shadow:0 16px 40px rgba(26,26,26,.16);z-index:60}
header .nav-dropdown-panel a{display:block;padding:11px 12px;border-radius:7px;white-space:normal;line-height:1.4}
header .nav-dropdown-panel a:hover,header .nav-dropdown-panel a:focus-visible{background:#faf0f0;color:var(--red,#D8262B)}
header .nav-dropdown summary:focus-visible{outline:2px solid var(--red,#D8262B);outline-offset:4px;border-radius:4px}
/* ---------- Mobile / tablet drawer menu ---------- */
header .nav-toggle,header .menu-head,header .menu-cta,header .nav-overlay{display:none}
@media(max-width:1100px){
  header .nav{height:68px;min-height:0;flex-wrap:nowrap;gap:12px;padding-top:0;padding-bottom:0}
  header .brand{margin-right:auto}
  header .brand img{height:36px}
  /* hamburger */
  header .nav-toggle{order:3;display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0 11px;border:1px solid #eadede;border-radius:10px;background:#fff;cursor:pointer;flex:none}
  header .nav-toggle span{display:block;height:2px;border-radius:2px;background:#1a1a1a;transition:transform .25s,opacity .2s}
  header .nav-toggle:hover span{background:var(--red,#D8262B)}
  header .nav-toggle:focus-visible,header .nav-close:focus-visible{outline:2px solid var(--red,#D8262B);outline-offset:2px}
  header .nav-cta{order:2}
  /* drawer */
  header .menu{display:flex;position:fixed;top:0;right:0;bottom:0;z-index:1001;width:min(360px,88vw);height:100vh;height:100dvh;margin:0;padding:0 0 24px;flex-direction:column;align-items:stretch;justify-content:flex-start;flex-wrap:nowrap;gap:0;background:#fff;box-shadow:-18px 0 48px rgba(26,26,26,.18);overflow-y:auto;overscroll-behavior:contain;transform:translateX(105%);visibility:hidden;transition:transform .3s ease,visibility 0s linear .3s}
  body.nav-open header .menu{transform:none;visibility:visible;transition:transform .3s ease}
  header .menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:0;z-index:2;min-height:68px;padding:0 16px 0 20px;background:#fff;border-bottom:2px solid var(--red,#D8262B)}
  header .menu-brand img{height:45px;display:block}
  header .nav-close{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#f6eeee;color:#1a1a1a;font-size:28px;line-height:1;cursor:pointer}
  header .nav-close:hover{background:var(--red,#D8262B);color:#fff}
  /* top-level rows */
  header .menu>a:not(.menu-cta),header .menu .nav-dropdown summary{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;font-size:16px;font-weight:700;color:#1a1a1a;border-bottom:1px solid #f1e8e8}
  header .menu>a:not(.menu-cta):hover{color:var(--red,#D8262B)}
  header .menu .nav-dropdown summary::after{margin-left:auto}
  header .menu .nav-dropdown[open] summary{background:#fcf5f5;border-bottom-color:transparent;color:var(--red,#D8262B)}
  /* sub-menu as accordion */
  header .menu .nav-dropdown-panel{position:static;width:auto;max-width:none;max-height:none;overflow:visible;margin:0;padding:4px 12px 12px 20px;border:0;border-bottom:1px solid #f1e8e8;border-radius:0;box-shadow:none;background:#fcf5f5}
  header .menu .nav-dropdown-panel a{padding:11px 12px;font-size:14.5px;font-weight:500;color:#3a424e;border-left:2px solid #ead6d6;border-radius:0 7px 7px 0}
  header .menu .nav-dropdown-panel a:hover,header .menu .nav-dropdown-panel a:focus-visible{border-left-color:var(--red,#D8262B);background:#fff}
  /* CTA at bottom of drawer */
  header .menu-cta{display:block;margin:24px 20px 0;padding:14px 16px;border-radius:9px;background:var(--red,#D8262B);color:#fff;font-weight:700;font-size:15px;text-align:center}
  header .menu-cta:hover{background:#b01d22;color:#fff}
  /* backdrop */
  header .nav-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:rgba(20,20,20,.5);opacity:0;pointer-events:none;transition:opacity .3s}
  body.nav-open header .nav-overlay{opacity:1;pointer-events:auto}
  body.nav-open{overflow:hidden}
  /* hamburger -> X */
  body.nav-open header .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  body.nav-open header .nav-toggle span:nth-child(2){opacity:0}
  body.nav-open header .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}
@media(max-width:560px){
  header .nav-cta{display:none}
  header .brand img{height:45px;}
}
@media(prefers-reduced-motion:reduce){header .menu,header .nav-overlay,header .nav-toggle span{transition:none !important}}
