/* Header that mirrors her live Squarespace nav:
   black announcement strip · white fixed bar · social left · centered gold logo ·
   cart + teal BOOK IT/GIFT IT right · centered uppercase nav row below the logo. */

.site-header{position:fixed; top:0; left:0; right:0; z-index:120; background:#FFFBFE; box-shadow:0 1px 0 rgba(20,30,33,.08);}

/* announcement strip */
.annbar{background:#12161a; color:#fff; font-family:'Poppins',sans-serif; font-size:.82rem; line-height:1.4;
  text-align:center; padding:9px 46px; position:relative; letter-spacing:.01em;}
.annbar strong{font-weight:700;}
.annbar .x{position:absolute; right:16px; top:50%; transform:translateY(-50%); background:none; border:0;
  color:rgba(255,255,255,.65); font-size:1.2rem; line-height:1; cursor:pointer; padding:4px;}
.annbar .x:hover{color:#fff;}
.annbar.hide{display:none;}

/* main bar: social | logo | actions */
.hmain{display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px;
  padding:12px clamp(16px,4vw,48px); transition:padding .3s var(--ease);}
.site-header.solid .hmain{padding-top:8px; padding-bottom:8px;}
.hleft{display:flex; align-items:center; gap:18px;}
.hsocial{display:flex; align-items:center; gap:16px;}
.hsocial a{color:#1c2427; display:inline-flex; transition:color .2s;}
.hsocial a:hover{color:var(--teal-dk);}
.hsocial svg{width:19px; height:19px; display:block;}
.hlogo{justify-self:center; display:flex;}
.hlogo img{height:114px; width:auto; transition:height .3s var(--ease);}
.site-header.solid .hlogo img{height:94px;}
.hright{justify-self:end; display:flex; align-items:center; gap:18px;}
.hcart{color:#1c2427; display:inline-flex; align-items:center; gap:5px; font-size:.92rem; font-weight:500;}
.hcart:hover{color:var(--teal-dk);}
.hcart svg{width:20px; height:20px;}
.book-btn{background:var(--teal); color:#fff !important; padding:14px 26px; border-radius:5px; font-family:'Poppins',sans-serif;
  font-weight:600; font-size:.82rem; letter-spacing:.08em; text-transform:uppercase; text-decoration:none;
  transition:background .25s,transform .25s var(--ease); white-space:nowrap;}
.book-btn:hover{background:var(--teal-dk); color:#fff !important; transform:translateY(-1px);}

/* nav row (centered, below logo) */
.hnavrow{display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:30px; padding:2px 20px 14px;}
.site-header.solid .hnavrow{padding-bottom:10px;}
.hnavrow > a,
.hnavrow .drop-t{font-family:'Poppins',sans-serif; font-size:.86rem; font-weight:500; letter-spacing:.14em; text-transform:uppercase;
  color:#1a2124; background:none; border:0; cursor:pointer; padding:6px 0; display:inline-flex; align-items:center; gap:6px;}
.hnavrow > a:hover,.hnavrow .has-drop:hover .drop-t{color:var(--teal-dk);}
.drop-t::after{content:"⌄"; font-size:.95em; opacity:.55; transform:translateY(-1px);}

.has-drop{position:relative;}
.drop{position:absolute; top:100%; left:50%; transform:translateX(-50%) translateY(10px);
  background:#fff; border:1px solid rgba(20,30,33,.09); border-radius:11px; padding:8px; min-width:250px;
  opacity:0; visibility:hidden; transition:opacity .2s var(--ease),transform .2s var(--ease); box-shadow:0 22px 54px rgba(20,30,33,.16); z-index:6;}
.has-drop:hover .drop,.has-drop:focus-within .drop{opacity:1; visibility:visible; transform:translateX(-50%) translateY(5px);}
.drop a{display:block; padding:11px 15px; border-radius:8px; color:#2a3236; font-size:.92rem; letter-spacing:.02em;
  white-space:nowrap; text-decoration:none; font-weight:400; text-transform:none;}
.drop a:hover{background:rgba(58,168,193,.10); color:var(--teal-dk);}

/* hamburger + drawer (mobile) */
.hburger{display:none; background:none; border:0; cursor:pointer; padding:8px; z-index:130;}
.hburger span{display:block; width:26px; height:2px; background:#1a2124; margin:5px 0; transition:.3s;}
.h-scrim{position:fixed; inset:0; background:rgba(10,19,22,.55); opacity:0; visibility:hidden; transition:.3s; z-index:118;}

@media(max-width:900px){
  .hmain{grid-template-columns:auto 1fr auto; padding:10px clamp(14px,4vw,24px);}
  .hsocial{display:none;}
  .hburger{display:block;}
  .hleft{gap:0;}
  .hlogo img{height:74px;}
  .hcart{display:none;}
  .book-btn{padding:11px 16px; font-size:.72rem; letter-spacing:.06em;}
  .hnavrow{position:fixed; top:0; right:0; height:100dvh; width:min(86vw,340px); z-index:125;
    flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:2px; overflow-y:auto;
    background:var(--night); padding:84px 26px 40px; transform:translateX(110%); transition:transform .35s var(--ease); flex-wrap:nowrap;}
  .hnavrow.open{transform:none;}
  .h-scrim.open{opacity:1; visibility:visible;}
  .hnavrow > a,.hnavrow .has-drop{width:100%; border-bottom:1px solid rgba(255,255,255,.08);}
  .hnavrow > a{color:#f2f6f6; padding:15px 0; letter-spacing:.1em;}
  .hnavrow > a:hover{color:var(--gold-lt);}
  .hnavrow .drop-t{color:#f2f6f6; width:100%; justify-content:space-between; padding:15px 0; letter-spacing:.1em;}
  .drop{position:static; transform:none; opacity:1; visibility:visible; background:transparent; border:0; box-shadow:none;
    padding:0 0 10px 12px; min-width:0; display:none;}
  .has-drop.exp .drop{display:block;}
  .drop a{color:#cdd8da;}
  .drop a:hover{color:var(--gold-lt); background:rgba(255,255,255,.05);}
}

/* background-video section (Why November / dark-sky) */
.bgvid-section{position:relative; overflow:hidden;}
.bgvid-section > .wrap{position:relative; z-index:2;}
.bgvid{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0;}
.bgvid-scrim{position:absolute; inset:0; z-index:1; background:linear-gradient(160deg,rgba(8,20,26,.40),rgba(8,14,18,.58));}
.bgvid-section .wrap h2,.bgvid-section .wrap p{text-shadow:0 2px 16px rgba(6,12,16,.6);}
.bgvid-section .mn-graphic{filter:drop-shadow(0 3px 14px rgba(6,12,16,.55));}

/* "Everything but the flight" over a brighter photo — glassier cards for legibility */
.whatsincl .card{background:rgba(10,18,22,.52); backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px); border-color:rgba(255,255,255,.16);}
.whatsincl h2,.whatsincl .eyebrow,.whatsincl > .wrap > p{text-shadow:0 2px 16px rgba(6,12,16,.55);}

/* hide the sticky book bar once the footer is in view (so it never covers it) */
.sticky.at-footer{transform:translateY(130%) !important;}

/* minimal footer, matching her site (light, centered) */
.hf{background:#FFFBFE; color:#1a2124; text-align:center; padding:58px 20px 48px; border-top:1px solid rgba(20,30,33,.08);}
.hf-logo{height:96px; width:auto; margin:0 auto 20px; display:block;}
.hf-social{display:flex; justify-content:center; gap:22px; margin-bottom:18px;}
.hf-social a{color:#1c2427; display:inline-flex; transition:color .2s;}
.hf-social a:hover{color:var(--teal-dk);}
.hf-social svg{width:22px; height:22px; display:block;}
.hf-contact{font-family:'Poppins',sans-serif; font-size:1.02rem; letter-spacing:.03em; color:#1a2124; margin:0 0 6px;}
.hf-contact a{color:inherit; text-decoration:none;}
.hf-mini{font-size:.82rem; color:#5f6f73; max-width:70ch; margin:16px auto 0; line-height:1.65;}

/* "Why this one" — real text cards (rebuilt from her Instagram graphics) */
.whycards{display:flex; flex-wrap:wrap; justify-content:center; gap:24px; margin-top:34px;}
.whycard{flex:1 1 320px; max-width:390px; background:var(--paper); border:1px solid var(--line); border-radius:14px; overflow:hidden; box-shadow:var(--shadow-sm); display:flex; flex-direction:column; transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.whycard:hover{transform:translateY(-4px); box-shadow:var(--shadow-md);}
.whycard img{width:100%; aspect-ratio:16/10; object-fit:cover; display:block;}
.whycard .wc-body{padding:26px 24px;}
.whycard h3{font-family:'Epilogue',serif; font-weight:600; font-size:1.32rem; line-height:1.2; color:var(--ink); margin:0 0 .5em;}
.whycard p{font-family:'Poppins',sans-serif; margin:0; color:var(--muted); font-size:1.02rem; line-height:1.62;}
@media(max-width:560px){ .whycard h3{font-size:1.25rem;} .whycard .wc-body{padding:22px 20px;} }
