:root{--ink: #102428;--ink-soft: #3a5056;--stone: #6b7f85;--snow: #f7f8f8;--paper: #ffffff;--birch: #e4ebe9;--ice: #c9dee1;--pine: #0e6e5b;--pine-deep: #0a5244;--pine-wash: #e7f1ee;--font-display: "Bitter", Georgia, serif;--font-body: "Golos Text", -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--step--1: .833rem;--step-0: 1rem;--step-1: 1.25rem;--step-2: 1.563rem;--step-3: 1.953rem;--step-4: 2.441rem;--step-5: 3.052rem;--gap: 1.25rem;--radius: 10px;--radius-lg: 16px;--shadow: 0 1px 2px rgba(20, 38, 46, .06), 0 4px 16px rgba(20, 38, 46, .06);--shadow-lg: 0 2px 4px rgba(20, 38, 46, .08), 0 18px 48px rgba(20, 38, 46, .12);--wrap: 1180px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--snow);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);line-height:1.55;font-feature-settings:"ss01"}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.15;letter-spacing:-.015em;margin:0 0 .5em;text-wrap:balance}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-1)}p{margin:0 0 1em}p:last-child{margin-bottom:0}a{color:inherit}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--pine);outline-offset:2px;border-radius:4px}.wrap{width:min(100% - 2.5rem,var(--wrap));margin-inline:auto}.eyebrow{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--stone);margin:0 0 .6rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.4rem;border:1px solid transparent;border-radius:var(--radius);font:500 var(--step-0)/1 var(--font-body);text-decoration:none;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,transform .16s ease}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--pine);color:#fff}.btn--primary:hover{background:var(--pine-deep)}.btn--ghost{background:transparent;border-color:#14262e2e;color:var(--ink)}.btn--ghost:hover{border-color:var(--pine);color:var(--pine)}.btn--block{width:100%}.btn[disabled]{opacity:.5;cursor:not-allowed}.field{display:flex;flex-direction:column;gap:.35rem}.field__label{font-size:var(--step--1);color:var(--stone)}.field__control{padding:.7rem .85rem;border:1px solid rgba(20,38,46,.16);border-radius:var(--radius);background:var(--paper);font:400 var(--step-0)/1.4 var(--font-body);color:var(--ink)}.field__control:focus{border-color:var(--pine);outline:none}.field__error{color:#a33;font-size:var(--step--1)}.masthead{background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid transparent;position:sticky;top:0;z-index:40}.masthead--over-hero{position:absolute;inset-inline:0;top:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.masthead--over-hero .logo,.masthead--over-hero .nav a,.masthead--over-hero .icon-link{color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.35)}.masthead--over-hero .nav a:hover{color:#fff;opacity:.85}.masthead__inner{display:flex;align-items:center;gap:1.5rem;min-height:72px}.logo{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;font-family:var(--font-display);font-size:1.2rem;font-weight:600;color:var(--pine);white-space:nowrap}.logo em{color:var(--stone);font-style:normal}.nav{display:flex;gap:1.35rem;margin-left:auto;font-size:.95rem}.nav a{text-decoration:none;color:var(--ink-soft)}.nav a:hover,.nav a[aria-current=page]{color:var(--pine)}.masthead__actions{display:flex;align-items:center;gap:.85rem;margin-left:.5rem}.icon-link{display:inline-flex;color:var(--ink-soft);text-decoration:none}.icon-link:hover{color:var(--pine)}.hero{padding:clamp(2.5rem,6vw,5rem) 0 3rem}.hero--bleed{position:relative;min-height:min(88vh,780px);padding:0;display:flex;align-items:flex-end;color:#fff;overflow:hidden}.hero__media,.hero__shade{position:absolute;top:0;right:0;bottom:0;left:0}.hero__media img{width:100%;height:100%;object-fit:cover}.hero__shade{background:linear-gradient(180deg,#0a1c2059,#0a1c2026 40%,#0a1c20b8)}.hero__content{position:relative;z-index:1;width:min(100% - 2.5rem,var(--wrap));margin-inline:auto;padding:7.5rem 0 3.25rem}.hero__brand{font-family:var(--font-display);font-size:clamp(2.4rem,6vw,4.25rem);font-weight:600;letter-spacing:-.02em;line-height:1.05;margin:0 0 .75rem;text-wrap:balance}.hero--bleed h1{font-family:var(--font-body);font-weight:400;font-size:clamp(1.05rem,2.2vw,1.35rem);line-height:1.45;max-width:36ch;margin:0 0 2rem;color:#ffffffeb}.hero__finder{max-width:920px}.hero__lede{font-size:var(--step-1);color:var(--ink-soft);max-width:46ch}.hero h1 span{color:var(--pine)}.finder{background:var(--paper);border:1px solid var(--birch);border-radius:var(--radius-lg);padding:1.1rem;box-shadow:var(--shadow)}.finder--bar{border:0;border-radius:18px;padding:.85rem 1rem;box-shadow:0 18px 50px #08181c47}.finder__chips{display:flex;gap:.5rem;margin-bottom:.9rem;flex-wrap:wrap}.chip{padding:.45rem .9rem;border:1px solid rgba(20,38,46,.16);border-radius:999px;background:transparent;font:500 var(--step--1)/1 var(--font-body);color:var(--ink-soft);cursor:pointer}.chip[aria-pressed=true]{background:var(--pine-wash);border-color:var(--pine);color:var(--pine-deep)}.finder__fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;align-items:end}.finder--bar .finder__fields{grid-template-columns:1.2fr 1.6fr .7fr auto;gap:1rem}.finder--bar .field__label{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--stone)}.finder--bar .field__control{border:0;padding:.35rem 0;background:transparent;box-shadow:none}.finder--bar .field__pair{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.finder__submit{white-space:nowrap;min-width:7.5rem}.section--resorts{padding-top:2.25rem}.resort-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.resort-card{position:relative;display:block;min-height:280px;border-radius:18px;overflow:hidden;text-decoration:none;color:#fff;box-shadow:var(--shadow)}.resort-card img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.resort-card:hover img{transform:scale(1.04)}.resort-card__shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#08181c1a 20%,#08181cc7)}.resort-card__body{position:relative;z-index:1;height:100%;min-height:280px;display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem}.resort-card__body h2{margin:0;font-size:clamp(1.6rem,3vw,2.1rem);color:#fff}.resort-card__body p{margin:.25rem 0 .85rem;color:#ffffffd1}.resort-card__body span{font-size:.95rem;font-weight:500}.card{background:var(--paper);border:1px solid var(--birch);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .18s ease,transform .18s ease}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card__media{aspect-ratio:4 / 3;background:var(--birch);position:relative}.card__media img{width:100%;height:100%;object-fit:cover}.card__badge{position:absolute;left:.75rem;top:.75rem;background:#fffffff0;border-radius:999px;padding:.3rem .7rem;font-size:var(--step--1)}.card__body{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.55rem;flex:1}.card__title{font-size:var(--step-1);margin:0}.card__title a{text-decoration:none}.card__title a:hover{color:var(--pine)}.card__meta{color:var(--stone);font-size:var(--step--1)}.card__price{margin-top:auto;font-family:var(--font-mono);font-size:var(--step-1);font-weight:500}.card__price small{font-family:var(--font-body);font-weight:400;color:var(--stone)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:var(--gap)}.scale{display:flex;flex-direction:column;gap:.75rem}.scale__track{position:relative;height:2px;background:var(--ice);margin:1.6rem 0 2.1rem}.scale__grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.scale__gridline{position:absolute;top:-4px;bottom:-4px;width:1px;background:#14262e1f}.scale__gridlabel{position:absolute;top:8px;transform:translate(-50%);font-family:var(--font-mono);font-size:11px;color:var(--stone);white-space:nowrap}.scale__point{position:absolute;top:50%;transform:translate(-50%,-50%);width:11px;height:11px;border-radius:50%;border:2px solid var(--pine);background:var(--pine)}.scale__point--computed{background:var(--paper)}.scale__caption{position:absolute;bottom:14px;transform:translate(-50%);white-space:nowrap;font-size:var(--step--1)}.scale__legend{display:flex;gap:1.2rem;font-size:var(--step--1);color:var(--stone);flex-wrap:wrap}.scale__row{display:grid;grid-template-columns:1fr auto;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--birch);align-items:baseline}.scale__row:last-child{border-bottom:0}.scale__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.scale__value--computed{color:var(--stone)}.tags{display:flex;flex-wrap:wrap;gap:.4rem}.tag{padding:.3rem .7rem;border-radius:999px;background:var(--pine-wash);color:var(--pine-deep);font-size:var(--step--1)}.tag--muted{background:var(--birch);color:var(--ink-soft)}.section{padding:clamp(2.5rem,5vw,4rem) 0}.section--tinted{background:var(--paper);border-block:1px solid var(--birch)}.section__head{margin-bottom:1.75rem;max-width:60ch}.section__head p{color:var(--ink-soft);margin:.35rem 0 0}.section__head--row{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:1rem}.section__more{color:var(--pine);text-decoration:none;font-weight:500;white-space:nowrap}.section__more:hover{color:var(--pine-deep)}.catalog{display:grid;grid-template-columns:260px 1fr;gap:2rem;align-items:start}.filters{background:var(--paper);border:1px solid var(--birch);border-radius:var(--radius-lg);padding:1.1rem;position:sticky;top:88px;display:flex;flex-direction:column;gap:1.1rem}.filters__group{display:flex;flex-direction:column;gap:.5rem}.filters__title{font-size:var(--step--1);color:var(--stone)}.checkline{display:flex;align-items:center;gap:.5rem;font-size:var(--step-0);cursor:pointer}.object{display:grid;grid-template-columns:1fr 360px;gap:2.5rem;align-items:start}.gallery{display:grid;grid-template-columns:2fr 1fr;gap:.6rem;border-radius:var(--radius-lg);overflow:hidden}.gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}.gallery__side{display:grid;gap:.6rem}.gallery__side img{aspect-ratio:4/3}.booking-box{background:var(--paper);border:1px solid var(--birch);border-radius:var(--radius-lg);padding:1.25rem;position:sticky;top:88px;box-shadow:var(--shadow)}.sum{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0}.sum--total{border-top:1px solid var(--birch);margin-top:.5rem;padding-top:.7rem;font-weight:600}.sum__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.notice{background:var(--pine-wash);border-radius:var(--radius);padding:.75rem .9rem;font-size:var(--step--1);color:var(--pine-deep)}.notice--warn{background:var(--birch);color:var(--ink-soft)}.footer{background:#0a3d36;color:#ffffffc7;padding:3rem 0 2rem;margin-top:2rem}.footer a{color:#ffffffc7;text-decoration:none}.footer a:hover{color:#fff}.footer__brand{font-family:var(--font-display);font-size:1.25rem;font-weight:600;color:#fff;margin:0 0 .35rem}.footer__tag{margin:0;color:#ffffffa6}.footer__cols{display:grid;grid-template-columns:1.2fr 2fr auto;gap:2rem;align-items:start}.footer__list{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.footer__list--inline{display:flex;flex-wrap:wrap;gap:.75rem 1.35rem}.footer__social{display:flex;gap:.85rem}.footer__legal{margin-top:2rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.14);font-size:var(--step--1);color:#ffffff8c}.empty{text-align:center;padding:3rem 1rem;border:1px dashed var(--birch);border-radius:var(--radius-lg);color:var(--ink-soft)}@media(max-width:960px){.catalog{grid-template-columns:1fr}.filters{position:static}.object{grid-template-columns:1fr}.booking-box{position:static}.footer__cols{grid-template-columns:1fr}.finder--bar .finder__fields{grid-template-columns:1fr 1fr}.finder__submit{grid-column:1 / -1}.resort-grid{grid-template-columns:1fr}.section__head--row{flex-direction:column;align-items:start}}@media(max-width:640px){.nav{display:none}.gallery,.footer__cols,.finder--bar .finder__fields{grid-template-columns:1fr}.hero__content{padding-top:6rem}.masthead--over-hero{position:absolute}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
