@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#151714;--panel:#1e211d;--ink:#f3eedf;--muted:#a7aa9e;--copper:#d8935f;--line:#383b32}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);font:15px 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--copper);outline-offset:5px}.wrap{width:min(1240px,90%);margin-inline:auto}.header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{font:800 27px 'Barlow Condensed','Arial Narrow',sans-serif;letter-spacing:2px;display:flex;align-items:center;gap:12px}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:5px;margin-top:4px}.brand-icon{font-size:37px;color:var(--copper);border:1px solid var(--line);padding:2px 10px}.header nav{display:flex;gap:32px;font-size:13px}.header nav a:hover{color:var(--copper)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:18px 24px;background:var(--copper);color:#191a16;border:0;font-weight:700;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#ecae7f;transform:translateY(-2px)}.button span{font-size:23px;line-height:1}.button.small{padding:13px 19px;font-size:12px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center;padding-block:56px 64px}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:700;color:var(--copper);line-height:1.8}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--copper);margin-right:10px}.hero h1{font:800 clamp(65px,7.3vw,106px)/.93 'Barlow Condensed',Impact,sans-serif;letter-spacing:-1.7px;margin:26px 0}.hero h1 em,h2 em,.page-title em{color:var(--copper);font-style:normal}.intro{max-width:380px;color:var(--muted);font-size:14px;line-height:1.9}.hero-actions{display:flex;gap:24px;align-items:center;margin:29px 0 38px}.handwritten{font:italic 17px Georgia,serif;color:var(--muted);transform:rotate(-7deg)}.hero-meta{display:flex;gap:30px;font-size:9px;letter-spacing:2px;color:var(--muted)}.hero-art{position:relative;min-height:540px;background:radial-gradient(ellipse at 55% 50%,#62664d55,transparent 65%),#24271f;border:1px solid #45483b;overflow:hidden}.hero-art:after{position:absolute;content:'';inset:16px;border:1px solid #7f85632b;pointer-events:none}.hero-art img{width:100%;height:540px;object-fit:contain}.art-number{position:absolute;top:33px;left:34px;font-size:10px;letter-spacing:3px;color:#a1a68f}.art-caption{position:absolute;bottom:36px;left:34px;font-size:9px;line-height:1.8;letter-spacing:2px}.seal{position:absolute;right:22px;top:32px;width:100px;height:100px;background:var(--copper);border-radius:50%;color:#22251d;text-align:center;padding:14px 0;font-size:8px;font-weight:700;letter-spacing:1px;transform:rotate(15deg)}.seal b{font-size:32px;line-height:1.2}.ticker{display:flex;gap:38px;align-items:center;justify-content:center;white-space:nowrap;overflow:hidden;background:var(--copper);color:#21241c;padding:18px 0;font:700 22px 'Barlow Condensed',sans-serif;letter-spacing:1.6px}.ticker span{font-size:26px}.section{padding-block:82px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:35px}h2{font:700 47px/1.08 'Barlow Condensed',Impact,sans-serif;margin:12px 0 20px;letter-spacing:-.5px}.section-heading>p{color:var(--muted);line-height:1.8;font-size:13px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{padding:28px;background:var(--panel);border:1px solid var(--line)}.card-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:9px;letter-spacing:1px}.service-symbol{font-size:46px;color:var(--copper);height:65px}.service-card h3{font:600 30px 'Barlow Condensed',sans-serif;margin:26px 0 12px}.service-card p{color:var(--muted);font-size:12px;line-height:1.9;min-height:47px}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.card-bottom strong{font-size:23px}.card-bottom small{font-size:9px;color:var(--muted);font-weight:400}.card-bottom a{width:40px;height:40px;display:grid;place-items:center;border:1px solid #5a5c4b;font-size:25px;color:var(--copper)}.experience{background:#25291f;border:1px solid #474c38;padding:34px 40px;display:flex;align-items:center;gap:34px}.big-star{color:var(--copper);font-size:100px}.experience h2{font-size:35px}.experience p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:1.8}.home-price{margin-left:auto;flex-shrink:0;font-size:9px;letter-spacing:1px}.home-price strong{display:block;font-size:27px;letter-spacing:0;margin:10px 0;color:var(--copper)}.home-price small{font-size:9px;color:var(--muted);letter-spacing:0}.booking-section{display:grid;grid-template-columns:1fr 1.35fr;gap:95px}.booking-intro h2{font-size:68px}.booking-intro>p{color:var(--muted);line-height:1.9}.booking-intro>.eyebrow{color:var(--copper)}.schedule{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin:35px 0}.schedule>span{display:block;color:var(--copper);font-size:10px;letter-spacing:1px;margin-bottom:16px}.schedule p{font-size:23px;margin:10px 0}.schedule small,.privacy{font-size:11px;line-height:1.9;color:var(--muted)}.booking-form{padding:34px;background:var(--panel);border:1px solid var(--line)}.form-step{display:flex;align-items:center;gap:14px;margin:5px 0 22px}.form-step:not(:first-of-type){margin-top:28px}.form-step>span{font-size:10px;color:var(--copper);border:1px solid #60543f;width:28px;height:28px;display:grid;place-items:center}.form-step h3{font:600 23px 'Barlow Condensed',sans-serif;margin:0}label{display:block;font-size:11px;color:#d0d1c6;margin-bottom:18px}input:not([type=radio]),select{display:block;width:100%;border:1px solid #484c40;color:var(--ink);background:#191c17;padding:14px 13px;border-radius:0;margin-top:8px;min-height:46px;color-scheme:dark;font-size:12px}input::placeholder{color:#7c8273}fieldset{border:0;margin:0;padding:0}legend{font-size:11px;margin-bottom:12px;color:#d0d1c6}.location{display:grid;grid-template-columns:1fr 1fr;gap:12px}.location label{border:1px solid #484c40;padding:14px;display:flex;align-items:center;gap:8px}.location label:has(:checked){border-color:var(--copper);color:var(--copper);background:#d8935f0c}input[type=radio]{accent-color:var(--copper)}.location label>span{margin-left:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 17px}.slots{display:flex;flex-wrap:wrap;gap:8px;min-height:40px;font-size:12px;color:var(--muted)}.slots label{cursor:pointer;border:1px solid #484c40;padding:10px;margin:0;font-size:12px}.slots input{position:absolute;opacity:0;width:1px;height:1px}.slots label:has(:checked){background:var(--copper);color:#171b15;border-color:var(--copper)}.slots label:has(:focus-visible){outline:2px solid var(--copper);outline-offset:3px}.booking-total{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-top:1px solid var(--line);margin-top:15px}.booking-total>span{font-size:9px;letter-spacing:1px}.booking-total strong{font-size:25px}.full{width:100%}.form-note{font-size:10px;color:var(--muted);text-align:center;margin:14px 0 0}footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-block:35px;gap:24px}footer p,footer small{font-size:10px;color:var(--muted)}.footer-star{color:var(--copper);font-size:30px;margin-left:8px}.narrow{width:min(540px,90%);margin-inline:auto;min-height:65vh}.page-title{font:700 60px/1.1 'Barlow Condensed',sans-serif;margin:15px 0 25px}.panel{background:var(--panel);border:1px solid var(--line);padding:28px;margin:25px 0}.panel h2{font-size:34px}.panel dl{display:grid;grid-template-columns:100px 1fr;font-size:13px;gap:15px;margin:28px 0}.panel dt{color:var(--muted)}.panel dd{margin:0;overflow-wrap:anywhere}.text-button{border:0;background:none;color:var(--muted);padding:15px 0;font-size:12px;text-decoration:underline;display:block}.error-text{color:#ffb2a1;font-size:12px;line-height:1.7}.flash{padding:15px;margin-top:20px;border:1px solid var(--copper)}.badge{padding:6px 9px;font-size:9px;text-transform:uppercase;letter-spacing:1px;display:inline-block;background:#3b4931;color:#d1e4bd}.cancelled{background:#512f2a;color:#f3b5a9}.completed{background:#303e49;color:#b7d1e6}.admin-toolbar,.admin-toolbar form{display:flex;align-items:center;gap:20px}.admin-toolbar{justify-content:space-between;margin-bottom:25px}.admin-toolbar label{margin:0}.admin-toolbar>span{color:var(--muted);font-size:12px}.appointment{display:grid;grid-template-columns:110px 1fr auto;gap:20px;background:var(--panel);border:1px solid var(--line);padding:25px;margin-bottom:15px}.appointment-time{font:700 36px 'Barlow Condensed',sans-serif;color:var(--copper)}.appointment-time small{display:block;font:11px 'DM Sans',sans-serif;margin-top:8px;color:var(--muted)}.appointment h3{margin-bottom:10px}.appointment p{font-size:12px;color:var(--muted);line-height:1.8;overflow-wrap:anywhere}.empty{text-align:center;padding:65px;background:var(--panel);border:1px dashed var(--line)}.empty>span{font-size:60px;color:var(--copper)}.empty p{color:var(--muted);font-size:13px}summary{cursor:pointer;font-weight:600;padding:4px 0}details[open] summary{margin-bottom:25px}[hidden]{display:none!important}@media(min-width:1600px){.hero h1{font-size:112px}}@media(max-width:1000px){.hero{gap:24px}.hero h1{font-size:80px}.hero-art,.hero-art img{min-height:470px;height:470px}.handwritten{display:none}.booking-section{gap:40px}.experience{gap:20px;padding:28px}.big-star{font-size:65px}.experience h2{font-size:29px}.home-price{max-width:170px}}@media(max-width:720px){.header{height:86px}.header nav{display:none}.brand{font-size:23px}.brand-icon{font-size:26px}.header .button{padding:11px;font-size:10px;gap:10px}.hero{grid-template-columns:1fr;padding-top:32px}.hero h1{font-size:78px}.hero-copy{max-width:500px}.hero-art,.hero-art img{height:420px;min-height:420px}.hero-art{margin-top:6px}.hero-meta{gap:20px}.section{padding-block:54px}.section-heading{align-items:start}.section-heading>p{display:none}.service-grid{grid-template-columns:1fr}.service-card{padding:24px}.service-card h3{margin-top:10px}.service-card p{min-height:0}.card-top{justify-content:space-between}.experience{flex-wrap:wrap;gap:12px}.big-star{display:none}.home-price{margin-left:0;max-width:none;border-top:1px solid var(--line);padding-top:18px;width:100%}.booking-section{grid-template-columns:1fr;gap:15px}.booking-intro h2{font-size:57px}.booking-intro .privacy{max-width:360px}.booking-form{padding:22px}.form-grid{gap:0 12px}.ticker{justify-content:flex-start;font-size:18px}.hero-actions .button{font-size:12px}.section-heading h2{font-size:42px}footer{flex-wrap:wrap}footer p{display:none}.appointment{grid-template-columns:70px 1fr;padding:18px;gap:16px}.appointment>form{grid-column:2}.appointment-time{font-size:29px}.page-title{font-size:46px}.admin .section-heading{display:block}.admin-toolbar{align-items:end}.admin-toolbar>span{max-width:90px;font-size:10px}.admin-toolbar form{gap:10px}.panel{padding:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
