@import url("/web/site.css?orig=1");
/* =====================================================================
   PREMIUM WEBSITE LAYER (nov 2026) — calmer, tighter, editorial.
   The website is a reading & browsing experience, not an app:
   smaller type, lighter weights, sentence-case headings, more air,
   a centred max-width, slimmer controls. Brand colours/font unchanged.
   ===================================================================== */
:root{--g:10px;--max:1520px;--ink:#14181d;--muted:#5b6470;--line:#e7e9ec;--mist:#fff}
body{font-size:16px;line-height:1.6;color:var(--ink);letter-spacing:.005em}
.blocks{max-width:var(--max);margin:0 auto}
.k{font-size:11.5px;font-weight:600;letter-spacing:.18em;margin-bottom:12px;opacity:.9}
.h{font-weight:700;text-transform:none;letter-spacing:-.02em;line-height:1.05}
.h1{font-size:clamp(36px,4.2vw,68px)}
.h2{font-size:clamp(26px,2.5vw,40px)}
.h3{font-size:clamp(20px,1.6vw,26px)}
.lead{font-size:clamp(16px,1.15vw,19px);line-height:1.6;max-width:580px;font-weight:400}
.pad{padding:clamp(28px,4vw,64px)}
.sh{margin-bottom:clamp(18px,2vw,28px)}
.sh .h2{max-width:22ch}

/* header */
.yh-in{height:76px;max-width:var(--max)}
.yh-logo{width:54px;height:54px}
.yh-nav a{font-size:12.5px;font-weight:600;letter-spacing:.1em;padding:9px 12px}
.yd-p nav a{font-size:18px;font-weight:600;text-transform:none;letter-spacing:0}

/* buttons & chips — slimmer, quieter */
.pill{height:42px;padding:0 20px;border-width:1.5px;font-size:12.5px;font-weight:700;letter-spacing:.1em;gap:8px}
.pill svg{width:15px;height:15px}
.pill.lg{height:50px;padding:0 26px;font-size:13px}
.pill.sm{height:36px;padding:0 14px;font-size:11.5px}
.chip{height:34px;padding:0 14px;border-width:1.5px;font-size:13px;font-weight:600}

/* hero — still big photography, calmer type */
.hero{min-height:min(84svh,820px)}
.hero .in{padding:clamp(24px,4.4vw,72px)}
.hero .h1{max-width:16ch;font-size:clamp(36px,4.2vw,68px)!important;font-weight:700!important;letter-spacing:-.02em!important;line-height:1.04!important}
.hero .lead{margin-top:14px;opacity:.95}
.srch{margin-top:24px;max-width:640px}
.srch form{height:58px;padding-left:22px;box-shadow:0 8px 30px rgba(0,0,0,.14)}
.srch input{font-size:16px;font-weight:500}
.srch .pill{height:44px}
.srch-res a{font-weight:600}
.stk{width:92px;height:92px;font-size:13px;font-weight:700;letter-spacing:.02em;line-height:1.05;transform:rotate(-8deg)}

/* photo panels */
.ph::after{background:linear-gradient(0deg,rgba(5,18,32,.66) 0%,rgba(5,18,32,.14) 46%,rgba(5,18,32,0) 68%)}
.ph .in{padding:clamp(20px,2.6vw,40px)}

/* magazine — editorial */
.mg{min-height:min(62vw,680px)}
.mg .ph .h{font-size:clamp(24px,2.3vw,38px);font-weight:700;line-height:1.08}
.mg .ph:not(:first-child) .h{font-size:clamp(18px,1.4vw,23px)}
.mg .ph .lead{font-size:16px;max-width:520px}
.tag{font-size:10.5px;font-weight:700;letter-spacing:.16em;padding:5px 9px}
.art p{font-size:18px;line-height:1.75}
.art h2{font-size:clamp(22px,2vw,30px);font-weight:700;text-transform:none;letter-spacing:-.01em;line-height:1.15}
.art .intro{font-size:20px;line-height:1.6;font-weight:500}
.art ul{font-size:18px}

/* resort cards */
.rc .in{padding:18px}
.rc h3{font-size:clamp(18px,1.4vw,22px);font-weight:700;text-transform:none;letter-spacing:-.01em;line-height:1.12}
.rc .m{font-size:13px;font-weight:500}
.rc .k{font-size:10.5px}
.rc .big{font-size:clamp(32px,3vw,48px);font-weight:700;letter-spacing:-.02em}
.rail{grid-auto-columns:minmax(240px,22%)}

/* snow */
.sn{min-height:0;padding:16px 18px;gap:6px}
.sn h3{font-size:17px;font-weight:700;text-transform:none;letter-spacing:-.01em;line-height:1.15}
.sn .c{font-size:10.5px;font-weight:700;letter-spacing:.14em}
.sn .v{font-size:clamp(28px,2.4vw,40px);font-weight:700;letter-spacing:-.02em;margin-top:6px}
.sn .v small{font-size:.42em}
.sn .bars{height:32px;gap:4px;margin-top:10px}
.sn .badge{font-size:10.5px;padding:4px 7px;top:12px;right:12px;transform:rotate(3deg);font-weight:700}
.day strong{font-size:24px;font-weight:700}
.stbl th{font-size:11.5px;font-weight:600}
.stbl td{font-size:15px}
.stbl td.n{font-size:17px;font-weight:700}
.stbl td a{font-weight:600}

/* deals / products */
.blk.redb .h{font-size:clamp(40px,4.6vw,76px)!important;font-weight:800;letter-spacing:-.025em;text-transform:uppercase}
.pr .tx{padding:14px 16px 18px}
.pr .br{font-size:10.5px;font-weight:700;letter-spacing:.14em}
.pr h3{font-size:16px;font-weight:600;line-height:1.3}
.pr .pz{font-size:17px;font-weight:700}
.pr .pz s{font-size:14px}
.pr .off{font-size:13px;font-weight:700;padding:5px 8px;transform:none;top:12px;left:12px}
.pr.spon h3{font-size:clamp(22px,2vw,32px);font-weight:700;text-transform:none;line-height:1.1}

/* app features */
.fe{min-height:230px;padding:24px;gap:12px}
.fe i{width:44px;height:44px;font-size:20px}
.fe h3{font-size:clamp(20px,1.6vw,26px);font-weight:700;text-transform:none;letter-spacing:-.01em;line-height:1.1}
.fe p{font-size:15px}
.fe .go{font-size:11.5px;font-weight:700;letter-spacing:.12em}

/* tiles */
.tile{min-height:128px;padding:18px}
.tile b{font-size:clamp(26px,2.2vw,36px);font-weight:700;letter-spacing:-.02em}
.tile span{font-size:11px;font-weight:700;letter-spacing:.14em}

/* ads */
.ad{min-height:300px}
.ad h3{font-size:clamp(26px,2.6vw,42px);font-weight:700;text-transform:none;letter-spacing:-.02em;line-height:1.05}
.ad p{font-size:16px}
.ad.card h3{font-size:clamp(18px,1.5vw,24px)}
.ad.strip b{font-size:17px;font-weight:700;text-transform:none}

/* forms */
.f label{font-size:11.5px;font-weight:700;letter-spacing:.12em}
.f input,.f select,.f textarea{height:48px;font-size:16px;font-weight:500}

/* steps & formats */
.step{min-height:200px;padding:24px}
.step::before{font-size:44px;font-weight:700}
.step h3{font-size:20px;font-weight:700;text-transform:none;letter-spacing:-.01em;line-height:1.15}
.fmc h3{font-size:20px;font-weight:700;text-transform:none}

/* ticker (where still used) — quieter */
.tick div{font-size:clamp(14px,1.2vw,18px);font-weight:700;padding:11px 0;letter-spacing:.06em}

/* footer */
.yf{padding:clamp(36px,4.4vw,64px) clamp(24px,4vw,64px) 32px;max-width:calc(var(--max) - 2*var(--g));margin-left:auto;margin-right:auto}
.yf .slog{font-size:clamp(24px,2.2vw,34px);font-weight:700;line-height:1.05}
.yf h4{font-size:11.5px;font-weight:700;letter-spacing:.16em}
.yf a{font-size:15px;font-weight:500}
.yf .pw b{font-size:22px}

@media (max-width:1180px){.yh-in{height:70px}.yh-logo{width:50px;height:50px}.rail{grid-auto-columns:minmax(220px,38%)}}
@media (max-width:760px){
  .h1,.hero .h1{font-size:clamp(32px,9vw,44px)!important}
  .h2{font-size:clamp(24px,7vw,32px)}
  .hero{min-height:calc(88svh - 70px)}
  .srch form{height:54px}
  .mg>a{min-height:300px}.mg>a:first-child{min-height:420px}
  .stk{width:76px;height:76px;font-size:11px}
  .blk.redb .h{font-size:clamp(36px,11vw,52px)!important}
  .rail{grid-auto-columns:76%}
}

/* =====================================================================
   LIGHT THEME (nov 2026) — Scandinavian clean: lots of white, calm,
   black CTAs, colour only as accent (red = sale/badges). Photos carry
   the energy. Inspired by the airy feel of premium Nordic outdoor stores.
   ===================================================================== */
:root{--paper:#fff;--soft:#fff;--ink:#111;--muted:#666b72;--line:#e6e6e3}
body{background:#fff}
.blocks{gap:clamp(36px,4.6vw,76px);padding-bottom:clamp(36px,4.6vw,76px)}
.blocks>section:first-child{margin-bottom:calc(-1 * clamp(8px,1.6vw,28px))}

/* header — white, hairline, black type */
.yh{border-bottom:1px solid var(--line)}
.yh-nav a{color:var(--ink);font-weight:500;letter-spacing:.12em}
.yh-nav a:hover,.yh-nav a[aria-current=page]{background:transparent;text-decoration:underline;text-underline-offset:6px}
.yh-burger span{background:var(--ink);height:2px}
.yd-p{background:#fff;color:var(--ink)}
.yd-p .x{border:1px solid var(--ink);color:var(--ink)}
.yd-p nav a{border-bottom-color:var(--line)}

/* buttons — black, quiet, square-ish */
.pill{border-radius:2px;border:1px solid var(--ink);background:#fff;color:var(--ink);font-weight:600;letter-spacing:.14em}
.pill:hover{transform:none;background:var(--ink);color:#fff}
.pill.red,.pill.blue{background:var(--ink);border-color:var(--ink);color:#fff}
.pill.red:hover,.pill.blue:hover{background:#333;border-color:#333}
.ph .pill.onphoto,.hero .pill{border-color:#fff}
.srch form{border-radius:2px;box-shadow:0 6px 24px rgba(0,0,0,.12)}
.srch .pill{border-radius:2px}
.chip{border-radius:2px;border-width:1px;font-weight:500}
.chip.on{background:var(--ink)}

/* all colour blocks become white / soft — text in ink */
.blk.white,.blk.ice,.blk.blue,.blk.navy,.blk.redb,.blk{background:#fff;color:var(--ink)}
.blk.pad{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}
.blk:not(.ph) [style*="color:#fff"]{color:var(--ink)!important}
.blk:not(.ph) .pill.onphoto{color:var(--ink)!important;border-color:var(--ink)!important}
.blk:not(.ph) .pill.onphoto:hover{background:var(--ink)!important;color:#fff!important}
.blk .k,.blk .k[style]{color:var(--muted)!important}
.blk .lead{color:var(--muted)}
.sh{border-bottom:1px solid var(--line);padding-bottom:14px;align-items:flex-end}
.sh .pill{border:0;height:auto;padding:0;background:none;text-decoration:underline;text-underline-offset:5px}
.sh .pill:hover{background:none;color:var(--ink)}

/* soft panels for the commercial blocks (business, stay) */
.blk.blue.split,#stay{background:var(--soft)!important;padding:clamp(28px,4vw,64px)!important}

/* Super Deals — light, red only as accent word */
.blk.redb{text-align:left!important;padding:0!important}
.blk.redb .k{color:var(--red)!important}
.blk.redb .h{font-size:clamp(30px,3.2vw,52px)!important;font-weight:700!important;text-transform:none!important;letter-spacing:-.02em!important;color:var(--ink)}
.blk.redb .lead{margin:12px 0 22px!important}

/* cards & tiles — white with hairlines */
.sn,.fe,.tile,.step,.fmc,.day{background:#fff;color:var(--ink);border:1px solid var(--line)}
.sn.pow{background:#fff;color:var(--ink)}.sn.pow .c{color:var(--red)}.sn.pow .bars i{background:var(--ink)}
.sn .c{color:var(--muted)}
.sn .bars i{background:#c9ccd1}.sn .bars i.t{background:var(--ink)}
.sn .badge,.sn.pow .badge{background:var(--red);color:#fff;transform:none}
.fe.blue,.fe.navy,.fe.redb,.tile.blue,.tile.navy,.tile.redb{background:#fff;color:var(--ink)}
.fe.blue p,.fe.navy p,.fe.redb p{color:var(--muted)}
.fe i,.fe.blue i,.fe.navy i,.fe.redb i{background:var(--soft);color:var(--ink)}
.fe .go{text-decoration:underline;text-underline-offset:5px}
.tile span,.tile.blue span,.tile.navy span,.tile.redb span{color:var(--muted)}
.step::before{color:var(--ink)}
.day.hot{background:var(--soft);color:var(--red)}
.stbl th{background:#fff;color:var(--muted);border-bottom:1px solid var(--ink)}

/* products — editorial grid, no boxes */
.pg{gap:clamp(12px,1.4vw,20px)}
.pr{background:transparent}
.pr .im{background:var(--soft)}
.pr .tx{padding:12px 2px 0}
.pr .br{color:var(--muted)}
.pr .off{background:var(--red)}
.pr.spon{background:var(--soft);color:var(--ink)}.pr.spon .br{color:var(--muted)}

/* resort cards without photo */
.rc.noimg,.rc.c1,.rc.c2{background:var(--soft);color:var(--ink)}
.rc.noimg .mnt{opacity:.08}

/* magazine tags & photo overlays — subtle */
.tag,.tag.red,.tag.blue{background:#fff;color:var(--ink)}
.ph::after{background:linear-gradient(0deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.08) 45%,rgba(0,0,0,0) 65%)}
.stk{background:#fff;color:var(--ink);box-shadow:0 6px 20px rgba(0,0,0,.15)}

/* ads */
.ad.noimg{background:var(--soft);color:var(--ink)}
.ad .lbl{border:1px solid var(--line)}
.ad.strip{background:var(--soft)}

/* forms */
.f label{color:var(--muted)}
.f input,.f select,.f textarea{border-color:var(--line);border-radius:2px}
.f input:focus,.f select:focus,.f textarea:focus{outline:2px solid var(--ink);border-color:var(--ink)}

/* footer — light */
.yf{background:var(--soft);color:var(--ink);margin-top:0}
.yf a{opacity:1;color:var(--ink)}
.yf h4{color:var(--muted)}
.yf-bot{border-top-color:var(--line);color:var(--muted)}
/* all white: no grey panels */
.mdl-p .im{background:#fff}
.skel{background:#fff;animation:none}
.blk.blue.split,#stay,.pr.spon,.ad.strip,.ad.noimg,.rc.noimg,.rc.c1,.rc.c2{border:1px solid var(--line)}
.yf{border-top:1px solid var(--line)}
