:root{--cream:#f7f5ee;--navy:#182b39;--gold:#a87525;--line:#cec9bc;--muted:#53606a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--navy);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}img{display:block;max-width:100%}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:500;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(42px,5.5vw,76px);margin:12px 0 26px}h2{font-size:clamp(32px,3.7vw,50px);margin:0 0 24px}h3{font-size:25px;margin:0 0 16px}p{margin:0 0 20px}header{display:flex;align-items:center;justify-content:space-between;padding:20px 4%;gap:30px;border-bottom:1px solid #e9e5da}.brand{width:95px;flex-shrink:0}.brand img{width:100%;mix-blend-mode:multiply}nav{display:flex;align-items:center;gap:clamp(15px,2vw,30px)}nav a{text-decoration:none;font-size:14px}nav a[aria-current=page]{text-decoration:underline}nav a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 24px;background:var(--gold);color:#fff;border:1px solid var(--gold);text-decoration:none;cursor:pointer;font-size:14px;letter-spacing:.015em;transition:background .15s}.button:hover{background:#835a1e}.button.outline{background:transparent;color:var(--gold)}.button.outline:hover{background:#eee5d5}.menu-toggle{display:none}.hero{max-width:1160px;margin:auto;padding:90px 40px 80px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.hero h1{font-size:clamp(52px,5.8vw,80px)}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.17em;font-weight:700;color:#766039;margin:0 0 22px}.lede{font-size:20px;line-height:1.5;max-width:610px}.hero-image{width:100%;height:520px;object-fit:cover;object-position:50% 45%}.actions{display:flex;gap:12px;margin:28px 0}.trust{padding:0;list-style:none;font-size:12px;display:flex;gap:10px;flex-wrap:wrap;max-width:450px}.trust li:before{content:'✓ ';color:var(--gold)}.section{max-width:1080px;margin:auto;padding:70px 40px}.mobile-intro{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.mobile-intro p:last-child{max-width:800px;font-size:18px}.section-title{margin-bottom:35px}.section-title p{max-width:390px}.packages{display:grid;grid-template-columns:1fr 1fr;gap:20px}.package{border:1px solid var(--line);padding:32px;display:flex;align-items:flex-start;flex-direction:column}.package h3{font-size:30px}.price{color:#80591e;font-size:14px}.price strong{display:block;font-size:21px;font-weight:500}.package .button{margin-top:auto}.fine-print{font-size:12px;color:var(--muted);margin:24px 0 0}.reviews{text-align:center}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:40px}figure{margin:0}blockquote{margin:0 0 25px;font-style:italic;text-align:left;font-size:17px}figcaption{text-transform:uppercase;letter-spacing:.08em;font-size:11px;text-align:left}.contact{display:grid;grid-template-columns:1fr 1fr;gap:75px;border-top:1px solid var(--line)}.contact a{display:block;font-size:14px;overflow-wrap:anywhere}.contact h3{margin-top:30px}.email-form{display:grid;gap:20px}label{display:grid;gap:8px;font-size:13px}input,select,textarea{border:0;border-bottom:1px solid #aaa492;background:transparent;padding:12px 0;width:100%;color:var(--navy);border-radius:0}textarea{resize:vertical}.form-note{font-size:12px;color:var(--muted);margin:0}.form-status{font-size:13px}.page-intro{max-width:1080px;margin:auto;padding:65px 40px 0}.page-intro h1{font-size:clamp(40px,5vw,64px)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:40px}.service-grid img{height:230px;width:100%;object-fit:cover}.service-grid h2{font-size:29px;margin:24px 0 20px}.service-grid h3{margin:30px 0 12px}.service-grid article{display:flex;flex-direction:column}.service-grid article .button{margin-top:auto}.full-callout{text-align:center;background:#eeeae0;margin-bottom:50px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.split img{height:460px;width:100%;object-fit:cover}.filters{display:flex;gap:10px;margin-bottom:30px;flex-wrap:wrap}.filters button{border:1px solid var(--line);padding:10px 22px;background:transparent;color:var(--navy);cursor:pointer}.filters button.active{background:var(--navy);border-color:var(--navy);color:white}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery-item{padding:0;background:none;border:0;text-align:left;color:var(--navy);cursor:pointer}.gallery-item img{width:100%;height:340px;object-fit:cover;transition:opacity .15s}.gallery-item:hover img{opacity:.85}.gallery-item span{display:block;font-size:12px;padding:10px 0}.gallery-item[hidden]{display:none}dialog{border:0;padding:48px 12px 12px;background:var(--cream);max-width:95vw;max-height:95vh}dialog::backdrop{background:#14212bd9}dialog img{max-height:80vh;max-width:85vw;object-fit:contain}.close{position:absolute;right:15px;top:10px;background:none;border:0;cursor:pointer;color:var(--navy)}.story,.policy,.faq{max-width:860px}.story h2{font-size:33px;margin-top:38px}.signature{font-weight:bold;margin:35px 0}.policy{padding-top:32px}.policy h2{font-size:27px;margin:35px 0 15px}.policy li{margin-bottom:6px}.policy a{overflow-wrap:anywhere}.faq{padding-top:30px}details{border-bottom:1px solid var(--line);padding:24px 0}summary{font:25px/1.3 Georgia,serif;cursor:pointer}details p{margin:20px 0 0}footer{padding:40px 5% 20px;background:#eeece3;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;gap:35px;max-width:1150px;margin:auto}.footer-top h3{font-size:19px}.footer-top a{display:block;font-size:13px;overflow-wrap:anywhere}.footer-top p{font-size:13px;margin:0 0 8px}.wordmark{letter-spacing:.07em}.policy-links{display:flex;justify-content:center;gap:20px;font-size:11px;flex-wrap:wrap;margin:40px 0 10px}.copyright{text-align:center;font-size:11px;margin:0}.skip-link{position:absolute;top:-100px;left:10px;background:white;padding:12px;z-index:20}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #215886;outline-offset:5px}@media(min-width:1500px){.hero{padding-top:110px;padding-bottom:100px}}@media(max-width:1000px){header{flex-wrap:wrap;gap:15px}.brand{width:75px}.menu-toggle{display:block;background:transparent;border:1px solid var(--line);padding:8px 16px;color:var(--navy)}nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:12px}nav .button{margin-top:10px}.hero{gap:40px;padding-top:50px}.hero-image{height:470px}.service-grid{gap:20px}.service-grid img{height:210px}.gallery-item img{height:280px}}@media(max-width:650px){header{padding:12px 22px}.hero{padding:40px 24px;grid-template-columns:1fr;gap:25px}.hero h1{font-size:56px}.hero-image{height:380px}.section{padding:45px 24px}.page-intro{padding:40px 24px 0}.packages,.contact,.service-grid,.split{grid-template-columns:1fr}.package{padding:26px}.review-grid{grid-template-columns:1fr;gap:30px}.reviews h2{text-align:left}.review-grid figure{border-bottom:1px solid var(--line);padding-bottom:25px}.contact{gap:25px}.service-grid img{height:300px}.service-grid{gap:45px}.split{gap:30px}.split img{height:360px}.gallery{grid-template-columns:1fr 1fr;gap:12px}.gallery-item img{height:230px}.filters button{padding:9px 16px}.footer-top{flex-direction:column}.policy-links{justify-content:flex-start;gap:12px}.copyright{text-align:left}.full-callout{margin:0 24px 35px}summary{font-size:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.social-footer{min-width:200px}.social-links{display:flex;gap:16px;flex-wrap:wrap}.social-links a{display:flex;align-items:center;gap:7px;font-size:12px;text-decoration:none}.social-links svg{width:20px;height:20px;flex-shrink:0}.social-links a:hover{color:var(--gold);text-decoration:underline}.calendly-inline-widget{min-width:280px;height:800px}[hidden]{display:none!important}@media(max-width:1000px){.footer-top{flex-wrap:wrap}}

/* Navigation uses the same serif family as the page headings. */
nav a,.menu-toggle{font-family:Georgia,"Times New Roman",serif;font-size:17px;line-height:1.3}nav .button{font-size:16px}.booking-top{padding-top:45px;padding-bottom:30px}.booking-top h1{margin:0 0 16px}.booking-top>p:not(.eyebrow):not(.form-note){max-width:650px;margin-bottom:22px}@media(max-width:650px){.booking-top{padding-top:30px}.booking-top h1{font-size:42px}}

.booking-note{text-align:center}
