/* HLV · lettering editorial, tinta y hospitalidad andina. */
.intro .hospitality-heading{width:min(100%,470px);margin:0}
.intro-heading{align-self:center}
.intro-gallery .gallery-main img,.intro-gallery .gallery-side img{border-radius:16px}
.intro-copy>p{font-size:15px;line-height:1.85}
.intro-copy .underlined-link{background:#8e3a1e;color:#fff3df;border:0;border-radius:8px;padding:15px 20px;gap:35px;min-height:50px}
.house-signature{border-top:0;margin-top:18px;padding-top:0}
.stay-section{background-color:#643722;background-image:linear-gradient(110deg,#663b28ed,#442719ed),var(--fiber);background-size:auto,1100px auto;padding-block:60px 45px;color:#fff1d7}
.stay-header{grid-template-columns:1.1fr .9fr;align-items:center;gap:6vw}
.stay-header .hospitality-heading{max-width:570px;margin:-15px 0 -10px}
.stay-summary{padding:0}
.stay-summary>p{font-size:20px;font-weight:400;line-height:1.65;color:#fff1d7;max-width:34ch}
.stay-summary>span{color:#efd1a0;font-size:13px;max-width:35ch;border:0;margin-top:16px}
.room-showcase{grid-template-columns:1.15fr 1fr;align-items:center;gap:5vw;margin-top:25px}
.room-image-stack{height:535px;min-height:535px}
.room-gallery-copy{padding:0}
.room-gallery-counter{display:none}
.room-photo-tabs{gap:17px;margin-bottom:19px}
.room-photo-tabs button{color:#efdbc1;font-size:11px;border-color:#c5a38360}
.room-photo-tabs button[aria-pressed=true]{color:#ffdc9e;border-color:#ffdc9e}
.room-chooser{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:0}
.room-chooser .room-row{display:flex;position:relative;align-items:center;gap:12px;min-height:102px;padding:9px;border:0;background:#e9cfa51a;border-radius:12px;text-align:left;color:#fff1d7;transition:background 150ms var(--ease)}
.room-chooser .room-row:hover,.room-chooser .room-row[aria-pressed=true]{padding:9px;background:#b7653d}
.room-choice-photo,.room-choice-solo{width:70px;height:80px;flex-shrink:0;object-fit:cover;object-position:center;border-radius:8px}
.room-choice-solo{display:grid;place-items:center;background:#eccb9830}
.room-choice-solo svg{width:43px;height:43px;fill:none;stroke:#ffdfac;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.room-name{min-width:0}
.room-name strong{font-size:22px;font-weight:500;line-height:1.12;letter-spacing:-.025em}
.room-name small{display:block;font-size:10px;line-height:1.5;color:#eed8be;margin-top:8px}
.room-choice-arrow{display:none}
.room-enquire{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;background:#f0ce95;color:#482b1d;font-size:13px;min-height:53px;margin-top:8px;border-radius:8px;gap:25px}
.room-enquire svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5}
.stay-feedback{grid-column:1/-1;color:#f0d5b3;font-size:12px;line-height:1.6;margin:0;min-height:38px}
.room-inclusions.section-shell{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:45px;background:#f1dfc3;color:#593922;border:0;border-radius:16px;margin-top:35px;padding:30px 35px}
.room-inclusions>p{font-family:var(--display);font-size:30px;line-height:1.18;font-weight:500;color:#593922;margin:0}
.room-inclusions>p em{font-style:italic;color:#984522}
.room-inclusions ul{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:0;list-style:none}
.room-inclusions li{display:flex;flex-direction:column;gap:12px;font-size:12px;line-height:1.4;color:#593922}
.room-inclusions li:before{display:none}
.room-inclusions li svg{width:30px;height:30px;fill:none;stroke:#984522;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.services-strip{justify-content:center;gap:50px;padding:24px 20px 0;margin-top:0;border:0;color:#efdbc1;font-size:11px;letter-spacing:.02em}
.services-strip svg{color:#efc686}
@media(max-width:1100px){.room-choice-photo,.room-choice-solo{width:53px;height:70px}.room-chooser .room-row{gap:9px}.room-name strong{font-size:20px}.room-inclusions.section-shell{gap:30px;padding:27px}.room-inclusions>p{font-size:26px}.room-inclusions ul{gap:15px}}
@media(max-width:700px){.intro .hospitality-heading{max-width:390px;width:100%;margin:-15px 0 -12px}.intro-copy>p{font-size:14px}.intro-copy .underlined-link{margin-top:20px;font-size:12px}.house-signature{margin-top:17px}.stay-section{padding-block:35px 30px}.stay-header{display:block}.stay-header .hospitality-heading{width:100%;max-width:450px;margin:-8px 0 8px}.stay-summary>p{font-size:17px;max-width:none;line-height:1.65}.stay-summary>span{margin-top:13px;font-size:12px;max-width:none}.room-showcase{grid-template-columns:1fr;gap:22px;margin-top:25px}.room-image-stack{height:360px;min-height:360px}.room-gallery-copy{padding:0}.room-photo-tabs{gap:17px;justify-content:space-between;margin-bottom:17px}.room-photo-tabs button{font-size:11px}.room-chooser{gap:11px}.room-chooser .room-row,.room-chooser .room-row:hover,.room-chooser .room-row[aria-pressed=true]{padding:8px;min-height:93px;gap:9px}.room-choice-photo,.room-choice-solo{width:50px;height:70px}.room-name strong{font-size:19px}.room-name small{font-size:10px;margin-top:6px}.room-inclusions.section-shell{grid-template-columns:1fr;gap:25px;margin-top:24px;padding:25px 22px}.room-inclusions>p{font-size:29px}.room-inclusions ul{grid-template-columns:1fr 1fr;gap:25px 20px}.room-inclusions li{font-size:12px;flex-direction:row;align-items:center;gap:12px}.room-inclusions li svg{width:28px;height:28px;flex-shrink:0}.services-strip{gap:20px 25px;justify-content:flex-start;padding-top:25px;font-size:10px}.room-enquire{margin-top:4px}}
.room-showcase{padding:0;border:0;background:transparent}
.room-image-stack{border:0;border-radius:16px;overflow:hidden}
.room-image-stack .room-scene[data-room-scene]{object-fit:cover;object-position:center 55%;border-radius:16px}
.lettered-heading{position:relative}
.lettered-heading .heading-copy{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.headline-art{display:block;width:100%;height:auto;object-fit:contain}
.hero-content{width:57%;padding-top:27px;padding-left:max(32px,calc((100vw - 1320px)/2));max-width:850px}
.hero h1{width:min(100%,660px);margin:0 0 3px;line-height:1}
.hero-headline-art{filter:drop-shadow(0 2px 3px #24180f30)}
.hero-lead{max-width:40ch;font-size:15px;line-height:1.65;margin-top:6px}
.hero-explore{margin-top:21px;font-size:14px;gap:35px;color:#fff3dd;border-color:#e5b562}
.hero-explore svg{color:#e5b562}
.hero-scrim{background:linear-gradient(90deg,#261c14b8,#261c1470 37%,transparent 77%)}
.hero-scrim:after{content:'';position:absolute;inset:0 35% 0 0;background-image:var(--fiber);background-size:850px auto;mix-blend-mode:soft-light;opacity:.2;mask-image:linear-gradient(90deg,#000,transparent)}
.hero-reservation>div>span{font-size:12px;letter-spacing:0;color:#8e3a1e}
.hero-reservation p{font-weight:500;font-size:28px;letter-spacing:-.025em}
.hero-reservation .button{font-weight:600}
.booking{border-top:0;background:#f2e6d2}
.booking-aside{position:relative;background-color:#eaddc6;background-image:linear-gradient(110deg,#eadcc4d9,#f0e5d2e8),var(--fiber);background-size:auto,1000px auto;padding-top:28px;padding-bottom:38px}
.booking-aside:before{display:none}
.booking-aside h2{width:min(100%,500px);max-width:none;margin:-15px 0 -20px;font-size:0}
.booking-headline-art{mix-blend-mode:multiply}
.booking-aside>p{max-width:43ch;font-size:14px;line-height:1.75;margin-top:0;color:#563922}
.booking-benefits{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0 22px;padding:24px 0;border-block:1px solid #b49a7b80;max-width:520px}
.booking-benefits li{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:12px;line-height:1.55;color:#563922}
.booking-benefits svg{width:29px;height:29px;fill:none;stroke:#8e3a1e;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.booking-trust{display:block;margin-top:0;max-width:47ch}
.booking-trust>div{display:block;border:0;padding:2px 0}
.booking-trust p{font-size:11px;line-height:1.6;color:#654b35}
.direct-phone{border:0;padding:0;margin-top:22px;display:flex;align-items:baseline;gap:18px}
.direct-phone>span{font-size:11px;color:#7f452c}
.direct-phone strong{font-family:var(--display);font-weight:500;font-size:29px;color:#8e3a1e;letter-spacing:-.025em}
.booking-form-wrap{padding-top:55px;background-color:#faf5e9;background-image:linear-gradient(#faf5e9ed,#faf5e9ed),var(--material);background-size:auto,1000px auto}
.form-heading{align-items:center;margin-bottom:28px}
.form-heading>span{font-size:36px;font-weight:500;color:#442617}
.form-grid input,.form-grid select{background:#fffcf3;border-color:#bfa58a}
.booking-form-wrap .submit-button{background:#8e3a1e}
.intro h2,.stay-header h2,.altitude-heading h2,.tours-copy h2,.vvt-portal-copy h2,.payment-heading h2,.snow-heading h2{font-weight:500}
.intro h2>span,.stay-header h2>span,.altitude-heading h2>span,.payment-heading h2>span{font-weight:600}
@media(max-width:1100px) and (min-width:701px){.hero-content{width:62%;padding-top:42px}.hero h1{max-width:570px}.hero-lead{font-size:14px}.booking-aside h2{margin-top:0}.booking-benefits{gap:12px}.booking-benefits li{font-size:11px}.direct-phone{display:block}.direct-phone>span{display:block;margin-bottom:5px}}
@media(max-height:800px) and (min-width:701px){.hero-content{padding-top:15px}.hero h1{max-width:530px}.hero-lead{font-size:14px;max-width:42ch}.hero-explore{margin-top:16px}}
@media(max-width:700px){.hero-content{width:90%;padding:28px 0 0 15px;max-width:560px}.hero h1{width:100%;max-width:440px;margin-bottom:16px}.hero-lead{font-size:14px;max-width:31ch;margin-top:0;line-height:1.65}.hero-explore{font-size:13px;margin-top:20px;gap:35px}.hero-scrim{background:linear-gradient(90deg,#21170fbb,#21170f66 65%,#21170f22)}.hero-scrim:after{inset:0 15% 0 0}.hero-reservation p{font-size:24px;max-width:16ch}.hero-reservation>div>span{font-size:10px}.booking-aside{padding-top:22px;padding-bottom:30px}.booking-aside h2{max-width:480px;width:100%;margin:-10px 0 8px}.booking-aside>p{font-size:14px;max-width:44ch}.booking-benefits{gap:15px;padding-block:20px;margin-top:22px;margin-bottom:18px}.booking-benefits li{font-size:11px;gap:10px}.booking-benefits svg{width:27px;height:27px}.booking-trust p{font-size:11px}.direct-phone{gap:15px;margin-top:21px}.direct-phone strong{font-size:28px}.booking-form-wrap{padding-top:32px}.form-heading>span{font-size:33px}.form-heading small{font-size:10px;max-width:135px}}
