:root{--cream:#f7f0e6;--ivory:#fffaf3;--paper:#fffcf7;--forest:#203c2b;--olive:#657151;--sage:#a8ae91;--gold:#b9872f;--gold-light:#d9b76f;--ink:#26312a;--muted:#68736b;--line:#ded4c5;--danger:#9f3b32;--success:#2d6a45;--shadow:0 20px 55px rgba(38,49,42,.12);--radius:2px;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);line-height:1.55}a{color:inherit}img{max-width:100%;display:block}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:16px;top:16px;background:white;padding:12px;z-index:99}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,76px);background:rgba(255,250,243,.96);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(185,135,47,.2)}.brand{display:flex;align-items:center;text-decoration:none;font-family:var(--serif);font-size:25px;line-height:.9;color:var(--forest)}.brand img{width:58px;height:58px;object-fit:cover;object-position:50% 14%;border-radius:50%;margin-right:10px}.brand small{display:block;font:9px var(--sans);letter-spacing:4px;margin-top:8px;color:var(--gold);text-align:center}.site-header nav{display:flex;align-items:center;gap:32px}.site-header nav a{text-decoration:none;font-size:13px;letter-spacing:.7px}.nav-cta,.button{background:var(--forest);color:white!important;padding:14px 22px;text-decoration:none;border:1px solid var(--forest);font-weight:700;letter-spacing:.3px;cursor:pointer;min-height:48px;display:inline-flex;align-items:center;justify-content:center;transition:.2s}.button:hover,.nav-cta:hover{background:#31533d;transform:translateY(-1px)}.button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold-light);outline-offset:3px}.menu-button{display:none}.hero{min-height:720px;display:grid;grid-template-columns:1.02fr .98fr;background:var(--cream)}.hero-copy{padding:clamp(72px,10vw,150px) clamp(30px,7vw,110px)}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--gold);font-weight:700;margin:0 0 18px}.hero h1,.statement h2,.section-heading h2,.process h2,.booking-intro h2,.contact h2{font:normal clamp(48px,6.1vw,88px)/.98 var(--serif);letter-spacing:-2.5px;margin:0;color:var(--forest)}h1 em,h2 em{color:var(--gold);font-weight:normal}.lead{font:19px/1.7 var(--serif);max-width:560px;color:#526057;margin:32px 0}.hero-actions{display:flex;align-items:center;gap:30px}.text-link{text-underline-offset:7px;font-weight:700;font-size:14px}.trust{display:flex;gap:24px;margin-top:55px;color:var(--olive);font-size:11px;text-transform:uppercase;letter-spacing:1px}.trust span:before{content:'◇';color:var(--gold);margin-right:7px}.hero-visual{position:relative;min-height:600px;overflow:hidden}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,240,230,.18),transparent 40%)}.hero-visual>img{width:100%;height:100%;object-fit:cover}.floating-card{position:absolute;z-index:2;bottom:45px;left:-35px;background:var(--paper);padding:18px 26px;box-shadow:var(--shadow);border-left:3px solid var(--gold)}.floating-card span,.floating-card strong{display:block}.floating-card span{font:italic 15px var(--serif);color:var(--muted)}.floating-card strong{font:20px var(--serif);color:var(--forest);margin-top:5px}.statement{text-align:center;padding:120px 24px;background:var(--paper)}.statement h2{font-size:clamp(42px,5vw,68px)}.statement>p:last-child{max-width:650px;margin:30px auto 0;color:var(--muted);font:18px/1.8 var(--serif)}.services-section{padding:110px clamp(24px,6vw,96px);background:var(--forest);color:white}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.section-heading h2{color:white;font-size:clamp(42px,4vw,60px)}.section-heading>p{max-width:390px;color:#cad3cb}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.18)}.service-card{background:var(--forest);padding:38px;min-height:310px;display:flex;flex-direction:column;transition:.25s}.service-card:hover{background:#294936}.service-card .number{color:var(--gold-light);font:13px var(--serif)}.service-card h3{font:30px var(--serif);margin:28px 0 12px}.service-card p{color:#c5cec6;margin:0}.service-card footer{margin-top:auto;display:flex;justify-content:space-between;align-items:end}.service-card strong{font:20px var(--serif);color:var(--gold-light)}.service-card button{border:0;background:transparent;color:white;text-decoration:underline;text-underline-offset:6px;cursor:pointer}.process{padding:110px clamp(24px,7vw,110px);text-align:center}.process h2{font-size:clamp(42px,4vw,60px)}.steps{display:grid;grid-template-columns:repeat(3,1fr);max-width:1050px;margin:70px auto 0}.steps article{padding:20px 48px;border-right:1px solid var(--line)}.steps article:last-child{border:0}.steps b{font:16px var(--serif);color:var(--gold)}.steps h3{font:30px var(--serif);color:var(--forest);margin:16px 0 8px}.steps p{color:var(--muted)}.booking-section{display:grid;grid-template-columns:.78fr 1.22fr;background:var(--cream);padding:110px clamp(24px,7vw,110px);gap:clamp(40px,8vw,120px)}.booking-intro h2{font-size:clamp(44px,4.6vw,68px)}.booking-intro>p{color:var(--muted);font:18px/1.8 var(--serif)}.booking-note{border-top:1px solid var(--gold-light);padding-top:22px;margin-top:40px}.booking-note span,.booking-note strong{display:block}.booking-note span{color:var(--muted);font-size:14px}.booking-form{background:var(--paper);padding:clamp(24px,4vw,54px);box-shadow:var(--shadow)}.form-step{display:flex;align-items:center;gap:14px;margin:8px 0 22px}.form-step:not(:first-child){margin-top:38px}.form-step span{color:var(--gold);font:14px var(--serif)}.form-step h3{font:25px var(--serif);margin:0;color:var(--forest)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;text-transform:uppercase;letter-spacing:1px;font-size:10px;font-weight:700;color:var(--olive);margin-bottom:18px}label i{float:right;font-style:normal;color:var(--sage)}input,select,textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:13px 2px;font:16px var(--sans);color:var(--ink);border-radius:0}textarea{border:1px solid var(--line);padding:12px;margin-top:8px;resize:vertical}label small{display:block;color:var(--danger);letter-spacing:0;text-transform:none;font-size:12px;margin-top:5px}.selection-summary{background:#f2eadc;border-left:2px solid var(--gold);padding:15px;margin-bottom:26px;color:var(--forest);font-size:14px}.full{width:100%;margin-top:12px}.form-status{min-height:24px;font-size:14px}.form-status.success{color:var(--success)}.form-status.error{color:var(--danger)}.contact{background:#eadfce;display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:100px clamp(24px,7vw,110px)}.contact h2{font-size:clamp(42px,4vw,60px)}.contact-links{display:flex;flex-direction:column}.contact-links a{padding:18px 0;border-bottom:1px solid #cbbca6;text-decoration:none;color:var(--olive)}.contact-links strong{float:right;color:var(--forest)}body>footer{background:#172e20;color:#dce4dc;padding:54px clamp(24px,7vw,110px);display:flex;align-items:center;justify-content:space-between}.footer-brand{color:white}body>footer a{font-size:12px;color:#aeb8af}body>footer p{font-family:var(--serif)}
@media(max-width:900px){.site-header{height:70px;padding:0 20px}.brand img{width:48px;height:48px}.menu-button{display:block;background:transparent;border:1px solid var(--forest);padding:10px 14px}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:20px;flex-direction:column;align-items:stretch;box-shadow:var(--shadow)}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 24px}.hero h1{font-size:54px}.hero-visual{min-height:470px}.floating-card{left:20px}.trust{flex-direction:column;gap:9px}.section-heading,.hero-actions{align-items:flex-start}.section-heading{flex-direction:column;gap:20px}.service-grid{grid-template-columns:1fr 1fr}.booking-section{grid-template-columns:1fr}.contact{grid-template-columns:1fr}.steps article{padding:20px}.site-header .nav-cta{text-align:center}}
@media(max-width:600px){.hero h1{font-size:46px}.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.service-grid,.steps,.field-row{grid-template-columns:1fr}.service-card{min-height:270px}.steps article{border-right:0;border-bottom:1px solid var(--line)}.contact-links strong{float:none;display:block}.statement,.services-section,.process,.booking-section,.contact{padding-top:78px;padding-bottom:78px}body>footer{flex-direction:column;text-align:center;gap:20px}.booking-form{padding:26px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
