/* Guide layouts inherit Xionia's shared colors, typography and theme. */
body.xionia-editorial main.xe-guide{width:min(1180px,100%);max-width:1180px;margin:0 auto;padding:0 16px 32px;text-align:left;overflow-wrap:anywhere}
.xe-guide h1{font-size:clamp(1.65rem,3vw,2.25rem);line-height:1.25;margin:20px 0 16px;color:inherit}
.xe-guide h2{font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.35;color:inherit}
.xe-guide p{line-height:1.75}.xe-guide>p{max-width:85ch}
.xe-guide :is(article,.panel,.facts,.xe-forecast){background:var(--panel,#fff);color:var(--text,#122c40);border:1px solid var(--line,#cbd7df);border-radius:14px;padding:clamp(16px,2.4vw,28px);margin:22px 0;min-width:0}
.xe-guide .facts{background:var(--bg,#f2f6fa)}
.xe-guide .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,285px),1fr));gap:18px;margin:22px 0}
.xe-guide .grid>article{margin:0}.xe-guide .grid h2{margin-top:0}
.xe-guide nav{display:flex;flex-wrap:wrap;gap:9px 18px;align-items:center;line-height:1.6}
.xe-guide .xe-breadcrumb{margin:12px 0;color:var(--muted,#496476);font-size:14px}
.xe-guide .xe-tabs{margin:12px 0 24px;padding:14px 0;border-block:1px solid var(--line,#cbd7df)}
.xe-guide img{max-width:100%;height:auto;display:block;border-radius:12px}
.xe-guide figure{margin:20px 0}.xe-guide .x29-resort-photo>img{width:100%;height:clamp(190px,30vw,350px);object-fit:cover}
.xe-guide .grid img{width:100%;aspect-ratio:16/10;object-fit:cover;height:auto}
.xe-guide figcaption,.xe-guide .note{font-size:13px;line-height:1.6;color:var(--muted,#496476)}
.xe-guide figcaption p{margin:6px 0}.xe-guide li{margin:8px 0}.xe-guide a{text-underline-offset:3px}
.xe-guide :is(a,button,select):focus-visible{outline:3px solid var(--accent,#096783);outline-offset:3px}
.xe-guide .xe-forecast{padding:16px;margin:20px 0}.xe-guide .xe-forecast h2{margin:0 0 12px}
.xe-guide .xe-forecast .xionia-city-widget{margin:12px 0;max-width:100%;width:100%}
.xe-guide .xe-forecast select{max-width:100%;min-height:44px;margin:8px 0 12px}
.xe-guide .xe-forecast-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:12px 0}
.xe-guide .xe-forecast-actions button{min-height:40px;padding:7px 14px;border:1px solid var(--line);border-radius:8px;cursor:pointer}
.xe-guide [id]{scroll-margin-top:18px}
body.xionia-dark.xionia-editorial{--bg:#0b1723;--panel:#132433;--text:#edf4fa;--muted:#a6bdcc;--line:#2a4051;--accent:#71d4ed}
@media(max-width:600px){body.xionia-editorial main.xe-guide{padding-inline:12px}.xe-guide .grid{grid-template-columns:1fr}.xe-guide :is(article,.panel){padding:16px}.xe-guide .xe-forecast{padding:12px}.xe-guide .xe-tabs{font-size:14px}}

html body.xionia-editorial main.xe-guide nav:is(.xe-breadcrumb,.xe-tabs){flex-direction:row;justify-content:flex-start;text-align:left;gap:8px 16px}

/* r70.24.0: use the shared content width and keep paragraphs within it. */
html body.xionia-editorial main.xe-guide{box-sizing:border-box;width:min(var(--xionia-content-width,1240px),calc(100% - var(--xionia-gutter,20px)*2));max-width:var(--xionia-content-width,1240px)}
@media(min-width:768px){html body.xionia-editorial main.xe-guide>p,html body.xionia-editorial main.xe-guide :is(.panel,.facts,article,.xe-network-intro)>p{width:100%;max-width:none}}
:is(body.dark,[data-theme=dark]) .xe-guide{--bg:#0b1723;--panel:#132433;--text:#edf4fa;--muted:#a6bdcc;--line:#476074;--accent:#71d4ed;color:var(--text)}
.xe-guide #village-forecast-map{height:clamp(340px,55vh,540px);width:100%;border-radius:12px;background:#dbe6eb;isolation:isolate;z-index:0}
.xe-guide .xv-map-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:12px 0}
.xe-guide .xv-map-controls select,.xe-guide .xv-map-controls button{min-height:44px;max-width:100%;padding:8px;background:var(--panel,#fff);color:var(--text,#132433);border:1px solid var(--line,#738a99);border-radius:7px;font:inherit}
.xe-guide .xe-network-intro{margin:18px 0 24px}
.xe-guide .xe-network-intro h2{margin-bottom:8px}
.xe-guide .xv-map-note{font-size:13px}
.xe-guide #village-forecast-map .leaflet-popup-content{color:#173244}

.xe-guide #ski-guide-map{height:clamp(360px,58vh,580px);width:100%;border-radius:12px;background:#dbe6eb;isolation:isolate;z-index:0}.xv-region-label span{display:block;width:max-content;max-width:170px;padding:3px 7px;border:1px solid #a1b4c2;border-radius:5px;background:#ffffffed;color:#153249;font:600 12px/18px sans-serif;white-space:nowrap;box-shadow:0 1px 3px #0002}.xe-guide #ski-guide-regions{display:flex;flex-wrap:wrap;gap:6px}.xe-guide #ski-guide-regions button{font-size:13px}.xe-guide #ski-guide-map .leaflet-popup-content{color:#173244}

.xv-region-label span.xv-region-dot{width:14px;height:14px;padding:0;border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0007}
