@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--ink:#1d2521;--muted:#68716c;--cream:#f7f4ee;--paper:#fff;--line:#ddd9d0;--dark:#17201c;--accent:#b8945b}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}.site-header{height:78px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:0 6%;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.logo{font-weight:700;letter-spacing:.13em;font-size:18px}.logo span{display:block;font-size:9px;letter-spacing:.24em;color:var(--muted);font-weight:500;margin-top:-3px}.nav{display:flex;gap:30px;align-items:center}.nav a{font-size:13px;font-weight:600}.nav a:hover,.nav .active{color:var(--accent)}.menu-toggle{display:none;border:0;background:none;font-size:25px}.hero{min-height:650px;display:flex;align-items:center;padding:80px 8%;background:linear-gradient(90deg,rgba(19,29,24,.83),rgba(19,29,24,.35)),url('../images/hero.jpg') center/cover no-repeat;color:white}.hero-content{max-width:700px}.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:700;color:var(--accent);margin:0 0 12px}.hero h1,.page-hero h1{font-family:'Playfair Display',serif;font-size:clamp(48px,7vw,82px);line-height:1.02;margin:0 0 22px}.hero p:not(.eyebrow){max-width:580px;font-size:18px;opacity:.92}.hero-actions{display:flex;gap:12px;margin-top:30px}.btn{display:inline-flex;justify-content:center;align-items:center;padding:13px 23px;border-radius:2px;font-weight:700;font-size:13px;border:1px solid transparent;cursor:pointer}.btn-primary{background:var(--ink);color:white}.btn-primary:hover{background:#37413b}.hero .btn-primary{background:white;color:var(--ink)}.btn-outline{border-color:rgba(255,255,255,.7);color:white}.btn-light{background:white;color:var(--ink)}.section{max-width:1180px;margin:auto;padding:90px 6%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}.intro h2,.section-heading h2,.two-col h2{font-family:'Playfair Display',serif;font-size:46px;line-height:1.1;margin:0}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.text-link{font-weight:700;font-size:13px}.cards,.price-grid,.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card,.price-card,.contact-box{background:var(--paper);border:1px solid var(--line);padding:32px}.card-number{color:var(--accent);font-weight:700}.card h3{font-family:'Playfair Display',serif;font-size:29px;margin:22px 0 10px}.card strong{display:block;margin:25px 0}.card a{font-size:13px;font-weight:700}.dark-banner{background:var(--dark);color:white;padding:75px 8%;display:flex;justify-content:space-between;align-items:center;gap:30px}.dark-banner h2{font-family:'Playfair Display',serif;font-size:48px;line-height:1.1;margin:0 0 12px}.reviews blockquote{background:white;border:1px solid var(--line);padding:30px;margin:0;font-family:'Playfair Display',serif;font-size:20px}.reviews cite{display:block;font-family:'DM Sans',sans-serif;font-size:12px;margin-top:18px;color:var(--muted);font-style:normal}.footer{background:#101713;color:#dfe4df;padding:60px 7%;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer a,.footer p{display:block;color:#b9c2bc;font-size:13px}.footer h4{color:white;margin-top:0}.copyright{background:#0b100d;color:#89928c;text-align:center;padding:18px;font-size:11px}.page-hero{padding:100px 8%;background:var(--dark);color:white}.page-hero h1{font-size:clamp(45px,6vw,70px);max-width:800px}.page-hero p:not(.eyebrow){max-width:650px}.price-grid{grid-template-columns:repeat(2,1fr)}.price-card h2{font-family:'Playfair Display',serif;font-size:34px;margin:5px 0}.price-card ul{list-style:none;padding:0;margin:25px 0}.price-card li{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:13px 0;font-size:14px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px}.form-section{max-width:850px}.booking-form{display:grid;gap:18px;background:white;border:1px solid var(--line);padding:35px}.booking-form label{font-size:13px;font-weight:700}.booking-form input,.booking-form select,.booking-form textarea{display:block;width:100%;margin-top:7px;border:1px solid var(--line);padding:13px;background:#fff;font:inherit;border-radius:2px}.form-note{font-size:12px;color:var(--muted)}.form-message{font-weight:700}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-box h2{font-family:'Playfair Display',serif;font-size:32px}
@media(max-width:760px){.site-header{height:68px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:white;padding:20px 6%;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:15px}.nav.open{display:flex}.hero{min-height:590px;padding:65px 7%}.hero h1{font-size:52px}.hero-actions{flex-direction:column;max-width:250px}.intro,.two-col,.contact-grid{grid-template-columns:1fr;gap:30px}.section{padding:65px 6%}.cards,.price-grid,.reviews{grid-template-columns:1fr}.section-heading{align-items:flex-start;gap:20px;flex-direction:column}.dark-banner{padding:60px 7%;flex-direction:column;align-items:flex-start}.dark-banner h2{font-size:39px}.footer{grid-template-columns:1fr 1fr;padding:45px 7%}.page-hero{padding:75px 7%}}

.contact-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
