/* Yalos public collection, scoped to the existing approved homepage. */
.voyager-home .vj-map-section { --vj-map-top:calc(var(--header,84px) + var(--voyager-admin-height,0px)); padding:clamp(4rem,7vw,7rem) var(--gutter); background:var(--aegean-wash); border-block:1px solid rgba(39,99,159,.12); scroll-margin-top:calc(var(--vj-map-top) + 1rem); }
.voyager-home .vj-map-shell { max-width:90rem; margin-inline:auto; }
.voyager-home .vj-map-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(16rem,25rem); gap:2rem; align-items:end; margin-bottom:2rem; }
.voyager-home .vj-map-heading h2 { font-family:var(--serif); font-size:clamp(2.5rem,4.5vw,4.6rem); font-weight:400; line-height:1.03; margin-top:.8rem; letter-spacing:-.035em; text-wrap:balance; }
.voyager-home .vj-map-heading p { font-size:.87rem; line-height:1.8; color:var(--ink-soft); max-width:42ch; }
.voyager-home .vj-map-toolbar,.voyager-home .vj-map-footnote { display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap; }
.voyager-home .vj-map-toolbar { padding:1rem 1.25rem; background:var(--pearl); border:1px solid #ccd9e3; border-bottom:0; border-radius:1.1rem 1.1rem 0 0; font-size:.75rem; color:var(--brand-blue-deep); }
.voyager-home .vj-map-toolbar a,.voyager-home .vj-map-footnote a { font-weight:500; text-decoration:underline; text-underline-offset:4px; }
.voyager-home .vj-map-toolbar a { min-height:44px; display:inline-flex; align-items:center; }
.voyager-home .vj-map-toolbar [data-map-status] { min-width:0; overflow-wrap:anywhere; }
.voyager-home .vj-map-frame { position:relative; height:730px; isolation:isolate; border:1px solid #ccd9e3; background:#e8f0f6; overflow:hidden; border-radius:0 0 1.1rem 1.1rem; }
.voyager-home .vj-map-frame iframe { width:100%; height:100%; display:block; border:0; position:relative; z-index:1; background:transparent; }
.voyager-home .vj-map-placeholder { position:absolute; inset:0; display:grid; place-content:center; text-align:center; padding:2rem; color:var(--brand-blue-deep); background:radial-gradient(ellipse at 70% 30%,#faf9f6,#e5eef5); }
.voyager-home .vj-map-placeholder strong { font:400 clamp(2rem,4vw,3rem) var(--serif); }
.voyager-home .vj-map-placeholder span { font-size:.8rem; margin-top:.8rem; }
.voyager-home .vj-map-frame[data-loaded] .vj-map-placeholder { visibility:hidden; }
.voyager-home .vj-map-footnote { padding-top:1.15rem; font-size:.75rem; line-height:1.8; color:var(--ink-soft); }
.voyager-home .vj-map-footnote p { max-width:64ch; }
.voyager-home .vj-map-footnote button { background:var(--brand-blue-deep); color:white; border:0; padding:.75rem 1.1rem; border-radius:2rem; font-size:.75rem; min-height:44px; cursor:pointer; }
.voyager-home .vj-map-section :focus-visible { outline:2px solid var(--brand-blue-deep); outline-offset:5px; }
.voyager-home .vj-map-section a:hover { color:#123e68; }
.voyager-home .vj-map-section button:hover { filter:brightness(.92); }
.voyager-home .vj-map-frame[data-touch-gated]:not([data-touch-active]) iframe { pointer-events:none; }
.voyager-home .vj-map-touch-shield { position:absolute; inset:0; width:100%; height:100%; z-index:2; display:flex; align-items:flex-end; justify-content:center; padding:1.5rem; background:transparent; border:0; touch-action:pan-y; cursor:pointer; }
.voyager-home .vj-map-touch-shield span { display:block; padding:1rem 1.3rem; border:1px solid #b6a078; border-radius:2rem; background:#fbf9f4; color:#174f87; box-shadow:0 4px 20px #142a3e24; font-size:.8rem; font-weight:500; }
.voyager-home .vj-map-touch-shield[hidden] { display:none; }
.voyager-home .vj-map-section [data-map-release] { border:0; border-radius:2rem; background:var(--brand-blue-deep); color:white; padding:.65rem 1rem; min-height:44px; min-width:9rem; font-size:.75rem; font-weight:500; cursor:pointer; }
.voyager-home .vj-map-notice { margin:.8rem 0 0; font-size:.75rem; line-height:1.6; color:var(--brand-blue-deep); }
.voyager-home .vj-map-notice[hidden] { display:none; }
@media (pointer:coarse) {
  .voyager-home .vj-map-toolbar { position:sticky; top:var(--vj-map-top); z-index:3; }
  .voyager-home .vj-map-frame[data-touch-gated] { height:min(720px,calc(100svh - var(--vj-map-top) - var(--vj-map-toolbar-height,110px) - 12px)); min-height:442px; scroll-margin-top:calc(var(--vj-map-top) + var(--vj-map-toolbar-height,110px) + 8px); }
}
@media (max-width:820px) {
  .voyager-home .vj-map-heading { grid-template-columns:1fr; gap:1.15rem; }
  .voyager-home .vj-map-frame { height:720px; }
  .voyager-home .vj-map-toolbar { font-size:.7rem; padding:1rem; }
  .voyager-home .vj-map-footnote { align-items:flex-start; }
  .voyager-home .vj-map-heading p { max-width:52ch; }
}
@media (max-width:400px) { .voyager-home .vj-map-frame { height:690px; } .voyager-home .vj-map-toolbar { gap:.55rem; } }
/* Touch heights must win over the generic width rules, in both languages. */
@media (pointer:coarse) { .voyager-home .vj-map-frame[data-touch-gated] { height:min(720px,calc(100svh - var(--vj-map-top) - var(--vj-map-toolbar-height,110px) - 12px)); } }
