:root{--ink:#111;--ink2:#191919;--gold:#d7b46a;--cream:#f7f5ef;--muted:#b9b8b2;--line:#343434;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:#111;color:#f7f5ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px clamp(18px,5vw,72px);background:rgba(17,17,17,.96);border-bottom:1px solid #303030;backdrop-filter:blur(12px)}
.brand{display:flex;align-items:center;gap:11px;letter-spacing:.12em}
.brand-mark{display:grid;place-items:center;width:43px;height:43px;border:1px solid var(--gold);color:var(--gold);font-family:Georgia,serif;font-size:27px}
.brand strong,.brand small{display:block;line-height:1.2}
.brand strong{font-size:14px;letter-spacing:.19em}
.brand small{margin-top:5px;font-size:9px;letter-spacing:.2em;color:var(--muted)}
.site-nav{display:flex;align-items:center;gap:25px;font-size:13px;color:#e5e2da}
.site-nav a:hover,.contact-link:hover{color:var(--gold)}
.nav-phone{border:1px solid #555;padding:9px 13px}
.menu-toggle{display:none;background:transparent;border:1px solid #555;color:white;padding:8px 12px}
.hero{min-height:560px;padding:80px clamp(20px,8vw,120px);display:grid;grid-template-columns:1.2fr .8fr;gap:45px;align-items:center;background:radial-gradient(ellipse at 80% 45%,#292721 0%,#171715 34%,#111 72%)}
.eyebrow{font-size:10px;letter-spacing:.22em;font-weight:800;color:var(--gold)}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,6vw,76px);font-weight:400;line-height:1.03;letter-spacing:-.04em;margin:18px 0}
.hero h1 span{color:var(--gold);font-style:italic}
.hero-copy{max-width:540px;color:#c4c1b8;font-size:16px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 18px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;border:1px solid transparent;font:inherit;font-size:12px;font-weight:800;letter-spacing:.04em;cursor:pointer;transition:transform .15s,background .15s}
.button:hover{transform:translateY(-1px)}
.button-gold{background:var(--gold);color:#171510}
.button-gold:hover{background:#e4c987}
.button-outline{border-color:#666;color:#f6f2e8;background:transparent}
.button-outline:hover{border-color:var(--gold);color:var(--gold)}
.fine-print,.pricing-note{font-size:11px;color:#a9a69d}
.hero-panel{justify-self:center;width:min(100%,300px);aspect-ratio:4/5;border:1px solid #5b513b;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#22221f,#131313);box-shadow:22px 22px 0 #171717}
.panel-ring{width:160px;height:160px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;position:relative}
.panel-ring:before,.panel-ring:after{content:"";position:absolute;border:1px solid #77613b;border-radius:50%;inset:10px}
.panel-ring:after{inset:20px}
.panel-ring span{font-family:Georgia,serif;color:var(--gold);font-size:40px}
.hero-panel p{font-size:10px;letter-spacing:.24em;margin:32px 0 14px}
.panel-line{width:70px;height:1px;background:var(--gold)}
.hero-panel small{font-size:9px;letter-spacing:.2em;color:#aaa;margin-top:15px}
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#1c1c1a;border-top:1px solid #333;border-bottom:1px solid #333;padding:23px clamp(20px,8vw,120px);gap:20px}
.trust-strip div{display:flex;flex-direction:column;gap:3px;border-right:1px solid #393939;padding-left:20px}
.trust-strip div:first-child{padding-left:0}
.trust-strip div:last-child{border:0}
.trust-strip strong{font-size:12px;color:#f2ead7}
.trust-strip span{font-size:11px;color:#aaa69b}
.section{padding:84px clamp(20px,7vw,100px)}
.section-heading{text-align:center;max-width:680px;margin:0 auto 38px}
.section-heading h2,.booking-intro h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(32px,4vw,48px);line-height:1.1;margin:10px 0 14px}
.section-heading>p:last-child{color:#b8b5ac;font-size:14px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1050px;margin:auto}
.service-card{border:1px solid #363633;padding:28px;background:linear-gradient(145deg,#1c1c1a,#141414)}
.service-icon{color:var(--gold);font-size:24px}
.service-card h3{font-family:Georgia,serif;font-size:23px;font-weight:400;margin:12px 0 8px}
.service-card p{font-size:13px;color:#b8b5ac;margin-bottom:0}
.pricing-section{background:var(--cream);color:var(--ink)}
.pricing-section .section-heading>p:last-child{color:#5f5b53}
.pricing-section .eyebrow{color:#8e6b2c}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1100px;margin:auto}
.price-card{position:relative;padding:28px 24px;background:#fff;border:1px solid #e1ded5;display:flex;flex-direction:column}
.price-card.featured{border:1px solid #b3924e;box-shadow:0 10px 28px #b7a98230}
.popular-tag{position:absolute;right:0;top:0;background:#d7b46a;padding:5px 10px;font-size:8px;font-weight:900;letter-spacing:.12em}
.package-label{font-size:9px;font-weight:800;letter-spacing:.18em;color:#8e6b2c}
.price-card h3{font-family:Georgia,serif;font-weight:400;font-size:27px;margin:4px 0}
.price{font-family:Georgia,serif;font-size:31px;margin:8px 0 0}
.price span{display:block;font:10px system-ui,sans-serif;color:#777}
.price-desc{min-height:42px;font-size:12px;color:#5c5953}
.price-card ul{padding-left:18px;margin:15px 0 24px;color:#49463f;font-size:12px;flex:1}
.price-card li{margin:7px 0}
.price-card .button-outline{color:#222;border-color:#aaa}
.price-card .button-outline:hover{color:#8e6b2c;border-color:#8e6b2c}
.full-button{width:100%}
.pricing-note{text-align:center;color:#666;margin:24px auto 0}
.size-section{background:#171715}
.size-grid{max-width:1000px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #444;border-left:1px solid #444}
.size-item{padding:22px 18px;min-height:135px;border-right:1px solid #444;border-bottom:1px solid #444;display:flex;flex-direction:column;gap:7px}
.size-item span{color:var(--gold);font-size:10px;letter-spacing:.15em}
.size-item strong{font-size:13px}
.size-item small{color:#aaa69c;font-size:11px}
.booking-section{display:grid;grid-template-columns:.8fr 1fr;gap:clamp(30px,7vw,90px);padding:84px clamp(20px,9vw,130px);background:#20201d}
.booking-intro h2{font-size:clamp(34px,4vw,50px)}
.booking-intro>p:not(.eyebrow){color:#b8b5ac;font-size:14px}
.contact-link{display:inline-block;margin-top:14px;color:var(--gold);font-weight:800}
.booking-form{background:#f8f6f0;color:#191919;padding:28px;display:flex;flex-direction:column;gap:8px}
.booking-form label{font-size:11px;font-weight:800;margin-top:5px}
.booking-form input,.booking-form select,.booking-form textarea{width:100%;min-width:0;border:1px solid #d5d0c5;background:white;padding:12px;font:inherit;font-size:13px;border-radius:0;color:#222}
.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{outline:2px solid #d7b46a;outline-offset:1px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-message{font-size:10px;color:#666;margin:3px 0 0}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:27px clamp(20px,7vw,100px);background:#0d0d0d;border-top:1px solid #333}
.site-footer>p,.site-footer>a:not(.brand){font-size:12px;color:#c6c2b8}
.site-footer>small{width:100%;color:#777;font-size:10px}
.footer-brand .brand-mark{width:35px;height:35px;font-size:21px}
@media(max-width:760px){.site-header{padding:12px 18px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:69px;left:0;right:0;background:#111;border-bottom:1px solid #333;padding:18px;flex-direction:column;align-items:stretch;gap:16px}.site-nav.open{display:flex}.nav-phone{text-align:center}.hero{grid-template-columns:1fr;padding-top:62px;padding-bottom:55px}.hero-panel{display:none}.hero h1{font-size:clamp(43px,12vw,66px)}.trust-strip{grid-template-columns:1fr;gap:14px}.trust-strip div{padding:0 0 12px;border-right:0;border-bottom:1px solid #393939}.trust-strip div:last-child{padding-bottom:0;border:0}.section{padding:64px 20px}.service-grid,.pricing-grid{grid-template-columns:1fr}.price-desc{min-height:0}.size-grid{grid-template-columns:repeat(2,1fr)}.booking-section{grid-template-columns:1fr;padding:62px 20px}.booking-form{padding:20px}.site-footer{align-items:flex-start;flex-direction:column}.site-footer>small{margin-top:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
