*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:#122b25;background:#f8faf7;font:16px/1.6 Arial,sans-serif}a{color:inherit}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ce2b37;outline-offset:4px}.top{padding:7px 5%;background:#073e30;color:white;font-size:12px;letter-spacing:.05em;text-align:center}header{background:#fff;position:sticky;top:0;z-index:5;border-bottom:1px solid #dfe7e2}.nav{max-width:1280px;margin:auto;padding:12px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand img{width:330px;height:100px;object-fit:contain}.navlinks{display:flex;gap:24px;align-items:center}.navlinks a{text-decoration:none;font-size:14px;font-weight:700}.langs{display:flex;gap:5px}.langs a{padding:6px 10px;border:1px solid #d5dfd9;border-radius:30px}.langs a[aria-current]{background:#006b47;color:white}main{min-height:70vh}.hero{position:relative;min-height:570px;background:linear-gradient(90deg,rgba(4,33,28,.82),rgba(4,33,28,.12)),url('/assets/ski-day.webp') center/cover;color:white;padding:85px max(5%,calc((100vw - 1224px)/2)) 145px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:bold}.hero h1{font-size:clamp(42px,5.1vw,76px);line-height:1.07;letter-spacing:-.045em;max-width:900px;margin:24px 0}.hero p{max-width:570px;font-size:18px}.chips{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px}.chip{border:1px solid #ffffff66;padding:5px 14px;border-radius:22px;font-size:13px}.wrap{max-width:1280px;margin:auto;padding:0 28px}.search{position:relative;margin-top:-72px;background:white;border-radius:12px;box-shadow:0 15px 50px #113a2417;padding:25px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr .65fr;gap:14px;border-top:4px solid #009246}.search label{font-size:12px;font-weight:bold;display:block}.search input,.search select,.filters input,.filters select{width:100%;padding:13px 10px;border:1px solid #ccd7d0;border-radius:5px;background:white;color:#193b2d;min-height:48px}.search .wide{grid-column:span 2}.btn{border:0;display:inline-block;background:#007e50;color:white;border-radius:5px;padding:14px 22px;font-weight:bold;text-decoration:none;cursor:pointer}.btn:hover{background:#005e3b}.search .btn{align-self:end}.search small{grid-column:1/-1;color:#53695c}section{padding:74px 0}h2{font-size:clamp(28px,3vw,42px);line-height:1.18;letter-spacing:-.03em;margin:10px 0 18px}h3{font-size:22px;line-height:1.3;margin:10px 0}p{max-width:780px}.muted{color:#586b62}.filters{display:flex;gap:16px;margin:30px 0}.filters>*{flex:1}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.resort{background:white;border:1px solid #dbe4dd;border-radius:8px;padding:24px;text-decoration:none;position:relative;transition:transform .15s}.resort:hover{transform:translateY(-3px);border-color:#00834e}.resort small{color:#4f7160}.resort span{position:absolute;right:19px;bottom:19px;color:#009246}.resort h3{padding-right:15px;font-size:20px}.two{display:grid;grid-template-columns:1fr 1fr;gap:24px}.photo{background:white;border:1px solid #dde5df;border-radius:10px;overflow:hidden}.photo img{width:100%;height:270px;object-fit:cover}.photo div{padding:25px}.band{background:#eaf0e9}.tip{border-top:2px solid #009246;padding:22px 0}.tip b{color:#009246;font-size:13px}.dark{background:#073e30;color:white}.dark .tip{border-color:#8bad92}.dark a{color:white}.faq{max-width:850px}details{border-bottom:1px solid #cfdbd0;padding:20px 0}summary{cursor:pointer;font-weight:bold;font-size:18px}footer{padding:45px 28px;background:#062e24;color:#e4ece6;border-top:5px solid;border-image:linear-gradient(90deg,#009246 33%,white 33%,white 66%,#ce2b37 66%) 1}.footinner{max-width:1224px;margin:auto}.footlinks{display:flex;flex-wrap:wrap;gap:25px;margin-bottom:22px}footer small{color:#c2d1c6}.page{max-width:1000px;margin:0 auto;padding:55px 28px 85px}.page h1{font-size:clamp(34px,5vw,58px);line-height:1.12;letter-spacing:-.035em}.panel{background:#eaf0e9;border-radius:10px;padding:28px;margin:28px 0}.actionlinks{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}.skip{position:absolute;left:-1000px}.skip:focus{left:12px;background:white;z-index:10}#count{font-size:13px;color:#5b7064}[hidden]{display:none!important}.source{font-size:12px;color:#65776a}.credit{font-size:11px;color:#5e7164}.checklist li{margin:12px 0}@media(max-width:900px){.nav{padding:10px 18px}.brand img{width:230px;height:58px}.navlinks{gap:12px}.navlinks>a{display:none}.search{grid-template-columns:repeat(2,1fr)}.search .wide{grid-column:auto}.search .btn{grid-column:span 2}.grid{grid-template-columns:repeat(2,1fr)}.hero{padding-top:60px}.wrap{padding:0 20px}}@media(max-width:560px){.brand img{width:205px;height:56px}.nav{gap:6px;padding:8px 12px}.langs a{padding:5px 8px;font-size:12px}.hero{min-height:530px;padding:50px 22px 115px}.hero h1{font-size:43px}.hero p{font-size:16px}.search{padding:18px;gap:12px}.search .wide{grid-column:span 2}.grid,.two{grid-template-columns:1fr}.filters{flex-direction:column}section{padding:48px 0}.photo img{height:220px}.top{font-size:10px}.page{padding:35px 20px}.resort{padding:20px}.search input{min-width:0;width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.resort{transition:none}}
.filters{flex-wrap:wrap}.filters select{max-width:100%;min-width:0}.filters #country{flex:1 1 190px}.filters #region{flex:1 1 230px}#selection-note{font-size:14px;color:#456056;max-width:1000px}

/* Search menu matching the supplied mobile reference. */
.search{position:relative;max-width:680px;margin:-72px auto 0;padding:32px 36px 24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;background:#fff;border:1px solid #dce0e6;border-radius:7px;box-shadow:0 12px 38px #0b17251a;color:#101a29}
.search .search-field{min-width:0;padding:18px 0 20px;border-bottom:1px solid #d5d9df}
.search .full-field{grid-column:1/-1}
.search .date-field{grid-column:auto;padding-top:20px;padding-bottom:20px}
.search .end-field{padding-left:18px;position:relative}
.search .end-field:before{content:'';position:absolute;left:0;top:20px;bottom:20px;border-left:1px solid #d5d9df}
.search .start-field{padding-right:18px}
.search label{display:block;font-size:13px;line-height:1.4;font-weight:750;letter-spacing:1.15px;text-transform:uppercase;color:#5e6b7b;margin-bottom:9px}
.search select,.search input{width:100%;max-width:100%;min-width:0;min-height:43px;padding:6px 0;border:0;border-radius:0;background-color:#fff;color:#101a29;font:inherit;font-size:19px;box-shadow:none}
.search select{padding-right:22px;cursor:pointer}
.search input[type=date]{font-size:18px}
.search :is(input,select):focus-visible{outline:2px solid #ce0923;outline-offset:4px;border-radius:2px}
.search .people-field{border-bottom:0;padding-bottom:22px}
.search .btn{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:22px;width:100%;margin:9px 0 15px;min-height:88px;padding:18px 12px;background:linear-gradient(120deg,#fffafa,#fce7e7);border:2px solid #c70620;border-radius:11px;color:#c6001b;box-shadow:0 8px 0 #bd001b,0 18px 25px #bc001b20;font-size:27px;font-weight:750;line-height:1.2;cursor:pointer;transition:background .15s,transform .15s}
.search .btn:hover{background:#ffe1e3;transform:translateY(-1px)}
.search .btn:active{transform:translateY(3px);box-shadow:0 5px 0 #bd001b}
.search-arrow{display:inline-flex;flex:0 0 43px;width:43px;height:43px;align-items:center;justify-content:center;background:#c6001b;color:white;border-radius:50%;font-size:32px;line-height:1}
.search small{font-size:11px;line-height:1.5;color:#657080;margin-top:12px}
@media(max-width:560px){.search{padding:9px 20px 15px;margin-top:-42px;gap:0}.search .search-field{padding-top:19px;padding-bottom:17px}.search .start-field{padding-right:10px}.search .end-field{padding-left:10px}.search label{font-size:11px;letter-spacing:.9px}.search select{font-size:16px}.search input[type=date]{font-size:15px}.search .btn{font-size:22px;min-height:76px;gap:16px;margin-top:12px}.search-arrow{flex-basis:36px;width:36px;height:36px;font-size:27px}.filters #country,.filters #region{flex:initial}}
