/* Quiet dropdowns and fading compact-menu dividers. */
.site-header,.site-header.scrolled,.route-top,.collection-top,.lightbox-toolbar{border-bottom:0;box-shadow:none}
.desktop-nav>a,.desktop-nav .nav-parent{font-family:var(--nav)}
@media(min-width:1024px){
 .nav-group{position:relative;display:flex;align-items:center}
 .desktop-nav .nav-parent{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:12px 0;font-size:14px;font-weight:400;line-height:1.4;letter-spacing:.2em;white-space:nowrap;color:rgba(242,242,239,.76);transition:color 280ms}
 .desktop-nav>a{font-weight:400;letter-spacing:.2em}
 html[lang="en"] .desktop-nav .nav-parent,html[lang="en"] .desktop-nav>a{font-size:13px;letter-spacing:.12em}
 .desktop-nav .nav-parent:after{content:"";position:absolute;left:0;bottom:7px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 320ms}
 .nav-group.is-open>.nav-parent{color:var(--text)}
 .nav-group.is-open>.nav-parent:after{transform:scaleX(1)}
 .nav-submenu{position:absolute;top:100%;left:50%;z-index:3;min-width:0;width:max-content;max-width:280px;padding:12px 16px;background:rgba(0,0,0,.7);border-radius:12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-7px);clip-path:inset(0 0 100% 0 round 12px);transition:opacity 340ms ease,transform 480ms cubic-bezier(.22,.61,.36,1),clip-path 480ms cubic-bezier(.22,.61,.36,1),visibility 480ms}
 .nav-group.is-open>.nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0);clip-path:inset(0 round 12px);transition-duration:460ms,560ms,560ms,0ms}
 .nav-submenu a{display:block;padding:10px 0;font-family:var(--nav);font-size:14px;line-height:1.6;letter-spacing:.015em;white-space:normal;color:#aaa;transition:color 240ms}
 html[lang="en"] .nav-submenu a{font-size:13px}
 .nav-submenu a:hover,.nav-submenu a:focus-visible{color:#fff}
}
.mobile-menu a,.mobile-menu a:hover,.mobile-menu a:focus-visible,.mobile-menu .mobile-section-toggle{border:0;background:linear-gradient(90deg,rgba(242,242,239,.42),rgba(242,242,239,.12) 65%,transparent) left bottom/100% 1px no-repeat;font-family:var(--nav)}
.mobile-nav-group{width:min(360px,100%);flex-shrink:0}
.mobile-menu .mobile-section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;text-align:left;font-size:25px;font-weight:500;line-height:1.65;letter-spacing:.015em;color:var(--text)}
html[lang="en"] .mobile-menu .mobile-section-toggle{font-size:23px;letter-spacing:-.015em}
.submenu-chevron{width:7px;height:7px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-right:5px;opacity:.6;transition:transform 300ms}
.mobile-section-toggle[aria-expanded="true"] .submenu-chevron{transform:rotate(225deg)}
.mobile-menu>a,.mobile-menu .mobile-section-toggle{min-height:60px;line-height:1.4;padding:12px 0}
.mobile-menu .mobile-submenu{padding:5px 0 10px 14px}
.mobile-menu .mobile-submenu a,html[lang="en"] .mobile-menu .mobile-submenu a{font-size:14px;line-height:1.8;min-height:0;padding:10px 0;letter-spacing:.035em;color:#b7b7b4}
.mobile-menu .mobile-submenu a:hover,.mobile-menu .mobile-submenu a:focus-visible{color:var(--text)}
.nav-submenu a.nav-departure,.mobile-menu .mobile-submenu a.nav-departure{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 8px;white-space:normal}
.nav-departure>span{min-width:0}
.nav-departure>.nav-departure-duration{font-size:10px;font-weight:400;line-height:1.5;letter-spacing:0;white-space:nowrap;opacity:.72}
.mobile-menu .nav-departure>.nav-departure-duration{font-size:11px}
@media(max-width:800px){.mobile-nav-group{width:min(320px,100%)}}
@media(max-width:560px){.mobile-nav-group{width:100%}}
@media(prefers-reduced-motion:reduce){.nav-submenu,.desktop-nav .nav-parent,.desktop-nav .nav-parent:after,.nav-submenu a,.submenu-chevron{transition:none}}

/* Child pages share the home's language setting and control. */
.route-header-actions{display:flex;align-items:center;gap:24px;flex:none}
@media(max-width:600px){
 .route-header-actions{gap:10px}
 .route-header-actions .close-button>[data-i18n]{display:none}
 .route-header-actions .close-button{width:36px;min-width:36px;justify-content:center;gap:0}
}

/* One two-line menu control, shared by the home and destination headers. */
.menu-toggle>span{display:block;position:absolute;left:8px;top:16px;width:28px;height:1px;transform:none}
.menu-toggle>span:nth-child(2){display:block;top:26px}
.menu-toggle[aria-expanded="true"]>span:first-child{top:21px;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"]>span:nth-child(2){top:21px;transform:rotate(-45deg)}
.route-header-actions .route-menu-toggle{width:44px;height:44px;flex:none}
@media(min-width:1024px){.route-header-actions .route-menu-toggle{display:none}}
@media(max-width:1023px){.route-header-actions .route-menu-toggle{display:block}}
.route-dialog>.mobile-menu,.collection-dialog>.mobile-menu{z-index:55}
.route-menu-open>.route-top,.route-menu-open>.collection-top,
#routeExpeditionsDialog.route-menu-open>.route-top,#routeExpeditionDialog.route-menu-open>.route-top{z-index:60}

/* Stable mobile header: no resizing border or backdrop-filter seam during rubber-band scroll. */
html{background-color:var(--ink)}
@media(max-width:1023px){
 .site-header,.site-header.scrolled{height:calc(var(--brand-bar-height) + env(safe-area-inset-top,0px));top:0;border:0;box-shadow:none;outline:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;transition:none;isolation:isolate}
 .site-header:before{content:"";position:absolute;inset:0 0 -24px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.88),rgba(0,0,0,.62) 62%,transparent);opacity:0;transition:opacity 220ms ease}
 .site-header.scrolled:before{opacity:1}
}
@media(prefers-reduced-motion:reduce){.site-header:before{transition:none}}

.guide-nav-heading{display:block;margin:15px 0 3px;font:500 10px/1.6 var(--nav);letter-spacing:.12em;color:#b7a882}.nav-submenu .guide-nav-heading~a{padding:6px 0}.mobile-submenu .guide-nav-heading{font-size:12px;margin-top:20px;color:#c4b493}.mobile-menu .mobile-submenu a{min-height:44px}

/* Keep the pointer corridor live while moving from a parent to its submenu. */
@media(min-width:1024px){.nav-group::before{content:"";position:absolute;top:100%;left:0;right:0;height:12px}.nav-submenu{transition-duration:160ms,160ms,160ms,0ms}.nav-group.is-open>.nav-submenu{transition-duration:160ms,160ms,160ms,0ms}}

/* A transformed full-page dialog anchors fixed menus to its scrolled content.
   Fade without a transform so the menu stays attached to the viewport. */
.route-dialog[open],.collection-dialog[open]{animation:none;transform:none}
@media(prefers-reduced-motion:no-preference){.route-dialog[open],.collection-dialog[open]{animation:route-enter 180ms ease-out}}
@keyframes route-enter{from{opacity:0}to{opacity:1}}
@media(max-width:1023px){
 .route-menu-open{overflow:hidden!important}
 .route-menu-open>.mobile-menu{position:fixed;inset:0;max-height:100dvh;overscroll-behavior:contain}
}


/* Explore Iceland: condensed two-column topic directory, restrained like Tours. */
@media(min-width:1024px){
 .desktop-nav .nav-submenu.explore-nav-menu{
  width:350px;max-width:min(350px,calc(100vw - 32px));padding:13px;
  background:rgba(12,13,15,.98);border:1px solid #2b2d30;border-radius:10px;
  box-shadow:0 18px 52px #0009;overflow:visible;
 }
 .desktop-nav .nav-submenu.explore-nav-menu .explore-nav-grid{gap:1px 5px}
 .desktop-nav .nav-submenu.explore-nav-menu .explore-nav-link{
  padding:8px 7px;min-height:42px;font-size:13px;line-height:1.35;
  letter-spacing:0;white-space:nowrap;
 }
 html[lang=en] .desktop-nav .nav-submenu.explore-nav-menu .explore-nav-link{font-size:12.5px}
}
.explore-nav-menu .explore-nav-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}
.explore-nav-menu a.explore-nav-link{
 display:flex;align-items:center;gap:10px;min-width:0;
 color:#bdbfbd;background:none;text-decoration:none;
 transition:color 180ms ease;
}
.explore-nav-menu .explore-nav-link:hover,.explore-nav-menu .explore-nav-link:focus-visible{color:#f2f2ef}
.explore-nav-icon{display:block;width:17px;height:17px;flex:0 0 17px;color:currentColor;opacity:.72}
.explore-nav-menu .explore-nav-link:hover .explore-nav-icon,.explore-nav-menu .explore-nav-link:focus-visible .explore-nav-icon{opacity:1}
.mobile-menu .mobile-submenu.explore-nav-menu{padding:8px 0 12px 10px}
.mobile-menu .mobile-submenu.explore-nav-menu .explore-nav-grid{gap:2px 10px}
.mobile-menu .mobile-submenu.explore-nav-menu a.explore-nav-link,
html[lang=en] .mobile-menu .mobile-submenu.explore-nav-menu a.explore-nav-link{
 display:flex;align-items:center;gap:9px;min-height:44px;
 padding:8px 1px;font:400 13.5px/1.45 var(--nav);
 letter-spacing:0;white-space:nowrap;background:none;border:0;
}
.mobile-menu .mobile-submenu.explore-nav-menu .explore-nav-icon{width:16px;height:16px;flex-basis:16px}
@media(max-width:360px){
 .mobile-menu .mobile-submenu.explore-nav-menu .explore-nav-grid{gap:1px 6px}
 .mobile-menu .mobile-submenu.explore-nav-menu a.explore-nav-link,
 html[lang=en] .mobile-menu .mobile-submenu.explore-nav-menu a.explore-nav-link{font-size:12px;gap:6px}
}
@media(prefers-reduced-motion:reduce){.explore-nav-menu a.explore-nav-link{transition:none}}


/* Desktop navigation pointer-fidelity fix.
   The hit area and non-clipped panel remain stable as the cursor enters the dropdown. */
@media(min-width:1024px){
 .desktop-nav .nav-parent{min-height:48px;padding-block:13px}
 .desktop-nav .nav-group::before{
  top:100%;left:50%;right:auto;width:min(350px,calc(100vw - 32px));
  height:20px;transform:translateX(-50%);pointer-events:none;z-index:2
 }
 .desktop-nav .nav-group.is-open::before{pointer-events:auto}
 .desktop-nav .nav-group>.nav-submenu{
  clip-path:none;transform:translate(-50%,0);
  transition:opacity 130ms ease,visibility 130ms
 }
 .desktop-nav .nav-group.is-open>.nav-submenu{
  clip-path:none;transform:translate(-50%,0);
  transition:opacity 130ms ease,visibility 0ms
 }
 .desktop-nav .nav-submenu>a{min-height:42px;display:flex;align-items:center}
}
@media(prefers-reduced-motion:reduce){
 .desktop-nav .nav-group>.nav-submenu,
 .desktop-nav .nav-group.is-open>.nav-submenu{transition:none}
}

/* Polar Shop reuses the exact Tours accordion. Only correct the stacking bug:
   no competing disclosure symbol, typography, or button geometry. */
@media(max-width:1023px){
 .mobile-menu .shop-nav-group{width:min(360px,100%);min-width:0;max-width:100%}
 .mobile-menu .shop-nav-group>.mobile-submenu.shop-nav-menu{display:block;box-sizing:border-box;width:100%;padding:5px 0 10px 14px}
 .mobile-menu .shop-nav-group>.mobile-submenu.shop-nav-menu[hidden]{display:none!important}
 .mobile-menu .shop-nav-group>.mobile-submenu.shop-nav-menu>a{display:block;box-sizing:border-box;width:100%;min-height:44px;white-space:normal}
}
@media(max-width:800px){.mobile-menu .shop-nav-group{width:min(320px,100%)}}
@media(max-width:560px){.mobile-menu .shop-nav-group{width:100%}}

/* Shared navigation geometry must not inherit page-level link/button typography. */
@media(max-width:1023px){
 html body .mobile-menu{display:flex;flex-direction:column;align-items:stretch;padding-inline:clamp(22px,4vw,48px);padding-top:calc(108px + env(safe-area-inset-top,0px));-webkit-text-size-adjust:100%;text-size-adjust:100%}
 html body .mobile-menu>.mobile-nav-group{box-sizing:border-box;width:100%;max-width:none;min-width:0;flex:none}
 html body .mobile-menu>a,html body .mobile-menu>.mobile-nav-group>.mobile-section-toggle{
  box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;
  width:100%;max-width:none;min-width:0;min-height:60px;margin:0;padding:14px 0;
  font:400 20px/1.4 var(--font-interface);letter-spacing:.035em;text-align:left;
  color:var(--text);white-space:normal;transform:none;
 }
 html[lang=en] body .mobile-menu>a,html[lang=en] body .mobile-menu>.mobile-nav-group>.mobile-section-toggle{font-size:18px;letter-spacing:.04em}
 html body .mobile-menu .mobile-nav-group>.mobile-submenu:not(.explore-nav-menu){display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box;width:100%;max-width:none;padding:4px 0 12px 14px;gap:0}
 html body .mobile-menu .mobile-nav-group>.mobile-submenu[hidden]{display:none!important}
 html body .mobile-menu .mobile-submenu:not(.explore-nav-menu)>a{
  display:flex;box-sizing:border-box;align-items:center;justify-content:flex-start;
  width:100%;max-width:none;min-height:44px;margin:0;padding:10px 0;
  font:400 14px/1.6 var(--font-interface);letter-spacing:.015em;
  white-space:normal;background:none;border:0;transform:none;
 }
}
@media(min-width:1024px){
 html body .desktop-nav>a,html body .desktop-nav .nav-parent{font-family:var(--font-interface);font-size:14px;font-weight:400;line-height:1.4;letter-spacing:.2em}
 html[lang=en] body .desktop-nav>a,html[lang=en] body .desktop-nav .nav-parent{font-size:13px;letter-spacing:.12em}
}

/* Keep the header geometry identical across dialog and standalone page shells. */
@media(min-width:1024px){
 :root{--header-gutter:clamp(56px,6vw,112px);--brand-bar-height:104px}
 html body .site-header,html body .site-header.scrolled,html body .route-top,html body .collection-top{
  box-sizing:border-box;height:104px;min-height:104px;padding-block:0;
  padding-inline:max(var(--header-gutter),env(safe-area-inset-left,0px));
  gap:24px;transition:none;
 }
 html body .desktop-nav{gap:clamp(24px,2.2vw,34px);margin-left:auto;margin-right:32px}
 html body .header-actions,html body .route-header-actions{gap:0;flex-shrink:0}
}
@media(max-width:1023px){
 :root{--header-gutter:22px;--brand-bar-height:72px}
 html body .site-header,html body .site-header.scrolled,html body .route-top,html body .collection-top{
  box-sizing:border-box;height:calc(72px + env(safe-area-inset-top,0px));min-height:72px;
  padding:env(safe-area-inset-top,0px) 22px 0;gap:8px;transition:none;
 }
 html body .header-actions,html body .route-header-actions{gap:8px;flex-shrink:0}
 html body .site-header .wordmark.name-wordmark>.name-en{font-size:17px;letter-spacing:.09em}
 html body[data-guide-standalone].menu-open .site-header{z-index:80}
 html body[data-guide-standalone] .mobile-menu{
  inset:0;max-height:100dvh;padding-top:calc(108px + env(safe-area-inset-top,0px));
  padding-bottom:calc(28px + env(safe-area-inset-bottom,0px));
 }
}
html body .language-toggle,html body .language-switch .language-toggle{
 box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;
 width:66px;min-width:66px;height:34px;min-height:34px;margin:0;padding:0 9px;
 font:400 10px/1.4 var(--font-interface);letter-spacing:.015em;white-space:nowrap;
}
@media(max-width:1023px){html body .language-toggle,html body .language-switch .language-toggle{height:44px;min-height:44px}}

/* Reserve scroll space before an accordion grows; disclosure never scales labels. */
@media(max-width:1023px){
 html body .mobile-menu{overflow-y:scroll;overflow-x:hidden;scrollbar-gutter:stable;scroll-behavior:auto;overflow-anchor:none}
 html body .mobile-menu>a,html body .mobile-menu>.mobile-nav-group{flex-shrink:0}
 html body .mobile-menu .mobile-section-toggle,html body .mobile-menu .mobile-submenu,html body .mobile-menu .mobile-submenu a{animation:none;transition:none;transform:none}
}
