/* Cabin discovery: presentation only. Search and catalogue remain in cabane-home.js / HTML. */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.cabane-2032{margin:0;-webkit-font-smoothing:antialiased;background:#f8f3f0;color:#1c1c1e}
.cabane-2032 a{color:inherit;text-decoration:none}
.cabane-2032 button,.cabane-2032 input,.cabane-2032 select{font-family:inherit}
.cabane-2032 img{display:block;max-width:100%}
.cabane-2032 button,.cabane-2032 a{-webkit-tap-highlight-color:transparent}
.cabane-2032 :focus-visible{outline:3px solid #985c3a;outline-offset:4px}
.cabane-2032 [hidden],.app-banner,.hero-product-title,.hero-adventure-story,.forest-leaves,.forest-mist,.forest-canopy,.search-build-frame{display:none!important}
.cabane-wrap{width:calc(100% - 80px);max-width:1440px;margin-inline:auto}
.cabane-hero{position:relative;isolation:isolate;overflow:hidden;width:calc(100% - 80px);max-width:1440px;min-height:610px;margin:0 auto;border-radius:28px;background:#3a4334;color:#fffaf7}
.cabane-hero>.cabane-wrap{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;width:100%;min-height:610px;padding:34px 52px 38px}
.forest-scene{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.forest-scene-image{width:100%;height:100%;object-fit:cover;object-position:58% center}
.forest-scene::after{position:absolute;content:'';inset:0;background:linear-gradient(90deg,rgba(10,20,15,.76),rgba(10,20,15,.27) 59%,rgba(10,20,15,.12)),linear-gradient(0deg,rgba(10,20,15,.52),transparent 55%)}
.universe-switch{display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid #ffffff4d;border-radius:30px;background:#ffffff12;backdrop-filter:blur(14px)}
.universe-switch a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 16px;border-radius:25px;color:#ffffffdf;font-size:12px;font-weight:550}
.universe-switch svg{width:17px;height:17px}
.universe-switch [aria-current=page]{background:#fffaf7;color:#302f27}
.hero-heading{max-width:560px;margin:39px 0 28px}
.hero-heading .eyebrow{margin:0 0 16px;color:#fff6e8e0;font-size:10px;font-weight:600;line-height:1.5;letter-spacing:2px}
.hero-heading h1{max-width:550px;margin:0;color:#fff8f2;font-size:64px;line-height:1.06;font-weight:640;letter-spacing:-3.5px;text-wrap:balance}
.hero-heading p:last-child{max-width:440px;margin:20px 0 0;font-size:16px;line-height:1.55;color:#fff6e5dc}
.cabane-search{display:grid;grid-template-columns:minmax(200px,1.45fr) minmax(150px,1fr) minmax(150px,1fr) minmax(115px,.75fr) 148px;align-items:center;gap:0;width:100%;margin:auto 0 0;padding:10px;border:1px solid #ffffff73;border-radius:22px;background:#fdf9f5;color:var(--ink);box-shadow:0 8px 30px #16231816}
.cabane-search-field{min-width:0;padding:3px 20px;border-right:1px solid var(--line)}
.cabane-search-field label{display:block;margin:0 0 5px;color:#3d342e;font-size:11px;font-weight:650}
.cabane-search-field input,.cabane-search-field select{display:block;width:100%;max-width:100%;min-width:0;height:30px;padding:0;border:0;border-radius:0;background:transparent;color:#72665e;font-size:13px;outline:none;color-scheme:light}
.cabane-search-field input::placeholder{color:#877b71;opacity:1}
.cabane-search-field:focus-within{outline:2px solid #d99a73;outline-offset:-1px;border-radius:10px}
.cabane-search-submit{display:flex;align-items:center;justify-content:center;gap:10px;min-height:57px;margin-left:12px;padding:10px 14px;border:0;border-radius:15px;background:#f5c6aa;color:#362b24;font-size:13px;font-weight:650;cursor:pointer}
.cabane-search-submit:hover{background:#edb999}
.cabane-search-submit svg{width:19px;height:19px;flex:none}
.search-error{display:none;grid-column:1/-1;margin:8px 12px 3px;color:#9c342c;font-size:12px;line-height:1.5}
.search-error.is-visible{display:block}
.forest-cues{display:flex;gap:24px;align-items:center;margin-top:19px;color:#ffffffcb;font-size:11px}
.forest-cues span{display:inline-flex;align-items:center;gap:7px}
.forest-cues svg{width:17px;height:17px;color:#f5c6aa}
.cabane-hero-place{position:absolute;z-index:3;top:34px;right:36px;display:grid;grid-template-columns:auto 22px;gap:5px 10px;padding:12px 15px;border:1px solid #ffffff42;border-radius:16px;background:#2735275c;backdrop-filter:blur(16px);font-size:11px;color:#fffaf7!important}
.cabane-hero-place-label{grid-column:1;color:#fffc;font-size:9px;letter-spacing:.8px;text-transform:uppercase}
.cabane-hero-place>span:nth-child(2){grid-column:1;font-weight:550}
.cabane-hero-place>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:21px}
.category-strip{padding:20px 0 8px}
.category-scroll{display:flex;gap:9px;overflow-x:auto;padding:2px 0 6px;scrollbar-width:none}
.category-scroll::-webkit-scrollbar,.listing-rail::-webkit-scrollbar{display:none}
.category-scroll a{flex:none;display:flex;align-items:center;min-height:42px;padding:9px 18px;border:1px solid var(--line);border-radius:30px;background:#fffaf6;color:#54483f;font-size:12px;font-weight:500}
.category-scroll a:first-child{background:#1c1c1e;border-color:#1c1c1e;color:#fffaf7}
.category-scroll a:hover:not(:first-child){background:var(--peach-light)}
.cabane-rail-section{padding:33px 0 20px}
.rail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:23px}
.rail-heading p,.section-heading p{margin:0 0 8px;color:#947967;font-size:9px;font-weight:650;letter-spacing:1.8px;text-transform:uppercase}
.rail-heading h2,.section-heading h2{margin:0;color:var(--ink);font-size:28px;font-weight:630;line-height:1.18;letter-spacing:-1.1px}
.rail-actions{flex:none;display:flex;gap:8px;align-items:center}
.rail-actions>a{margin-right:8px;color:#6b5b50;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.rail-button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fffbf7;color:var(--ink);cursor:pointer}
.rail-button:hover:not(:disabled){background:var(--peach-light)}
.rail-button:disabled{opacity:.35;cursor:default}
.rail-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.listing-rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 66px)/4);gap:22px;overflow-x:auto;padding:0 1px 10px;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-inline:contain}
.listing-card{min-width:0;scroll-snap-align:start}
.listing-card>a{display:block}
.listing-media{position:relative;overflow:hidden;aspect-ratio:1.37;border-radius:22px;background:#e7e5dc}
.listing-media img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.listing-card:hover .listing-media img{transform:scale(1.025)}
.listing-card h3{margin:13px 0 6px;font-size:15px;font-weight:630;line-height:1.3;letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.listing-location{margin:0;font-size:11px;line-height:1.6;color:#827568;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.listing-meta{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:5px 12px;margin-top:7px;font-size:11px;color:#776859}
.listing-meta strong{white-space:nowrap;color:var(--ink);font-size:13px;font-weight:630}
.cabane-section{padding:54px 0}
.section-heading{margin-bottom:25px}
.intent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.intent-card{display:flex;flex-direction:column;min-height:170px;padding:23px;border:1px solid var(--line);border-radius:23px;background:#fcf8f4;transition:background .2s ease}
.intent-card:hover{background:#fbe8db}
.intent-card svg{width:28px;height:28px;color:#a87857}
.intent-card span{display:block;margin:22px 0 7px;color:#8e7868;font-size:9px;font-weight:550;letter-spacing:1px;text-transform:uppercase}
.intent-card h3{margin:0;font-size:20px;font-weight:600;line-height:1.3;letter-spacing:-.6px}
.cabane-section.soft{background:#eee6de;margin:10px auto}
.seo-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:90px;align-items:start}
.seo-copy h2{max-width:550px;margin:0 0 20px;font-size:32px;font-weight:620;line-height:1.2;letter-spacing:-1.2px}
.seo-copy h3{margin:28px 0 10px;font-size:16px;font-weight:600;letter-spacing:-.3px}
.seo-copy p,.seo-aside p{margin:0;color:#74655a;font-size:13px;line-height:1.8}
.seo-aside{padding:27px;border:1px solid #ddd0c5;border-radius:24px;background:#fbf6f0}
.seo-aside h3{margin:0 0 13px;font-size:22px;font-weight:600;letter-spacing:-.6px}
.seo-aside a{display:flex;justify-content:space-between;gap:12px;padding:15px 0;border-top:1px solid var(--line);color:#6e5140;font-size:12px;font-weight:550}
.seo-aside a:first-of-type{margin-top:22px}
.seo-aside a:last-child{padding-bottom:0}
.faq{max-width:900px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{position:relative;padding:23px 36px 23px 0;list-style:none;font-size:14px;font-weight:550;line-height:1.6;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';position:absolute;top:18px;right:5px;font-size:23px;font-weight:400;color:#ab8065}
.faq details[open] summary::after{content:'−'}
.faq details p{margin:0 0 24px;font-size:13px;line-height:1.8;color:#74655a}
.product-footer{padding:48px 0 25px;margin-top:24px;border-top:1px solid var(--line);color:#74655a;background:#f3ece6}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(180px,.8fr) minmax(210px,1fr);gap:65px}
.footer-intro{max-width:340px}
.footer-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink)!important}
.footer-brand img{width:38px;height:38px;border-radius:10px;object-fit:contain}
.footer-brand .lv-wordmark{font-family:Inter,Arial,sans-serif;font-size:25px;font-weight:700;letter-spacing:-1px}
.footer-grid h2{margin:5px 0 20px;font-size:12px;font-weight:600;color:var(--ink)}
.footer-grid p,.footer-grid a{font-size:11px;line-height:1.8}
.footer-grid p{margin:18px 0}
.footer-links{display:grid;gap:9px}
.footer-links a:hover{text-decoration:underline}
.footer-trust{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}
.footer-trust span{padding:6px 10px;border:1px solid #ded0c4;border-radius:20px;font-size:9px}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:35px;padding-top:22px;border-top:1px solid var(--line)}
.footer-bottom p{margin:0;font-size:10px;line-height:1.6}
.mobile-bottom-nav{display:none}
@media(max-width:1100px){
 .cabane-wrap,.cabane-hero{width:calc(100% - 48px)}
 .cabane-hero>.cabane-wrap{padding-inline:32px}
 .cabane-search{grid-template-columns:minmax(160px,1.3fr) minmax(125px,1fr) minmax(125px,1fr) minmax(100px,.7fr) 115px}
 .cabane-search-field{padding-inline:12px}.cabane-search-submit{margin-left:8px;padding-inline:10px}
 .forest-cues{gap:16px}.cabane-hero-place{right:30px}
 .listing-rail{grid-auto-columns:calc((100% - 40px)/3);gap:20px}.seo-layout{gap:40px}
}
@media(max-width:900px) and (min-width:761px){
 .cabane-search{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cabane-search-submit{grid-column:1/-1;margin:0}.search-piece-arrival,.search-piece-guests{border:0}
 .hero-heading{margin-top:25px}.cabane-hero-place{top:94px}.forest-cues{font-size:10px}
}
@media(max-width:760px){
 body.cabane-2032{padding-bottom:calc(73px + env(safe-area-inset-bottom,0px))}
 .cabane-wrap,.cabane-hero{width:calc(100% - 32px)}
 .cabane-hero{min-height:0;border-radius:24px}
 .cabane-hero>.cabane-wrap{width:100%;min-height:0;padding:22px 16px 58px}
 .forest-scene-image{object-position:54% center}
 .forest-scene::after{background:linear-gradient(180deg,#11241799,#11241733 55%,#11241791),linear-gradient(90deg,#11241755,transparent)}
 .universe-switch{padding:3px;gap:2px}.universe-switch a{min-height:34px;padding:7px 13px;font-size:10px}.universe-switch svg{width:15px;height:15px}
 .hero-heading{margin:30px 4px 25px;max-width:100%}
 .hero-heading .eyebrow{max-width:260px;font-size:8px;letter-spacing:1.7px;margin-bottom:12px}
 .hero-heading h1{max-width:315px;font-size:43px;font-weight:630;line-height:1.06;letter-spacing:-2.2px;text-wrap:initial}
 .hero-heading p:last-child{max-width:255px;margin-top:16px;font-size:12px;line-height:1.6}
 .cabane-search{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0;padding:10px;border-radius:19px}
 .cabane-search-field{padding:8px 10px;border:0}
 .cabane-search-field label{font-size:10px}
 .cabane-search-field input,.cabane-search-field select{height:27px;font-size:16px;letter-spacing:-.6px}
 .search-piece-destination{grid-column:1/-1;border-bottom:1px solid var(--line)}
 .search-piece-arrival{border-right:1px solid var(--line)}
 .search-piece-arrival,.search-piece-departure{margin:6px 0;border-bottom:1px solid var(--line);padding-bottom:12px}
 .search-piece-guests{padding-block:5px}
 .cabane-search-submit{min-height:48px;margin:0 0 0 7px;padding:10px 9px;font-size:11px;border-radius:12px;gap:7px}
 .cabane-search-submit svg{width:17px;height:17px}
 .forest-cues{display:none}
 .cabane-hero-place{top:auto;bottom:15px;left:20px;right:20px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0;border:0;border-radius:0;background:none;backdrop-filter:none;font-size:9px}
 .cabane-hero-place-label{font-size:0;letter-spacing:0}.cabane-hero-place-label::after{content:'↗';font-size:14px}.cabane-hero-place>span:last-child{display:none}
 .category-strip{padding:15px 0 3px}.category-scroll{gap:7px}.category-scroll a{min-height:38px;padding:8px 14px;font-size:10px}
 .cabane-rail-section{padding:28px 0 9px}.rail-heading{align-items:center;gap:12px;margin-bottom:18px}
 .rail-heading p,.section-heading p{font-size:8px;letter-spacing:1.4px;margin-bottom:7px}
 .rail-heading h2,.section-heading h2{font-size:22px;letter-spacing:-.9px;line-height:1.2}
 .rail-actions{gap:0}.rail-actions>a,.rail-actions [data-rail-prev]{display:none}.rail-button{width:38px;height:38px}
 .listing-rail{grid-auto-columns:82%;gap:15px}.listing-media{border-radius:20px;aspect-ratio:1.23}.listing-card h3{font-size:15px}
 .listing-location{font-size:10px}.listing-meta{font-size:10px}.listing-meta strong{font-size:12px}
 .cabane-section{padding:38px 0}.section-heading{margin-bottom:20px}
 .intent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.intent-card{min-height:163px;padding:18px 15px;border-radius:20px}
 .intent-card svg{width:25px;height:25px}.intent-card span{margin-top:21px;font-size:7px;letter-spacing:.6px}.intent-card h3{font-size:15px;letter-spacing:-.4px}
 .seo-layout{grid-template-columns:1fr;gap:26px}.seo-copy h2{font-size:26px;letter-spacing:-.8px}.seo-copy h3{font-size:15px}.seo-copy p,.seo-aside p{font-size:12px}
 .seo-aside{padding:23px}.seo-aside h3{font-size:21px}.faq summary{padding-block:20px;font-size:13px}.faq details p{font-size:12px}
 .product-footer{margin-top:0;padding:32px 0 25px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px 18px}.footer-intro{grid-column:1/-1;max-width:100%}.footer-grid h2{margin-bottom:15px}.footer-grid a,.footer-grid p{font-size:10px}
 .footer-bottom{flex-direction:column;gap:7px;margin-top:26px}
 .mobile-bottom-nav{position:fixed;inset:auto 0 0;z-index:100;display:flex;align-items:center;justify-content:space-around;min-height:69px;padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:#fbf7f2f7;backdrop-filter:blur(18px)}
 .mobile-bottom-nav a{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:44px;min-height:45px;color:#978578;font-size:9px;font-weight:450}
 .mobile-bottom-nav svg{box-sizing:content-box;width:21px;height:21px;padding:4px 9px;border-radius:20px;stroke-linecap:round;stroke-linejoin:round}
 .mobile-bottom-nav .is-active{color:#986b4e}.mobile-bottom-nav .is-active svg{background:#fbe1ce;color:#996949}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cabane-2032 *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
