
:root{--black:#0a0908;--panel:#15120f;--gold:#d7b46b;--light:#f8f1e4;--muted:#c3b8a6;--line:#55432b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--light);font-family:'DM Sans',sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.wrap{width:min(1140px,90%);margin:auto}header{position:sticky;top:0;z-index:20;background:#090807ed;border-bottom:1px solid #47371e;backdrop-filter:blur(14px)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:80px;gap:20px}.brand{font-family:'Cormorant Garamond',serif;font-size:26px;letter-spacing:.045em;font-weight:700;line-height:1}.brand small{display:block;font:500 10px 'DM Sans',sans-serif;letter-spacing:.35em;color:var(--gold);margin-top:6px}.links{display:flex;align-items:center;gap:28px;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.links a:hover{color:var(--gold)}.btn{display:inline-block;border:1px solid var(--gold);padding:13px 24px;color:#130e06;background:var(--gold);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;transition:.2s;text-align:center}.btn:hover{background:#f0d49a}.btn.outline{background:transparent;color:var(--gold)}.btn.outline:hover{background:#2a2115}.menu{display:none;background:none;border:1px solid var(--line);color:var(--gold);padding:8px 12px;font-size:23px}.hero{position:relative;overflow:hidden;min-height:690px;display:flex;align-items:center;background:radial-gradient(ellipse at 80% 45%,#42301b 0%,#18130d 38%,#090807 75%)}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#090807 3%,#090807e6 36%,#09080740 100%);z-index:1}.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:65px 0}.eyebrow{color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.32em;text-transform:uppercase}.hero h1,h2,h3{font-family:'Cormorant Garamond',serif;line-height:1.05;font-weight:500}.hero h1{font-size:clamp(56px,7vw,104px);margin:18px 0}.hero h1 em{color:var(--gold);font-weight:400}.hero p{color:#d8cdbc;max-width:480px;font-size:15px}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.hero-logo{width:100%;max-width:570px;mix-blend-mode:screen;filter:drop-shadow(0 0 30px #b5873024)}.section{padding:100px 0}.section h2{font-size:clamp(42px,5vw,66px);margin:12px 0 18px}.intro{color:var(--muted);max-width:660px}.center{text-align:center}.center .intro{margin:0 auto}.divider{height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}.service,.package{background:linear-gradient(145deg,#1d1812,#100e0b);border:1px solid #4c3c26;padding:34px;transition:transform .2s,border-color .2s}.service:hover,.package:hover{transform:translateY(-4px);border-color:var(--gold)}.symbol{font-family:'Cormorant Garamond',serif;font-size:42px;color:var(--gold);line-height:1}.service h3,.package h3{font-size:30px;margin:18px 0 8px}.service p,.package p{color:var(--muted);font-size:14px;margin:0}.about{background:#16120e}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.art{min-height:440px;border:1px solid var(--line);background:radial-gradient(circle at center,#664d29,#20180e 45%,#0b0907 78%);display:grid;place-items:center;padding:30px}.art img{width:100%;max-width:440px;mix-blend-mode:screen}.about p{color:var(--muted)}.packages{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.package{display:flex;flex-direction:column}.package .btn{margin-top:auto}.package p{margin-bottom:24px}.package ul{padding-left:18px;color:#d6c9b6;font-size:13px;line-height:2;margin:0 0 25px}.tag{color:var(--gold);font-size:10px;text-transform:uppercase;letter-spacing:.2em}.banner{background:linear-gradient(110deg,#271c0f,#0e0b08);border-block:1px solid var(--line);padding:70px 0}.banner .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px}.banner h2{margin:0;font-size:48px}.booking{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.booking p{color:var(--muted)}form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}label{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:var(--gold)}input,select,textarea{background:#19150f;border:1px solid #5a4930;color:var(--light);padding:13px;border-radius:0;width:100%;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--gold)}textarea{min-height:110px;resize:vertical}form .btn{grid-column:1/-1}#formStatus{grid-column:1/-1;color:var(--gold);font-size:13px;min-height:20px}footer{padding:40px 0;border-top:1px solid var(--line);color:var(--muted);font-size:12px}footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}footer strong{color:var(--gold)}@media(max-width:800px){.menu{display:block}.links{display:none;position:absolute;top:80px;left:0;right:0;background:#100d09;padding:25px 5%;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.links.open{display:flex}.hero{min-height:auto}.hero-inner{grid-template-columns:1fr;text-align:center;padding:65px 0}.hero p{margin:0 auto}.actions{justify-content:center}.hero-logo{max-width:360px;margin:auto}.services,.packages{grid-template-columns:1fr 1fr}.about-grid,.booking{grid-template-columns:1fr;gap:35px}.art{min-height:300px}.banner .wrap{flex-direction:column;text-align:center}}@media(max-width:540px){.brand{font-size:22px}.services,.packages{grid-template-columns:1fr}.section{padding:70px 0}.hero h1{font-size:58px}.hero-logo{max-width:290px}.banner h2{font-size:40px}form{grid-template-columns:1fr}.field{grid-column:1/-1}}

@media(min-width:850px){.links{gap:16px}.links a{font-size:12px}}

#mobile-bar{background:linear-gradient(145deg,#120e0a,#23190f 55%,#100e0b);border-top:1px solid rgba(199,156,89,.35);border-bottom:1px solid rgba(199,156,89,.35)}#mobile-bar .mobile-description{max-width:790px;margin:0 auto 32px;line-height:1.85;color:#e1d7c9}#mobile-bar .mobile-note{max-width:790px;margin:28px auto 0;font-size:.84rem;line-height:1.6;color:#baa98d}#mobile-bar .services{text-align:left}#mobile-bar .service{background:rgba(0,0,0,.22);border:1px solid rgba(199,156,89,.25)}
.alcohol-notice{max-width:790px;margin:28px auto;padding:24px 28px;text-align:left;border:1px solid #8e713f;background:#15110d}.alcohol-notice h3{color:#d7b46b;font-size:30px;margin:0 0 10px}.alcohol-notice p{color:#e1d7c9;margin:0;line-height:1.75}.alcohol-booking-note{font-size:13px;color:#d7b46b;border-left:2px solid #d7b46b;padding-left:15px;margin:0 0 22px}
.service-area-line{color:#d7b46b!important;font-size:12px!important;font-weight:600;letter-spacing:.09em;text-transform:uppercase;line-height:1.8;margin:18px 0 8px;max-width:560px}.footer-location{color:#d7b46b;margin-top:8px;font-size:12px;letter-spacing:.04em}@media(max-width:800px){.service-area-line{margin:18px auto 8px}}
.skip-link{position:absolute;left:16px;top:-100px;z-index:1000;background:#d7b46b;color:#100e0b;padding:12px 18px}.skip-link:focus{top:12px}.page-heading{padding-top:55px}.page-heading h1{font-size:clamp(38px,6vw,64px);margin:15px 0}.page-heading p{color:#c9bba6}.page-copy{max-width:850px;line-height:1.8;padding-bottom:60px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #d7b46b;outline-offset:4px}

.service-tagline{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,4vw,42px);color:var(--gold);line-height:1.2;margin:20px 0}.service-process{padding-left:24px;color:var(--muted)}.service-process li{padding:8px 0 8px 8px}.service-related{display:flex;flex-wrap:wrap;gap:12px}.service-related a,.service-link{color:var(--gold);text-decoration:underline;text-underline-offset:4px}.service-related a{padding:10px 16px;border:1px solid var(--line)}.service-link{display:inline-block;margin-top:20px}.page-heading nav{color:var(--muted);font-size:14px}.page-heading nav a:hover,.service-related a:hover{color:var(--gold)}

.page-heading + #services{padding-top:28px}

.nav-dropdown{position:relative}.nav-dropdown summary{display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none}.nav-dropdown summary::-webkit-details-marker{display:none}.nav-dropdown summary:hover,.nav-dropdown[open]>summary{color:var(--gold)}.nav-dropdown summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.nav-dropdown[open] summary span{transform:rotate(180deg)}.nav-submenu{position:absolute;top:calc(100% + 20px);left:0;width:290px;max-height:calc(100dvh - 130px);overflow-y:auto;padding:10px;background:var(--panel);border:1px solid var(--line);box-shadow:0 16px 32px #0008;text-transform:none;letter-spacing:.02em}.nav-submenu a{display:block;padding:9px 12px;font-size:13px!important;line-height:1.4}.nav-submenu a:hover,.nav-submenu a:focus-visible{background:#2a2115;color:var(--gold)}.nav-submenu a:first-child{border-bottom:1px solid var(--line);margin-bottom:5px;color:var(--gold)}
@media(max-width:800px){.links{max-height:calc(100dvh - 80px);overflow-y:auto}.nav-dropdown summary{justify-content:space-between}.nav-submenu{position:static;width:100%;max-height:none;box-shadow:none;margin-top:14px}.nav-submenu a{padding:11px 12px}}
