:root{--ski-ink:#06172f;--ski-blue:#2d6bff;--ski-ice:#dff8f4;--ski-gold:#d8af73;--ski-coral:#b13455;--ski-line:#071b3830}
.ski-page{background:var(--cream);color:var(--ink)}
.ski-shell{width:min(1400px,92vw);margin-inline:auto}
.ski-hero{background:linear-gradient(125deg,#06172f 0%,#092850 60%,#0b3e70 100%);color:var(--cream);overflow:hidden}
.ski-hero-grid{min-height:0;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(430px,.97fr);gap:clamp(30px,4vw,64px);align-items:center;padding-block:clamp(30px,4vw,54px)}
.ski-hero-copy{position:relative;z-index:2}.ski-hero .crumb{margin:0 0 clamp(24px,3vw,38px)}
.ski-kicker{margin:0 0 18px;color:var(--lime);font-size:10px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.ski-hero h1,.ski-section h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.055em;text-wrap:balance}
.ski-hero h1{margin:0;font-size:clamp(38px,3vw,48px);line-height:.96;white-space:nowrap}.ski-hero h1 em,.ski-section h2 em{color:var(--ski-gold);font-weight:400}
.ski-deck{max-width:650px;margin:18px 0 0;color:#f2f0e8cf;font:clamp(16px,1.45vw,21px)/1.48 Georgia,"Times New Roman",serif}
.ski-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:22px}.ski-button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--lime);color:var(--ink);padding:0 20px;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.ski-text-link{font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:5px}.ski-button:focus-visible,.ski-text-link:focus-visible,.ski-jump a:focus-visible,.ski-plan-controls input:focus-visible+span,.ski-plan-fallback a:focus-visible,.ski-calc input:focus-visible+span,.ski-calc select:focus-visible,.ski-memberships summary:focus-visible,.ski-sources a:focus-visible{outline:3px solid var(--ski-blue);outline-offset:4px}
.ski-checked{margin:16px 0 0;color:#f2f0e89c;font-size:9px;letter-spacing:.07em;text-transform:uppercase}
.ski-hero .ski-checked.verified{color:#f2f0e8b8;background:#ffffff0d;border-color:#ffffff24}
.ski-hero-media{position:relative;margin:0;min-width:0;aspect-ratio:3/2;overflow:hidden;border:1px solid #f2f0e83b;background:#dce9ed}.ski-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,#06172fcc)}.ski-hero-media img{width:100%;height:100%;display:block;object-fit:cover}.ski-hero-media figcaption{position:absolute;z-index:1;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);color:var(--cream)}.ski-hero-media figcaption span{min-height:66px;padding:14px 16px;border-right:1px solid #ffffff42;display:flex;flex-direction:column;justify-content:flex-end;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ski-hero-media figcaption span:last-child{border-right:0}.ski-hero-media figcaption b{color:var(--lime);font:22px/1 Georgia,serif;letter-spacing:0;text-transform:none}
.ski-jump{position:sticky;top:82px;z-index:15;border-bottom:1px solid var(--ski-line);background:#fbfaf6f2;backdrop-filter:blur(14px)}.ski-jump .ski-shell{display:flex;gap:0;overflow-x:auto;scrollbar-width:none}.ski-jump a{min-height:48px;display:flex;align-items:center;flex:none;padding:0 20px;border-right:1px solid var(--ski-line);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.ski-jump a:hover{background:var(--lime)}
.ski-dashboard{padding:clamp(42px,5vw,68px) 0;background:var(--cream);scroll-margin-top:72px}.ski-dashboard-head{display:grid;grid-template-columns:minmax(170px,.34fr) minmax(0,1fr);gap:32px;align-items:start;margin-bottom:28px}.ski-dashboard-head .ski-index{margin-bottom:12px}.ski-dashboard-head h2{max-width:900px;margin:0;font:clamp(34px,4vw,58px)/1 Georgia,"Times New Roman",serif;letter-spacing:-.045em}.ski-dashboard-head>div:last-child>p{max-width:760px;margin:12px 0 0;color:#071b38b0;line-height:1.65}
.ski-planner-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);border:1px solid var(--ski-line);background:var(--paper)}.ski-plan-controls{display:none;padding:clamp(22px,3vw,34px)}[data-ski-planner].is-enhanced .ski-plan-controls{display:grid;gap:22px}.ski-plan-controls fieldset{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;border:0}.ski-plan-controls legend{grid-column:1/-1;margin-bottom:2px;font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.ski-plan-controls label{cursor:pointer}.ski-plan-controls input{position:absolute;opacity:0}.ski-plan-controls input+span{min-height:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ski-line);padding:8px 12px;background:#fff;font-size:11px;font-weight:800;text-align:center}.ski-plan-controls input:checked+span{border-color:var(--ski-ink);background:var(--ski-ink);color:var(--cream);box-shadow:inset 0 -3px var(--lime)}
.ski-plan-controls .ski-plan-mission{grid-template-columns:repeat(4,1fr)}
.ski-plan-result{display:none;min-height:100%;padding:clamp(26px,4vw,42px);background:linear-gradient(145deg,var(--ski-ink),#0c315d);color:var(--cream);align-content:start}[data-ski-planner].is-enhanced .ski-plan-result{display:grid}.ski-plan-announcement{display:grid;align-content:start}.ski-plan-label{color:var(--lime);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.ski-plan-announcement>strong{margin-top:22px;font:clamp(28px,3vw,44px)/1.05 Georgia,"Times New Roman",serif}.ski-plan-announcement>b{margin-top:9px;color:var(--ski-gold);font:clamp(22px,2.2vw,34px)/1.1 Georgia,"Times New Roman",serif}.ski-plan-announcement p{max-width:480px;margin:18px 0 24px;color:#f2f0e8bf;font-size:13px;line-height:1.65}.ski-plan-result .ski-button{width:max-content;margin-top:auto}
.ski-plan-fallback{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}[data-ski-planner].is-enhanced .ski-plan-fallback{display:none}.ski-plan-fallback a{min-height:160px;display:flex;flex-direction:column;padding:24px;border-right:1px solid var(--ski-line)}.ski-plan-fallback a:last-child{border-right:0}.ski-plan-fallback a:hover{background:var(--ski-ice)}.ski-plan-fallback span{color:var(--ski-coral);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.ski-plan-fallback strong{margin-top:28px;font:22px/1.15 Georgia,serif}.ski-plan-fallback small{margin-top:auto;color:#071b38a8}.ski-dashboard-rail{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0;border-left:1px solid var(--ski-line);list-style:none}.ski-dashboard-rail li{min-height:64px;padding:14px 18px;border-right:1px solid var(--ski-line);border-bottom:1px solid var(--ski-line);display:flex;align-items:center;gap:12px}.ski-dashboard-rail strong{color:var(--ski-coral);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.ski-dashboard-rail span{font-size:12px}
.ski-section{padding:clamp(48px,5vw,74px) 0}.ski-page .ski-dashboard,.ski-page .ski-section{scroll-margin-top:146px}.ski-section-ink{background:var(--ski-ink);color:var(--cream)}.ski-section-paper{background:var(--paper)}
.ski-section-ink .ski-index{color:#e8759a}
.ski-section-head{display:grid;grid-template-columns:58px minmax(0,1fr);gap:22px;align-items:start}.ski-section-head.compact{max-width:980px;margin-bottom:32px}.ski-index{margin:8px 0 0;color:var(--ski-coral);font-size:10px;font-weight:900;letter-spacing:.16em}.ski-section h2{margin:0;font-size:clamp(38px,4.4vw,68px);line-height:.96}.ski-section-head p:not(.ski-kicker):not(.ski-index){max-width:740px;color:#071b38b0;font-size:15px;line-height:1.65}.ski-intro{max-width:640px;color:#071b38b0;font-size:16px;line-height:1.65}
.ski-fact-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:clamp(34px,5vw,70px);align-items:center}.ski-fact-photo{position:relative;margin:0;aspect-ratio:16/9;overflow:hidden;border:1px solid #f2f0e833}.ski-fact-photo img{width:100%;height:100%;display:block;object-fit:cover}.ski-fact-photo figcaption{position:absolute;right:0;bottom:0;padding:10px 13px;background:#06172fd9;color:var(--cream);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.ski-stats{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));margin-top:30px;border-top:1px solid #f2f0e833;border-left:1px solid #f2f0e833;overflow-x:auto}.ski-stats article{min-height:124px;padding:18px;border-right:1px solid #f2f0e833;border-bottom:1px solid #f2f0e833;display:flex;flex-direction:column;justify-content:space-between}.ski-stats strong{color:var(--ski-gold);font:clamp(28px,2.6vw,42px)/1 Georgia,serif}.ski-stats span{max-width:190px;color:#f2f0e8bb;font-size:9px;line-height:1.45;text-transform:uppercase;letter-spacing:.07em}.ski-note{display:grid;grid-template-columns:140px minmax(0,1fr);gap:24px;max-width:980px;margin:24px 0 0}.ski-note strong{color:var(--lime);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.ski-note p{margin:0;color:#f2f0e8c8;line-height:1.65}
.ski-calc-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(480px,1.2fr);gap:clamp(48px,8vw,130px);align-items:start}.ski-calc{border:1px solid var(--ski-line);background:var(--paper);padding:clamp(24px,4vw,46px)}.ski-calc fieldset{border:0;margin:0 0 28px;padding:0}.ski-calc legend,.ski-select-label{display:block;margin:0 0 12px;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.ski-calc fieldset{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ski-calc legend{grid-column:1/-1}.ski-calc label:not(.ski-select-label){cursor:pointer}.ski-calc input{position:absolute;opacity:0}.ski-calc input+span{min-height:48px;border:1px solid var(--ski-line);display:flex;align-items:center;padding:0 16px;font-size:13px}.ski-calc input:checked+span{background:var(--ski-ink);color:var(--cream);border-color:var(--ski-ink)}.ski-calc select{width:100%;min-height:48px;border:1px solid var(--ski-line);border-radius:0;background:#fff;color:var(--ink);padding:0 14px;font-size:16px}.ski-result{margin-top:28px;background:var(--ski-ink);color:var(--cream);padding:24px;display:grid;grid-template-columns:1fr auto;gap:8px 20px;align-items:end}.ski-result>span{font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.ski-result strong{grid-row:1/3;grid-column:2;color:var(--lime);font:clamp(38px,4vw,60px)/1 Georgia,serif}.ski-result small{color:#f2f0e8aa}.ski-fine-print{font-size:11px;line-height:1.6;color:#071b389c}.ski-holiday-note{max-width:900px;margin:30px 0 0;border-top:1px solid var(--ski-line);border-bottom:1px solid var(--ski-line)}.ski-holiday-note summary{cursor:pointer;min-height:48px;display:flex;align-items:center;font-size:12px;font-weight:800}.ski-holiday-note p{max-width:780px;margin:0 0 20px;line-height:1.7}
.ski-ticket-grid{display:grid;grid-template-columns:repeat(5,minmax(185px,1fr));border-top:1px solid var(--ski-line);border-left:1px solid var(--ski-line);overflow-x:auto}.ski-ticket-grid article{min-height:176px;padding:20px;border-right:1px solid var(--ski-line);border-bottom:1px solid var(--ski-line);display:flex;flex-direction:column}.ski-ticket-grid span{color:var(--ski-coral);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.ski-ticket-grid strong{margin:28px 0 14px;font:clamp(24px,2.2vw,36px)/1 Georgia,serif}.ski-ticket-grid p{margin:auto 0 0;color:#071b38ad;font-size:11px;line-height:1.5}.ski-ticket-grid .featured{background:var(--lime)}
.ski-memberships{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ski-line);border-left:1px solid var(--ski-line)}.ski-memberships details{border-right:1px solid var(--ski-line);border-bottom:1px solid var(--ski-line)}.ski-memberships summary{cursor:pointer;list-style:none;min-height:98px;padding:20px;display:flex;justify-content:space-between;gap:20px;align-items:center}.ski-memberships summary::-webkit-details-marker{display:none}.ski-memberships summary span{display:grid;gap:5px}.ski-memberships summary b{font:28px Georgia,serif}.ski-memberships summary small{color:var(--ski-coral);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.ski-memberships summary strong{font:23px Georgia,serif}.ski-memberships ul{margin:0;padding:0 28px 24px 40px}.ski-memberships li{margin:0 0 9px;font-size:12px;line-height:1.5}.ski-memberships details[open]{background:var(--paper)}
.ski-visit-grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:clamp(50px,8vw,130px)}.ski-visit-list{border-top:1px solid #f2f0e83d}.ski-visit-list article{display:grid;grid-template-columns:170px minmax(0,1fr);gap:20px;padding:22px 0;border-bottom:1px solid #f2f0e83d}.ski-visit-list strong{color:var(--lime);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.ski-visit-list p{margin:0;color:#f2f0e8c4;line-height:1.65}.ski-visit-list a{text-decoration:underline;text-underline-offset:4px}
.ski-sources{padding:clamp(54px,7vw,90px) 0;background:var(--cream)}.ski-sources h2{margin:0 0 18px;font:38px Georgia,serif}.ski-sources>div>p{max-width:760px;color:#071b38ad;line-height:1.7}.ski-sources ul{columns:2;column-gap:40px;margin:34px 0;padding:0;list-style:none}.ski-sources li{break-inside:avoid;border-top:1px solid var(--ski-line);padding:13px 0}.ski-sources a{text-decoration:underline;text-underline-offset:4px}.ski-next{margin-top:42px;padding-top:24px;border-top:1px solid var(--ink);display:flex;justify-content:space-between;gap:24px;align-items:center}.ski-next p{margin:0;font:26px Georgia,serif}.ski-next a{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:1100px){.ski-hero-grid{grid-template-columns:minmax(0,1fr) minmax(380px,.86fr)}.ski-hero h1{font-size:clamp(38px,4.5vw,54px)}.ski-planner-grid{grid-template-columns:1fr}.ski-plan-result{min-height:300px}.ski-fact-intro{grid-template-columns:1fr .72fr}.ski-calc-layout,.ski-visit-grid{grid-template-columns:1fr}.ski-memberships{grid-template-columns:1fr}.ski-memberships summary{min-height:88px}}
@media(max-width:1179px){.ski-hero h1{white-space:normal}}
@media(max-width:850px){.ski-hero-grid{grid-template-columns:1fr;padding-block:28px 38px}.ski-hero h1{font-size:clamp(42px,8vw,66px);white-space:normal}.ski-hero-media{max-height:390px}.ski-dashboard-head{grid-template-columns:1fr;gap:8px}.ski-plan-controls fieldset{grid-template-columns:repeat(3,1fr)}.ski-dashboard-rail{grid-template-columns:repeat(2,1fr)}.ski-fact-intro{grid-template-columns:1fr}.ski-fact-photo{max-width:650px}.ski-ticket-grid{grid-template-columns:repeat(5,minmax(180px,1fr))}}
@media(max-width:700px){.ski-shell{width:min(90vw,620px)}.ski-hero .crumb{margin-bottom:24px}.ski-hero h1{font-size:11vw}.ski-deck{font-size:17px}.ski-hero-media{min-height:220px;aspect-ratio:4/3}.ski-hero-media figcaption span{min-height:58px;padding:10px}.ski-hero-media figcaption b{font-size:18px}.ski-dashboard,.ski-section{padding:46px 0}.ski-dashboard-head h2{font-size:10vw}.ski-plan-controls{padding:18px}.ski-plan-controls fieldset,.ski-plan-controls .ski-plan-mission{grid-template-columns:1fr}.ski-plan-result{min-height:0}.ski-plan-result .ski-button{width:100%}.ski-plan-fallback{grid-template-columns:1fr}.ski-plan-fallback a{min-height:118px;border-right:0;border-bottom:1px solid var(--ski-line)}.ski-plan-fallback a:last-child{border-bottom:0}.ski-plan-fallback strong{margin-top:16px}.ski-dashboard-rail{grid-template-columns:1fr 1fr}.ski-dashboard-rail li{display:block}.ski-dashboard-rail span{display:block;margin-top:4px}.ski-section-head{grid-template-columns:1fr;gap:10px}.ski-section h2{font-size:10.5vw}.ski-stats{grid-template-columns:repeat(6,minmax(145px,1fr));margin-top:24px}.ski-stats article{min-height:116px;padding:16px}.ski-stats strong{font-size:30px}.ski-note{grid-template-columns:1fr;gap:8px}.ski-calc-layout{gap:28px}.ski-calc{padding:20px}.ski-result{grid-template-columns:1fr}.ski-result strong{grid-row:auto;grid-column:auto}.ski-ticket-grid article{min-height:154px}.ski-ticket-grid strong{margin:24px 0 12px}.ski-visit-list article{grid-template-columns:1fr;gap:8px}.ski-sources ul{columns:1}.ski-next{display:block}.ski-next a{display:inline-block;margin-top:14px}}
@media(max-width:420px){.ski-calc fieldset{grid-template-columns:1fr}.ski-dashboard-rail{grid-template-columns:1fr}.ski-memberships summary{align-items:flex-start;flex-direction:column}.ski-memberships summary strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){.ski-page *{scroll-behavior:auto!important}}
@media(forced-colors:active){.ski-button,.ski-ticket-grid .featured{border:2px solid CanvasText}.ski-calc input:checked+span,.ski-plan-controls input:checked+span{outline:3px solid Highlight}}
@media print{.ski-page{background:#fff;color:#000}.ski-hero,.ski-section-ink{background:#fff;color:#000}.ski-hero-media,.ski-jump,.nav,.site-footer,.ski-hero-actions,.ski-plan-controls{display:none!important}.ski-hero-grid,.ski-planner-grid,.ski-calc-layout,.ski-visit-grid{display:block;min-height:0}.ski-plan-fallback{display:grid!important}.ski-dashboard,.ski-section{padding:24px 0}.ski-checked,.ski-deck,.ski-visit-list p{color:#222}.ski-memberships details{break-inside:avoid}.ski-memberships details:not([open])>*:not(summary){display:block}}
.ski-calc{display:none}[data-ski-calculator].is-enhanced .ski-calc{display:block}[data-ski-calculator].is-enhanced .ski-rate-fallback{display:none}.ski-rate-fallback{border:1px solid var(--ski-line);background:var(--paper);padding:clamp(20px,3vw,34px)}.ski-rate-fallback>p:first-child{display:flex;justify-content:space-between;gap:24px;margin:0 0 20px;font-size:12px}.ski-rate-fallback>p:first-child span{color:#071b38a0}.ski-table-wrap{max-width:100%;overflow-x:auto}.ski-rate-fallback table{width:100%;min-width:640px;border-collapse:collapse;font-size:12px}.ski-rate-fallback caption{text-align:left;padding:0 0 12px;font-weight:800}.ski-rate-fallback th,.ski-rate-fallback td{border:1px solid var(--ski-line);padding:11px;text-align:left}.ski-rate-fallback thead th{background:var(--ski-ink);color:var(--cream)}
@media(max-width:560px){.ski-jump{top:0}.ski-page .ski-dashboard,.ski-page .ski-section{scroll-margin-top:64px}}
@media(max-width:1000px){html:not(.nav-js) .ski-jump{top:0}html:not(.nav-js) .ski-page .ski-dashboard,html:not(.nav-js) .ski-page .ski-section{scroll-margin-top:64px}}
@media(max-width:700px){.ski-rate-fallback>p:first-child{display:block}.ski-rate-fallback>p:first-child span{display:block;margin-top:8px}}
