:root{--bg: #f4efe8;--bg-strong: #e9dfd3;--bg-soft: #fbf8f3;--surface: rgba(255, 250, 245, .84);--surface-strong: rgba(255, 252, 248, .96);--surface-muted: rgba(244, 235, 224, .78);--surface-dark: #182126;--line: rgba(70, 54, 42, .14);--line-strong: rgba(70, 54, 42, .24);--text: #1d1713;--muted: #65574b;--muted-strong: #4b3e35;--brand: #23403b;--brand-soft: #32534d;--accent: #b66a3c;--accent-soft: #d79f73;--success: #2f7a5d;--danger: #b14b43;--radius-sm: .85rem;--radius-md: 1.25rem;--radius-lg: 1.9rem;--radius-pill: 999px;--shadow-soft: 0 18px 45px rgba(34, 24, 18, .08);--shadow-panel: 0 28px 80px rgba(30, 19, 13, .1);--shadow-strong: 0 24px 70px rgba(18, 13, 10, .22);--content-width: min(1180px, calc(100vw - 2.4rem) )}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:Sora,system-ui,sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(182,106,60,.15),transparent 30%),radial-gradient(circle at top right,rgba(35,64,59,.12),transparent 28%),linear-gradient(180deg,#fcfaf7 0%,var(--bg) 55%,var(--bg-strong) 100%)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea{font:inherit}button{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(182,106,60,.28);outline-offset:2px}.site-body{position:relative;overflow-x:hidden}.site-backdrop{position:fixed;inset:0;pointer-events:none;overflow:hidden}.bg-orb{position:absolute;width:42rem;height:42rem;border-radius:50%;filter:blur(72px);opacity:.32}.orb-1{top:-14rem;left:-12rem;background:#b66a3c73}.orb-2{right:-16rem;bottom:-18rem;background:#23403b57}.bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(70,54,42,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(70,54,42,.04) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent 88%);mask-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent 88%)}.site-frame{position:relative;z-index:1}.site-header,.page-shell,.site-footer,.coming-shell{width:var(--content-width);margin-inline:auto}.site-header{padding-top:1.25rem}.site-header-inner{display:grid;grid-template-columns:auto 1fr auto;gap:1.2rem;align-items:center;padding:1rem 1.15rem;border:1px solid rgba(255,255,255,.55);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fbf7f1b8;box-shadow:var(--shadow-soft)}.brand{display:inline-flex;align-items:center;gap:.9rem}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:2.85rem;height:2.85rem;border-radius:50%;background:linear-gradient(135deg,var(--brand),#101719);color:#f7f0e8;font-family:"DM Serif Display",serif;font-size:1.1rem;letter-spacing:.08em}.brand-copy{display:grid;gap:.12rem}.brand-copy strong{font-family:"DM Serif Display",serif;font-size:1.55rem;font-weight:400;letter-spacing:.02em}.brand-copy small{color:var(--muted);font-size:.78rem}.main-nav{display:flex;justify-content:center;gap:.45rem;flex-wrap:wrap}.main-nav a,.site-footer-links a,.site-footer-links span{font-size:.92rem}.main-nav a{padding:.62rem .9rem;border-radius:var(--radius-pill);color:var(--muted-strong);transition:background-color .2s ease,color .2s ease,transform .2s ease}.main-nav a:hover,.main-nav a:focus-visible{background:#23403b1a;color:var(--brand);transform:translateY(-1px)}.header-actions{display:flex;justify-content:flex-end;gap:.7rem;align-items:center;flex-wrap:wrap}.page-shell{margin:1.6rem auto 3.2rem;display:grid;gap:1.25rem}.hero,.detail-hero{position:relative;overflow:hidden;min-height:32rem;border-radius:calc(var(--radius-lg) + .25rem);padding:clamp(1.5rem,4vw,3rem);display:flex;align-items:flex-end;background:linear-gradient(145deg,#0f151ae6,#182c28ad),linear-gradient(180deg,#21302d,#16211f);background-size:cover;background-position:center;box-shadow:var(--shadow-strong)}.hero:after,.detail-hero:after{content:"";position:absolute;inset:auto 1.4rem 1.4rem auto;width:10rem;height:10rem;border-radius:50%;background:radial-gradient(circle,rgba(215,159,115,.35),transparent 70%);opacity:.9}.hero-content,.detail-hero>div{position:relative;z-index:1;max-width:48rem;color:#f8f2ea}.eyebrow,.kicker{margin:0 0 .7rem;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700;color:var(--accent-soft)}h1,h2,h3{margin:0;line-height:1.08}h1,.coming-card h1{font-family:"DM Serif Display",serif;font-weight:400;font-size:clamp(2.4rem,5vw,4.8rem);letter-spacing:-.02em}h2{font-family:"DM Serif Display",serif;font-size:clamp(1.6rem,2.5vw,2.5rem);font-weight:400}h3{font-size:1.1rem}p{margin:0;line-height:1.7;color:var(--muted)}.hero-copy{margin-top:1rem;max-width:40rem;font-size:1.05rem;color:#f8f2ead1}.trust-inline,.hero-actions,.actions-inline,.chip-row,.contract-badges,.offer-signal,.booking-steps,.booking-trust-strip,.confirmation-actions,.coming-actions,.coming-badges,.preset-row{display:flex;flex-wrap:wrap;gap:.7rem}.trust-inline{margin-top:1.1rem}.trust-inline span,.offer-signal span,.booking-steps span,.booking-trust-strip span,.coming-badges span{display:inline-flex;align-items:center;padding:.42rem .72rem;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-pill);background:#ffffff14;color:#f8f2eae0;font-size:.8rem}.hero-actions{margin-top:1.5rem}.hero-actions-spaced{margin-top:1.1rem}.hero-facts{margin-top:1.65rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.hero-facts article{padding:.95rem 1rem;border-radius:var(--radius-md);background:#ffffff1a;border:1px solid rgba(255,255,255,.14)}.hero-facts strong{display:block;margin-bottom:.25rem;font-size:1.15rem;color:#fff}.hero-facts span{color:#f8f2eabd;font-size:.82rem}.meta-row{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.meta-row span,.status-pill,.chip{display:inline-flex;align-items:center;gap:.35rem;min-height:2rem;padding:.38rem .72rem;border-radius:var(--radius-pill);font-size:.82rem}.meta-row span{color:var(--muted-strong);background:#fffcf8c7;border:1px solid rgba(71,55,43,.12)}.detail-hero .meta-row span{background:#ffffff1a;border-color:#ffffff29;color:#f8f2ead6}.offer-signal{margin-top:1.1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.85rem;padding:.72rem 1.1rem;border-radius:var(--radius-pill);border:1px solid transparent;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease}.btn:hover,.btn:focus-visible{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--accent),#8e4f2d);color:#fff8f2;box-shadow:0 10px 28px #96542d47}.btn-primary[aria-disabled=true]{opacity:.85;pointer-events:none}.btn-ghost{border-color:#47372b24;background:#fffbf7c2;color:var(--brand)}.btn-nav{min-height:2.55rem;padding-inline:.95rem}.panel{padding:clamp(1.15rem,2.5vw,1.7rem);border:1px solid rgba(255,255,255,.58);border-radius:var(--radius-lg);background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-panel)}.panel-soft{background:var(--surface-strong)}.panel-muted{background:var(--surface-muted)}.panel-hero{background:linear-gradient(180deg,#fffbf6e6,#f8f0e8e6),var(--surface)}.panel-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:.85rem}.panel-head-spaced{margin-top:1.6rem}.panel-head a{color:var(--brand);font-weight:600}.panel-head span{color:var(--muted);font-size:.92rem}.section-copy{margin-bottom:1rem;max-width:48rem}.confidence-band,.reassurance-grid{display:grid;gap:.9rem;grid-template-columns:repeat(3,minmax(0,1fr))}.confidence-band article,.reassurance-grid article,.field-card,.contract-facts,.contract-note,.booking-summary,.confirmation-card,.coming-info-card,.tile,.season-item,.status-item,.room-list li{border:1px solid var(--line);border-radius:var(--radius-md);background:#fffefbe0;box-shadow:var(--shadow-soft)}.confidence-band article,.reassurance-grid article{padding:1rem}.reassurance-grid strong{display:block;margin-bottom:.3rem}.cards,.tile-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.package-card,.tile{overflow:hidden}.card-link{display:grid;height:100%;color:inherit}.package-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.package-card:hover,.package-card:focus-within{transform:translateY(-4px);box-shadow:0 24px 60px #1b120c29;border-color:var(--line-strong)}.package-media{position:relative;min-height:15rem;background:linear-gradient(180deg,#141d2226,#141d22a6),linear-gradient(135deg,#23403ba6,#b66a3c59)}.tile img,.package-media img,.booking-summary img{width:100%;height:100%;object-fit:cover}.package-media img{min-height:15rem}.package-overlay{position:absolute;inset:auto 0 0;padding:1rem;background:linear-gradient(180deg,transparent 0%,rgba(15,20,24,.82) 100%)}.package-overlay .kicker{margin-bottom:0;color:#fff2e7db}.status-pill{margin-top:.65rem;background:#fff6ef24;border:1px solid rgba(255,255,255,.2);color:#fff5ea}.package-body,.tile-content{display:grid;gap:.75rem;padding:1rem}.package-body p{font-size:.95rem}.card-cta{display:inline-flex;align-items:center;gap:.45rem;margin-top:auto;color:var(--brand);font-weight:700;font-size:.92rem}.card-cta:after{content:"->"}.chip-row{margin-top:.95rem}.chip-row-compact{gap:.5rem}.chip{border:1px solid var(--line);background:#fff9f3eb;color:var(--muted-strong)}.sales-bar{display:flex;justify-content:space-between;gap:1rem;align-items:center;border-left:4px solid var(--accent)}.filter-grid{display:grid;gap:1rem}.filter-shell{margin-top:1.2rem}.field-card{padding:1rem}label{display:grid;gap:.4rem;color:var(--muted-strong);font-size:.92rem;font-weight:500}input,textarea{width:100%;border:1px solid rgba(71,55,43,.14);border-radius:.9rem;padding:.78rem .9rem;color:var(--text);background:#ffffffeb}textarea{min-height:8rem;resize:vertical}.slider-group{border:0;background:transparent;box-shadow:none;padding:0}.dual-range{position:relative;height:2.15rem;margin-top:.25rem}.dual-range-track,.dual-range-fill{position:absolute;top:50%;height:.38rem;border-radius:var(--radius-pill);transform:translateY(-50%)}.dual-range-track{left:0;right:0;background:#23403b24}.dual-range-fill{background:linear-gradient(90deg,var(--accent-soft),var(--accent))}.dual-range input[type=range]{position:absolute;inset:0;width:100%;margin:0;border:0;background:transparent;pointer-events:none;-webkit-appearance:none;appearance:none;padding:0}.dual-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:1rem;height:1rem;border-radius:50%;border:2px solid var(--accent);background:#fff;box-shadow:0 4px 16px #1d171329;pointer-events:auto;cursor:pointer}.dual-range input[type=range]::-moz-range-thumb{width:1rem;height:1rem;border-radius:50%;border:2px solid var(--accent);background:#fff;box-shadow:0 4px 16px #1d171329;pointer-events:auto;cursor:pointer}.range-scale,.booking-price-grid,.booking-live-info,.confirmation-grid,.contract-overview,.detail-grid,.booking-grid,.season-list{display:grid;gap:.7rem}.range-scale{margin-top:.45rem;grid-template-columns:repeat(5,1fr);font-size:.78rem;color:var(--muted)}.slider-value,.location-status{font-size:.9rem}.preset-chip{border:1px solid var(--line);border-radius:var(--radius-pill);background:#ffffffdb;color:var(--brand);padding:.45rem .72rem;font-size:.8rem;cursor:pointer}.preset-chip.is-active,.preset-chip:hover{border-color:#b66a3c59;background:#d79f732e}.location-status{color:var(--muted)}.filter-actions{justify-content:flex-end}.detail-grid,.contract-overview,.booking-grid{grid-template-columns:1.2fr .9fr}.room-list,.booking-summary ul,.confirmation-card ul,.status-list{list-style:none;padding:0;margin:0;display:grid;gap:.65rem}.room-list{margin-top:.9rem}.room-list li{padding:.9rem 1rem}.contract-overview{margin-top:1rem}.contract-facts,.contract-note,.booking-summary,.confirmation-card,.coming-info-card{padding:1rem}.contract-facts dl{margin:0;display:grid;gap:.7rem}.contract-facts dl div{display:grid;grid-template-columns:10rem 1fr;gap:.8rem}.contract-facts dt{color:var(--muted);font-size:.82rem}.contract-facts dd{margin:0;color:var(--text);font-weight:600}.contract-title{margin-top:1.2rem;margin-bottom:.55rem}.contract-table{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdfae0}.contract-row{display:grid;grid-template-columns:1.25fr 1fr .75fr;gap:.8rem;align-items:center;padding:.82rem 1rem;border-top:1px solid var(--line)}.contract-row:first-child{border-top:0}.contract-row span:last-child{text-align:right;font-weight:600}.contract-head{background:#23403b12;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.contract-two-col .contract-row{grid-template-columns:1.2fr 1fr}.booking-shell{padding:clamp(1.2rem,2.8vw,1.8rem)}.booking-head p+.booking-steps,.booking-head p+.booking-trust-strip{margin-top:1rem}.booking-steps span,.booking-trust-strip span{color:var(--muted-strong);background:#fffbf7e0;border-color:#46362a1f}.booking-steps span.is-active{background:#d79f7338;border-color:#b66a3c47;color:#8a4f2c;font-weight:700}.booking-form{display:grid;gap:1rem}.booking-section-title,.booking-price-title,.season-board-title,.coming-info-label,.footer-title{text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:700;color:var(--muted)}.booking-row.two{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.booking-row.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.booking-live-info{grid-template-columns:1fr 1fr}.booking-live-info span,.booking-price-preview,.season-board{border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9e6;padding:.85rem .95rem}.booking-price-grid{margin-top:.55rem;grid-template-columns:1fr auto;align-items:baseline}.booking-price-grid strong{font-size:1.05rem;color:var(--brand)}.booking-price-note{margin-top:.5rem;font-size:.84rem}.season-list{margin-top:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.season-item{padding:.8rem .85rem}.season-item.is-selected{border-color:#b66a3c59;background:#f4e1cd99}.season-name{color:var(--text);font-weight:700}.season-dates{margin-top:.25rem;font-size:.85rem}.checkbox-row{display:flex;align-items:flex-start;gap:.65rem}.checkbox-row input{width:auto;margin-top:.18rem}.booking-actions{display:flex;gap:.7rem;flex-wrap:wrap}.booking-summary{position:sticky;top:1rem;height:fit-content}.booking-summary img{height:13rem;border-radius:calc(var(--radius-md) - .2rem);margin:.2rem 0 .8rem}.booking-success{margin-top:1rem;padding:.9rem 1rem;border:1px solid rgba(47,122,93,.22);border-radius:var(--radius-md);background:#6eb5951f;color:#215b44;font-weight:600}.booking-microcopy{font-size:.82rem}.confirmation-shell{max-width:980px;margin-inline:auto}.confirmation-grid{margin-top:1rem;grid-template-columns:1fr 1fr}.confirmation-actions{margin-top:1rem}.error-text{color:var(--danger)}.prose-page .cms-body{margin-top:1.2rem}.prose-page .cms-body>*+*{margin-top:.9rem}.prose-page .cms-body h2,.prose-page .cms-body h3{margin-top:1.4rem}.site-footer{margin-bottom:2rem;padding:1.6rem;border:1px solid rgba(255,255,255,.58);border-radius:var(--radius-lg);background:#192126f0;color:#f5eee4e0;box-shadow:var(--shadow-strong)}.site-footer p,.site-footer a,.site-footer span,.site-footer .eyebrow{color:inherit}.site-footer-top,.site-footer-bottom,.site-footer-links{display:grid;gap:1rem}.site-footer-top{grid-template-columns:1.2fr .8fr;align-items:start}.site-footer-links{grid-template-columns:1fr 1fr}.site-footer-links div{display:grid;gap:.55rem}.site-footer-bottom{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.12);grid-template-columns:1fr auto;align-items:center}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.reveal.in{opacity:1;transform:translateY(0)}.stagger-item{opacity:0;transform:translateY(14px)}.stagger-item.in{animation:rise .45s ease forwards}@keyframes rise{to{opacity:1;transform:translateY(0)}}.coming-shell{position:relative;z-index:1;margin:4.5rem auto;display:grid;gap:1.8rem}.coming-card{border:1px solid rgba(255,255,255,.62);border-radius:calc(var(--radius-lg) + .1rem);background:linear-gradient(145deg,#fffcf8eb,#f1e8dce6);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:clamp(1.3rem,3vw,2.3rem)}.coming-hero{display:grid;gap:1.2rem;grid-template-columns:1.15fr .85fr}.coming-story{position:relative;overflow:hidden}.coming-story:after{content:"";position:absolute;right:-3rem;top:-3rem;width:14rem;height:14rem;border-radius:50%;background:radial-gradient(circle,rgba(35,64,59,.18),transparent 70%);pointer-events:none}.coming-copy{display:grid;align-content:center;gap:.55rem}.coming-subtitle{max-width:44ch}.coming-info-card{background:#ffffffb8}.coming-richtext{display:grid;gap:.9rem;max-width:58ch}.coming-richtext p{color:var(--muted-strong)}.coming-profile,.coming-profile-copy{display:block}.coming-profile-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,33%);gap:1.25rem;align-items:start}.coming-profile-intro{display:grid;gap:.75rem}.coming-profile-intro p{color:var(--muted-strong)}.coming-profile-media{width:100%}.coming-profile-image{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:calc(var(--radius-lg) - .1rem);box-shadow:var(--shadow-soft)}.coming-role{margin-top:.45rem;margin-bottom:.85rem;color:var(--brand);font-weight:600}.coming-faq-section{display:grid;gap:1.2rem}.coming-faq-copy{display:grid;gap:.65rem;max-width:60ch}.coming-legal-links{display:flex;justify-content:flex-end;gap:1rem;padding:0 .4rem;flex-wrap:wrap}.coming-legal-links a{display:inline-flex;align-items:center;min-height:2.35rem;padding:.5rem .9rem;border:1px solid rgba(71,55,43,.14);border-radius:var(--radius-pill);background:#fffbf7b8;color:var(--muted-strong);font-size:.92rem;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.coming-legal-links a:hover,.coming-legal-links a:focus-visible{background:#fffffff5;border-color:#47372b3d;color:var(--brand);transform:translateY(-1px)}.faq-page{display:grid;gap:1.4rem}.faq-list{display:grid;gap:1rem}.faq-item{padding:1.2rem 1.25rem;border:1px solid var(--line);border-radius:var(--radius-md);background:#ffffff94}.faq-item h2{margin-bottom:.55rem;font-size:clamp(1.2rem,2vw,1.55rem)}.faq-item a{color:var(--brand);text-decoration:underline;text-decoration-color:#23403b4d;text-underline-offset:.18em}.legal-block>*+*{margin-top:1rem}.legal-list{margin:.6rem 0 0;padding-left:1.2rem;color:var(--muted)}.legal-list li+li{margin-top:.35rem}.status-item{display:flex;align-items:center;gap:.55rem;padding:.7rem .8rem}.status-dot{width:.65rem;height:.65rem;border-radius:50%;background:#d2c2b5;flex:0 0 auto}.status-item.done .status-dot{background:var(--success)}.login-card{max-width:540px}.preview-login-form{margin:1.2rem 0;display:grid;gap:.65rem}.preview-login-form label{font-weight:600}.preview-login-form input{background:#ffffffe6}@media(max-width:1080px){.site-header-inner,.site-footer-top,.detail-grid,.booking-grid,.contract-overview,.coming-hero{grid-template-columns:1fr}.main-nav,.header-actions{justify-content:flex-start}.hero-facts,.confidence-band,.reassurance-grid,.confirmation-grid,.site-footer-bottom{grid-template-columns:1fr}}@media(max-width:860px){.site-header-inner{padding:1rem}.brand{align-items:flex-start}.brand-copy small{max-width:26ch}.hero,.detail-hero{min-height:28rem}.coming-profile-header{grid-template-columns:minmax(0,1fr) minmax(160px,33%)}.panel-head,.sales-bar{align-items:start;flex-direction:column}.booking-row.two,.booking-row.three,.booking-live-info,.site-footer-links{grid-template-columns:1fr}.filter-actions .btn{width:100%}.contract-facts dl div,.contract-row,.contract-two-col .contract-row{grid-template-columns:1fr}.contract-row span:last-child{text-align:left}}@media(max-width:640px){.site-header,.page-shell,.site-footer,.coming-shell{width:min(100vw - 1rem,100%)}.hero,.detail-hero,.panel,.site-footer,.site-header-inner,.coming-card{border-radius:1.4rem}.page-shell{margin-top:1rem;margin-bottom:2rem}.booking-summary{position:static}.coming-profile-header{grid-template-columns:1fr}.coming-profile-media{max-width:220px}.coming-profile-image{aspect-ratio:3 / 4}}
