:root{--forest:#173a32;--forest-2:#0f2c26;--forest-3:#244b42;--sage:#8ba99b;--sand:#f4f0e7;--cream:#fbfaf6;--white:#fff;--ink:#1e2925;--muted:#67736e;--line:#dfe4df;--accent:#d5a653;--accent-dark:#b98637;--danger:#a9423b;--success:#2e7157;--blue:#416b80;--shadow:0 18px 50px rgba(20,43,35,.10);--shadow-sm:0 8px 24px rgba(20,43,35,.09);--radius:18px;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--display:'Manrope','DM Sans',Arial,sans-serif;--container:min(1180px,calc(100% - 40px))}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.container{width:var(--container);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-60px;z-index:999;background:#fff;padding:10px 15px;border-radius:6px}.skip-link:focus{top:16px}.eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--accent-dark);font:700 .72rem/1 var(--display);letter-spacing:.16em;text-transform:uppercase}.eyebrow svg{width:15px}.eyebrow-light{color:#efd7a7}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);letter-spacing:-.045em;line-height:1.07}h1 em,h2 em{font-family:var(--serif);font-weight:600}.section{padding:104px 0}.section-sand{background:var(--sand)}.section-heading{margin-bottom:42px}.section-heading h2{font-size:clamp(2.05rem,4vw,3.2rem);margin:12px 0 14px}.section-heading p{color:var(--muted);max-width:590px}.section-heading.centered{text-align:center}.section-heading.centered p{margin-inline:auto}.split-heading{display:flex;justify-content:space-between;align-items:end}.text-link{display:inline-flex;align-items:center;gap:7px;color:var(--forest);font-weight:700;border-bottom:1px solid #a8b7b1;padding-bottom:4px}.text-link svg{width:17px;transition:.2s}.text-link:hover svg{transform:translate(3px,-3px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 22px;border:1px solid transparent;border-radius:10px;font:700 .88rem/1 var(--display);transition:.2s ease}.btn svg{width:18px}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-primary{background:var(--forest);color:#fff}.btn-primary:hover{background:var(--forest-2)}.btn-accent{background:var(--accent);color:#17241f}.btn-accent:hover{background:#e0b86d}.btn-outline{border-color:#b6c1bc;background:transparent;color:var(--forest)}.btn-light{background:#fff;color:var(--forest)}.btn-lg{min-height:56px;padding-inline:28px}.btn-block{width:100%}.back-link{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-weight:600;margin-bottom:18px}.back-link svg{width:16px}
.site-header{position:sticky;top:0;z-index:100;height:82px;background:rgba(251,250,246,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(35,61,52,.08)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:11px;line-height:1}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:50% 50% 45% 45%;background:var(--forest);color:#fff}.brand-mark svg{width:23px}.brand strong{display:block;color:var(--forest);font:700 1.12rem/1 var(--serif)}.brand small{display:block;color:#6f7d76;font:700 .57rem/1 var(--display);letter-spacing:.25em;margin-top:5px}.main-nav{display:flex;align-items:center;gap:32px;margin-left:auto}.main-nav a,.account-link{font:600 .88rem/1 var(--display);color:#41504a}.main-nav a:hover,.account-link:hover{color:var(--forest)}.nav-actions{display:flex;align-items:center;gap:16px}.account-link{display:flex;align-items:center;gap:8px}.account-link svg{width:21px}.nav-cta{min-height:42px;padding-inline:19px}.menu-toggle{display:none;border:0;background:transparent;padding:8px}.flash-stack{position:fixed;right:24px;top:100px;z-index:200;display:grid;gap:10px}.flash{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:430px;padding:14px 18px;background:#fff;border-left:4px solid var(--forest);border-radius:8px;box-shadow:var(--shadow)}.flash-error{border-color:var(--danger)}.flash-success{border-color:var(--success)}.flash-info{border-color:var(--blue)}.flash button{border:0;background:transparent;font-size:22px;color:var(--muted)}
.hero{position:relative;min-height:690px;height:calc(100vh - 82px);max-height:820px;color:#fff;display:flex;align-items:center;padding-bottom:90px}.hero-bg,.hero-shade{position:absolute;inset:0}.hero-bg img{width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(7,25,23,.88) 0%,rgba(7,25,23,.55) 38%,rgba(7,25,23,.08) 72%),linear-gradient(0deg,rgba(8,26,23,.45),transparent 45%)}.hero-content{position:relative;z-index:2;padding-bottom:35px}.hero h1{font-size:clamp(3.1rem,6.3vw,5.8rem);max-width:800px;margin:19px 0 20px}.hero h1 em{color:#f3dfb8}.hero-content>p{font-size:1.1rem;max-width:550px;color:#e5ece8}.hero-proof{display:flex;align-items:center;gap:14px;margin-top:26px;font-size:.84rem;color:#dde7e2}.avatar-group{display:flex}.avatar-group span{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#d5a653;color:#173a32;border:2px solid #fff;font-size:.6rem;font-weight:800;margin-left:-7px}.avatar-group span:first-child{margin:0}.search-shell{position:absolute;bottom:-36px;left:50%;transform:translateX(-50%);z-index:5}.search-bar{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr auto;background:#fff;color:var(--ink);border-radius:14px;padding:9px;box-shadow:0 22px 65px rgba(9,26,22,.24)}.search-bar label{padding:9px 18px;border-right:1px solid var(--line)}.search-bar label>span{display:block;font:700 .68rem/1 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--forest);margin-bottom:8px}.search-bar label>div{display:flex;align-items:center;gap:8px}.search-bar svg{width:18px;color:var(--accent-dark);flex:0 0 auto}.search-bar input,.search-bar select{width:100%;border:0;background:transparent;outline:0;color:var(--muted);font-size:.87rem;min-width:0}.search-submit{border-radius:10px;min-width:130px}.trust-strip{padding:86px 0 34px}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.trust-grid>div{display:flex;gap:14px;align-items:center}.trust-grid svg{width:26px;color:var(--accent-dark);flex:0 0 auto}.trust-grid strong,.trust-grid small{display:block}.trust-grid strong{font-size:.88rem}.trust-grid small{font-size:.72rem;color:var(--muted);margin-top:2px}
.destination-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:250px 250px;gap:18px}.destination-card{position:relative;overflow:hidden;border-radius:var(--radius);color:#fff}.destination-card::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,24,20,.72),rgba(6,24,20,0) 60%)}.destination-card img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.destination-card:hover img{transform:scale(1.045)}.destination-large{grid-row:span 2}.destination-wide{grid-column:span 2}.destination-card>span{position:absolute;z-index:2;left:24px;right:24px;bottom:22px}.destination-card small,.destination-card strong,.destination-card em{display:block}.destination-card small{font:700 .65rem/1 var(--display);text-transform:uppercase;letter-spacing:.15em;color:#efd7a7}.destination-card strong{font:600 1.7rem/1.2 var(--serif);margin:6px 0}.destination-card em{font-style:normal;font-size:.75rem;color:#d9e2dd}
.chalet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.chalet-card{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 1px 0 rgba(17,52,42,.08);transition:.25s}.chalet-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden}.card-media>img{width:100%;height:100%;object-fit:cover;transition:.5s}.chalet-card:hover .card-media>img{transform:scale(1.035)}.card-badge{position:absolute;left:14px;top:14px;background:rgba(255,255,255,.94);padding:7px 10px;border-radius:999px;font-size:.67rem;font-weight:700;color:var(--forest)}.favorite-button{position:absolute;right:13px;top:13px;width:37px;height:37px;display:grid;place-items:center;background:rgba(255,255,255,.92);border:0;border-radius:50%;color:var(--forest)}.favorite-button svg{width:19px}.favorite-button.active svg{fill:#b85048;color:#b85048}.card-body{padding:20px}.card-location{display:flex;align-items:center;gap:5px;color:var(--accent-dark);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.card-location svg{width:14px}.card-body h3{font:600 1.25rem/1.25 var(--serif);margin:9px 0 7px}.card-body>p{font-size:.77rem;color:var(--muted);margin-bottom:17px}.card-footer{display:flex;justify-content:space-between;align-items:end;padding-top:15px;border-top:1px solid #edf0ed}.rating{display:flex;align-items:center;gap:4px;font-size:.75rem}.rating svg{width:14px;fill:var(--accent);color:var(--accent)}.rating span{color:var(--muted)}.card-price{text-align:right}.card-price strong,.card-price span{display:block}.card-price strong{color:var(--forest);font-size:.93rem}.card-price span{font-size:.68rem;color:var(--muted)}.center-action{text-align:center;margin-top:38px}
.experience-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:90px;align-items:center}.experience-photo{position:relative}.experience-photo>img{width:100%;height:580px;object-fit:cover;border-radius:3px 80px 3px 3px}.experience-note{position:absolute;left:-24px;bottom:34px;background:var(--forest);color:#fff;padding:23px 28px;width:275px;display:flex;gap:15px}.experience-note svg{width:24px;color:var(--accent)}.experience-note p{margin:0;font:600 1rem/1.45 var(--serif)}.experience-copy h2{font-size:clamp(2.4rem,4vw,3.4rem);margin:14px 0 20px}.experience-copy>p{color:var(--muted);max-width:510px}.service-list{display:grid;gap:22px;margin:35px 0}.service-list>div{display:flex;gap:16px}.service-list>div>span{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#eef2ee;color:var(--forest);flex:0 0 auto}.service-list svg{width:20px}.service-list h3{font:700 .95rem/1.3 var(--display);margin-bottom:4px}.service-list p{font-size:.79rem;color:var(--muted);margin:0}.testimonials{background:var(--forest);color:#fff}.section-heading.light h2{color:#fff}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial-grid blockquote{margin:0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.11);padding:30px;border-radius:14px}.stars{color:var(--accent);letter-spacing:.1em;font-size:.78rem}.testimonial-grid blockquote>p{font:500 1rem/1.7 var(--serif);margin:18px 0 28px;color:#eef4f0}.testimonial-grid footer{display:flex;align-items:center;gap:12px}.testimonial-grid footer>span{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:#d9b76f;color:var(--forest);font-size:.7rem;font-weight:800}.testimonial-grid footer strong,.testimonial-grid footer small{display:block}.testimonial-grid footer strong{font-size:.78rem}.testimonial-grid footer small{font-size:.66rem;color:#aebfb7}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}.faq-layout h2{font-size:2.8rem;margin:14px 0}.faq-layout>div:first-child p{color:var(--muted);max-width:320px;margin-bottom:30px}.faq-list details{border-top:1px solid var(--line);padding:21px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;justify-content:space-between;font-weight:700;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary svg{width:20px;transition:.2s}.faq-list details[open] summary svg{transform:rotate(45deg)}.faq-list details p{color:var(--muted);font-size:.88rem;max-width:650px;margin:14px 45px 0 0}.newsletter{background:#294c43;color:#fff;padding:66px 0}.newsletter-inner{display:flex;align-items:center;justify-content:space-between;gap:45px}.newsletter h2{font-size:2rem;margin:11px 0 7px}.newsletter p{color:#c5d2cc;margin:0}.newsletter form{display:flex;background:#fff;border-radius:10px;padding:6px;min-width:min(440px,100%)}.newsletter input{border:0;outline:0;flex:1;min-width:0;padding:0 15px}.site-footer{background:#102922;color:#c5d0cb;padding:72px 0 25px}.footer-grid{display:grid;grid-template-columns:1.7fr repeat(3,1fr);gap:60px}.brand-light .brand-mark{background:#fff;color:var(--forest)}.brand-light strong{color:#fff}.brand-light small{color:#aebcb6}.footer-intro>p{max-width:300px;font-size:.83rem;margin:20px 0}.socials{display:flex;gap:8px}.socials a{width:34px;height:34px;display:grid;place-items:center;border:1px solid #48635b;border-radius:50%}.socials svg{width:16px}.footer-grid h3{color:#fff;font:700 .75rem/1 var(--display);text-transform:uppercase;letter-spacing:.12em;margin-bottom:20px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:10px}.footer-grid a,.footer-grid p{font-size:.76rem}.footer-grid a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #2d4941;margin-top:55px;padding-top:22px;font-size:.68rem}.footer-bottom p{margin:0}.footer-bottom>div{display:flex;gap:18px}.language-select select{background:transparent;color:#c5d0cb;border:1px solid #48635b;border-radius:5px;padding:5px}
.page-hero{padding:78px 0;background:var(--sand)}.compact-hero{text-align:center}.compact-hero h1{font-size:clamp(2.4rem,5vw,4rem);margin:12px 0}.compact-hero p{color:var(--muted)}.listing-layout{display:grid;grid-template-columns:260px 1fr;gap:45px;padding:55px 0 100px}.filter-panel{position:sticky;top:105px;align-self:start}.filter-head{display:flex;justify-content:space-between}.filter-head h2{font-size:1.1rem;letter-spacing:-.02em}.filter-head button{display:none}.filter-panel form{display:grid;gap:0}.filter-group,.filter-dates{padding:20px 0;border-top:1px solid var(--line)}.filter-group>label,.filter-group>legend,.filter-dates label{display:block;font:700 .72rem/1 var(--display);text-transform:uppercase;letter-spacing:.07em;margin-bottom:11px}.filter-panel input,.filter-panel select{width:100%;border:1px solid #cad2ce;border-radius:8px;background:#fff;padding:11px 12px;font-size:.83rem}.input-icon{position:relative}.input-icon svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:17px;color:var(--muted)}.input-icon input{padding-left:37px}.filter-dates{display:grid;grid-template-columns:1fr 1fr;gap:10px}.filter-label-row{display:flex;justify-content:space-between;align-items:center}.filter-label-row span{font-size:.7rem;color:var(--muted)}.price-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.filter-group{border-left:0;border-right:0;border-bottom:0}.checkbox-grid{display:grid;gap:10px}.check{display:flex!important;align-items:center;gap:9px;font-size:.78rem!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer}.check input{position:absolute;opacity:0;width:1px!important}.check>span{width:17px;height:17px;border:1px solid #aab6b1;border-radius:4px;background:#fff;position:relative;flex:0 0 auto}.check input:checked+span{background:var(--forest);border-color:var(--forest)}.check input:checked+span::after{content:'✓';position:absolute;color:#fff;font-size:11px;left:3px;top:-2px}.reset-filters{display:block;text-align:center;margin-top:13px;text-decoration:underline;font-size:.75rem;color:var(--muted)}.results-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.results-head>div>span{font-size:.75rem;color:var(--muted)}.results-head h2{font-size:1.8rem;margin:3px 0 0}.results-head label{font-size:.7rem;color:var(--muted)}.results-head select{border:0;background:transparent;font-weight:700}.listing-grid{grid-template-columns:repeat(2,1fr)}.mobile-filter-bar{display:none}.empty-state{text-align:center;padding:70px 25px;background:#fff;border-radius:var(--radius)}.empty-state>svg{width:48px;color:var(--sage)}.empty-state h3{font:600 1.4rem var(--serif);margin:15px 0 8px}.empty-state p{color:var(--muted)}
.detail-top{padding-top:34px}.breadcrumbs{display:flex;align-items:center;gap:7px;font-size:.72rem;color:var(--muted);margin-bottom:25px}.breadcrumbs svg{width:13px}.detail-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.detail-title h1{font-size:clamp(2.2rem,4vw,3.6rem);margin:9px 0}.detail-title p{display:flex;align-items:center;gap:6px;margin:0;color:var(--muted);font-size:.82rem}.detail-title p svg{width:15px;color:var(--accent-dark)}.detail-actions{display:flex;gap:10px}.detail-actions button{display:flex;align-items:center;gap:7px;border:0;background:transparent;text-decoration:underline;font-size:.76rem}.detail-actions svg{width:16px}.gallery-grid{position:relative;display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:210px 210px;gap:8px;overflow:hidden;border-radius:16px}.gallery-item{border:0;padding:0;overflow:hidden;background:#ddd}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.4s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item-1{grid-row:span 2}.gallery-count{position:absolute;right:17px;bottom:17px;display:flex;gap:7px;align-items:center;background:#fff;border:0;border-radius:7px;padding:9px 13px;font-size:.72rem;font-weight:700}.gallery-count svg{width:15px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:70px;padding-top:60px;padding-bottom:100px}.detail-content>div{padding:34px 0;border-bottom:1px solid var(--line)}.detail-content>div:first-child{padding-top:0}.detail-content h2{font-size:1.55rem;letter-spacing:-.025em;margin-bottom:20px}.detail-summary{display:flex;justify-content:space-between;align-items:center}.detail-summary h2{margin-bottom:6px}.detail-summary p{color:var(--muted);font-size:.86rem;margin:0}.host-badge{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--forest);color:#fff}.host-badge svg{width:25px}.highlight-list{display:grid;gap:19px}.highlight-list>div{display:flex;gap:15px}.highlight-list svg{width:24px;color:var(--accent-dark)}.highlight-list strong,.highlight-list small{display:block}.highlight-list strong{font-size:.88rem}.highlight-list small{font-size:.75rem;color:var(--muted);margin-top:2px}.prose{color:#51605a;font-size:.9rem;line-height:1.85}.amenity-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.amenity-grid>div{display:flex;align-items:center;gap:11px;font-size:.83rem}.amenity-grid svg{width:21px;color:var(--forest)}.activity-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.activity-cards article{padding:22px;background:var(--sand);border-radius:12px}.activity-cards article>span{width:40px;height:40px;display:grid;place-items:center;background:#fff;border-radius:50%;color:var(--forest)}.activity-cards svg{width:20px}.activity-cards h3{font-size:.9rem;margin:13px 0 5px}.activity-cards p{font-size:.75rem;color:var(--muted);margin:0}.availability-calendar{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.availability-calendar>svg{width:31px;color:var(--forest)}.availability-calendar strong,.availability-calendar span{display:block}.availability-calendar span{font-size:.75rem;color:var(--muted)}.map-placeholder{height:260px;position:relative;display:flex;align-items:center;justify-content:center;background:#dfe8e0;border-radius:13px;overflow:hidden}.map-lines{position:absolute;inset:-50%;background:repeating-linear-gradient(30deg,transparent 0 45px,rgba(37,74,61,.08) 46px 49px),repeating-linear-gradient(120deg,transparent 0 70px,rgba(255,255,255,.5) 71px 75px);transform:rotate(8deg)}.map-placeholder>span{position:relative;width:48px;height:48px;display:grid;place-items:center;border-radius:50% 50% 50% 5px;transform:rotate(-45deg);background:var(--forest);color:#fff}.map-placeholder>span svg{transform:rotate(45deg);width:22px}.map-placeholder>div:last-child{position:absolute;left:18px;bottom:16px;background:#fff;padding:10px 13px;border-radius:8px;box-shadow:var(--shadow-sm)}.map-placeholder strong,.map-placeholder small{display:block}.map-placeholder small{font-size:.65rem;color:var(--muted)}.reviews-title h2{display:flex;align-items:center;gap:8px}.reviews-title svg{width:21px;fill:var(--accent);color:var(--accent)}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.review-author{display:flex;align-items:center;gap:10px}.review-author>span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--forest);color:#fff;font-size:.67rem}.review-author strong,.review-author small{display:block}.review-author strong{font-size:.78rem}.review-author small{font-size:.65rem;color:var(--muted)}.review-grid .stars{margin:11px 0 5px}.review-grid p{font-size:.78rem;color:#52615b}.booking-card{position:sticky;top:108px;align-self:start;background:#fff;border:1px solid #e0e5e1;border-radius:15px;padding:24px;box-shadow:var(--shadow)}.booking-price{display:flex;align-items:baseline;gap:5px;margin-bottom:18px}.booking-price>strong{font-size:1.22rem;color:var(--forest)}.booking-price>span{font-size:.75rem;color:var(--muted)}.booking-price>div{margin-left:auto;font-size:.7rem;display:flex;align-items:center;gap:3px}.booking-price svg{width:13px;fill:var(--accent);color:var(--accent)}.booking-dates{display:grid;grid-template-columns:1fr 1fr;border:1px solid #b9c4bf;border-radius:9px 9px 0 0;overflow:hidden}.booking-dates label,.booking-guests{display:block;padding:10px 12px;font:700 .62rem/1.2 var(--display);text-transform:uppercase;letter-spacing:.07em}.booking-dates label:first-child{border-right:1px solid #b9c4bf}.booking-dates input,.booking-guests select{display:block;width:100%;border:0;outline:0;background:transparent;font-size:.72rem;margin-top:5px}.booking-guests{border:1px solid #b9c4bf;border-top:0;border-radius:0 0 9px 9px;margin-bottom:13px}.booking-note{text-align:center;font-size:.68rem;color:var(--muted);margin:10px 0}.price-breakdown{font-size:.76rem;margin-top:18px}.price-breakdown>div{display:flex;justify-content:space-between;margin:8px 0}.price-breakdown .total{padding-top:12px;margin-top:14px;border-top:1px solid var(--line);font-size:.9rem}.booking-help{display:flex;gap:9px;border-top:1px solid var(--line);padding-top:17px;margin-top:17px;font-size:.7rem;color:var(--muted)}.booking-help svg{width:18px;color:var(--forest)}.booking-help a{text-decoration:underline;color:var(--forest);font-weight:700}

/* Footer, consentement cookies et retour en haut */
.site-footer{padding:0;background:#102922;color:#c5d0cb}.footer-main{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.55fr);gap:clamp(44px,7vw,100px);padding:72px 0 58px}.footer-intro{align-self:start}.footer-intro>p{max-width:360px;margin:22px 0 20px;color:#b9c8c1;font-size:.86rem;line-height:1.75}.footer-contact-link{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:.8rem;font-weight:700;margin-bottom:24px}.footer-contact-link svg{width:16px}.footer-contact-link:hover{color:var(--accent)}.footer-links-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,56px)}.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0}.footer-column h3{position:relative;margin:0 0 13px;padding-bottom:12px;color:#fff;font:700 .72rem/1 var(--display);letter-spacing:.13em;text-transform:uppercase}.footer-column h3:after{content:"";position:absolute;left:0;bottom:0;width:26px;height:1px;background:var(--accent)}.footer-column a,.footer-column p{margin:0;color:#bdcbc5;font-size:.79rem;line-height:1.55}.footer-column a{transition:color .18s ease,transform .18s ease}.footer-column a:hover{color:#fff;transform:translateX(2px)}.footer-contact a,.footer-contact p{display:flex;align-items:flex-start;gap:9px;max-width:240px}.footer-contact svg{width:15px;height:15px;flex:0 0 auto;margin-top:4px;color:#d7b574}.footer-contact a:hover{transform:none}.footer-bottom{min-height:74px;margin:0;padding:22px 0;border-top:1px solid #2b473f;display:flex;justify-content:space-between;align-items:center;gap:24px}.footer-bottom p{margin:0;color:#8fa29a;font-size:.68rem}.footer-legal{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap}.footer-legal a,.footer-legal button{border:0;background:transparent;padding:0;color:#9fb0a9;font:500 .68rem/1.4 var(--sans);cursor:pointer}.footer-legal a:hover,.footer-legal button:hover{color:#fff}.socials a{transition:background .18s ease,border-color .18s ease,color .18s ease}.socials a:hover{background:#fff;border-color:#fff;color:var(--forest)}
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:90;width:46px;height:46px;border:1px solid rgba(255,255,255,.36);border-radius:50%;display:grid;place-items:center;background:var(--forest);color:#fff;box-shadow:0 12px 30px rgba(10,32,25,.24);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease,background .2s ease}.back-to-top svg{width:19px}.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--forest-2)}body.cookie-banner-open .back-to-top{opacity:0;visibility:hidden;pointer-events:none}
.cookie-consent{position:fixed;left:50%;bottom:20px;z-index:200;width:min(920px,calc(100% - 32px));transform:translateX(-50%);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding:20px 22px;background:#fff;border:1px solid #dce3df;border-radius:16px;box-shadow:0 22px 70px rgba(15,39,31,.22)}.cookie-consent[hidden]{display:none}.cookie-consent-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:#edf3ef;color:var(--forest)}.cookie-consent-icon svg{width:22px}.cookie-consent-copy strong{display:block;color:var(--ink);font:700 .94rem/1.3 var(--display);margin-bottom:5px}.cookie-consent-copy p{margin:0;color:var(--muted);font-size:.73rem;line-height:1.6}.cookie-consent-copy a{color:var(--forest);font-weight:700;text-decoration:underline;text-underline-offset:3px}.cookie-consent-actions{display:flex;gap:8px}.cookie-consent-actions .btn{min-height:42px;padding-inline:15px;font-size:.72rem;white-space:nowrap}
.cms-blog-cover--placeholder{min-height:180px;display:grid;place-items:center;background:linear-gradient(145deg,#173a32,#31594e);color:#fff}.cms-blog-cover--placeholder span{display:flex;align-items:center;gap:9px;font:700 .7rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase}.cms-blog-cover--placeholder svg{width:24px;color:var(--accent)}
@media(max-width:900px){.footer-main{grid-template-columns:1fr;gap:46px}.footer-intro>p{max-width:520px}.footer-links-grid{grid-template-columns:repeat(3,1fr)}.cookie-consent{grid-template-columns:auto 1fr}.cookie-consent-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:650px){.footer-main{padding:54px 0 42px}.footer-links-grid{grid-template-columns:1fr 1fr;gap:34px 26px}.footer-bottom{align-items:flex-start;flex-direction:column}.footer-legal{justify-content:flex-start;gap:13px 16px}.back-to-top{right:16px;bottom:16px;width:44px;height:44px}.cookie-consent{bottom:12px;width:calc(100% - 20px);grid-template-columns:1fr;padding:17px}.cookie-consent-icon{display:none}.cookie-consent-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}.cookie-consent-actions .btn{white-space:normal;padding-inline:10px}.cms-blog-cover--placeholder{min-height:155px}}
@media(max-width:440px){.footer-links-grid{grid-template-columns:1fr}.cookie-consent-actions{grid-template-columns:1fr}}
