:root{color:#17312f;font-synthesis:none;text-rendering:optimizelegibility;--ink:#17312f;--ink-soft:#5e6c68;--pine:#173734;--pine-deep:#0d2725;--sea:#346b68;--cream:#f4f0e8;--paper:#fbf9f4;--sand:#dfd4c1;--warm:#d77b59;--line:#17312f29;--serif:"Iowan Old Style", "Baskerville", "Times New Roman", serif;background:#f4f0e8;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:var(--cream);min-width:320px;color:var(--ink);margin:0;overflow-x:hidden}body.no-scroll{overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.page-shell{width:min(1180px,100% - 48px);margin-inline:auto}.section-pad{padding-block:124px}.eyebrow{color:var(--sea);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:23px;font-size:.72rem;font-weight:750;line-height:1.3;display:flex}.eyebrow:before{content:"";background:currentColor;width:34px;height:1px}.eyebrow svg+:scope:before{display:none}.eyebrow--light{color:#e7ded0}.section-number{color:#80918c;font-family:var(--serif);margin-bottom:72px;font-size:1.05rem;font-style:italic;display:block}.reveal{opacity:0;transition:opacity .75s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s), transform .75s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s);transform:translateY(28px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.button{cursor:pointer;letter-spacing:.025em;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:14px;min-height:52px;padding:0 24px;font-size:.84rem;font-weight:720;transition:background-color .2s,color .2s,border-color .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--warm{background:var(--warm);color:#fffaf4}.button--warm:hover{background:#bd6042}.button--dark{background:var(--pine);color:#fff}.button--dark:hover{background:var(--pine-deep)}.button--outline-light{color:#fff;border-color:#ffffff75}.button--outline-light:hover{color:var(--pine);background:#fff}.text-link,.arrow-link{cursor:pointer;letter-spacing:.055em;background:0 0;border:0;align-items:center;gap:11px;font-size:.8rem;font-weight:750;display:inline-flex}.text-link--light{color:#fff}.text-link:after{position:absolute}.text-link svg,.arrow-link svg{transition:transform .18s}.text-link:hover svg{transform:translateY(3px)}.arrow-link:hover svg{transform:translate(3px,-3px)}.site-header{z-index:50;color:#fff;transition:color .22s,background-color .22s,box-shadow .22s;position:fixed;top:0;left:0;right:0}.site-header--solid{color:var(--ink);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#faf8f3f5;box-shadow:0 10px 35px #0e262314}.nav-shell{justify-content:space-between;align-items:center;gap:28px;width:min(1340px,100% - 56px);height:86px;margin-inline:auto;display:flex}.brand-link{z-index:2;flex:none;position:relative}.logo{color:var(--pine);align-items:center;gap:11px;display:inline-flex}.logo svg{fill:none;width:35px;stroke:var(--warm);stroke-linecap:round;stroke-width:3.1px}.logo span{gap:0;line-height:1;display:grid}.logo strong{font-family:var(--serif);letter-spacing:.01em;font-size:1.25rem;font-weight:600}.logo small{letter-spacing:.17em;text-transform:uppercase;margin-top:2px;font-size:.61rem;font-weight:730}.logo--light{color:#fff}.desktop-nav{align-items:center;gap:clamp(22px,2.6vw,42px);display:flex}.desktop-nav a{letter-spacing:.05em;font-size:.76rem;font-weight:680;position:relative}.desktop-nav a:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .2s;position:absolute;bottom:-7px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after{transform-origin:0;transform:scaleX(1)}.desktop-nav a.active:after{transform:scaleX(1)}.route-page{background:var(--paper)}.route-page .detail-hero,.route-page .motorhome-hero{padding-top:0}.route-page--contact{background:#315c59;padding-top:86px}.contact-page-section{min-height:calc(100vh - 86px);padding-block:110px}.contact-page-section .contact__intro h1{font-family:var(--serif);letter-spacing:-.045em;margin-bottom:0;font-size:clamp(3rem,5.2vw,5.3rem);font-weight:400;line-height:.98}.motorhome-hero{color:#fff;height:min(760px,82vh);min-height:620px;position:relative;overflow:hidden}.motorhome-hero>img,.motorhome-hero__veil{width:100%;height:100%;position:absolute;inset:0}.motorhome-hero>img{object-fit:cover;object-position:center 58%}.motorhome-hero__veil{background:linear-gradient(90deg,#071d1bcc,#071d1b14 72%),linear-gradient(#0000 40%,#071d1b6b)}.motorhome-hero__copy{z-index:2;flex-direction:column;justify-content:flex-end;align-items:flex-start;width:min(1180px,100% - 48px);height:100%;margin-inline:auto;padding-bottom:72px;display:flex;position:relative}.motorhome-hero__copy>p{color:#edb092;letter-spacing:.16em;text-transform:uppercase;margin-bottom:20px;font-size:.68rem;font-weight:760}.motorhome-hero__copy h1,.detail-hero__copy h1{max-width:760px;font-family:var(--serif);letter-spacing:-.055em;margin-bottom:30px;font-size:clamp(4rem,7vw,7rem);font-weight:400;line-height:.88}.motorhome-hero__copy>span{color:var(--ink);background:#f8f5ede6;padding:8px 12px;font-size:.6rem;font-weight:700}.motorhome-route{background:var(--pine);color:#fff;grid-template-columns:.86fr 1.14fr;display:grid}.motorhome-route__copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(65px,8vw,120px);display:flex}.motorhome-route__copy h2,.motorhome-delivery>div p{font-family:var(--serif);letter-spacing:-.045em;margin-bottom:25px;font-size:clamp(3rem,4.5vw,4.8rem);font-weight:400;line-height:.97}.motorhome-route__copy>p:not(.eyebrow){color:#ffffffab;line-height:1.75}.motorhome-route__copy ul{border-top:1px solid #ffffff29;gap:0;width:100%;margin:30px 0 0;padding:0;list-style:none;display:grid}.motorhome-route__copy li{border-bottom:1px solid #ffffff29;align-items:center;gap:10px;padding:14px 0;font-size:.74rem;display:flex}.motorhome-route__copy li svg{width:14px;color:var(--warm)}.motorhome-route__visual{min-height:680px;position:relative}.motorhome-route__visual>img{object-fit:cover;width:100%;height:100%}.motorhome-route__visual>div{color:var(--ink);background:#faf8f3f0;grid-template-columns:auto 1fr auto 1fr;align-items:center;gap:15px;padding:20px 24px;font-size:.75rem;font-weight:700;display:grid;position:absolute;bottom:35px;left:35px;right:35px}.motorhome-route__visual svg{color:var(--warm)}.motorhome-delivery{grid-template-columns:1fr 1fr;align-items:center;gap:90px;width:min(1180px,100% - 48px);margin-inline:auto;padding-block:110px;display:grid}.motorhome-delivery>div{grid-template-columns:48px 1fr;align-items:start;gap:22px;display:grid}.motorhome-delivery>div svg{width:42px;height:42px;color:var(--warm);stroke-width:1.4px}.motorhome-delivery>div p{margin:0}.motorhome-delivery>p{color:var(--ink-soft);margin:0;line-height:1.8}.route-not-found{align-content:center;place-items:center;gap:30px;min-height:80vh;display:grid}.route-not-found h1{font-family:var(--serif);margin:0;font-size:8rem;font-weight:400}.nav-actions{z-index:2;align-items:center;gap:18px;display:flex;position:relative}.language-switcher{gap:3px;display:flex}.language-switcher button,.mobile-languages button{color:inherit;cursor:pointer;opacity:.5;background:0 0;border:0;padding:4px;font-size:.66rem;font-weight:760}.language-switcher button.is-active,.mobile-languages button.is-active{opacity:1;text-underline-offset:4px;text-decoration:underline}.nav-cta{color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:999px;align-items:center;gap:8px;padding:11px 16px;font-size:.7rem;font-weight:730;display:flex}.menu-toggle{background:0 0;border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;padding:0;display:none}.menu-toggle svg{width:20px}.mobile-menu{display:none}.scroll-progress{background:var(--warm);pointer-events:none;transform-origin:0;height:2px;position:absolute;bottom:0;left:0;right:0}.hero{background:var(--pine-deep);color:#fff;height:max(760px,94vh);min-height:700px;position:relative;overflow:hidden}.hero__image,.hero__veil,.hero__grain{width:100%;height:100%;position:absolute;inset:0}.hero__image{object-fit:cover;object-position:55% 48%;animation:1.6s cubic-bezier(.2,.7,.2,1) both hero-in}.hero__veil{background:linear-gradient(90deg,#071b19d6 0%,#071b198f 43%,#071b191f 74%),linear-gradient(#0000 45%,#05161480)}.hero__grain{opacity:.15;mix-blend-mode:soft-light;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E")}.hero__content{z-index:2;flex-direction:column;justify-content:center;align-items:flex-start;height:100%;padding-top:52px;padding-bottom:92px;display:flex;position:relative}.hero__content .eyebrow{margin-bottom:54px;animation:.7s .25s both fade-up}.hero__content .eyebrow:before{display:none}.hero__kicker{color:#e8ded0;font-family:var(--serif);margin-bottom:12px;font-size:1.22rem;font-style:italic;animation:.7s .35s both fade-up}.hero h1{max-width:830px;font-family:var(--serif);letter-spacing:-.055em;margin-bottom:28px;font-size:clamp(4.4rem,8.3vw,8rem);font-weight:400;line-height:.82;animation:.9s .43s both fade-up}.hero h1 em{color:#e1ad8d;font-weight:400}.hero__lead{color:#ffffffd1;width:min(610px,100%);max-width:610px;margin-bottom:34px;font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.65;animation:.7s .58s both fade-up}.hero__actions{align-items:center;gap:32px;animation:.7s .68s both fade-up;display:flex}.hero__stamp{z-index:2;color:#ffffffd6;width:134px;height:134px;animation:.9s .8s both fade-up;position:absolute;bottom:105px;right:7vw}.hero__stamp svg{width:100%;height:100%;overflow:visible}.hero__stamp text{fill:currentColor;letter-spacing:1.7px;font-size:6.6px;font-weight:650}.stamp-wave{fill:none;stroke:var(--warm);stroke-linecap:round;stroke-width:2.4px}.hero__note{z-index:2;background:var(--cream);width:min(390px,32vw);min-height:82px;color:var(--ink);align-items:center;gap:16px;padding:18px 36px;display:flex;position:absolute;bottom:0;right:0}.hero__note svg{color:var(--warm);flex:none}.hero__note span{color:var(--ink-soft);gap:4px;font-size:.7rem;display:grid}.hero__note strong{color:var(--ink);font-size:.78rem}.quick-book{z-index:4;background:var(--paper);grid-template-columns:1.25fr repeat(4,1fr) 1.2fr;min-height:112px;margin-top:-30px;display:grid;position:relative;box-shadow:0 24px 65px #16302d1f}.quick-book__title,.quick-book label,.quick-book button{border-right:1px solid var(--line);min-width:0}.quick-book__title{color:var(--pine);align-items:center;gap:13px;padding:20px 24px;display:flex}.quick-book__title svg{color:var(--warm);flex:none}.quick-book__title strong{font-family:var(--serif);font-size:1rem;line-height:1.2}.quick-book label{flex-direction:column;justify-content:center;gap:8px;padding:18px 20px;display:flex}.quick-book label span,.inquiry-card label>span{color:#7c8985;letter-spacing:.11em;text-transform:uppercase;font-size:.64rem;font-weight:740}.quick-book input,.quick-book select{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font-size:.82rem;font-weight:650}.quick-book button{background:var(--warm);color:#fff;cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;padding:18px;font-size:.74rem;font-weight:750;transition:background .18s;display:flex}.quick-book button:hover{background:#bd6042}.intro{padding-top:150px}.intro__grid{grid-template-columns:1fr 3fr;gap:52px;display:grid}.intro__copy h2,.section-heading h2,.experience__heading h2,.contact h2{font-family:var(--serif);letter-spacing:-.045em;margin-bottom:0;font-size:clamp(3rem,5.2vw,5.3rem);font-weight:400;line-height:.98}.intro__body{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:40px;margin-top:46px;padding-top:30px;display:grid}.intro__body p{max-width:690px;color:var(--ink-soft);margin-bottom:0;font-size:1.05rem;line-height:1.8}.round-link{border:1px solid var(--line);border-radius:50%;place-items:center;width:58px;height:58px;transition:background .18s,color .18s,transform .18s;display:grid}.round-link:hover{background:var(--pine);color:#fff;transform:translateY(3px)}.stays{background:var(--paper)}.section-heading{grid-template-columns:minmax(0,1.6fr) minmax(240px,.7fr);align-items:end;gap:60px;margin-bottom:72px;display:grid}.section-heading>p{color:var(--ink-soft);margin-bottom:3px;line-height:1.75}.stay-grid{gap:32px;display:grid}.stay-card{background:var(--cream);grid-template-columns:1.28fr .72fr;min-height:650px;display:grid;overflow:hidden}.stay-card--motorhome{background:#dce2dd;grid-template-columns:.72fr 1.28fr}.stay-card__image{min-height:460px;position:relative;overflow:hidden}.stay-card__image img{object-fit:cover;width:100%;height:100%;transition:transform .9s cubic-bezier(.22,1,.36,1)}.stay-card--naust .stay-card__image img{object-position:52% 48%}.stay-card:hover .stay-card__image img{transform:scale(1.035)}.image-tag,.concept-note{color:var(--ink);letter-spacing:.1em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8f5eded;padding:9px 13px;font-size:.64rem;font-weight:750;position:absolute;bottom:22px;right:22px}.concept-note{color:#586662;text-transform:none;left:22px;right:auto}.stay-card__content{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(42px,5vw,76px);display:flex;position:relative}.stay-card__content:after{color:#17312f12;content:attr(data-index);font-family:var(--serif);pointer-events:none;font-size:5.7rem;font-style:italic;line-height:1;position:absolute;top:34px;right:36px}.stay-card__content>*{z-index:1;position:relative}.card-kicker{color:var(--sea);letter-spacing:.14em;text-transform:uppercase;margin-bottom:44px;font-size:.67rem;font-weight:750}.stay-card h3{font-family:var(--serif);letter-spacing:-.04em;margin-bottom:10px;font-size:clamp(2.8rem,4.3vw,4.5rem);font-weight:400;line-height:.98}.stay-card__subtitle{color:var(--warm);font-family:var(--serif);margin-bottom:30px;font-size:1.25rem;font-style:italic}.stay-card__subtitle+p{color:var(--ink-soft);margin-bottom:30px;line-height:1.75}.chip-list{flex-wrap:wrap;gap:8px;margin:0 0 42px;padding:0;list-style:none;display:flex}.chip-list li{border:1px solid #17312f2e;border-radius:999px;align-items:center;gap:6px;padding:8px 11px;font-size:.67rem;font-weight:680;display:flex}.chip-list svg{color:var(--warm)}.delivery-note{border-top:1px solid #17312f29;border-bottom:1px solid #17312f29;grid-template-columns:25px 1fr;gap:12px;width:100%;margin:-13px 0 34px;padding:17px 0;display:grid}.delivery-note>svg{color:var(--warm);stroke-width:1.7px}.delivery-note div{gap:4px;display:grid}.delivery-note strong{font-family:var(--serif);font-size:1rem;font-weight:600}.delivery-note span{color:var(--ink-soft);font-size:.72rem;line-height:1.5}.details{background:var(--pine);color:#fff;overflow:hidden}.details__grid{grid-template-columns:1.08fr .92fr;align-items:center;gap:clamp(70px,9vw,132px);display:grid}.details__photos{min-height:720px;position:relative}.details__photo-main{object-fit:cover;width:82%;height:640px}.details__photo-float{border:12px solid var(--pine);object-fit:cover;width:48%;height:260px;position:absolute;bottom:0;right:0}.details__caption{color:#ffffff94;font-family:var(--serif);letter-spacing:.12em;writing-mode:vertical-rl;font-size:.82rem;font-style:italic;position:absolute;top:25px;right:4px}.details__copy h2,.location-panel h2{font-family:var(--serif);letter-spacing:-.04em;margin-bottom:26px;font-size:clamp(3rem,4.4vw,4.6rem);font-weight:400;line-height:.98}.details__lead{color:#ffffffad;margin-bottom:55px;line-height:1.75}.detail-list{border-top:1px solid #ffffff29}.detail-item{border-bottom:1px solid #ffffff29;grid-template-columns:38px 1fr;gap:18px;padding-block:23px;display:grid}.detail-item>svg{color:#e3a485;stroke-width:1.6px;width:24px}.detail-item h3{font-family:var(--serif);margin-bottom:6px;font-size:1.25rem;font-weight:500}.detail-item p{color:#ffffff9e;margin-bottom:0;font-size:.84rem;line-height:1.6}.experience__heading{text-align:center;max-width:760px;margin:0 auto 74px}.experience__heading .eyebrow{justify-content:center}.experience-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-bottom:120px;display:grid}.experience-card{border-right:1px solid var(--line);isolation:isolate;min-height:340px;padding:48px 42px;transition:color .38s;position:relative;overflow:hidden}.experience-card:last-child{border-right:0}.experience-card__number{z-index:3;color:#8d9995;font-family:var(--serif);font-size:.82rem;font-style:italic;transition:color .38s;position:absolute;top:28px;right:28px}.experience-card__image,.experience-card__veil{z-index:-2;opacity:0;width:100%;height:100%;transition:opacity .45s,transform .85s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.experience-card__image{object-fit:cover;transform:scale(1.05)}.experience-card__veil{z-index:-1;background:linear-gradient(#0823203d,#082320eb)}.experience-card__icon{z-index:2;width:38px;height:38px;color:var(--warm);stroke-width:1.4px;margin-bottom:62px;transition:color .38s,transform .38s;position:relative}.experience-card__copy{z-index:2;position:relative}.experience-card h3{font-family:var(--serif);margin-bottom:15px;font-size:1.8rem;font-weight:500}.experience-card p{color:var(--ink-soft);margin-bottom:0;font-size:.9rem;line-height:1.7;transition:color .38s}@media (hover:hover){.experience-card:hover{color:#fff}.experience-card:hover .experience-card__image,.experience-card:hover .experience-card__veil{opacity:1}.experience-card:hover .experience-card__image{transform:scale(1)}.experience-card:hover .experience-card__number,.experience-card:hover p{color:#ffffffb8}.experience-card:hover .experience-card__icon{color:#f2aa87;transform:translateY(-4px)}}.location-panel{background:var(--pine-deep);color:#fff;grid-template-columns:1.08fr .92fr;min-height:600px;display:grid;overflow:hidden}.location-panel__image{min-height:480px;position:relative}.location-panel__image:after{content:"";background:linear-gradient(90deg,#0000 60%,#0d27254d);position:absolute;inset:0}.location-panel__image img{object-fit:cover;width:100%;height:100%}.location-marker{z-index:2;color:var(--pine);background:#f6f1e8eb;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:.7rem;font-weight:750;display:flex;position:absolute;top:23%;left:58%;box-shadow:0 10px 25px #0c252240}.location-marker svg{width:15px;color:var(--warm)}.location-panel__copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(48px,6vw,84px);display:flex}.location-panel__copy>p:not(.eyebrow){color:#ffffffab;margin-bottom:30px;line-height:1.75}.location-panel__copy ul{gap:15px;margin:0 0 38px;padding:0;list-style:none;display:grid}.location-panel__copy li{align-items:center;gap:12px;font-size:.83rem;display:flex}.location-panel__copy li svg{color:#e3a485}.gallery{background:var(--paper)}.section-heading--gallery{margin-bottom:58px}.gallery-grid{grid-auto-flow:dense;grid-template-columns:repeat(12,1fr);grid-auto-rows:260px;gap:14px;display:grid}.gallery-item{min-width:0}.gallery-item--1{grid-area:span 2/span 7}.gallery-item--2,.gallery-item--3{grid-column:span 5}.gallery-item--4,.gallery-item--5,.gallery-item--6{grid-column:span 4}.gallery-item--7{grid-column:span 5}.gallery-item--8{grid-column:span 7}.gallery-item button{cursor:zoom-in;background:#d6d8d2;border:0;width:100%;height:100%;padding:0;position:relative;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.22,1,.36,1),filter .4s}.gallery-item--3 img{object-position:center 30%}.gallery-item--6 img{object-position:center 62%}.gallery-item button:hover img{filter:brightness(.84);transform:scale(1.04)}.gallery-item__open{width:46px;height:46px;color:var(--ink);opacity:0;background:#f9f6efeb;border-radius:50%;place-items:center;transition:opacity .2s,transform .2s;display:grid;position:absolute;bottom:18px;right:18px;transform:translateY(8px)}.gallery-item button:hover .gallery-item__open{opacity:1;transform:translateY(0)}.gallery-item__label{color:#fff;font-family:var(--serif);opacity:0;text-align:left;text-shadow:0 2px 16px #00000080;align-items:center;gap:12px;font-size:1.02rem;transition:opacity .22s,transform .22s;display:flex;position:absolute;bottom:21px;left:20px;right:78px;transform:translateY(7px)}.gallery-item__label small{letter-spacing:.1em;font-family:Inter,ui-sans-serif,sans-serif;font-size:.62rem;font-style:normal}.gallery-item button:hover .gallery-item__label{opacity:1;transform:translateY(0)}.contact{color:#fff;background:#315c59;position:relative;overflow:hidden}.contact:before{content:"";border:1px solid #ffffff12;border-radius:50%;width:620px;height:620px;position:absolute;top:-280px;left:-230px;box-shadow:0 0 0 80px #ffffff06,0 0 0 160px #ffffff05}.contact__grid{grid-template-columns:.86fr 1.14fr;align-items:center;gap:clamp(60px,8vw,120px);display:grid;position:relative}.contact__intro>p:not(.eyebrow){color:#ffffffb8;max-width:510px;margin:32px 0 44px;line-height:1.75}.contact__intro ul{gap:16px;margin:0;padding:0;list-style:none;display:grid}.contact__intro li{align-items:center;gap:13px;font-size:.83rem;display:flex}.contact__intro li svg{color:#edaf8f;stroke-width:1.7px;width:19px}.inquiry-card{background:var(--paper);min-height:630px;color:var(--ink);padding:clamp(36px,5vw,66px)}.inquiry-card form{gap:23px;display:grid}.inquiry-card__header{border-bottom:1px solid var(--line);color:#7d8a86;letter-spacing:.16em;justify-content:space-between;align-items:center;margin-bottom:5px;padding-bottom:18px;font-size:.58rem;font-weight:760;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:22px;display:grid}.inquiry-card label:not(.checkbox-field){gap:9px;display:grid}.inquiry-card input,.inquiry-card select,.inquiry-card textarea{width:100%;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #b8c0bc;border-radius:0;outline:0;padding:11px 0 13px;font-size:.9rem;transition:border-color .18s}.inquiry-card textarea{resize:vertical}.inquiry-card input:focus,.inquiry-card select:focus,.inquiry-card textarea:focus{border-color:var(--warm)}.inquiry-card input::placeholder,.inquiry-card textarea::placeholder{color:#9aa4a0}.checkbox-field{cursor:pointer;display:block}.checkbox-field>input{opacity:0;width:1px;height:1px;position:absolute}.checkbox-field>span{color:#6e7c77;align-items:flex-start;gap:10px;font-size:.73rem;line-height:1.5;display:flex}.checkbox-field i{color:#0000;border:1px solid #a7b1ad;flex:none;place-items:center;width:19px;height:19px;font-style:normal;display:grid}.checkbox-field input:checked+span i{border-color:var(--pine);background:var(--pine);color:#fff}.form-submit{width:100%;margin-top:5px}.form-submit:disabled{cursor:wait;opacity:.75}.success-state{flex-direction:column;justify-content:center;align-items:flex-start;min-height:500px;display:flex}.success-state>span{width:64px;height:64px;color:var(--sea);background:#dce7df;border-radius:50%;place-items:center;margin-bottom:32px;display:grid}.success-state h3{max-width:400px;font-family:var(--serif);letter-spacing:-.035em;margin-bottom:18px;font-size:2.7rem;font-weight:500;line-height:1.05}.success-state p{color:var(--ink-soft);margin-bottom:34px;line-height:1.7}.mobile-booking-cta{display:none}.language-prompt-overlay{z-index:75;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#06181699;place-items:center;padding:24px;animation:.22s both lightbox-in;display:grid;position:fixed;inset:0}.language-prompt{background:#fbf9f4fc;border:1px solid #17312f1f;width:min(610px,100%);padding:34px;animation:.42s cubic-bezier(.22,1,.36,1) both language-prompt-in;box-shadow:0 24px 70px #08221f33}.language-prompt__heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.language-prompt__heading .logo strong,.language-prompt__heading .logo small{display:none}.language-prompt__heading .logo svg{width:28px}.language-prompt__heading p{color:var(--sea);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.62rem;font-weight:760}.language-prompt>h2{font-family:var(--serif);letter-spacing:-.035em;margin-bottom:8px;font-size:clamp(2.15rem,4vw,3.25rem);font-weight:400;line-height:1.05}.language-prompt>p{color:var(--ink-soft);margin-bottom:22px;font-size:.84rem}.language-prompt__choices{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.language-prompt__choices button{border:1px solid var(--line);min-width:0;min-height:150px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;grid-template-rows:auto 1fr auto;place-items:center start;gap:12px;padding:18px;transition:border-color .18s,background-color .18s,transform .18s;display:grid}.language-prompt__choices button:hover,.language-prompt__choices button:focus-visible{border-color:var(--sea);background:#fff;transform:translateY(-3px)}.language-prompt__flag{border-radius:2px;width:48px;height:32px;box-shadow:0 0 0 1px #17312f1f,0 5px 13px #17312f1a}.language-prompt__choice-copy{gap:3px;display:grid}.language-prompt__choice-copy small{color:var(--warm);letter-spacing:.1em;font-size:.6rem;font-weight:800}.language-prompt__choice-copy strong{font-family:var(--serif);font-size:1.25rem;font-weight:500}.language-prompt__choices button{position:relative}.language-prompt__arrow{width:16px;transition:transform .18s;position:absolute;bottom:15px;right:15px}.language-prompt__choices button:hover .language-prompt__arrow{transform:translate(3px)}@keyframes language-prompt-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.booking-overlay{z-index:90;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#061816d1;place-items:center;padding:24px;animation:.18s both lightbox-in;display:grid;position:fixed;inset:0}.booking-panel{background:var(--paper);grid-template-columns:330px minmax(0,1fr);width:min(1180px,100%);height:min(780px,100vh - 48px);max-height:860px;display:grid;overflow:hidden;box-shadow:0 34px 100px #0000004d}.booking-sidebar{background:var(--pine);color:#fff;flex-direction:column;min-height:0;padding:36px 38px 0;display:flex;position:relative;overflow:hidden}.booking-sidebar__intro{z-index:2;margin-top:70px;position:relative}.booking-sidebar__intro p,.booking-kicker{color:var(--warm);letter-spacing:.16em;text-transform:uppercase;margin-bottom:17px;font-size:.63rem;font-weight:770}.booking-sidebar__intro h2{font-family:var(--serif);letter-spacing:-.04em;margin-bottom:0;font-size:2.45rem;font-weight:400;line-height:.98}.booking-steps{z-index:2;gap:0;margin:50px 0 0;padding:0;list-style:none;display:grid;position:relative}.booking-steps li{color:#fff6;border-top:1px solid #ffffff24;grid-template-columns:31px 1fr;align-items:center;gap:8px;min-height:47px;transition:color .18s;display:grid}.booking-steps li:last-child{border-bottom:1px solid #ffffff24}.booking-steps li>span{border:1px solid #ffffff42;border-radius:50%;place-items:center;width:21px;height:21px;font-size:.54rem;display:grid}.booking-steps li strong{letter-spacing:.04em;font-size:.7rem;font-weight:650}.booking-steps li.is-active{color:#fff}.booking-steps li.is-active>span{border-color:var(--warm);background:var(--warm)}.booking-steps li.is-complete{color:#ffffffb8}.booking-steps li.is-complete>span{color:var(--pine-deep);background:#8eb2a8;border-color:#8eb2a8}.booking-sidebar__image{opacity:.42;height:175px;position:absolute;bottom:0;left:0;right:0}.booking-sidebar__image:after{background:linear-gradient(0deg, #17373414, var(--pine));content:"";position:absolute;inset:0}.booking-sidebar__image img{object-fit:cover;width:100%;height:100%}.booking-main{flex-direction:column;min-width:0;min-height:0;display:flex}.booking-header{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;min-height:72px;padding:0 32px 0 68px;display:flex}.booking-header>span{color:#82908c;font-family:var(--serif);letter-spacing:.08em;font-size:.77rem;font-style:italic}.booking-header button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:40px;height:40px;transition:background .18s,color .18s;display:grid}.booking-header button:hover{background:var(--pine);color:#fff}.booking-header button svg{width:18px}.booking-form{flex-direction:column;flex:1;min-height:0;display:flex}.booking-view{flex:1;min-height:0;padding:42px 68px 32px;overflow-y:auto}.booking-stage{max-width:720px;margin-inline:auto;animation:.35s both fade-up}.booking-stage h2,.booking-success h2{max-width:670px;font-family:var(--serif);letter-spacing:-.045em;margin-bottom:16px;font-size:clamp(2.7rem,4vw,4.2rem);font-weight:400;line-height:.97}.booking-stage__lead{max-width:560px;color:var(--ink-soft);margin-bottom:30px;font-size:.9rem;line-height:1.7}.booking-stay-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.booking-stay-grid>button{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:#fff;padding:0;transition:border-color .18s,box-shadow .18s,transform .18s;position:relative;overflow:hidden}.booking-stay-grid>button:hover{border-color:var(--sea);transform:translateY(-2px)}.booking-stay-grid>button.is-selected{border-color:var(--pine);box-shadow:inset 0 0 0 1px var(--pine)}.booking-stay-grid img{object-fit:cover;width:100%;height:165px}.booking-choice__check{color:#0000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0d272559;border:1px solid #fffc;border-radius:50%;place-items:center;width:29px;height:29px;display:grid;position:absolute;top:14px;right:14px}.booking-choice__check svg{width:15px}.booking-stay-grid button.is-selected .booking-choice__check{background:var(--warm);color:#fff}.booking-choice__copy{align-content:start;min-height:155px;padding:20px 22px 23px;display:grid}.booking-choice__copy small{color:var(--warm);letter-spacing:.1em;margin-bottom:14px;font-size:.57rem;font-weight:760}.booking-choice__copy strong{font-family:var(--serif);margin-bottom:9px;font-size:1.4rem;font-weight:600;line-height:1.1}.booking-choice__copy em,.option-grid em{color:var(--ink-soft);font-size:.72rem;font-style:normal;line-height:1.5}.booking-date-grid{grid-template-columns:1fr 1fr .86fr;gap:12px;margin-bottom:35px;display:grid}.booking-date-grid>label,.booking-duration{border:1px solid var(--line);background:#fff;flex-direction:column;justify-content:center;min-height:98px;padding:16px 18px;display:flex}.booking-date-grid label>span,.booking-contact-fields label>span,.booking-destination>span,.booking-note>span{color:#7e8c87;letter-spacing:.12em;text-transform:uppercase;margin-bottom:9px;font-size:.6rem;font-weight:760}.booking-date-grid input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font-size:.78rem;font-weight:680}.booking-duration{background:#e0e8e2;flex-direction:row;align-items:center;gap:12px}.booking-duration>svg{width:22px;color:var(--sea)}.booking-duration span{gap:5px;display:grid}.booking-duration small{color:#72817c;letter-spacing:.1em;text-transform:uppercase;font-size:.55rem;font-weight:760}.booking-duration strong{font-family:var(--serif);font-size:1rem;font-weight:600}.guest-picker{border:0;margin:0;padding:0}.guest-picker legend{color:#73817d;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:13px;font-size:.64rem;font-weight:760;display:flex}.guest-picker legend svg{color:var(--warm)}.guest-picker>div{border:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.guest-picker button{border:0;border-right:1px solid var(--line);cursor:pointer;background:#fff;min-height:58px;padding:10px;font-size:.72rem;font-weight:680}.guest-picker button:last-child{border-right:0}.guest-picker button.is-selected{background:var(--pine);color:#fff}.option-grid{grid-template-columns:1fr 1fr;gap:13px;margin-bottom:24px;display:grid}.option-grid>button{border:1px solid var(--line);min-height:132px;color:var(--ink);cursor:pointer;text-align:left;background:#fff;grid-template-columns:34px 1fr;align-items:start;gap:13px;padding:24px 46px 22px 22px;transition:border-color .18s,background .18s;display:grid;position:relative}.option-grid>button>svg{color:var(--warm);stroke-width:1.6px}.option-grid button>span{gap:8px;display:grid}.option-grid strong{font-family:var(--serif);font-size:1.15rem;font-weight:600}.option-grid i{border:1px solid var(--line);color:#0000;border-radius:50%;place-items:center;width:23px;height:23px;display:grid;position:absolute;top:15px;right:15px}.option-grid i svg{width:13px}.option-grid button.is-selected{border-color:var(--sea);background:#eef2ed}.option-grid button.is-selected i{border-color:var(--sea);background:var(--sea);color:#fff}.booking-destination,.booking-note{margin-top:17px;display:grid}.booking-destination>span{align-items:center;gap:8px;display:flex}.booking-destination>span svg{color:var(--warm)}.booking-destination input,.booking-note textarea,.booking-contact-fields input{width:100%;color:var(--ink);resize:vertical;background:0 0;border:0;border-bottom:1px solid #b5bfbb;border-radius:0;outline:0;padding:11px 0 12px}.booking-destination input:focus,.booking-note textarea:focus,.booking-contact-fields input:focus{border-color:var(--warm)}.booking-summary-grid{grid-template-columns:1fr .9fr;gap:34px;display:grid}.booking-summary{border:1px solid var(--line);background:#fff}.booking-summary dl{margin:0;padding:6px 22px}.booking-summary dl>div{border-bottom:1px solid var(--line);grid-template-columns:94px 1fr;gap:15px;padding:13px 0;display:grid}.booking-summary dl>div:last-child{border-bottom:0}.booking-summary dt,.booking-price>span{color:#84918d;letter-spacing:.1em;text-transform:uppercase;font-size:.58rem;font-weight:760}.booking-summary dd{margin:0;font-size:.73rem;font-weight:650;line-height:1.5}.booking-price{background:var(--pine);color:#fff;gap:7px;padding:18px 22px 20px;display:grid}.booking-price>span{color:#ffffff85}.booking-price strong{font-family:var(--serif);font-size:1.35rem;font-weight:500}.booking-price small{color:#ffffff94;font-size:.62rem;line-height:1.45}.booking-contact-fields{align-content:start;gap:13px;display:grid}.booking-contact-fields h3{font-family:var(--serif);margin-bottom:3px;font-size:1.35rem;font-weight:600}.booking-contact-fields label:not(.checkbox-field){display:grid}.booking-contact-fields .checkbox-field{margin-top:7px}.booking-actions{border-top:1px solid var(--line);background:#fff;flex:none;justify-content:space-between;align-items:center;gap:20px;min-height:84px;padding:14px 68px;display:flex}.booking-actions .button{min-width:155px}.booking-actions .button:disabled{cursor:not-allowed;opacity:.38;transform:none}.booking-back{cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:10px 0;font-size:.72rem;font-weight:720;display:inline-flex}.booking-back svg{width:17px}.booking-back:disabled{opacity:0;pointer-events:none}.booking-success{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;max-width:610px;min-height:0;margin-inline:auto;padding:60px;animation:.45s both fade-up;display:flex}.booking-success>span{width:68px;height:68px;color:var(--sea);background:#dce9e1;border-radius:50%;place-items:center;margin-bottom:28px;display:grid}.booking-success>span svg{width:30px}.booking-success>p:not(.booking-kicker){max-width:500px;color:var(--ink-soft);margin-bottom:27px;line-height:1.7}.booking-success__summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:6px;width:100%;margin-bottom:30px;padding:18px 0;display:grid}.booking-success__summary strong{font-family:var(--serif);font-size:1.1rem}.booking-success__summary span{color:var(--ink-soft);font-size:.72rem}.detail-overlay{z-index:85;background:var(--paper);animation:.18s both lightbox-in;position:fixed;inset:0}.detail-page{height:100dvh;overflow:hidden}.detail-nav{z-index:4;grid-template-columns:1fr auto 1fr;align-items:center;width:min(1340px,100% - 56px);height:82px;margin-inline:auto;display:grid;position:absolute;top:0;left:0;right:0}.detail-nav .logo{color:#fff}.detail-nav>span{color:#fffc;letter-spacing:.14em;text-transform:uppercase;font-size:.65rem;font-weight:750}.detail-nav>button{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0d27256b;border:1px solid #ffffff80;border-radius:50%;justify-self:end;place-items:center;width:43px;height:43px;display:grid}.detail-scroll{scroll-behavior:smooth;height:100%;overflow-y:auto}.detail-hero{color:#fff;height:min(760px,82vh);min-height:620px;position:relative;overflow:hidden}.detail-hero>img,.detail-hero__veil{width:100%;height:100%;position:absolute;inset:0}.detail-hero>img{object-fit:cover;object-position:center 48%}.detail-hero__veil{background:linear-gradient(90deg,#081f1db8,#081f1d14 70%),linear-gradient(#0000 40%,#0518166b)}.detail-hero__copy{z-index:2;flex-direction:column;justify-content:flex-end;align-items:flex-start;width:min(1180px,100% - 48px);height:100%;margin-inline:auto;padding-bottom:74px;display:flex;position:relative}.detail-hero__copy>p{color:#edb092;letter-spacing:.16em;text-transform:uppercase;margin-bottom:20px;font-size:.68rem;font-weight:760}.detail-hero__copy h2{max-width:740px;font-family:var(--serif);letter-spacing:-.055em;margin-bottom:34px;font-size:clamp(4rem,7vw,7rem);font-weight:400;line-height:.88}.detail-hero__copy>span{letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:11px;font-size:.67rem;font-weight:720;display:flex}.detail-hero__copy>span svg{width:17px}.detail-intro{grid-template-columns:1.3fr 1fr;gap:100px;width:min(1180px,100% - 48px);margin-inline:auto;padding-block:100px;display:grid}.detail-intro>div:first-child{grid-template-columns:55px 1fr;gap:25px;display:grid}.detail-index{color:var(--warm);font-family:var(--serif);font-size:.95rem;font-style:italic}.detail-intro p{font-family:var(--serif);margin-bottom:0;font-size:clamp(1.75rem,2.8vw,2.65rem);line-height:1.2}.detail-intro dl{border-top:1px solid var(--line);margin:0}.detail-intro dl>div{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:20px;padding:16px 0;display:grid}.detail-intro dt{color:#84918d;letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:750}.detail-intro dd{margin:0;font-size:.76rem;font-weight:680}.detail-inside{background:var(--pine);color:#fff;grid-template-columns:1.12fr .88fr;display:grid}.detail-inside__images{min-height:690px;position:relative}.detail-inside__images img:first-child{object-fit:cover;width:82%;height:100%}.detail-inside__images img:last-child{border:10px solid var(--pine);object-fit:cover;width:44%;height:270px;position:absolute;bottom:58px;right:0}.detail-inside__copy{flex-direction:column;justify-content:center;align-items:flex-start;max-width:600px;padding:70px clamp(40px,7vw,110px) 70px 70px;display:flex}.detail-inside__copy h2,.detail-gallery__heading h2,.detail-cta h2{font-family:var(--serif);letter-spacing:-.045em;margin-bottom:25px;font-size:clamp(3rem,4.5vw,4.8rem);font-weight:400;line-height:.97}.detail-inside__copy>p:not(.eyebrow){color:#ffffffad;line-height:1.75}.detail-inside__copy ul{border-top:1px solid #ffffff26;grid-template-columns:1fr 1fr;gap:0;width:100%;margin:28px 0 0;padding:0;list-style:none;display:grid}.detail-inside__copy li{color:#ffffffd1;border-bottom:1px solid #ffffff26;align-items:center;gap:9px;padding:13px 0;font-size:.7rem;display:flex}.detail-inside__copy li svg{width:14px;color:var(--warm)}.detail-gallery{width:min(1180px,100% - 48px);margin-inline:auto;padding-block:110px}.detail-gallery__heading{align-items:flex-start;gap:28px;margin-bottom:48px;display:flex}.detail-gallery__heading>span{color:var(--warm);font-family:var(--serif);font-style:italic}.detail-gallery__heading h2{max-width:600px;margin-bottom:0}.detail-gallery>div:last-child{grid-template-columns:repeat(12,1fr);grid-auto-rows:235px;gap:12px;display:grid}.detail-gallery>div:last-child>button{background:var(--sand);cursor:zoom-in;border:0;padding:0;position:relative;overflow:hidden}.detail-gallery>div:last-child>button>span{width:42px;height:42px;color:var(--pine);opacity:0;background:#fbf9f4eb;border-radius:50%;place-items:center;transition:opacity .18s,transform .18s;display:grid;position:absolute;bottom:16px;right:16px;transform:translateY(8px)}.detail-gallery>div:last-child>button:hover>span,.detail-gallery>div:last-child>button:focus-visible>span{opacity:1;transform:translateY(0)}.detail-gallery img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.22,1,.36,1)}.detail-gallery>div:last-child>button:hover img{transform:scale(1.025)}.detail-gallery>div:last-child>button:first-child,.detail-gallery>div:last-child>button:nth-child(4){grid-column:span 7}.detail-gallery>div:last-child>button:nth-child(2),.detail-gallery>div:last-child>button:nth-child(3){grid-column:span 5}.detail-gallery>div:last-child>button:nth-child(5),.detail-gallery>div:last-child>button:nth-child(6){grid-column:span 6}.detail-cta{background:#dfe6df;justify-content:space-between;align-items:center;gap:60px;min-height:340px;padding:70px max(24px,50% - 590px);display:flex}.detail-cta>div{max-width:740px}.detail-cta p{color:var(--sea);margin-bottom:15px;font-size:.74rem}.detail-cta h2{margin-bottom:0}.detail-cta .button{flex:none}.footer{background:var(--pine-deep);color:#fff}.footer__statement{border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:40px;min-height:280px;display:flex}.footer__statement p{font-family:var(--serif);letter-spacing:-.05em;margin-bottom:0;font-size:clamp(3.5rem,7.6vw,7rem);font-weight:400;line-height:.9}.footer__statement em{color:#e3a485;font-weight:400}.footer__statement>svg{width:68px;height:68px;color:var(--warm);stroke-width:1.1px;flex:none}.footer__top{grid-template-columns:1.3fr 1fr;gap:60px;padding-block:78px;display:grid}.footer__brand p{color:#ffffff8c;font-family:var(--serif);margin:30px 0 0;font-size:1.6rem;font-style:italic}.footer__links{grid-template-columns:.7fr 1.3fr;gap:45px;display:grid}.footer__links>div{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.footer__links h3{color:#e1a486;letter-spacing:.13em;text-transform:uppercase;margin-bottom:16px;font-size:.67rem;font-weight:750}.footer__links a,.footer__links span{color:#ffffffa6;font-size:.78rem;line-height:1.5}.footer__links a:hover{color:#fff}.footer__bottom{color:#ffffff6b;border-top:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:30px;min-height:72px;font-size:.66rem;display:flex}.footer__demo{color:#e0a285}.footer__meta{align-items:center;gap:24px;display:flex}.footer__credit{color:#ffffff6b}.footer__credit a{color:#ffffffc7;text-underline-offset:4px;align-items:center;gap:4px;margin-left:3px;-webkit-text-decoration:underline #e3a48599;text-decoration:underline #e3a48599;transition:color .18s;display:inline-flex}.footer__credit a:hover{color:#e3a485}.lightbox{z-index:100;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#071615f0;place-items:center;padding:70px 100px;animation:.18s both lightbox-in;display:grid;position:fixed;inset:0}.lightbox figure{max-width:min(1180px,82vw);max-height:84vh;margin:0}.lightbox figure img{object-fit:contain;max-height:76vh;margin-inline:auto;box-shadow:0 30px 80px #00000057}.lightbox figcaption{color:#ffffffb8;justify-content:center;gap:18px;margin-top:18px;font-size:.75rem;display:flex}.lightbox figcaption span{color:#e3a485}.lightbox__close,.lightbox__nav{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:50px;height:50px;transition:background .18s,color .18s;display:grid;position:absolute}.lightbox__close:hover,.lightbox__nav:hover{color:var(--pine);background:#fff}.lightbox__close{top:24px;right:28px}.lightbox__nav{top:50%;transform:translateY(-50%)}.lightbox__nav--prev{left:28px}.lightbox__nav--next{right:28px}@keyframes hero-in{0%{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}@media (width<=1100px){.desktop-nav{display:none}.menu-toggle{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0d2725b8;border-color:#ffffff73;display:flex}.site-header--solid .menu-toggle{border-color:var(--pine);background:var(--pine);color:#fff}.mobile-menu{background:var(--paper);height:100vh;color:var(--ink);opacity:0;pointer-events:none;flex-direction:column;justify-content:center;padding:110px max(28px,8vw) 60px;transition:opacity .23s,transform .23s;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(-15px)}.mobile-menu.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-menu nav{border-top:1px solid var(--line)}.mobile-menu nav a{border-bottom:1px solid var(--line);font-family:var(--serif);grid-template-columns:46px 1fr auto;align-items:center;padding:19px 0;font-size:clamp(1.9rem,5vw,3rem);display:grid}.mobile-menu nav span{color:var(--warm);font-family:Inter,ui-sans-serif,sans-serif;font-size:.65rem}.mobile-menu nav svg{width:22px}.mobile-languages{gap:16px;margin-top:28px;display:flex}.mobile-languages button{font-size:.76rem}.quick-book{grid-template-columns:repeat(4,1fr)}.quick-book__title,.quick-book button{grid-column:span 2}.details__grid{gap:65px}.details__photos{min-height:620px}.details__photo-main{height:540px}.contact__grid{gap:55px}.booking-panel{grid-template-columns:290px minmax(0,1fr)}.booking-sidebar{padding-inline:30px}.booking-header{padding-left:48px}.booking-view,.booking-actions{padding-inline:48px}}@media (width<=820px){.page-shell{width:min(100% - 34px,680px)}.section-pad{padding-block:88px}.nav-shell{width:calc(100% - 34px);height:74px}.nav-cta,.language-switcher{display:none}.hero{height:820px;min-height:720px}.hero__image{object-position:63% 50%}.hero__veil{background:linear-gradient(90deg,#071b19d1,#071b1940),linear-gradient(#0000 38%,#051614a3)}.hero__content{justify-content:flex-end;padding-bottom:110px}.hero__content .eyebrow{margin-bottom:32px}.hero h1{font-size:clamp(4.15rem,14vw,6.4rem)}.hero__stamp,.hero__note{display:none}.quick-book{grid-template-columns:1fr 1fr;margin-top:0}.quick-book__title,.quick-book button{grid-column:span 2;min-height:72px}.intro{padding-top:100px}.intro__grid,.section-heading,.details__grid,.contact__grid{grid-template-columns:1fr}.intro__aside{align-items:center;gap:25px;display:flex}.intro__aside .section-number,.intro__aside .eyebrow{margin-bottom:0}.section-heading{gap:28px;margin-bottom:50px}.stay-card,.stay-card--motorhome{grid-template-columns:1fr}.stay-card--motorhome .stay-card__content{order:2}.stay-card--motorhome .stay-card__image{order:1}.stay-card__content{padding:48px 38px}.details__grid{gap:70px}.details__photos{min-height:600px}.details__photo-main{width:86%;height:520px}.details__photo-float{width:52%;height:230px}.experience-grid{grid-template-columns:1fr;margin-bottom:88px}.experience-card{border-right:0;border-bottom:1px solid var(--line);min-height:0;padding:38px 30px}.experience-card:last-child{border-bottom:0}.experience-card>svg,.experience-card__icon{margin-bottom:34px}.location-panel{grid-template-columns:1fr}.location-panel__copy{padding:52px 38px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px}.gallery-item--1,.gallery-item--2,.gallery-item--3,.gallery-item--4,.gallery-item--5,.gallery-item--6,.gallery-item--7,.gallery-item--8{grid-column:span 1}.gallery-item--1{grid-column:span 2}.contact__grid{gap:62px}.footer__top{grid-template-columns:1fr}.mobile-booking-cta{z-index:45;right:17px;bottom:max(17px, env(safe-area-inset-bottom));background:var(--warm);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:12px;min-height:58px;padding:0 21px;font-size:.76rem;font-weight:760;transition:opacity .18s,transform .18s;display:flex;position:fixed;left:17px;box-shadow:0 16px 42px #14312d47}.mobile-booking-cta span{text-align:left;flex:1}.mobile-booking-cta.is-hidden{opacity:0;pointer-events:none;transform:translateY(20px)}.booking-overlay{background:var(--paper);padding:0}.booking-panel{grid-template-rows:135px minmax(0,1fr);grid-template-columns:1fr;width:100%;height:100dvh;max-height:none}.booking-sidebar{grid-template-columns:auto 1fr;align-items:start;padding:20px 24px 16px;display:grid}.booking-sidebar__intro,.booking-sidebar__image{display:none}.booking-steps{grid-template-columns:repeat(4,1fr);gap:5px;margin:54px 0 0 24px}.booking-steps li,.booking-steps li:last-child{border:0;grid-template-columns:23px 1fr;gap:5px;min-height:0}.booking-steps li>span{width:20px;height:20px}.booking-steps li strong{font-size:.57rem}.booking-header{min-height:58px;padding:0 20px 0 25px}.booking-header button{z-index:3;color:#fff;background:#051b1873;border-color:#ffffff59;position:fixed;top:18px;right:19px}.booking-view{padding:30px 28px 25px}.booking-actions{min-height:76px;padding:10px 28px}.detail-nav{grid-template-columns:1fr auto;width:calc(100% - 34px);height:72px}.detail-nav>span{display:none}.detail-hero{height:720px;min-height:0}.detail-hero__copy{width:calc(100% - 34px)}.detail-intro,.detail-inside{grid-template-columns:1fr}.detail-intro{gap:55px;width:min(100% - 34px,680px);padding-block:78px}.detail-inside__images{min-height:590px}.detail-inside__copy{max-width:none;padding:70px 50px}.detail-gallery{width:min(100% - 34px,680px);padding-block:85px}.detail-gallery>div:last-child{grid-template-columns:1fr 1fr;grid-auto-rows:210px}.detail-gallery>div:last-child>button:nth-child(n){grid-column:span 1}.detail-cta{flex-direction:column;align-items:flex-start;padding:65px max(24px,50% - 340px)}.motorhome-hero{height:720px;min-height:0}.motorhome-hero__copy{width:calc(100% - 34px)}.motorhome-route{grid-template-columns:1fr}.motorhome-route__visual{min-height:500px}.motorhome-delivery{grid-template-columns:1fr;gap:40px;width:min(100% - 34px,680px);padding-block:78px}.route-page--contact{padding-top:74px}.contact-page-section{min-height:calc(100vh - 74px);padding-block:80px}}@media (width<=560px){.language-prompt-overlay{padding:12px}.language-prompt{width:100%;padding:20px}.language-prompt__heading{margin-bottom:17px}.language-prompt>h2{font-size:1.72rem}.language-prompt>p{margin-bottom:17px}.language-prompt__choices button{gap:6px;min-height:120px;padding:10px}.language-prompt__flag{width:39px;height:26px}.language-prompt__choice-copy strong{font-size:1rem}.hero{height:780px}.hero__content{padding-bottom:76px}.hero__content .eyebrow{font-size:.65rem}.hero h1{font-size:clamp(3.75rem,18vw,5.1rem);line-height:.86}.hero__lead{font-size:.94rem;line-height:1.58}.hero__actions{flex-direction:column;align-items:flex-start;gap:23px}.quick-book{display:none}.intro__copy h2,.section-heading h2,.experience__heading h2,.contact h2{font-size:clamp(2.75rem,13vw,4rem)}.intro__body{grid-template-columns:1fr}.round-link{display:none}.stay-card__image{min-height:370px}.stay-card--motorhome .stay-card__image{min-height:300px}.stay-card__content{padding:42px 26px}.card-kicker{margin-bottom:30px}.stay-card h3{font-size:3.2rem}.details__photos{min-height:440px}.details__photo-main{width:91%;height:390px}.details__photo-float{border-width:8px;width:54%;height:160px}.details__caption{display:none}.location-panel__image{min-height:330px}.location-panel__copy{padding:44px 27px 50px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:210px}.gallery-item--1,.gallery-item--2,.gallery-item--3,.gallery-item--4,.gallery-item--5,.gallery-item--6,.gallery-item--7,.gallery-item--8{grid-area:span 1/span 1}.gallery-item--1,.gallery-item--8{grid-row:span 2}.gallery-item__open{opacity:1;transform:none}.gallery-item__label{opacity:1;right:70px;transform:none}.form-row{grid-template-columns:1fr}.inquiry-card{min-height:0;padding:36px 24px}.footer__top{padding-block:62px}.footer__statement{min-height:220px}.footer__statement>svg{display:none}.footer__links{grid-template-columns:1fr}.footer__bottom{flex-direction:column;align-items:flex-start;padding-block:22px}.footer__meta{flex-direction:column;align-items:flex-start;gap:10px}.lightbox{padding:80px 18px}.lightbox figure{max-width:100%}.lightbox__nav{top:auto;bottom:20px;transform:none}.lightbox__nav--prev{left:20px}.lightbox__nav--next{right:20px}.booking-panel{grid-template-rows:118px minmax(0,1fr)}.booking-sidebar{padding:17px 18px 12px}.booking-sidebar .logo strong{font-size:1.08rem}.booking-sidebar .logo small{font-size:.52rem}.booking-steps{margin:47px 0 0 8px}.booking-steps li{grid-template-columns:20px}.booking-steps li strong{display:none}.booking-main{min-height:0}.booking-header{min-height:48px;padding-inline:18px}.booking-view{padding:22px 18px 20px}.booking-stage h2,.booking-success h2{font-size:2.45rem}.booking-stage__lead{margin-bottom:22px;font-size:.8rem}.booking-stay-grid{grid-template-columns:1fr;gap:11px}.booking-stay-grid>button{grid-template-columns:116px 1fr;display:grid}.booking-stay-grid img{width:116px;height:100%;min-height:138px}.booking-choice__copy{min-height:138px;padding:17px 16px}.booking-choice__copy small{margin-bottom:8px}.booking-choice__copy strong{font-size:1.1rem}.booking-choice__copy em{font-size:.65rem}.booking-choice__check{top:10px;right:10px}.booking-date-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:25px}.booking-date-grid>label,.booking-duration{min-height:86px;padding:13px}.booking-duration{grid-column:span 2;min-height:66px}.guest-picker>div{grid-template-columns:1fr}.guest-picker button{border-right:0;border-bottom:1px solid var(--line);min-height:45px}.guest-picker button:last-child{border-bottom:0}.option-grid{grid-template-columns:1fr;gap:9px}.option-grid>button{min-height:105px;padding-block:18px}.booking-summary-grid{grid-template-columns:1fr;gap:24px}.booking-actions{min-height:70px;padding:9px 18px}.booking-actions .button{min-width:142px;min-height:48px;padding-inline:18px}.booking-success{justify-content:flex-start;padding:45px 26px;overflow-y:auto}.detail-hero{height:690px}.detail-hero>img{object-position:56% 50%}.detail-hero__copy{padding-bottom:52px}.detail-hero__copy h2{font-size:3.8rem}.detail-intro{gap:42px;padding-block:64px}.detail-intro>div:first-child{grid-template-columns:1fr;gap:13px}.detail-intro p{font-size:1.65rem}.detail-inside__images{min-height:430px}.detail-inside__images img:first-child{width:88%}.detail-inside__images img:last-child{border-width:7px;width:49%;height:175px;bottom:30px}.detail-inside__copy{padding:55px 23px}.detail-inside__copy ul{grid-template-columns:1fr}.detail-gallery{padding-block:67px}.detail-gallery>div:last-child{grid-template-columns:1fr;grid-auto-rows:190px}.detail-gallery__heading{gap:14px}.detail-gallery__heading h2,.detail-cta h2{font-size:2.8rem}.detail-cta{min-height:330px;padding:55px 23px 90px}.motorhome-hero{height:690px}.motorhome-hero__copy{padding-bottom:52px}.motorhome-hero__copy h1,.detail-hero__copy h1{font-size:3.8rem}.motorhome-route__copy{padding:55px 23px}.motorhome-route__visual{min-height:410px}.motorhome-route__visual>div{grid-template-columns:auto 1fr;bottom:16px;left:16px;right:16px}.motorhome-route__visual>div strong{display:none}.motorhome-delivery{padding-block:64px}.motorhome-delivery>div{grid-template-columns:38px 1fr}.motorhome-delivery>div svg{width:34px;height:34px}.motorhome-delivery>div p{font-size:2.7rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}
