@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap";:root{--bg:#121a1c;--ink:#f2f4e9;--muted:#aebbb7;--accent:#d5ee9e;--panel:#203033;--line:#344244;--serif:"Libre Baskerville",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font:14px/1.6 var(--sans);margin:0;overflow-x:hidden}button,input,textarea{font:inherit}button,a{color:inherit}a{text-decoration:none}button{cursor:pointer;border:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;height:80px;padding:0 6%;display:flex}.brand{letter-spacing:-.04em;align-items:center;gap:12px;font-size:18px;font-weight:700;display:flex}.mark{color:var(--accent);place-items:center;font-size:26px;display:grid}.site-header nav{align-items:center;gap:28px;font-size:12px;display:flex}.site-header nav a{color:var(--muted)}.site-header nav .nav-cta{color:var(--ink);border-bottom:1px solid var(--accent);align-items:center;gap:8px;padding:7px 0;display:flex}.hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:6%;min-height:560px;padding:66px 6% 74px;display:grid;position:relative}.hero-copy{z-index:1}.eyebrow{letter-spacing:.17em;color:var(--accent);text-transform:uppercase;margin:0;font-size:10px;font-weight:700}.hero h1,.page-intro h1,.booking-head h1,.confirmation h1,.not-found h1{letter-spacing:-.065em;margin:24px 0;font-size:clamp(44px,6vw,76px);font-weight:700;line-height:1.05}.hero h1 em,.page-intro h1 em,.booking-head h1 em,.confirmation h1 em,.not-found h1 em{font-family:var(--serif);letter-spacing:-.06em;font-weight:400}.lead,.page-intro>p:last-child,.booking-head>p:last-child,.confirm-lead{color:#dce5df;max-width:390px;font-size:15px;line-height:1.8}.hero-actions{align-items:center;gap:27px;margin-top:30px;display:flex}.button{align-items:center;gap:25px;min-height:48px;padding:12px 20px;font-size:12px;font-weight:600;transition:transform .16s,background .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--accent);color:#18231c}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.text-link{border-bottom:1px solid var(--muted);align-items:center;gap:8px;padding-bottom:5px;font-size:12px;display:inline-flex}.open-note{color:var(--muted);align-items:center;gap:9px;margin-top:25px;font-size:10px;display:flex}.live-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #d5ee9e1f}.separator{color:var(--line);margin:0 4px}.hero-art{background:linear-gradient(135deg,#2a3b3a 0%,#172221 65%);height:420px;position:relative;overflow:hidden}.hero-art:before{content:"";border:1px solid #d5ee9e54;border-radius:50%;width:280px;height:280px;position:absolute;top:17%;left:12%;box-shadow:0 0 0 34px #d5ee9e0b,0 0 0 68px #d5ee9e07}.art-circle{border:1px solid var(--accent);width:132px;height:132px;color:var(--accent);border-radius:50%;place-items:center;display:grid;position:absolute;top:29%;left:25%}.art-circle span{letter-spacing:.2em;font-size:11px;font-weight:700;position:absolute;bottom:28px}.art-card{background:var(--accent);color:#18231c;flex-direction:column;width:145px;padding:17px 20px;display:flex;position:absolute;bottom:11%;right:9%}.art-card span{margin-bottom:22px;font-size:10px}.art-card strong{letter-spacing:-.05em;font-size:20px;line-height:1.1}.art-card small{margin-top:16px;font-size:9px}.art-line{background:#d5ee9e55;height:1px;position:absolute}.line-one{width:52%;top:30%;right:0}.line-two{width:30%;bottom:23%;left:0}.art-word{letter-spacing:.25em;color:#d5ee9eaa;font-size:10px;line-height:1.5;position:absolute;top:11%;right:10%}.art-word span{color:var(--ink);font-size:8px}.ribbon{background:var(--accent);color:#18231c;letter-spacing:.1em;justify-content:space-between;align-items:center;gap:20px;padding:18px 6%;font-size:10px;display:flex}.ribbon>span:first-child{font-size:15px;font-family:var(--serif);letter-spacing:0;font-style:italic}.home-info{grid-template-columns:.8fr 2fr;gap:8%;padding:74px 6% 90px;display:grid}.home-info h2{letter-spacing:-.06em;margin:20px 0;font-size:38px;line-height:1.05}.info-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.info-grid article{border-top:2px solid var(--accent);padding-top:15px}.index{color:var(--accent);margin-bottom:24px;font-size:10px;display:block}.info-grid svg{color:var(--accent)}.info-grid h3{margin:17px 0 8px;font-size:14px}.info-grid p{color:var(--muted);margin:0;font-size:12px;line-height:1.75}.info-grid p a{color:var(--ink);border-bottom:1px solid var(--accent)}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;padding:24px 6%;font-size:10px;display:flex}footer a{color:var(--ink)}.page-intro,.booking-head{max-width:760px;padding:68px 6% 50px}.page-intro h1,.booking-head h1{margin:20px 0;font-size:clamp(46px,6vw,72px)}.service-list{padding:0 6% 55px}.service-card{border-top:2px solid var(--accent);border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:20px;padding:24px 0;display:grid}.service-card h2{letter-spacing:-.05em;margin:14px 0;font-size:28px}.service-card p{color:var(--muted);max-width:470px;line-height:1.8}.price{color:var(--accent);align-items:baseline;gap:7px;display:flex}.price strong{letter-spacing:-.07em;font-size:50px}.price span{font-size:14px}.service-bottom{border-top:1px solid var(--line);color:var(--muted);grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:18px;font-size:11px;display:flex}.service-bottom span{align-items:center;gap:8px;display:flex}.payment-note{background:var(--panel);align-items:center;gap:18px;margin:0 6% 80px;padding:26px;display:flex}.payment-icon{border:1px solid var(--accent);width:43px;height:43px;color:var(--accent);place-items:center;font-size:20px;display:grid}.payment-note h3{margin:7px 0;font-size:15px}.payment-note p:last-child{color:var(--muted);margin:0;font-size:12px}.booking-head{padding-bottom:25px}.back-link{color:var(--muted);background:0 0;align-items:center;gap:4px;margin-bottom:55px;padding:0;font-size:11px;display:flex}.booking-layout{grid-template-columns:1.15fr .85fr;gap:55px;padding:0 6% 80px;display:grid}.booking-step,.booking-form{border-top:1px solid var(--line);padding-top:23px}.step-title{align-items:center;gap:16px;display:flex}.step-title>span{color:var(--accent);font-size:11px}.step-title h2{letter-spacing:-.04em;margin:5px 0;font-size:22px}.step-title strong{color:var(--accent);margin-left:auto;font-size:14px}.date-row{gap:8px;margin:32px 0 21px;padding-bottom:3px;display:flex;overflow-x:auto}.date{background:var(--panel);width:61px;height:68px;color:var(--muted);flex-direction:column;flex:none;justify-content:center;gap:3px;display:flex}.date small{text-transform:uppercase;font-size:9px}.date b{font-size:19px}.date.active{background:var(--accent);color:#18231c}.selected-date{color:var(--ink);margin:0 0 14px;font-size:13px}.slots{flex-wrap:wrap;gap:9px;display:flex}.slot{background:var(--panel);min-height:43px;color:var(--ink);align-items:center;gap:8px;padding:10px 13px;font-size:12px;display:inline-flex}.slot.selected{background:var(--accent);color:#18231c}.muted,.state{color:var(--muted);font-size:12px}.booking-form{flex-direction:column;gap:15px;display:flex}.booking-form .step-title{margin-bottom:12px}.booking-form label{color:var(--muted);flex-direction:column;gap:6px;font-size:11px;display:flex}.booking-form label small{color:#75827d;display:inline}.booking-form input,.booking-form textarea{border:1px solid var(--line);color:var(--ink);resize:vertical;background:0 0;padding:12px}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#687772}.booking-form input:focus,.booking-form textarea:focus{border-color:var(--accent);outline:none}.submit{justify-content:space-between;margin-top:5px}.form-note{color:var(--muted);margin:0;font-size:10px}.form-error{color:#ffb6a8;margin:0;font-size:11px}.state{border:1px solid var(--line);grid-column:1/-1;padding:25px}.state.error a{color:var(--accent);align-items:center;gap:5px;margin-top:12px;display:inline-flex}.confirmation,.not-found{max-width:650px;padding:90px 6% 120px}.success-mark{border:1px solid var(--accent);width:64px;height:64px;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:31px;display:grid}.confirmation h1,.not-found h1{margin:20px 0;font-size:clamp(48px,6vw,72px)}.confirm-card{border-block:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:28px;margin:35px 0 22px;padding:20px 0;display:flex}.confirm-card span{align-items:center;gap:9px;font-size:12px;display:flex}.confirm-card svg,.confirm-contact svg{color:var(--accent)}.confirm-card small{width:100%;color:var(--muted);font-size:10px}.confirm-contact{color:var(--muted);gap:23px;font-size:11px;display:flex}.confirm-contact p{align-items:center;gap:7px;display:flex}.not-found .button{margin-top:15px}@media (width<=760px){.site-header{height:72px;padding:0 6%}.site-header nav{gap:14px}.site-header nav>a:first-child{display:none}.hero{flex-direction:column;align-items:stretch;gap:35px;padding-top:42px;display:flex}.hero h1{font-size:48px}.hero-art{height:320px}.art-circle{top:25%;left:20%}.home-info{padding-top:55px;display:block}.home-info h2{margin-bottom:35px;font-size:34px}.info-grid{grid-template-columns:1fr;gap:30px}.ribbon{padding-block:16px;font-size:8px}.ribbon>span:first-child{font-size:12px}.ribbon>span:nth-child(2){text-align:right}.page-intro,.booking-head{padding-top:48px}.page-intro h1,.booking-head h1{font-size:48px}.service-card{display:block}.price{margin:20px 0}.service-bottom{flex-direction:column;align-items:flex-start;gap:10px}.booking-layout{padding-bottom:55px;display:block}.booking-form{margin-top:50px}.date-row{margin-top:25px}footer{flex-wrap:wrap}.payment-note{margin-bottom:55px}.confirmation,.not-found{padding-top:65px}.confirm-contact{display:block}.confirm-contact p{margin:9px 0}}
