.header { height:98px; border-bottom:0; gap:24px; }
.header nav { gap:3px; padding:5px; border:1px solid #e2e3d9; border-radius:21px; background:#eeeee6; }
.header .mega-menu { border:0; margin:0; padding:0; }
.header .mega-menu summary,.header nav>a {
  display:flex; align-items:center; justify-content:center; gap:9px; min-height:42px; padding:11px 16px;
  border-radius:15px; font-size:14px; line-height:20px; font-weight:560; letter-spacing:-.25px;
  color:#53584b; cursor:pointer; list-style:none; white-space:nowrap;
  transition:background-color .16s,color .16s,box-shadow .16s;
}
.mega-menu summary::-webkit-details-marker { display:none; }
.nav-chevron { flex:none; opacity:.6; transition:transform .18s,opacity .18s; }
.header .mega-menu summary:hover,.header nav>a:hover { color:#22271d; background:#fafaf5; text-decoration:none; }
.header .current-section>summary { background:#fffef8; color:#22271d; box-shadow:0 1px 4px #303b2010; }
.header .mega-menu[open]>summary { background:#ffda68; color:#29281c; box-shadow:inset 0 0 0 1px #b28c1e12; }
.mega-menu[open] .nav-chevron { transform:rotate(180deg); opacity:1; }
.header .header-cta { min-height:48px; padding:13px 20px; border-radius:16px; font-size:13px; gap:16px; }
.mega-panel {
  position:absolute; top:calc(100% - 3px); left:50%; width:min(850px,100%); transform:translateX(-50%);
  border:1px solid #e4e6dc; border-radius:24px; background:#fffef8;
  box-shadow:0 12px 22px -12px #25351f1a,0 28px 70px -20px #25351f29;
  overflow:hidden; animation:menu-in .18s cubic-bezier(.2,.7,.3,1);
}
.mega-heading { display:flex; justify-content:space-between; align-items:center; padding:15px 24px 9px; color:#727966; font-size:12px; }
.mega-close { width:32px; height:32px; display:grid; place-items:center; border:0; border-radius:10px; font-size:23px; line-height:1; background:transparent; color:#737b66; }
.mega-close:hover { background:#f0f2e8; color:#242b1d; }
.mega-content { display:grid; grid-template-columns:270px 1fr; gap:8px; padding:0 8px 8px; }
.mega-art { background:#edf0e5; border-radius:17px; padding:23px; display:flex; flex-direction:column; justify-content:center; }
.mega-art img { width:100%; margin-bottom:21px; border-radius:10px; mix-blend-mode:multiply; }
.mega-art p { color:#39412e; font-size:27px; letter-spacing:-1.1px; line-height:1.15; }
.mega-art>span { font-size:8px; letter-spacing:1.4px; color:#677351; margin-top:17px; }
.mega-links { padding:0 2px; }
.header nav a.mega-link { display:flex; align-items:center; gap:15px; padding:16px 14px; text-decoration:none; border-radius:15px; color:var(--ink); transition:background-color .16s; }
.header nav a.mega-link:hover { background:#f2f4eb; }
.mega-link>img { flex:none; width:66px; height:52px; object-fit:cover; border-radius:10px; mix-blend-mode:multiply; transition:transform .2s; }
.mega-link:hover>img { transform:translateY(-2px) rotate(-3deg); }
.mega-copy { flex:1; min-width:0; }
.mega-copy>span { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:14px; font-weight:570; letter-spacing:-.2px; }
.mega-copy b { font-weight:400; color:#788268; }
.mega-copy small { display:block; margin-top:6px; font-size:11px; line-height:1.6; color:#68735b; }
.footer>div { flex-wrap:wrap; }
@keyframes menu-in { from { opacity:0; transform:translateX(-50%) translateY(-7px) scale(.985); } to { opacity:1; transform:translateX(-50%) translateY(0) scale(1); } }
@media(max-width:1050px) {
  .header { gap:16px; }
  .header .brand { font-size:21px; }
  .header .mega-menu summary,.header nav>a { padding-inline:12px; }
  .header .header-cta { padding-inline:16px; }
}
@media(max-width:880px) {
  .header { height:80px; width:calc(100% - 40px); flex-wrap:nowrap; }
  .header .header-cta { display:none; }
  .header .menu-toggle { display:flex; flex-direction:column; justify-content:center; gap:6px; width:46px; height:46px; margin-left:auto; border:1px solid #e1e4d7; border-radius:15px; background:#eeeee6; }
  .menu-toggle span { display:block; width:18px; height:1.5px; background:var(--ink); margin:0 auto; transition:transform .18s; }
  .menu-toggle[aria-expanded=true] { background:#ffda68; border-color:#ffda68; }
  .menu-toggle[aria-expanded=true] span:first-child { transform:translateY(3.75px) rotate(45deg); }
  .menu-toggle[aria-expanded=true] span:last-child { transform:translateY(-3.75px) rotate(-45deg); }
  .header nav { display:none; position:absolute; inset:75px -8px auto; margin:0; padding:8px; background:#fffef8; border:1px solid #e4e6dc; box-shadow:0 18px 45px -12px #25351f33; border-radius:22px; max-height:calc(100dvh - 96px); overflow-y:auto; }
  .header nav.open { display:block; }
  .header .mega-menu summary { justify-content:space-between; font-size:15px; padding:15px 16px; margin-bottom:3px; }
  .header nav>a { justify-content:flex-start; padding:15px 16px; font-size:15px; }
  .header .current-section>summary { background:#f2f4eb; box-shadow:none; }
  .mega-panel { position:static; transform:none; width:100%; box-shadow:none; border:0; border-radius:14px; animation:none; background:#f8f9f2; margin:6px 0 10px; }
  .mega-heading { display:none; }
  .mega-content { display:block; padding:3px; }
  .mega-art { display:none; }
  .mega-links { padding:0; }
  .header nav a.mega-link { gap:12px; padding:14px 10px; }
  .mega-link>img { width:54px; height:46px; border-radius:9px; }
  .mega-copy>span { font-size:13px; }
  .mega-copy small { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) {
  .mega-panel { animation:none; }
  .mega-link>img,.menu-toggle span,.nav-chevron,.header .mega-menu summary,.header nav>a,.header nav a.mega-link { transition:none; }
}
