.graph-crumb{max-width:1440px;margin:0 auto;padding:24px 5vw;flex-wrap:wrap}.graph-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.graph-card{display:block;overflow:hidden;border:1px solid #b9c4b9;background:#f4f1e8;color:#203c34;text-decoration:none}.graph-card img{width:100%;height:240px;object-fit:cover}.graph-card-body{padding:24px}.graph-card h3{font-size:24px;line-height:1.4}.graph-card p{line-height:1.85}.graph-intro h1{font-family:Georgia,serif;font-size:clamp(42px,6vw,84px);line-height:1.15;max-width:1000px}.graph-intro .intro-copy{max-width:800px;line-height:1.9;font-size:20px}.graph-hero{margin:40px 0 0}.graph-hero img{width:100%;height:min(60vh,700px);object-fit:cover}.graph-hero figcaption{font-size:12px;line-height:1.7;padding:12px 0}.graph-sources{font-size:14px;overflow-wrap:anywhere}.graph-section .section-title{margin-bottom:32px}.unavailable{opacity:.65;cursor:default}.affiliate-disclosure{font-size:14px;line-height:1.8}.atlas-logo{min-width:130px}.graph-card:focus-visible{outline:3px solid #a54e2b;outline-offset:4px}@media(max-width:900px){.graph-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.graph-grid{grid-template-columns:1fr}.graph-card img{height:230px}.graph-intro .intro-copy{font-size:17px}.graph-crumb{font-size:11px}}
.graph-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:24px;background:#e0e7df;color:#203c34}.graph-facts dt{font-size:13px;line-height:1.7}.graph-facts dd{margin:8px 0 0;font-size:24px;line-height:1.4}.language-hint{font-size:.78em;opacity:.8}
.graph-image-context{display:block;padding:10px 24px 0;font-size:12px;line-height:1.8;color:#375043}
.venue-gallery{display:grid;gap:28px;grid-template-columns:repeat(2,minmax(0,1fr))}.venue-gallery .venue-photo:first-child{grid-column:1/-1}.venue-gallery .venue-photo{margin:0;min-width:0}.venue-photo img{display:block;width:100%;height:auto;max-height:650px;object-fit:contain;background:#e6e8e1}.venue-photo figcaption{padding:16px 0;font-size:13px;line-height:1.8;color:#203c34}.venue-photo figcaption p{margin:0 0 8px}.venue-photo summary{cursor:pointer}.venue-photo a{color:inherit;text-decoration:underline;text-underline-offset:3px}.venue-photo-pending{display:flex;flex-direction:column;justify-content:center;gap:14px;padding:40px;background:#e1e7df;color:#203c34;border:1px solid #c7d0c6;min-height:240px}.venue-photo-pending p{font-size:17px;line-height:1.8;margin:0}.venue-photo-pending a{color:inherit;text-decoration:underline;text-underline-offset:4px;line-height:1.8}.venue-photo-compact{min-height:200px;padding:24px}@media(max-width:600px){.venue-gallery{grid-template-columns:1fr}.venue-photo-pending{min-height:210px;padding:24px}}

/* Small source photographs retain their detail instead of stretching across the page. */
.venue-photo-small img{max-width:360px;margin-inline:auto}.venue-photo-small{padding:30px;background:#e6e8e1}


.guide-photo{padding-top:0}.guide-photo figure{margin:0}.guide-photo img{display:block;width:100%;height:clamp(260px,42vw,560px);object-fit:cover}.guide-photo figcaption{padding:18px 0;color:#203c34;font-size:13px;line-height:1.9}.guide-photo summary{cursor:pointer}.guide-photo a{color:inherit;text-decoration:underline}


/* Keep ski photographs above the section background and copy above the overlay. */
.snow-story .story-hero-image{z-index:0}.snow-story .story-hero:after{z-index:1;pointer-events:none}.snow-story .story-hero-top,.snow-story .story-hero-title,.snow-story .story-hero-bottom{z-index:2}


.snow-story .story-hero-image{background-size:cover;background-position:center}


.snow-story .story-hero:after{background:linear-gradient(180deg,rgba(6,27,40,.68) 0%,rgba(6,27,40,.08) 32%,rgba(6,27,40,.68) 55%,rgba(6,27,40,.92) 100%)}.snow-story .story-hero-title{text-shadow:0 2px 10px rgba(6,27,40,.5)}


/* A single published country fills the atlas row without empty card columns. */
.country-grid.country-grid-single{grid-template-columns:minmax(0,1fr)}
.country-grid-single .country-tile{min-height:280px;display:flex;flex-direction:column;justify-content:space-between;padding:32px;isolation:isolate}
.country-grid-single .country-art{position:absolute;inset:0 0 0 45%;height:100%;margin:0;z-index:-1}
.country-grid-single .country-art svg{width:340px;height:340px;top:-30px}
.country-grid-single .country-tile>div:not(.country-art){max-width:55%}
@media(max-width:600px){.country-grid-single .country-tile{padding:24px}.country-grid-single .country-art{left:30%;opacity:.55}.country-grid-single .country-tile>div:not(.country-art){max-width:85%}}

.priority-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.priority-grid article{min-width:0;border-bottom:1px solid #c7ccc0;padding-bottom:24px}.priority-photo{display:block;overflow:hidden;background:#d5ddd3}.priority-photo img{display:block;width:100%;height:260px;object-fit:cover;transition:transform .5s ease}.priority-photo:hover img{transform:scale(1.035)}.priority-grid h3{font-size:30px;font-weight:400;line-height:1.5;margin:12px 0;color:#243d33}.priority-grid .eyebrow{margin-top:22px;color:#58664f}.priority-grid p{line-height:1.9;color:#3e5147}.priority-grid article>div{display:flex;flex-wrap:wrap;gap:16px;margin-top:20px}.priority-grid article>div a,.priority-grid article>div a:visited{color:#263f35;background:transparent;font-size:13px;text-underline-offset:6px}.priority-grid article>div a:hover,.priority-grid article>div a:focus-visible{color:#743d25;background:#e9e5d8}.priority-winter{border-top:1px solid #c7ccc0;padding-top:55px}.edition-venue-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.edition-venue-gallery img{height:350px;object-fit:cover}.edition-note,.edition-caution{overflow-wrap:anywhere}
@media(max-width:800px){.priority-grid{grid-template-columns:1fr}.priority-photo img{height:280px}.edition-venue-gallery{grid-template-columns:1fr}.edition-venue-gallery img{height:300px}}
@media(prefers-reduced-motion:reduce){.priority-photo img{transition:none}.priority-photo:hover img{transform:none}}

/* Locale menu: native <details>, keyboard accessible without JavaScript. */
.locale-menu{position:relative}.locale-menu summary{list-style:none;display:flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border:1px solid #9aa79c;color:#203c34;background:#f4f1e8;cursor:pointer;white-space:nowrap;font-size:13px}.locale-menu summary::-webkit-details-marker{display:none}.locale-menu summary::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}.locale-menu[open] summary{background:#203c34;color:#f4f1e8}.locale-menu summary:hover{background:#e0e7df;color:#203c34}.locale-menu summary:focus-visible{outline:3px solid #a54e2b;outline-offset:3px}
.locale-menu ul{position:absolute;right:0;top:calc(100% + 6px);z-index:40;min-width:200px;margin:0;padding:6px 0;list-style:none;background:#f4f1e8;border:1px solid #9aa79c;box-shadow:0 10px 30px #203c341f}.locale-menu li{margin:0}.locale-menu .lang{border-radius:0;min-width:0;display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;height:auto;padding:8px 16px;color:#203c34;background:transparent;border:0;text-decoration:none;font-size:14px;line-height:1.5}.locale-menu a.lang:visited{color:#203c34}.locale-menu a.lang:hover{background:#203c34;color:#f4f1e8}.locale-menu a.lang:focus-visible{outline:3px solid #a54e2b;outline-offset:-3px;background:#e0e7df;color:#203c34}.locale-menu .lang.unavailable{opacity:1;color:#4f5b53;cursor:default}.locale-menu .lang small{font-size:11px;color:#4f5b53}
.section-wrap.translation-notice{padding:0 0 24px}.translation-notice p{margin:0;padding:12px 16px;border-left:3px solid #a54e2b;background:#ece6d6;color:#2a2f2c;font-size:14px;line-height:1.8}
/* Script-appropriate fonts; Japanese webfont glyphs are not used for Chinese or Korean text. */
html:lang(zh-Hant){--serif:'Noto Serif TC','Songti TC','PMingLiU',Georgia,serif;--sans:'DM Sans','PingFang TC','Microsoft JhengHei','Noto Sans TC','Noto Sans CJK TC',sans-serif}
html:lang(zh-Hans){--serif:'Noto Serif SC','Songti SC','SimSun',Georgia,serif;--sans:'DM Sans','PingFang SC','Microsoft YaHei','Noto Sans SC','Noto Sans CJK SC',sans-serif}
html:lang(ko){--serif:'Noto Serif KR','AppleMyungjo','Batang',Georgia,serif;--sans:'DM Sans','Apple SD Gothic Neo','Malgun Gothic','Noto Sans KR','Noto Sans CJK KR',sans-serif}
html:lang(th){--serif:'Noto Serif Thai','Thonburi','Leelawadee UI',Georgia,serif;--sans:'DM Sans','Noto Sans Thai','Leelawadee UI','Thonburi',sans-serif}
html:lang(th) body{line-height:1.9}html:lang(th) h1,html:lang(th) h2,html:lang(th) h3{line-height:1.6;letter-spacing:0}
html:lang(ko) h1,html:lang(ko) h2,html:lang(zh-Hant) h1,html:lang(zh-Hans) h1{word-break:keep-all;overflow-wrap:anywhere}
/* Seasonal plans remain separate from live snow and lift reports. */
.ski-plan-heading .ski-plan-season{display:block;font-family:var(--sans);font-size:15px;letter-spacing:.04em;margin-bottom:6px;color:#4f6257}
.section-wrap.ski-planning{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(0,1.7fr);gap:clamp(24px,4vw,64px);padding-top:48px;padding-bottom:48px;color:#253932;background:#f4f1e8;border-bottom:1px solid #c9cbbf}
.ski-planning .eyebrow{color:#4f6257}.ski-plan-heading h2{font-family:var(--serif);font-size:clamp(25px,2.5vw,38px);line-height:1.45;margin:12px 0 18px;overflow-wrap:anywhere}.ski-plan-heading p,.ski-plan-content p{font-size:15px;line-height:1.9;margin:0 0 18px;color:#354a3f}
.ski-plan-table-wrap{max-width:100%;overflow-x:auto}.ski-planning table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;background:#f4f1e8;color:#253932}.ski-planning caption{text-align:left;font-size:14px;color:#354a3f;padding-bottom:14px}.ski-planning th,.ski-planning td{padding:15px 12px;vertical-align:top;border-bottom:1px solid #c9cbbf;line-height:1.7}.ski-planning thead th{font-size:12px;font-weight:600;color:#4f6257}.ski-planning tbody th{font-weight:600;min-width:120px}.ski-planning td small,.ski-plan-notice small{display:block;font-size:12px;color:#4f6257;margin-top:6px}.ski-plan-dates{display:flex;flex-direction:column;gap:3px}.ski-plan-dates time{white-space:nowrap}.ski-plan-dates time+time:before{content:'– ';}.ski-plan-status{display:block;font-size:12px;color:#4f6257;margin-top:6px}
.ski-plan-content .ski-plan-caution,.ski-plan-content .ski-plan-footnote{font-size:13px;margin-top:16px;color:#4f6257}.ski-plan-empty{padding:20px;border:1px solid #c9cbbf}.ski-plan-notice{padding:20px 24px;margin-bottom:24px;background:#ede6d6;border-left:3px solid #805323;color:#253932}.ski-plan-notice strong{display:block;margin-bottom:8px}.ski-plan-notice p{margin-bottom:12px}
.ski-planning a,.ski-planning a:visited{color:#253932;text-decoration:underline;text-underline-offset:4px;background:transparent}.ski-planning a:hover{color:#51371f;background:#ede6d6}.ski-planning a:focus-visible{outline:2px solid #253932;outline-offset:4px}.ski-plan-resources{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.ski-plan-resources a,.ski-plan-resources a:visited{display:inline-flex;align-items:center;gap:16px;min-height:44px;padding:10px 15px;border:1px solid #87958a;font-size:14px;text-decoration:none;background:#f4f1e8;color:#253932}.ski-plan-resources a:hover{background:#253932;color:#f4f1e8}
@media(max-width:850px){.section-wrap.ski-planning{grid-template-columns:1fr;gap:20px;padding-top:32px;padding-bottom:32px}.ski-planning th,.ski-planning td{padding:12px 8px}.ski-planning table{font-size:13px}.ski-planning tbody th{min-width:95px}.ski-plan-notice{padding:18px}.ski-plan-resources a{font-size:13px}}
@media(max-width:520px){.ski-planning thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.ski-planning tbody{display:block}.ski-planning tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;border-bottom:1px solid #c9cbbf;padding:16px 0}.ski-planning tbody th{grid-column:1/-1;min-width:0;font-size:14px;padding:0 0 10px;border:0}.ski-planning tbody td{padding:0;border:0}.ski-planning td small{max-width:150px}}
.facility-prefectures{display:flex;flex-wrap:wrap;gap:10px;padding-top:24px;padding-bottom:24px;background:#f4f1e8;color:#253932}
.facility-prefectures a,.facility-prefectures a:visited{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:10px 16px;border:1px solid #87958a;background:#f4f1e8;color:#253932;text-decoration:none;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.facility-prefectures a span{color:inherit;font-variant-numeric:tabular-nums}.facility-prefectures a:hover{background:#253932;color:#f4f1e8}.facility-prefectures a:focus-visible{outline:2px solid #253932;outline-offset:4px}.facility-prefectures a:active{background:#ede6d6;color:#253932}
