/* Three-part navigation: menu, centred wordmark, contact and language. */
.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:0;position:sticky;top:0;transform:translateY(0);transition:transform .32s ease;will-change:transform}
.site-header.is-away{transform:translateY(-105%);pointer-events:none}
.site-header>.menu-toggle{grid-column:1;grid-row:1;justify-self:start}
.site-header>.brand{grid-column:2;grid-row:1;justify-self:center}
.header-actions{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:24px;min-width:0}
.header-actions .header-cta{margin:0;gap:25px;white-space:nowrap}
.menu-toggle{display:flex;flex-direction:column;gap:6px;justify-content:center;align-items:center;width:44px;height:44px;padding:8px}
.menu-toggle span{width:25px;height:1px;background:#dbc3a1;opacity:1;transition:transform .2s,opacity .2s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-7px) rotate(-45deg)}
.language-menu{position:relative;color:#e3d7c5;flex-shrink:0}
.language-menu>summary{display:flex;align-items:center;justify-content:center;gap:5px;min-width:44px;min-height:44px;font-size:11px;letter-spacing:.8px;user-select:none}
.language-menu>summary>svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:1.2}
.language-menu[open]>summary>svg{transform:rotate(180deg)}
.language-options{position:absolute;right:0;top:calc(100% + 12px);background:var(--espresso);border:1px solid #a78c644d;min-width:145px;box-shadow:0 8px 30px #0003;padding:7px}
.language-options>a{display:flex;align-items:center;min-height:44px;padding:8px 15px;font-size:12px;letter-spacing:.2px;white-space:nowrap}
.language-options>a:hover,.language-options>a:focus-visible{background:#ffffff0d}
.language-options>a[aria-current=page]{color:#e2bd85;background:#ffffff08}
.menu-backdrop{position:fixed;inset:96px 0 0;background:#15110d55;backdrop-filter:blur(3px);z-index:48}
.mobile-nav:not([hidden]){display:flex;flex-direction:column;position:fixed;top:96px;left:0;right:auto;bottom:auto;width:min(420px,100vw);max-height:calc(100svh - 96px);overflow-y:auto;padding:24px 38px 30px;background:var(--espresso);color:#eee4d4;z-index:49;border-right:1px solid #ba9d7638;border-bottom:1px solid #ba9d7638;box-shadow:8px 12px 30px #0002;gap:0}
.mobile-nav>a{font-family:var(--serif);font-size:32px;line-height:1.2;min-height:70px;padding:19px 0;border-bottom:1px solid #c6b0922a;display:flex;align-items:center;justify-content:space-between;gap:20px}
.mobile-nav p{font-size:9px;letter-spacing:1.3px;color:#bca586;margin-top:28px}
.destination-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.destination-card{min-width:0;height:590px}
.destination-content{left:8%;right:8%}
.destination-content h3{font-size:clamp(38px,4.5vw,64px)}
.destination-content .eyebrow.light{font-size:10px;letter-spacing:1.2px}
.destination-content>p{min-height:80px;max-width:320px}
.social-contacts{display:flex;align-items:center;gap:26px;margin-top:24px;flex-wrap:wrap}
.social-contacts>a{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:11px;color:#766449;border-bottom:1px solid #b8a386}
.social-contacts .icon-arrow{width:16px;height:16px;min-width:16px;flex-basis:16px}
.intro{padding-bottom:40px}
@media(max-width:1100px){.header-actions{gap:15px}.header-actions .header-cta{gap:15px}.destination-card{height:560px}.destination-content>p{font-size:13px;min-height:110px}.destination-content .eyebrow.light{font-size:9px}}
@media(max-width:820px){
  .site-header{height:80px;padding:0 24px;gap:0}
  .brand-wordmark{width:140px}
  .header-actions{gap:10px}
  .header-actions .header-cta{border:0;padding:0;font-size:11px;gap:8px;min-height:44px}
  .menu-backdrop{top:80px}
  .mobile-nav:not([hidden]){top:80px;max-height:calc(100svh - 80px)}
  .destination-grid{grid-template-columns:1fr}
  .destination-card{height:530px}
  .destination-content{left:var(--gutter);right:var(--gutter);bottom:35px}
  .destination-content h3{font-size:58px}
  .destination-content>p{font-size:14px;min-height:0;max-width:380px}
  .destination-content .eyebrow.light{font-size:11px;letter-spacing:1.3px}
}
@media(max-width:580px){
  .hero{height:auto;min-height:max(640px,calc(100svh - 80px));max-height:none}
  .site-header{padding:0 18px;gap:0}
  .site-header .brand-wordmark{width:110px;height:66px}
  .site-header .brand-name{font-size:25px;letter-spacing:3.5px;padding-left:3.5px}
  .site-header .brand-subtitle{font-size:8px;letter-spacing:2.5px;padding-left:2.5px}
  .site-header .brand-ornament{width:82px;gap:7px;margin-top:6px}
  .site-header .brand-ornament>svg{width:8px;height:8px}
  .header-actions{gap:5px}
  .header-actions .header-cta{font-size:10px;min-height:44px;padding:0;letter-spacing:0}
  .header-actions .header-cta>.icon-arrow{display:none}
  .language-menu>summary{font-size:10px;min-width:40px;gap:3px;letter-spacing:.4px}
  .language-menu>summary>svg{width:10px;height:10px}
  .language-options{top:calc(100% + 8px);min-width:140px}
  .mobile-nav:not([hidden]){width:100%;padding:22px 26px 28px}
  .mobile-nav>a{font-size:33px}
  .destination-card{height:510px}
  .destination-content h3{font-size:55px}
  .intro{padding-bottom:30px}
}
@media(max-width:359px){
  .site-header{padding:0 14px}
  .site-header .brand-wordmark{width:96px}
  .site-header .brand-name{font-size:23px;letter-spacing:2.8px;padding-left:2.8px}
  .site-header .brand-subtitle{font-size:7px;letter-spacing:2.4px;padding-left:2.4px}
  .header-actions{gap:2px}.header-actions .header-cta{font-size:9px}
  .language-menu>summary{min-width:36px;font-size:9px}
  .destination-content h3{font-size:46px}
}
