/* ===== HEADER 1.8 BEGIN (generated from house-v6/header/header.css by header/build.cjs; edit the source, not this block) ===== */
/* ===== Shared header 1.8 (6 Oct 2026): one sticky bar, three mega menus, a small About menu, the mobile accordion.
   SOURCE: house-v6/header/header.css. `node header/build.cjs` copies this block into kit.css (between the markers) and
   into cec-website/src/css/header.css: edit here only. Self-contained (own tokens, own resets) so it renders the same
   over a kit page and over a lifted House v5 page. Kit 1.7 look: one radius 28/20px, pill buttons, mint hover, kit type.
   No layout shift: the bar has a fixed height and the panels are absolutely positioned under it. ===== */
html{scroll-padding-top:96px}
.cec-hd{--hd-paper:#fff;--hd-ink:#10201b;--hd-body:#25332e;--hd-muted:#45534c;--hd-line:#d8ded9;--hd-green:#1f5a47;--hd-deep:#123b31;--hd-accent:#1d7a5b;--hd-mint:#e8f2ee;--hd-sage:#e3eee8;--hd-sage-line:#b9d3c6;--hd-r:28px;--hd-r-in:12px;--hd-h:80px;--hd-gutter:56px;
  --hd-sans:'Segoe UI',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;--hd-serif:Georgia,'Times New Roman',serif;
  position:sticky;top:0;z-index:1000;background:var(--hd-paper);color:var(--hd-ink);font:400 16px/1.5 var(--hd-sans);box-shadow:0 1px 0 var(--hd-line);transition:box-shadow .2s}
.cec-hd.is-scrolled{box-shadow:0 1px 0 var(--hd-line),0 14px 34px -22px rgba(13,44,37,.4)}
/* resets at zero specificity (:where), so every component rule below wins (Codex 6 Oct: the plain resets outranked the
   Book pill's white text, the trigger padding and the card title's serif) */
.cec-hd :where(*,*::before,*::after){box-sizing:border-box}
.cec-hd :where(ul,ol){list-style:none;margin:0;padding:0}
.cec-hd :where(p,h2,h3,figure){margin:0;max-width:none}
.cec-hd :where(a){color:inherit;text-decoration:none}
.cec-hd :where(img){display:block;max-width:100%;height:auto}
.cec-hd :where(button){font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0;margin:0}
.cec-hd :where(a,button,span,p,li,summary,strong){font-family:var(--hd-sans)}
.cec-hd :where(:focus-visible){outline:3px solid var(--hd-accent);outline-offset:3px}
.cec-skip{position:absolute;left:12px;top:-100px;z-index:1100;padding:12px 16px;background:#fff;color:#10201b;font:600 15px/1.2 'Segoe UI',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;border-radius:999px;box-shadow:0 8px 24px -8px rgba(13,44,37,.4)}
.cec-skip:focus{top:12px}
@media(max-width:1100px){.cec-hd{--hd-gutter:32px}}
@media(max-width:700px){.cec-hd{--hd-h:64px}}
@media(max-width:600px){.cec-hd{--hd-gutter:22px}}

/* --- the bar --- */
.cec-hd-bar{height:var(--hd-h);width:min(1380px,100% - 2*var(--hd-gutter));margin-inline:auto;display:flex;align-items:center;gap:16px}
.cec-hd-logo{display:block;flex:0 1 auto;min-width:0;min-height:44px;display:flex;align-items:center}
.cec-hd-logo img{height:48px;width:auto}
.cec-hd-nav{margin-left:auto}
.cec-hd-list{display:flex;align-items:center;gap:6px}
.cec-mm-trigger,.cec-hd-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 15px;border-radius:999px;font:500 16px/1 var(--hd-sans);color:var(--hd-ink);white-space:nowrap;transition:background .15s,color .15s}
.cec-mm-trigger:hover,.cec-hd-link:hover,.cec-mm-trigger[aria-expanded="true"]{background:var(--hd-mint);color:var(--hd-deep)}
.cec-mm-trigger svg{width:11px;height:11px;flex:none;transition:transform .2s}
.cec-mm-trigger[aria-expanded="true"] svg{transform:rotate(180deg)}
.cec-hd .cec-hd-book,.cec-hd .cec-mm-foot-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 22px;border-radius:999px;background:var(--hd-green);color:#fff;font:600 15px/1.2 var(--hd-sans);white-space:nowrap;transition:background .15s}
.cec-hd .cec-hd-book:is(:hover,:focus-visible),.cec-hd .cec-mm-foot-btn:is(:hover,:focus-visible){background:var(--hd-deep);color:#fff}
.cec-hd-toggle{display:none;margin-left:auto;width:44px;height:44px;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.cec-hd-toggle span{display:block;width:22px;height:2px;border-radius:2px;background:var(--hd-ink);transition:transform .2s,opacity .2s}
.cec-hd-toggle[aria-expanded="true"]{background:var(--hd-mint)}
.cec-hd-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.cec-hd-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.cec-hd-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* --- mega menu panels (desktop) --- */
.cec-mm-panel{position:absolute;left:0;right:0;top:100%;background:var(--hd-paper);border-top:1px solid var(--hd-line);box-shadow:0 30px 50px -28px rgba(13,44,37,.4);max-height:calc(100vh - var(--hd-h));overflow-y:auto}
.cec-mm-panel[hidden]{display:none}
@media(prefers-reduced-motion:no-preference){.cec-mm-panel{animation:cec-mm-in .18s ease-out both}}
@keyframes cec-mm-in{from{opacity:0;translate:0 -6px}to{opacity:1;translate:0 0}}
.cec-mm-wrap{width:min(1380px,100% - 2*var(--hd-gutter));margin-inline:auto;padding:36px 0 32px}
.cec-mm-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(260px,.95fr);gap:40px}
.cec-mm-panel[data-groups="2"] .cec-mm-cols{grid-template-columns:repeat(2,minmax(0,1fr)) minmax(260px,.95fr)}
.cec-mm-label{font:600 12px/1.5 var(--hd-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--hd-accent);margin:0 0 8px}
.cec-mm-item{display:block;padding:8px 12px;margin-left:-12px;border-radius:12px;transition:background .15s}
.cec-mm-item:hover{background:var(--hd-mint)}
.cec-mm-name{display:block;font:600 16px/1.3 var(--hd-sans);color:var(--hd-ink)}
.cec-mm-desc{display:block;font-size:14px;line-height:1.4;color:var(--hd-muted);margin-top:2px}
.cec-mm-card{display:grid;grid-template-rows:auto 1fr;align-self:start;background:var(--hd-sage);border-radius:var(--hd-r);padding:12px;color:var(--hd-ink);transition:box-shadow .2s,translate .2s}
.cec-mm-card:hover{box-shadow:0 26px 50px -34px rgba(13,44,37,.45);translate:0 -2px}
.cec-mm-card img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--hd-r-in)}
.cec-mm-card-text{display:block;padding:16px 10px 8px}
.cec-mm-card-kicker{display:block;font:600 12px/1.5 var(--hd-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--hd-accent)}
.cec-mm-card-title{display:block;margin-top:6px;font:400 24px/1.2 var(--hd-serif);letter-spacing:-.02em;color:var(--hd-ink);text-wrap:balance}
.cec-mm-card-line{display:block;margin-top:8px;font-size:15px;line-height:1.45;color:var(--hd-body)}
/* V16 (2 Nov 2026): no arrow glyphs on menu links */
.cec-mm-foot{margin-top:32px;display:flex;align-items:center;flex-wrap:wrap;gap:14px 28px;padding:16px 16px 16px 24px;border-radius:var(--hd-r);background:var(--hd-mint)}
.cec-mm-overview{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--hd-green);margin-right:auto}
/* V16: overview link, no arrow */
.cec-mm-overview:hover{color:var(--hd-ink)}
.cec-mm-lang{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 12px;border-radius:999px;background:#fff;color:var(--hd-ink);font-weight:600;margin-right:auto}
.cec-mm-lang:hover{color:var(--hd-accent)}
.cec-mm-overview:has(+.cec-mm-lang){margin-right:0}
.cec-mm-foot-text{font-size:15px;line-height:1.45;color:var(--hd-ink)}
.cec-mm-foot-text strong{font-weight:600}
/* the small About menu hangs under its own trigger */
.cec-mm--small{position:relative}
.cec-mm-panel--small{top:calc(100% + (var(--hd-h) - 44px)/2);left:auto;right:0;width:320px;border-top:0;border-radius:0 0 20px 20px;box-shadow:0 1px 0 var(--hd-line) inset,0 30px 50px -28px rgba(13,44,37,.4);margin-top:0}
.cec-mm-panel--small .cec-mm-wrap{width:auto;padding:14px 12px 12px}
.cec-mm-panel--small .cec-mm-item{margin-left:0}

/* --- mobile menu (1023px and under) --- */
.cec-mobile{position:fixed;top:var(--hd-h);left:0;right:0;bottom:0;overflow-y:auto;background:var(--hd-paper);padding:4px var(--hd-gutter) 96px}
.cec-mobile[hidden]{display:none}
.cec-mob-utility{display:flex;flex-wrap:wrap;gap:8px 24px;padding:10px 0 4px}
.cec-mob-utility a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--hd-green)}
.cec-mob-top+.cec-mm-lang{margin:0 0 8px 12px;background:var(--hd-mint)}
.cec-mob-sec summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:8px 0;font:600 18px/1.3 var(--hd-sans);color:var(--hd-ink);border-bottom:1px solid var(--hd-line);cursor:pointer;list-style:none}
.cec-mob-sec summary::-webkit-details-marker{display:none}
.cec-mob-sec summary::after{content:'+';font:400 26px/1 var(--hd-sans);color:var(--hd-accent);flex:none}
.cec-mob-sec[open] summary::after{content:'\2212'}
.cec-mob-body{padding:14px 0 24px;border-bottom:1px solid var(--hd-line)}
.cec-mob-top{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--hd-green);margin-bottom:8px}
/* V16: phone top link, no arrow */
.cec-mob-body .cec-mm-label{margin-top:18px}
.cec-mob-link{display:block;padding:9px 0;min-height:44px;font:600 17px/1.35 var(--hd-sans);color:var(--hd-ink)}
.cec-mob-link>span{display:block;font:400 14px/1.4 var(--hd-sans);color:var(--hd-muted);margin-top:1px}
.cec-mobile>.cec-mob-link{display:flex;align-items:center;min-height:60px;padding:8px 0;font-size:18px;border-bottom:1px solid var(--hd-line)}
.cec-mm-card--mob{margin-top:20px;grid-template-rows:none;grid-template-columns:104px minmax(0,1fr);gap:14px;align-items:center;padding:10px;border-radius:20px}
.cec-mm-card--mob img{aspect-ratio:1;border-radius:10px}
.cec-mm-card--mob .cec-mm-card-text{padding:4px 6px 4px 0}
.cec-mm-card--mob .cec-mm-card-title{font-size:20px}
.cec-mm-card--mob .cec-mm-card-line{display:none}
.cec-mob-actions{margin-top:22px;display:grid;gap:12px}
.cec-mob-actions .cec-hd-book{min-height:52px;font-size:16px}
.cec-mob-phone{display:flex;align-items:center;justify-content:center;min-height:44px;font:600 19px/1.2 var(--hd-sans);color:var(--hd-ink)}
.cec-menu-open,.cec-menu-open body{overflow:hidden}

@media(max-width:1023px){
  .cec-hd-nav,.cec-mm-panel{display:none!important}
  .cec-hd-toggle{display:flex;margin-left:0}
  /* the Book pill stays in the bar on phones and tablets (the booking link is never more than one tap away) */
  .cec-hd-bar>.cec-hd-book{margin-left:auto;min-height:44px;padding:8px 16px;font-size:14px}
}
@media(max-width:700px){
  .cec-hd-logo img{height:36px}
}
/* ===== HEADER 1.8 END ===== */
