/* Altitude's menu (2026-11-11). It replaces the WordPress site's white sheet of centred links:
   a black sheet, a picture of the page under the pointer on the left, the pages as a numbered
   list on the right, and the way to register at the foot. The markup is written into every page
   by tools/altitude_menu.py; assets/js/menu.js opens and closes it. This file loads last, and
   its selectors outrank the old sheet's rules in site-2614bd2a.css and its phone overrides. */

.fullscreen-menu{display:grid;grid-template-columns:minmax(0,46fr) minmax(0,54fr);align-items:stretch;background:#000;color:#fff;height:100vh;height:100dvh;transition:opacity .45s ease,visibility .45s ease}

/* The picture pane */
.fullscreen-menu .menu-stage{position:relative;overflow:hidden;background:#0b0b0b}
.fullscreen-menu .menu-shot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity .7s ease,transform 7s cubic-bezier(.2,.6,.2,1)}
.fullscreen-menu .menu-shot.on{opacity:1;transform:scale(1)}
.fullscreen-menu .menu-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.85) 100%),linear-gradient(0deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,0) 34%),linear-gradient(180deg,rgba(0,0,0,.4) 0%,rgba(0,0,0,0) 26%);pointer-events:none}
.fullscreen-menu .menu-tagline{position:absolute;z-index:1;left:50px;top:4%;width:min(46%,250px);height:auto}
.fullscreen-menu .menu-band{position:absolute;z-index:1;left:50px;bottom:50px;width:min(62%,400px);height:auto}

/* The list pane */
.fullscreen-menu .menu-panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:28px;min-height:0;padding:4vh 5% 50px clamp(28px,5vw,80px);overflow-y:auto;scrollbar-width:none;transform:translateX(36px);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.fullscreen-menu.active .menu-panel{transform:none}

.fullscreen-menu .menu-top{display:flex;align-items:center;gap:18px;min-height:44px;padding-right:70px}
.fullscreen-menu .menu-peak{flex-shrink:0;display:block;width:44px;height:44px}
.fullscreen-menu .menu-peak img{display:block;width:100%;height:100%}
.fullscreen-menu .menu-status{margin:0;padding:0;font-family:var(--second-font);font-size:12px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.fullscreen-menu .menu-status span{color:var(--main-color)}

.fullscreen-menu .fullscreen-menu-close{top:4vh;right:5%;width:44px;height:44px;padding:0;border:0;background:none;cursor:pointer;z-index:2}
.fullscreen-menu .fullscreen-menu-close span{left:2px;background:#fff;transition:background .25s ease}
.fullscreen-menu .fullscreen-menu-close:hover span,.fullscreen-menu .fullscreen-menu-close:focus-visible span{background:var(--main-color)}

.fullscreen-menu .fullscreen-menu-content{display:block;width:auto;height:auto}
.fullscreen-menu .fullscreen-menu-content nav{display:block;border-bottom:1px solid #2b2b2b}
.fullscreen-menu .fullscreen-menu-content nav a{display:grid;grid-template-columns:3.4rem minmax(0,auto) 1fr;align-items:baseline;column-gap:0;padding:.28em 0;border-top:1px solid #2b2b2b;color:#fff;font-family:var(--fifth-font);font-size:clamp(22px,4.5vh,50px);line-height:1.16;text-transform:uppercase;text-decoration:none;opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .6s cubic-bezier(.2,.7,.2,1),color .3s ease}
.fullscreen-menu.active .fullscreen-menu-content nav a{opacity:1;transform:none;transition-delay:calc(var(--i)*45ms + 140ms),calc(var(--i)*45ms + 140ms),0s}
.fullscreen-menu .fullscreen-menu-content nav i{font-family:var(--second-font);font-style:normal;font-size:13px;letter-spacing:.14em;color:var(--main-color)}
.fullscreen-menu .fullscreen-menu-content nav b{font-weight:inherit;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.fullscreen-menu .fullscreen-menu-content nav em{font-style:normal;color:var(--main-color);padding-left:.32em;opacity:0;transform:translateX(-12px);transition:opacity .3s ease,transform .35s cubic-bezier(.2,.7,.2,1)}
/* The pointer lights one line and lets the others fall back. */
.fullscreen-menu .fullscreen-menu-content nav:hover a,.fullscreen-menu .fullscreen-menu-content nav:focus-within a{color:#6d6d6d}
.fullscreen-menu .fullscreen-menu-content nav a:hover,.fullscreen-menu .fullscreen-menu-content nav a:focus-visible{color:#fff;outline:0}
.fullscreen-menu .fullscreen-menu-content nav a:hover b,.fullscreen-menu .fullscreen-menu-content nav a:focus-visible b{transform:translateX(14px)}
.fullscreen-menu .fullscreen-menu-content nav a:hover em,.fullscreen-menu .fullscreen-menu-content nav a:focus-visible em{opacity:1;transform:translateX(14px)}
.fullscreen-menu .fullscreen-menu-content nav a[aria-current=page] b{color:var(--main-color)}
.fullscreen-menu .fullscreen-menu-content nav a[aria-current=page] em{opacity:1;transform:none}
.fullscreen-menu .fullscreen-menu-content nav a[aria-current=page]:hover em{transform:translateX(14px)}

.fullscreen-menu .menu-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:24px 40px;flex-wrap:wrap}
.fullscreen-menu .menu-register{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 44px;background:var(--main-color);color:#fff;font-family:var(--second-font);font-size:16px;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;transition:background .25s ease,color .25s ease}
.fullscreen-menu .menu-register:hover,.fullscreen-menu .menu-register:focus-visible{background:#fff;color:#000;outline:0}
.fullscreen-menu .menu-contact{margin:0;padding:0;display:flex;flex-direction:column;gap:6px;text-align:right;font-family:var(--second-font);font-size:12px;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;color:#8c8c8c}
.fullscreen-menu .menu-contact a{color:#fff;font-size:16px;letter-spacing:.06em;text-decoration:none}
.fullscreen-menu .menu-contact a:hover{color:var(--main-color)}
.fullscreen-menu .menu-foot,.fullscreen-menu .menu-top{opacity:0;transition:opacity .6s ease}
.fullscreen-menu.active .menu-foot,.fullscreen-menu.active .menu-top{opacity:1;transition-delay:.45s}

.menu-bars:focus-visible{outline:2px solid var(--main-color);outline-offset:8px}

/* A short window: tighten the list so the foot stays in view. */
@media (max-height:640px){
  .fullscreen-menu .fullscreen-menu-content nav a{font-size:clamp(20px,5.6vh,30px);padding:.22em 0}
  .fullscreen-menu .menu-panel{gap:16px;padding-bottom:24px}
}
@media (max-width:1023px){
  .fullscreen-menu{grid-template-columns:minmax(0,38fr) minmax(0,62fr)}
  .fullscreen-menu .menu-tagline,.fullscreen-menu .menu-band{left:28px}
  .fullscreen-menu .fullscreen-menu-content nav a{font-size:clamp(24px,4.2vh,40px)}
}
/* A phone: no picture pane; the season band closes the sheet instead. */
@media (max-width:767px){
  .fullscreen-menu{grid-template-columns:minmax(0,1fr)}
  .fullscreen-menu .menu-stage{display:none}
  .fullscreen-menu .menu-panel{padding:20px 20px 0;gap:22px;transform:translateY(24px)}
  .fullscreen-menu .menu-top{padding-right:56px}
  .fullscreen-menu .menu-status{font-size:10px;letter-spacing:.12em}
  .fullscreen-menu .fullscreen-menu-close{top:20px;right:20px}
  .fullscreen-menu .fullscreen-menu-content nav a{grid-template-columns:2.6rem minmax(0,auto) 1fr;font-size:clamp(22px,6.6vw,30px);padding:.42em 0}
  .fullscreen-menu .fullscreen-menu-content nav i{font-size:11px}
  .fullscreen-menu .fullscreen-menu-content nav:hover a,.fullscreen-menu .fullscreen-menu-content nav:focus-within a{color:#fff}
  .fullscreen-menu .menu-foot{flex-direction:column;align-items:stretch;gap:18px;padding-bottom:0}
  .fullscreen-menu .menu-register{width:100%}
  .fullscreen-menu .menu-contact{text-align:left}
  .fullscreen-menu .menu-panel:after{content:"";flex-shrink:0;display:block;margin:6px -20px 0;aspect-ratio:1735/435;background:url(/assets/images/home/slide-for-common.png) center/cover no-repeat}
}
@media (prefers-reduced-motion:reduce){
  .fullscreen-menu,.fullscreen-menu *{transition-duration:.01s!important;transition-delay:0s!important}
  .fullscreen-menu .menu-shot,.fullscreen-menu .menu-panel,.fullscreen-menu .fullscreen-menu-content nav a{transform:none}
}
