/* Shared theme navigation. One menu row between the logo and booking action. */
.header .desktop-nav [aria-current="page"],.header .mobile-menu [aria-current="page"]{color:var(--yellow)}
.service-nav{position:relative}
.service-nav>summary{list-style:none;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:8px;min-height:44px}
.service-nav>summary::-webkit-details-marker{display:none}
.service-nav>summary::after{content:'⌄';font-size:16px;transition:transform .15s}
.service-nav[open]>summary::after{transform:rotate(180deg)}
.service-nav[open]>summary,.service-nav>summary:hover{color:var(--yellow)}
.service-nav-panel{position:absolute;top:100%;left:-18px;width:310px;background:var(--forest);border:1px solid #ffffff40;padding:12px;box-shadow:0 16px 40px #0003;display:grid;gap:2px;z-index:15;border-radius:3px}
.service-nav-panel a{padding:10px;display:block;font-size:16px;line-height:1.5;overflow-wrap:anywhere}
.service-nav-panel a:hover{background:#ffffff10}
.more-nav .service-nav-panel{width:240px}
.service-nav:not([open])>.service-nav-panel{display:none}
a.mini-service{text-align:left}

@media(min-width:851px){
  .header{display:grid;grid-template-columns:230px minmax(0,1fr) auto;gap:30px;padding-block:20px;min-height:0}
  .header>.logo{grid-column:1;grid-row:1;width:230px}
  .header>.btn{display:inline-flex;grid-column:3;grid-row:1;justify-self:end;color:var(--ink)}
  .header>.desktop-nav{grid-column:2;grid-row:1;display:flex;justify-content:center;font-size:17px;padding:0;margin:0;min-width:0}
  .desktop-nav .navigation-row{display:flex;justify-content:center;align-items:center;gap:0 18px;flex-wrap:wrap;max-width:100%}
  .desktop-nav .navigation-row>a,.desktop-nav .service-nav>summary{padding:8px 0;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
  .desktop-nav .navigation-row>a,.desktop-nav .service-nav{max-width:100%}
  .header>.mobile-menu,.header>.menu-toggle{display:none}
}

@media(min-width:851px) and (max-width:1100px){
  .header{grid-template-columns:145px minmax(0,1fr) 160px;gap:12px}
  .header>.logo{width:145px}
  .header>.desktop-nav{font-size:15px}
  .desktop-nav .navigation-row{gap:10px}
  .header>.btn{width:160px;font-size:15px;gap:8px;padding:10px 12px}
}

@media(max-width:850px){
  .mobile-menu .navigation-row{display:contents}
  .header>.mobile-menu{top:100%;padding:12px 20px 20px;gap:0;max-height:min(70dvh,var(--mobile-menu-height,70dvh));overflow-y:auto;overscroll-behavior:contain}
  .mobile-menu .navigation-row>a,.mobile-menu .service-nav>summary{min-height:48px;padding:12px 0;font-size:16px;line-height:1.5}
  .mobile-menu .service-nav>summary{justify-content:space-between}
  .mobile-menu .service-nav{border-top:1px solid #ffffff28;border-bottom:1px solid #ffffff28}
  .mobile-menu .service-nav-panel{position:static;width:auto;padding:0 0 10px 12px;border:0;border-left:2px solid #ffffff28;border-radius:0;box-shadow:none;background:transparent}
  .mobile-menu .service-nav-panel a{font-size:15px;min-height:44px}
  .header .mobile-menu>.btn{align-self:stretch;min-height:48px;margin-top:16px}
}
