
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:#11100d;color:#f1efe9;font-family:Arial,Helvetica,sans-serif}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit}
.hero{position:relative;width:100%;height:100svh;min-height:560px;overflow:hidden;background:#11100d}
.hero-media,.hero-media img{display:block;width:100%;height:100%}
.hero-media img{object-fit:cover;object-position:center}
.routes{position:absolute;left:0;right:0;bottom:max(5.5vh,42px);display:grid;grid-template-columns:1fr 1fr;align-items:end;padding:0 clamp(42px,8vw,150px)}
.route{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:rgba(255,255,255,.90);padding:14px 0}
.route-atlas{justify-self:start;text-align:left}
.route-gallery{justify-self:end;text-align:right}
.route-title{font-size:clamp(16px,1.25vw,22px);font-weight:400;letter-spacing:.30em;line-height:1}
.route-note{font-size:clamp(9px,.62vw,12px);font-weight:300;letter-spacing:.04em;color:rgba(255,255,255,.68)}
.route:focus-visible{outline:1px solid rgba(255,255,255,.75);outline-offset:8px}
.identity{background:#f2f1eb;color:#282824;min-height:48vh;padding:clamp(76px,9vw,132px) clamp(28px,8vw,150px) 34px;display:flex;flex-direction:column;justify-content:space-between}
.identity-inner{width:min(660px,100%);margin:0 auto}
.identity h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(23px,1.85vw,32px);font-weight:300;letter-spacing:-.025em;margin:0 0 30px;color:#2e2d29}
.identity p{font-family:Georgia,"Times New Roman",serif;font-size:clamp(16px,1vw,18px);font-weight:400;line-height:1.72;margin:0;color:#47463f}
.identity .principle{margin-top:38px;font-family:Arial,Helvetica,sans-serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#595850}
.site-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-top:86px;font-size:11px;letter-spacing:.03em;color:#6a6961}
.footer-links{display:flex;gap:22px;flex-wrap:wrap}
.site-footer a{text-decoration:none;border-bottom:1px solid transparent}
.site-footer a:hover,.site-footer a:focus-visible{border-bottom-color:currentColor}
.legal{background:#f2f1eb;color:#2d2c28;min-height:100svh;padding:72px max(28px,8vw)}
.legal-inner{width:min(760px,100%);margin:0 auto}
.legal h1{font-size:32px;font-weight:300;margin:0 0 46px}
.legal h2{font-size:16px;font-weight:600;margin:34px 0 10px}
.legal p,.legal li{font-size:15px;line-height:1.7;color:#45443f}
.legal a{color:inherit}
.legal-nav{margin-top:54px;display:flex;gap:22px;font-size:12px}
@media(max-width:700px){
  .hero{height:100svh;min-height:650px}
  .hero-media img{object-position:center center}
  .routes{bottom:max(5.1vh,34px);padding:0 28px;grid-template-columns:1fr 1fr;column-gap:18px}
  .route{width:100%;gap:7px;padding:12px 0;text-align:center;align-items:center}
  .route-atlas,.route-gallery{justify-self:stretch;text-align:center}
  .route-title{font-size:17px;letter-spacing:.18em}
  .route-note{font-size:9.5px;line-height:1.35;letter-spacing:0;white-space:nowrap}
  .identity{min-height:60vh;padding:68px 30px 28px}
  .identity h1{font-size:24px;margin-bottom:30px}
  .identity p{font-size:16px;line-height:1.72}
  .identity .principle{margin-top:36px;font-size:11px;letter-spacing:.13em}
  .site-footer{margin-top:76px;align-items:flex-start;flex-direction:column;gap:18px}
  .footer-links{gap:18px}
}

/* v03 — quiet legal disclosure */
.legal-menu{position:relative}
.legal-menu summary{list-style:none;cursor:pointer;user-select:none;white-space:nowrap}
.legal-menu summary::-webkit-details-marker{display:none}
.legal-menu-links{position:absolute;left:0;bottom:calc(100% + 12px);display:flex;flex-direction:column;gap:9px;min-width:110px;padding:12px 14px;background:rgba(242,241,235,.97);border:1px solid rgba(40,40,36,.12);box-shadow:0 8px 24px rgba(0,0,0,.06);z-index:5}
.legal-menu-links a{white-space:nowrap}
@media(max-width:700px){
  .footer-links{align-items:flex-start}
  .legal-menu-links{left:0;bottom:calc(100% + 10px)}
}

/* v04 — Info & Legal is intentionally visually neutral */
.legal-menu summary{list-style:none}
.legal-menu summary::-webkit-details-marker{display:none}
.legal-menu summary::marker{content:""}
