/* ===== YourSkiGuide store layer — shared by all website pages ===== */
.kt-p:not(.pho) .im img,.pr .im img{mix-blend-mode:multiply;filter:contrast(1.1) brightness(1.1)}
[hidden]{display:none!important}
/* page hero */
a.kt-phero{display:block;text-decoration:none}
.kt-phero{position:relative;margin-top:10px;height:min(72vh,720px);min-height:420px;border-radius:8px;overflow:hidden;color:#fff;background:#203040}
.kt-phero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.kt-phero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,.08) 55%,rgba(0,0,0,0))}
.kt-phero .in{position:absolute;left:clamp(16px,2.6vw,40px);right:16px;bottom:clamp(22px,3.4vw,48px);z-index:2;max-width:760px}
.kt-phero h1{margin:0 0 14px;font-size:clamp(40px,5.4vw,84px);font-weight:800;letter-spacing:-.035em;line-height:.98}
.kt-phero p.sub{margin:0 0 22px;font-size:clamp(16px,1.25vw,19px);line-height:1.5;max-width:560px;opacity:.95}
.kt-phero .btns,.kt-btns{display:flex;gap:10px;flex-wrap:wrap}
.kt-btn.ghost{background:transparent;color:#fff;border-color:#fff}
.kt-btn.ghost:hover{background:#fff;color:#111}
.kt-btn.line{background:#fff;color:#111;border-color:#111}
.kt-btn.line:hover{background:#111;color:#fff}
.kt-credit{position:absolute;right:12px;bottom:10px;z-index:2;font-size:11px;color:rgba(255,255,255,.75)}
/* plain page title (no photo) */
.kt-ptitle{padding:clamp(28px,4vw,56px) 0 0}
.kt-ptitle h1{margin:0;font-size:clamp(44px,6vw,96px);font-weight:800;letter-spacing:-.04em;line-height:.95}
.kt-ptitle p{margin:14px 0 0;font-size:17px;line-height:1.5;color:#5f6368;max-width:620px}
/* section head */
.kt-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}
.kt-head h2{margin:0;font-size:clamp(28px,2.6vw,42px);font-weight:800;letter-spacing:-.03em;line-height:1.02}
.kt-head p{margin:8px 0 0;font-size:15.5px;line-height:1.5;color:#5f6368;max-width:560px}
.kt-head .lnk,.kt-lnk{font-size:14px;font-weight:600;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px;color:#111;white-space:nowrap}
/* stats strip */
.kt-stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #e5e5e2;border-bottom:1px solid #e5e5e2}
.kt-stats div{padding:26px 18px;border-left:1px solid #e5e5e2}
.kt-stats div:first-child{border-left:0;padding-left:0}
.kt-stats b{display:block;font-size:clamp(30px,3vw,48px);font-weight:800;letter-spacing:-.04em;line-height:1}
.kt-stats span{display:block;margin-top:6px;font-size:13.5px;color:#5f6368}
/* steps */
.kt-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;counter-reset:st}
.kt-step{border-top:2px solid #111;padding-top:18px;counter-increment:st}
.kt-step::before{content:"0" counter(st);display:block;font-size:13px;font-weight:700;letter-spacing:.06em;margin-bottom:28px}
.kt-step h3{margin:0 0 8px;font-size:21px;font-weight:700;letter-spacing:-.01em}
.kt-step p{margin:0;font-size:15px;line-height:1.55;color:#5f6368}
/* photo cards grid (packages, features) */
.kt-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.kt-card{position:relative;display:flex;flex-direction:column;text-decoration:none;color:#111}
.kt-card .im{position:relative;aspect-ratio:4/5;border-radius:8px;overflow:hidden;background:#dfe3e6}
.kt-card .im img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.kt-card:hover .im img{transform:scale(1.035)}
.kt-card .tag{position:absolute;left:10px;top:10px;background:#fff;color:#111;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 8px;border-radius:3px}
.kt-card .tx{padding:12px 2px 0}
.kt-card h3{margin:0 0 4px;font-size:18px;font-weight:700;letter-spacing:-.01em}
.kt-card p{margin:0;font-size:14.5px;line-height:1.5;color:#5f6368}
.kt-card .meta{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}
.kt-card .meta u{text-underline-offset:4px}
/* formats */
.kt-fmt{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.kt-fm{border:1px solid #e5e5e2;border-radius:8px;padding:16px}
.kt-fm .mock{aspect-ratio:16/10;border-radius:6px;background:#fff;border:1px solid #e5e5e2;display:grid;gap:6px;padding:8px;margin-bottom:14px}
.kt-fm .mock i{background:#eef0f2;border-radius:3px;display:block}
.kt-fm .mock i.hl{background:#d70302}
.kt-fm h3{margin:0 0 4px;font-size:17px;font-weight:700}
.kt-fm p{margin:0;font-size:14px;line-height:1.5;color:#5f6368}
/* split: text + photo */
.kt-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,4vw,64px);align-items:center}
.kt-split .ph{position:relative;aspect-ratio:4/5;border-radius:8px;overflow:hidden}
.kt-split .ph img{width:100%;height:100%;object-fit:cover}
.kt-split h2{margin:0 0 16px;font-size:clamp(30px,3vw,48px);font-weight:800;letter-spacing:-.035em;line-height:1.02}
.kt-split p{margin:0 0 14px;font-size:16.5px;line-height:1.6;color:#3c4043;max-width:540px}
.kt-split ul{margin:6px 0 22px;padding:0;list-style:none;max-width:540px}
.kt-split li{padding:11px 0;border-bottom:1px solid #e5e5e2;font-size:15.5px}
.kt-split li b{font-weight:700}
/* form */
.kt-form{display:grid;gap:12px}
.kt-form .r{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.kt-form label{display:grid;gap:6px;font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#5f6368}
.kt-form input,.kt-form select,.kt-form textarea{font:inherit;font-size:15.5px;text-transform:none;letter-spacing:0;color:#111;height:46px;border:1px solid #cfd0cc;border-radius:6px;padding:0 14px;background:#fff;width:100%;box-sizing:border-box}
.kt-form textarea{height:auto;padding:12px 14px;resize:vertical}
.kt-form input:focus,.kt-form select:focus,.kt-form textarea:focus{outline:2px solid #111;outline-offset:-1px}
.kt-form .ck{display:flex;gap:8px;align-items:flex-start;text-transform:none;letter-spacing:0;font-weight:400;font-size:13.5px}
.kt-form .ck input{width:auto;height:auto;margin-top:3px}
.kt-form .msg{min-height:20px;font-size:14px;font-weight:600;margin:0}
.kt-form .msg.ok{color:#127a3a}.kt-form .msg.err{color:#d70302}
.kt-form button.kt-btn{justify-self:start;cursor:pointer}
/* chips */
.kt-chips{display:flex;gap:8px;flex-wrap:wrap}
.kt-chip{height:34px;padding:0 14px;border-radius:999px;border:1px solid #cfd0cc;background:#fff;color:#111;font:inherit;font-size:13.5px;font-weight:500;cursor:pointer}
.kt-chip:hover{border-color:#111}
.kt-chip.on{background:#111;border-color:#111;color:#fff}
/* product grid */
.kt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 16px}
.kt-grid .kt-p{background:none;border:0;padding:0;text-align:left;font:inherit;cursor:pointer}
.kt-grid .kt-p.spon{grid-column:span 2}
.kt-grid .kt-p.spon .im{aspect-ratio:8/5}
.kt-empty{grid-column:1/-1;color:#5f6368}
/* feature list (app) */
.kt-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:0 32px}
.kt-ft{display:block;padding:22px 0;border-top:1px solid #e5e5e2;text-decoration:none;color:#111}
.kt-ft h3{margin:0 0 6px;font-size:19px;font-weight:700;letter-spacing:-.01em}
.kt-ft p{margin:0 0 10px;font-size:15px;line-height:1.55;color:#5f6368}
.kt-ft span{font-size:13px;font-weight:600;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px}
.kt-ol{margin:8px 0 18px;padding-left:1.2em;font-size:16.5px;line-height:1.7;color:#3c4043}
/* magazine cards */
.kt-mag{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 16px}
.kt-mag .kt-card .im{aspect-ratio:4/3}
.kt-mag .kt-card h3{font-size:20px;line-height:1.2}
.kt-mag .kt-card .cat{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#5f6368;margin-bottom:6px}
/* modal (deals) in store style */
.mdl-p{border-radius:8px!important}
.mdl-p .pill.red{background:#111!important;border-color:#111!important;border-radius:999px!important}
@media(max-width:1000px){
.kt-steps,.kt-cards,.kt-fmt,.kt-feats,.kt-mag{grid-template-columns:1fr 1fr}
.kt-grid{grid-template-columns:repeat(3,1fr)}
.kt-stats{grid-template-columns:1fr 1fr}
.kt-stats div:nth-child(3){border-left:0;padding-left:0}
}
@media(max-width:700px){
.kt-steps,.kt-cards,.kt-fmt,.kt-feats,.kt-mag,.kt-split,.kt-form .r{grid-template-columns:1fr}
.kt-grid{grid-template-columns:1fr 1fr;gap:22px 10px}
.kt-grid .kt-p.spon{grid-column:1/-1}
.kt-head{flex-direction:column;align-items:flex-start}
.kt-phero{height:auto;min-height:72svh}
}
/* resort card without photo */
.kt-rc{display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:4/5;padding:16px;border:1px solid #e5e5e2;border-radius:8px;text-decoration:none;color:#111;transition:border-color .2s}
.kt-rc:hover{border-color:#111}
.kt-rc .c{font-size:12px;font-weight:600;text-transform:uppercase;color:#5f6368}
.kt-rc h3{margin:6px 0 0;font-size:21px;font-weight:700;letter-spacing:-.01em;line-height:1.15}
.kt-rc ul{margin:0;padding:0;list-style:none}
.kt-rc li{padding:7px 0;border-top:1px solid #e5e5e2;font-size:13.5px;font-weight:600}
.kt-grid>[data-slot]{grid-column:1/-1}
/* sort + search */
.kt-sort{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#5f6368}
.kt-sort select{height:38px;border:1px solid #cfd0cc;border-radius:999px;padding:0 14px;font:inherit;font-size:14px;text-transform:none;letter-spacing:0;color:#111;background:#fff}
.kt-srch{margin-top:6px!important;max-width:640px}
.kt-srch form{border-radius:999px!important;height:56px!important;box-shadow:0 10px 30px rgba(0,0,0,.18)!important;border:0!important}
.kt-srch .pill{border-radius:999px!important;background:#111!important;border-color:#111!important;color:#fff!important}
/* snow top 3 + table */
.kt-snow3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.kt-snow3 .kt-s{border:1px solid #e5e5e2}
.kt-tbl{width:100%;border-collapse:collapse;font-size:15px}
.kt-tbl th{text-align:left;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#5f6368;padding:10px 12px 10px 0;border-bottom:1px solid #111;cursor:pointer;white-space:nowrap}
.kt-tbl td{padding:14px 12px 14px 0;border-bottom:1px solid #e5e5e2;vertical-align:top}
.kt-tbl td a{color:#111;font-weight:700;text-decoration:none}
.kt-tbl td a:hover{text-decoration:underline}
.kt-tbl td.n{font-weight:700;white-space:nowrap}
.kt-tbl td.hot{color:#d70302}
.mut{color:#5f6368;font-size:13px}
@media(max-width:1000px){.kt-snow3{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.kt-snow3{grid-template-columns:1fr}.kt-srch form{height:50px!important}}
/* footer credit: black, McAllistar clickable */
.yf .pw,.yf .pw small,.yf .pw b,.yf .pw a{color:#111!important;opacity:1!important}
.yf .pw a{text-decoration:none}
.yf .pw a:hover{text-decoration:underline;text-underline-offset:3px}
/* ===== v5: groter logo, fotokaders, rustiger grids ===== */
.yh-in{height:84px!important}
.yh-logo{width:70px!important;height:70px!important}
.yh-logo img{width:100%;height:100%;object-fit:contain}
@media(max-width:760px){.yh-in{height:68px!important}.yh-logo{width:56px!important;height:56px!important}}
.kt-bank{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;margin-right:10px;border:1px solid #111;border-radius:999px;color:#111;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.kt-bank i{font-style:normal;color:#0769ad}
.kt-bank:hover{background:#111;color:#fff}
/* hero's: kader dat bij de foto past, onderwerp altijd in beeld */
.kt-hero,.kt-phero{height:min(80vh,56vw)!important;min-height:440px}
.kt-wide{height:min(70vh,46vw)!important;min-height:360px}
.kt-hero img,.kt-phero>img,.kt-wide img,.kt-tile img,.kt-card .im img,.kt-split .ph img{object-position:50% 50%}
img[src*="ysg-toerski-zonsopkomst"]{object-position:50% 28%!important}
img[src*="ysg-bergtop-panorama"]{object-position:35% 55%!important}
img[src*="ysg-carven-duo"]{object-position:60% 62%!important}
img[src*="ysg-loen-duo."]{object-position:60% 50%!important}
img[src*="ysg-loen-duo-staand"]{object-position:50% 65%!important}
img[src*="ysg-loen-fjord-klim"]{object-position:60% 50%!important}
img[src*="ysg-loen-powder"]{object-position:55% 62%!important}
img[src*="ysg-powder-zon"]{object-position:60% 40%!important}
img[src*="ysg-toerski-gletsjer"]{object-position:50% 62%!important}
img[src*="ysg-zonsondergang-rotsen"]{object-position:50% 62%!important}
img[src*="ysg-top-high-five"]{object-position:35% 62%!important}
img[src*="ysg-gletsjer-skiers"]{object-position:68% 70%!important}
img[src*="ysg-lyngen-fjord-hond"]{object-position:62% 55%!important}
img[src*="ysg-lyngen-ski-staand"]{object-position:50% 55%!important}
img[src*="ysg-carve-rood"]{object-position:60% 50%!important}
/* split: vierkant kader, tekst in het midden */
.kt-split .ph{aspect-ratio:1/1}
.kt-split>div:last-child{align-self:center}
/* grids altijd gelijke kolommen */
.kt-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.kt-grid .kt-p .im{aspect-ratio:4/5}
.kt-grid .kt-p.pho .im img{object-fit:cover;padding:0;mix-blend-mode:normal;filter:none}
@media(max-width:1000px){.kt-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.kt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* posities-mock: wit met lijnen, geen grijs */
.kt-fm .mock i{background:#fff;border:1px solid #e5e5e2}
.kt-fm .mock i.hl{background:#d70302;border-color:#d70302}
/* sneeuwkaarten compact */
.kt-snow3 .kt-s,.kt-rail .kt-s{aspect-ratio:auto!important;min-height:250px}
.kt-s .bars i{background:#dfe8f1!important}.kt-s .bars i.t{background:#111!important}
/* lege huisadvertentie verbergen */
.kt [data-slot]:has(.ad.noimg){display:none!important}
/* rustige productkaarten */
.kt-p .tagl.sale{background:#d70302;color:#fff;padding:3px 7px;border-radius:3px;font-weight:700;top:10px;left:10px}
/* shop */
.kt-flk{display:block;margin-top:3px;font-size:12.5px;font-weight:600;color:#0769ad}
.kt-shopbar{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-bottom:26px}
.kt-shopbar .kt-chips{flex:1}
.kt-sel{height:38px;border:1px solid #cfd0cc;border-radius:999px;padding:0 14px;font:inherit;font-size:14px;color:#111;background:#fff}
.kt-bankcard{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;border:1px solid #111;border-radius:8px;padding:clamp(20px,3vw,36px)}
.kt-bankcard .k{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#0769ad}
.kt-bankcard h2{margin:6px 0 4px;font-size:clamp(28px,3vw,46px);font-weight:800;letter-spacing:-.03em;line-height:1}
.kt-bankcard p{margin:0;color:#5f6368;font-size:15px}
.kt-rw{display:flex;flex-direction:column;border:1px solid #e5e5e2;border-radius:8px;overflow:hidden;text-decoration:none;color:#111;background:#fff}
.kt-rw .im{aspect-ratio:16/10;background:#fff;overflow:hidden}.kt-rw .im img{width:100%;height:100%;object-fit:cover}
.kt-rw .tx{padding:16px;display:flex;flex-direction:column;gap:6px;flex:1}
.kt-rw .p{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#5f6368}
.kt-rw h3{margin:0;font-size:19px;font-weight:700;line-height:1.2}
.kt-rw .f{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:12px;font-weight:700}
.kt-rw .f b{color:#0769ad}
.kt-rws{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.kt-note{border:1px dashed #cfd0cc;border-radius:8px;padding:26px;text-align:center;color:#5f6368}
@media(max-width:1000px){.kt-rws{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.kt-rws{grid-template-columns:1fr}.kt-bankcard{grid-template-columns:1fr}.kt-bank span{display:none}.kt-bank{padding:0 10px;margin-right:6px}}
