:root{--bg-page:#0f2b1e;--bg-base:#0f2b1e;--bg-emphasis:#0c2318;--bg-elevated:#173d2b;--ink-strong:#ffffff;--ink-main:#eaf5ee;--ink-muted:#cfe5da;--green-accent:#bae63e;--green-accent-hover:#a9d934;--font-heading:"Playfair Display",serif;--font-body:"Inter",sans-serif;--fs-h1:clamp(2.6rem,6vw,4.2rem);--fs-h2:clamp(1.6rem,3vw,2rem);--fs-body:clamp(1.05rem,2vw,1.1rem);--fs-small:0.9rem;--lh-body:1.75;--lh-heading:1.15;--section-pad:clamp(100px,12vh,150px);--radius-md:18px;--radius-lg:28px;--radius-pill:999px;--container:1180px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);background:var(--bg-page);color:var(--ink-main);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}ul{list-style:none}:focus-visible{outline:2px solid var(--green-accent);outline-offset:3px}.container{max-width:var(--container);margin-inline:auto;padding-inline:clamp(20px,4vw,32px)}.section{padding-block:var(--section-pad)}.section--hero{padding-top:clamp(160px,20vh,220px)}.section--emphasis{background:var(--bg-emphasis)}.center{text-align:center}.text-wide{max-width:70ch;margin-inline:auto}h1,h2{font-family:var(--font-heading);font-weight:500;color:var(--ink-strong);line-height:var(--lh-heading)}h1{font-size:var(--fs-h1);margin-bottom:.6em}h2{font-size:var(--fs-h2);margin-top:3rem;margin-bottom:1rem}p{color:var(--ink-muted);max-width:75ch}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);font-weight:500;transition:all .25s ease;cursor:pointer}.btn-primary{background:var(--green-accent);color:#0f2b1e;padding:10px 18px;font-size:var(--fs-small);box-shadow:0 14px 32px rgba(0,0,0,.3)}.btn-primary:hover{background:var(--green-accent-hover);transform:translateY(-3px)}.booking-eyebrow{font-size:var(--fs-small);letter-spacing:2px;text-transform:uppercase;color:var(--green-accent);opacity:.9;display:inline-block;margin-bottom:1.5em}.booking-hero-text{margin-top:1.4em;font-size:clamp(1.1rem,2vw,1.2rem);line-height:1.8}.legal-wrapper{max-width:1000px;margin:0 auto}.legal-card{background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(0,0,0,.18));border-radius:var(--radius-lg);padding:clamp(40px,6vw,80px);border:1px solid rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 30px 60px rgba(0,0,0,.35);transition:transform .3s ease,box-shadow .3s ease}.legal-card:hover{transform:translateY(-6px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 40px 80px rgba(0,0,0,.4)}.legal-card a{color:var(--green-accent);word-break:break-word}.legal-card a:hover{text-decoration:underline}.footer-social .social-links{display:flex;gap:16px}.social-links a{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);transition:all .25s ease}.social-links a svg{width:18px;height:18px;fill:var(--ink-main);transition:fill .25s ease}.social-links a:hover{transform:translateY(-3px);border-color:var(--green-accent)}.social-links a:hover svg{fill:var(--green-accent)}@media (max-width:900px){.legal-card{padding:40px 28px}}