:root{--bg:#060606;--bg2:#0a0a0a;--panel:#101010;--line:#252525;--line2:#363636;--text:#f4f2ed;--muted:#85817a;--dim:#504d48;--metal:#ddd9d0;--metal2:#99958c;--red:#b9a1a1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;overflow-x:hidden;letter-spacing:.01em}.noise,.scanlines{position:fixed;inset:0;pointer-events:none;z-index:50}.noise{opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.scanlines{opacity:.03;background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,rgba(255,255,255,.03) 4px)}.cursor-glow{position:fixed;width:280px;height:280px;border-radius:50%;pointer-events:none;z-index:2;background:radial-gradient(circle,rgba(220,218,211,.07),transparent 65%);transform:translate(-50%,-50%);transition:opacity .3s}.nav{height:82px;border-bottom:1px solid #1f1f1f;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:sticky;top:0;background:rgba(6,6,6,.8);backdrop-filter:blur(20px);z-index:40}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text);min-width:0}.brand-logo{width:47px;height:47px;display:grid;place-items:center;flex:none;overflow:visible}.brand-logo img{width:47px;height:47px;display:block;object-fit:contain;mix-blend-mode:screen;filter:contrast(1.15) brightness(1.02)}.brand-name{font:600 25px Oswald,sans-serif;letter-spacing:.08em;white-space:nowrap}.brand-name span{color:#888}.desktop-nav{display:flex;gap:38px}.desktop-nav a{color:#85827c;text-decoration:none;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:#ddd;transition:.3s}.desktop-nav a:hover{color:#fff}.desktop-nav a:hover:after{width:100%}.nav-cta,.hero-button,.submit,.contact-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;text-decoration:none;border:1px solid #d5d1c9;background:linear-gradient(135deg,#efede8,#bdb9b1);color:#080808;font-size:10px;font-weight:800;letter-spacing:.16em;padding:15px 18px;transition:.3s;position:relative;overflow:hidden}.nav-cta:before,.hero-button:before,.submit:before,.contact-cta:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.65) 50%,transparent 65%);transform:translateX(-130%);transition:.6s}.nav-cta:hover:before,.hero-button:hover:before,.submit:hover:before,.contact-cta:hover:before{transform:translateX(130%)}.nav-cta b,.hero-button b,.submit b,.contact-cta b{font-size:18px;font-weight:400;position:relative}.nav-cta span,.hero-button span,.submit span,.contact-cta span{position:relative}.nav-cta:hover,.hero-button:hover,.submit:hover,.contact-cta:hover{box-shadow:0 15px 50px rgba(255,255,255,.09);transform:translateY(-2px)}.magnetic{will-change:transform}.menu-btn{display:none;background:none;border:0;width:42px;height:42px;cursor:pointer;padding:10px}.menu-btn span{display:block;width:22px;height:1px;background:#ddd;margin:7px 0;transition:.3s}.mobile-menu{display:none}.hero{min-height:calc(100vh - 82px);padding:7vh 7vw 8vh;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:70px 70px;mask-image:radial-gradient(circle at 70% 45%,black,transparent 72%)}.hero-copy{position:relative;z-index:3;padding-top:20px}.eyebrow{font-size:9px;letter-spacing:.24em;color:#77736d;margin:0 0 20px;font-weight:700}.pulse-dot{display:inline-block;width:6px;height:6px;border:1px solid #aaa;border-radius:50%;margin-right:9px;box-shadow:0 0 0 5px rgba(255,255,255,.025);animation:pulse 2.5s infinite}h1,h2,h3{font-family:Oswald,sans-serif;font-weight:500;line-height:.84;letter-spacing:-.035em;margin:0}h1{font-size:clamp(74px,10.8vw,164px)}h1 span,h2 em,h3 em{font-style:normal;color:#a5a29c}h1 .period{color:#777}.hero-text{font-size:13px;color:#85817a;line-height:1.8;margin:34px 0 30px}.hero-text strong{color:#d7d3cb}.hero-button{width:215px}.hero-meta{display:flex;align-items:center;gap:12px;color:#55514b;font-size:8px;letter-spacing:.2em;margin-top:42px}.hero-meta i{width:24px;height:1px;background:#333}.hero-visual{height:min(78vh,760px);position:relative;display:grid;place-items:center;z-index:1}.hero-logo{width:min(76%,630px);position:relative;z-index:3;filter:contrast(1.1) drop-shadow(0 30px 45px rgba(0,0,0,.8));mix-blend-mode:screen;animation:floatLogo 7s ease-in-out infinite}.logo-halo{position:absolute;width:58%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.07),transparent 63%);filter:blur(2px)}.orbit{position:absolute;border:1px solid rgba(160,157,150,.13);border-radius:50%;transform:rotate(-22deg)}.orbit-1{width:78%;aspect-ratio:1;animation:spin 30s linear infinite}.orbit-2{width:62%;aspect-ratio:1;border-style:dashed;opacity:.45;animation:spinReverse 24s linear infinite}.orbit-3{width:92%;aspect-ratio:1;opacity:.3}.vertical-label{position:absolute;right:0;top:50%;transform:rotate(90deg) translateX(50%);transform-origin:right;color:#4d4a45;font:8px Oswald;letter-spacing:.28em}.corner-tag{position:absolute;right:9%;bottom:11%;border-left:1px solid #3b3935;padding-left:11px;color:#777;font:9px Oswald;letter-spacing:.16em}.corner-tag span{color:#444}.scroll-cue{position:absolute;bottom:24px;left:7vw;color:#4e4b46;font-size:8px;letter-spacing:.22em;display:flex;align-items:center;gap:12px}.scroll-cue span{display:block;width:34px;height:1px;background:#45423e;animation:scrollLine 2s ease-in-out infinite}.ticker{overflow:hidden;border-bottom:1px solid var(--line);white-space:nowrap;background:#090909}.ticker-track{display:inline-flex;align-items:center;gap:25px;padding:17px 0;min-width:max-content;animation:ticker 28s linear infinite;font:500 12px Oswald;letter-spacing:.2em;color:#74716b}.ticker-track b{font-size:8px;color:#aaa}.section{padding:125px 7vw}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:58px}.section-head h2,.booking-intro h2,.contact h2{font-size:clamp(68px,8vw,122px)}.section-intro{width:330px;display:flex;gap:20px;align-items:flex-start}.section-number{font:50px Oswald;color:#292827;line-height:.8}.section-intro p{color:#716e68;font-size:12px;line-height:1.8;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{min-height:280px;padding:28px;position:relative;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;cursor:pointer;transition:.45s}.service:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 10%,rgba(255,255,255,.07),transparent 35%);opacity:0;transition:.45s}.service:after{content:"↗";position:absolute;right:26px;top:25px;color:#444;font-size:18px;transition:.45s}.service:hover{background:#0e0e0e;transform:translateY(-5px);box-shadow:0 25px 60px rgba(0,0,0,.35)}.service:hover:before{opacity:1}.service:hover:after{color:#ddd;transform:translate(4px,-4px)}.service.selected{background:#151515;border-color:#777;box-shadow:inset 0 0 0 1px #777}.service-num{font:11px Oswald;color:#555}.service h3{font-size:34px;margin:14px 0 12px}.service p{font-size:11px;line-height:1.7;color:#6c6963;max-width:230px;margin:0}.service-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:30px}.price{font:500 32px Oswald;color:#d2cec6}.select-service{font-size:8px;letter-spacing:.16em;color:#595650}.booking{background:linear-gradient(180deg,#090909,#0b0b0b);border-top:1px solid #1a1a1a;display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw}.booking-intro{padding-top:5px}.booking-lead{color:#77736d;max-width:370px;line-height:1.85;font-size:13px;margin:28px 0 0}.booking-lead strong{color:#c7c3bc}.status-note{margin-top:58px;border-top:1px solid var(--line);padding-top:18px;display:flex;gap:11px;max-width:360px}.status-note>span{width:7px;height:7px;border-radius:50%;background:#bbb;margin-top:4px;box-shadow:0 0 0 5px rgba(255,255,255,.025)}.status-note strong{display:block;color:#77736d;font-size:8px;letter-spacing:.14em}.status-note small{display:block;color:#4e4b46;font-size:10px;line-height:1.6;margin-top:7px}.booking-card{background:linear-gradient(145deg,#111,#0d0d0d);border:1px solid #292929;padding:32px;max-width:720px;justify-self:end;width:100%;box-shadow:0 35px 90px rgba(0,0,0,.4);position:relative}.booking-card:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.025),transparent 35%);pointer-events:none}.card-top{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #282828;padding-bottom:22px}.card-top div span{display:block;color:#595650;font-size:8px;letter-spacing:.18em;margin-bottom:5px}.card-top strong{font:500 27px Oswald;letter-spacing:.04em}.card-top strong span{color:#777}.card-code{font:8px Oswald;color:#4e4b46;letter-spacing:.15em}.progress{display:flex;align-items:center;gap:9px;margin:26px 0 32px}.progress i{height:1px;background:#303030;flex:1}.progress-step{display:flex;align-items:center;gap:7px;color:#444;font-size:7px;letter-spacing:.13em;white-space:nowrap}.progress-step b{font:10px Oswald;border:1px solid #333;width:25px;height:25px;display:grid;place-items:center}.progress-step.active{color:#bbb}.progress-step.active b{color:#080808;background:#ddd;border-color:#ddd}.field-block{margin-bottom:29px}.field-label{font-size:8px;font-weight:700;letter-spacing:.2em;color:#78746d;margin-bottom:11px}.field-label span{color:#3f3d39;margin-right:7px}.service-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.service-option{border:1px solid #2b2b2b;background:#0a0a0a;color:#aaa;padding:14px 10px;cursor:pointer;text-align:left;transition:.25s;min-height:76px}.service-option:hover{border-color:#555}.service-option.active{background:#ddd;color:#080808;border-color:#ddd}.service-option strong{display:block;font:500 18px Oswald;line-height:1.05}.service-option span{display:block;font-size:9px;margin-top:7px;opacity:.7}.booking-form select{display:none}.week-picker-head{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;margin-bottom:9px}.week-picker-head strong{text-align:center;font:500 12px Oswald;letter-spacing:.12em;color:#bbb;text-transform:uppercase}.week-arrow{width:40px;height:40px;background:#0a0a0a;border:1px solid #303030;color:#aaa;font:16px Oswald;cursor:pointer;transition:.2s}.week-arrow:hover{background:#ddd;color:#080808;border-color:#ddd;transform:translateY(-1px)}.day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.day-card{min-width:0;background:#0a0a0a;border:1px solid #292929;color:#777;padding:10px 5px 9px;cursor:pointer;text-align:center;transition:.25s;display:flex;flex-direction:column;align-items:center;gap:3px}.day-card span{text-transform:uppercase;font-size:7px;letter-spacing:.1em;color:#56524d}.day-card strong{font:500 24px Oswald;color:#aaa;line-height:1}.day-card small{font-size:7px;color:#555;text-transform:uppercase}.day-card i{font-style:normal;font-size:6px;letter-spacing:.09em;color:#4f4b46;margin-top:4px}.day-card.available:hover,.day-card.selected{background:#ddd;color:#080808;border-color:#ddd;transform:translateY(-2px);box-shadow:0 12px 30px rgba(255,255,255,.08)}.day-card.available:hover span,.day-card.selected span,.day-card.available:hover strong,.day-card.selected strong,.day-card.available:hover small,.day-card.selected small,.day-card.available:hover i,.day-card.selected i{color:#080808}.day-card.unavailable{opacity:.35;cursor:not-allowed;background:repeating-linear-gradient(135deg,#0a0a0a,#0a0a0a 5px,#0d0d0d 5px,#0d0d0d 10px)}.day-card.unavailable i:before{content:'× ';color:#666}.field-hint{font-size:9px;color:#4e4b46;line-height:1.6;margin:8px 0 0}.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.time{background:#090909;border:1px solid #2b2b2b;color:#aaa;padding:13px 4px;font:11px Oswald;letter-spacing:.06em;cursor:pointer;transition:.2s}.time:hover,.time.selected{background:#ddd;color:#080808;border-color:#ddd;transform:translateY(-1px)}.time.taken{opacity:.16;text-decoration:line-through;cursor:not-allowed}.empty{grid-column:1/-1;color:#4e4b46;font-size:10px;padding:14px;border:1px dashed #292929}.customer-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}.customer-fields label>span{display:block;color:#55514c;font-size:8px;letter-spacing:.16em;margin:0 0 7px}.customer-fields input{width:100%;background:#090909;border:1px solid #2b2b2b;color:#ddd;padding:15px 13px;font:12px 'DM Sans';outline:none}.customer-fields input:focus{border-color:#777}.submit{width:100%;border:0;cursor:pointer;margin-top:2px}.submit:disabled{opacity:.5;cursor:wait;transform:none}.form-error{color:var(--red);font-size:10px;min-height:16px;margin:12px 0 0}.hidden{display:none!important}.success{text-align:center;padding:40px 12px 20px}.success-orbit{width:80px;height:80px;border:1px dashed #4a4843;border-radius:50%;display:grid;place-items:center;margin:0 auto 25px;animation:spin 12s linear infinite}.success-mark{width:53px;height:53px;border:1px solid #aaa;border-radius:50%;display:grid;place-items:center;font-size:22px;animation:counterSpin 12s linear infinite}.success h3{font-size:65px;margin:10px 0 17px}.success-main{color:#7a766f;font-size:11px;line-height:1.8;max-width:430px;margin:0 auto 18px}.success-main strong{color:#ccc}.booking-summary{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #2c2c2c;background:#0a0a0a;margin:22px auto;max-width:530px}.summary-item{padding:15px 8px;border-right:1px solid #2c2c2c}.summary-item:last-child{border:0}.summary-item span{display:block;color:#4d4a45;font-size:7px;letter-spacing:.16em;margin-bottom:6px}.summary-item strong{font:500 14px Oswald;color:#d0ccc4}.secondary{display:inline-flex;gap:15px;align-items:center;border:1px solid #444;background:transparent;color:#ddd;padding:13px 17px;font-size:9px;letter-spacing:.14em;text-decoration:none}.secondary span{font-size:16px}.secondary:hover{border-color:#888}.text-button{display:block;background:none;border:0;color:#555;font-size:8px;letter-spacing:.16em;margin:20px auto 0;cursor:pointer}.text-button:hover{color:#aaa}.statement{position:relative;padding:145px 7vw;border-block:1px solid var(--line);overflow:hidden;background:radial-gradient(circle at 80% 45%,#111,transparent 40%)}.statement-line{position:absolute;right:7vw;top:18%;height:64%;width:1px;background:linear-gradient(transparent,#333,transparent)}.statement .eyebrow{margin-bottom:25px}.statement h2{font-size:clamp(52px,7vw,108px)}.statement h2 span{color:#77736c}.statement-mark{position:absolute;right:10%;top:40%;font-size:65px;color:#292826;animation:floatMark 5s ease-in-out infinite}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact-details{padding-top:12px}.contact-row{padding:21px 0;border-bottom:1px solid var(--line)}.contact-row span{display:block;color:#55514b;font-size:8px;letter-spacing:.2em;margin-bottom:7px}.contact-row strong,.contact-row a{display:block;color:#d1cdc5;font-size:13px;font-weight:500;text-decoration:none}.contact-row a:hover{color:#fff}.contact-row small{display:block;color:#55514b;font-size:9px;margin-top:7px}.contact-cta{margin-top:28px;width:215px}footer{border-top:1px solid var(--line);padding:22px 7vw;display:flex;align-items:center;justify-content:space-between;color:#4e4b46;font-size:8px;letter-spacing:.15em}.footer-brand{display:flex;align-items:center;gap:8px;color:#888}.footer-brand img{width:36px;height:36px;object-fit:contain;mix-blend-mode:screen}.footer-brand span{font:500 17px Oswald}.reveal{opacity:0;transform:translateY(35px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}.admin-page{min-height:100vh}.admin-main{padding:100px 7vw 120px;max-width:1200px;margin:auto}.admin-head{display:grid;grid-template-columns:1fr 330px;gap:10vw;align-items:end;margin-bottom:70px}.admin-head h1{font-size:clamp(76px,9vw,135px)}.admin-head p:not(.eyebrow){max-width:580px;color:#77736d;line-height:1.8;font-size:13px;margin-top:30px}.admin-rule{border-top:1px solid #333;padding-top:18px}.admin-rule span{display:block;width:7px;height:7px;border-radius:50%;background:#ddd;margin-bottom:16px;box-shadow:0 0 0 5px rgba(255,255,255,.03)}.admin-rule strong,.admin-rule small{display:block}.admin-rule strong{font:500 13px Oswald;letter-spacing:.14em;color:#aaa}.admin-rule small{font-size:9px;color:#555;margin-top:7px;line-height:1.6}.admin-card{background:linear-gradient(145deg,#111,#0c0c0c);border:1px solid #292929;padding:32px;box-shadow:0 35px 90px rgba(0,0,0,.4)}.admin-toolbar{display:grid;grid-template-columns:44px 1fr 44px;gap:15px;align-items:center;border-bottom:1px solid #282828;padding-bottom:25px}.admin-toolbar>div{text-align:center}.admin-toolbar small{display:block;color:#555;font-size:7px;letter-spacing:.18em;margin-bottom:6px}.admin-toolbar strong{font:500 24px Oswald;color:#ddd}.admin-days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-top:25px}.admin-day{min-height:230px;border:1px solid #2a2a2a;background:#090909;color:#aaa;cursor:pointer;padding:18px 12px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;transition:.3s}.admin-day:hover{transform:translateY(-4px);border-color:#777}.admin-day span{text-transform:uppercase;font-size:9px;letter-spacing:.13em;color:#777}.admin-day strong{font:500 52px Oswald;line-height:1;color:#ddd}.admin-day small{text-transform:uppercase;font-size:8px;color:#555}.admin-day em{font-style:normal;font-size:8px;letter-spacing:.15em;padding:8px 10px;border:1px solid #333}.admin-day.open{background:linear-gradient(160deg,#e8e5de,#aaa69e);color:#080808;border-color:#ddd;box-shadow:0 18px 45px rgba(255,255,255,.06)}.admin-day.open span,.admin-day.open strong,.admin-day.open small{color:#080808}.admin-day.open em{border-color:#777}.admin-day.closed em{color:#666}.admin-legend{display:flex;gap:22px;margin-top:25px;color:#555;font-size:8px;letter-spacing:.12em}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px}.dot.open{background:#ddd}.dot.closed{border:1px solid #555}.admin-help{display:flex;gap:20px;border-top:1px solid #222;margin-top:45px;padding-top:22px}.admin-help>span{font:40px Oswald;color:#292827}.admin-help p{margin:0;color:#666;font-size:11px;line-height:1.8}.admin-help strong{color:#aaa}
@keyframes floatLogo{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-10px) rotate(1deg)}}@keyframes spin{to{transform:rotate(338deg)}}@keyframes spinReverse{to{transform:rotate(-360deg)}}@keyframes scrollLine{0%,100%{transform:scaleX(.5);transform-origin:left}50%{transform:scaleX(1)}}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes floatMark{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes counterSpin{to{transform:rotate(-360deg)}}@keyframes pulse{0%,100%{opacity:.55;box-shadow:0 0 0 5px rgba(255,255,255,.025)}50%{opacity:1;box-shadow:0 0 0 8px rgba(255,255,255,.035)}}
@media(max-width:900px){.desktop-nav{display:none}.menu-btn{display:block}.nav-cta{display:none}.mobile-menu{position:fixed;right:5vw;top:74px;background:#0e0e0e;border:1px solid #2d2d2d;z-index:39;padding:9px;display:flex;flex-direction:column;min-width:190px;transform:translateY(-15px);opacity:0;pointer-events:none;transition:.25s}.mobile-menu.open{transform:none;opacity:1;pointer-events:auto}.mobile-menu a{color:#aaa;text-decoration:none;padding:15px 13px;border-bottom:1px solid #252525;font:10px Oswald;letter-spacing:.16em}.mobile-menu a:last-child{border:0}.hero{grid-template-columns:1fr;min-height:calc(100vh - 82px);padding-top:70px}.hero-visual{position:absolute;inset:4% 0 0 25%;height:auto;opacity:.34}.hero-copy{max-width:800px}.scroll-cue{display:none}.section{padding:90px 7vw}.section-head{display:grid;grid-template-columns:1fr;gap:30px}.service-grid{grid-template-columns:1fr 1fr}.booking{grid-template-columns:1fr;gap:55px}.booking-card{justify-self:stretch}.contact{grid-template-columns:1fr;gap:45px}.statement-mark{right:5%;opacity:.5}.admin-head{grid-template-columns:1fr;gap:40px}.admin-days{grid-template-columns:repeat(4,1fr)}}
@media(max-width:560px){.nav{height:70px;padding:0 5vw}.brand-logo,.brand-logo img{width:42px;height:42px}.brand-name{font-size:22px}.hero{min-height:calc(100svh - 70px);padding:55px 7vw 75px}.hero h1{font-size:clamp(61px,17vw,90px)}.hero-text{font-size:12px;margin:27px 0}.hero-meta{gap:8px;font-size:7px}.hero-meta i{width:13px}.hero-visual{inset:7% -15% 0 10%;opacity:.24}.ticker-track{gap:17px;font-size:10px}.section{padding:78px 6vw}.section-head h2,.booking-intro h2,.contact h2{font-size:65px}.section-intro{width:auto}.section-number{display:none}.service-grid{grid-template-columns:1fr}.service{min-height:235px}.booking-card{padding:22px}.card-top{padding-bottom:18px}.progress-step span{display:none}.progress{gap:6px}.service-picker{grid-template-columns:1fr}.service-option{min-height:0;padding:13px}.service-option strong{font-size:16px}.day-grid{grid-template-columns:repeat(7,1fr);gap:3px}.day-card{padding:8px 2px 7px}.day-card strong{font-size:20px}.day-card i{font-size:5px}.time-grid{grid-template-columns:repeat(3,1fr)}.customer-fields{grid-template-columns:1fr}.booking-summary{grid-template-columns:1fr}.summary-item{border-right:0;border-bottom:1px solid #2c2c2c}.summary-item:last-child{border-bottom:0}.success h3{font-size:55px}.statement{padding:95px 6vw}.statement h2{font-size:53px}.statement-line{display:none}.statement-mark{font-size:45px;right:8%;top:20%}footer{padding:20px 6vw;display:grid;gap:11px}.cursor-glow{display:none}.admin-main{padding:65px 6vw 90px}.admin-card{padding:18px}.admin-days{grid-template-columns:1fr 1fr}.admin-day{min-height:190px}.admin-toolbar strong{font-size:18px}.admin-head h1{font-size:68px}.admin-rule{margin-bottom:10px}}

/* ===== VCUTZ PRIVATE PANEL / BOOKING CONTROL ===== */
.admin-page .brand-logo img{object-fit:contain;}
.admin-head h1 span{color:#8e8b84}
.admin-days{grid-template-columns:repeat(7,1fr)}
.admin-day{position:relative;min-height:245px;isolation:isolate;overflow:hidden}
.admin-day:before{content:"";position:absolute;inset:auto -35% -45% -35%;height:75%;background:radial-gradient(circle,rgba(255,255,255,.08),transparent 65%);opacity:0;transition:.35s;z-index:-1}
.admin-day:hover:before,.admin-day.active-day:before{opacity:1}
.admin-day.active-day{border-color:#aaa;box-shadow:inset 0 0 0 1px #555,0 22px 55px rgba(0,0,0,.4)}
.admin-day.open.active-day{box-shadow:inset 0 0 0 2px #111,0 22px 55px rgba(0,0,0,.42)}
.admin-day i{font-style:normal;font-size:7px;letter-spacing:.13em;color:#4c4944;opacity:.9}
.admin-day.open i{color:#1b1a18}
.hour-editor{margin-top:30px;padding:30px;border:1px solid #292929;background:linear-gradient(145deg,#0d0d0d,#090909);position:relative}
.hour-editor:before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background:linear-gradient(#ddd,transparent 75%);opacity:.7}
.hour-editor-head{display:flex;justify-content:space-between;align-items:end;gap:20px;border-bottom:1px solid #262626;padding-bottom:20px}
.hour-editor-head .eyebrow{margin-bottom:8px}
.hour-editor-head h2{font:500 clamp(25px,3vw,40px) Oswald;letter-spacing:.01em;color:#ddd}
.day-state{padding:10px 13px;border:1px solid #333;color:#5b5751;font:700 8px DM Sans;letter-spacing:.15em}
.day-state.open{background:#ddd;color:#080808;border-color:#ddd}
.hour-editor-copy{max-width:650px;color:#66625c;font-size:11px;line-height:1.7;margin:18px 0 15px}
.hour-actions{display:flex;gap:7px;margin-bottom:14px}
.admin-action{border:1px solid #444;background:#ddd;color:#080808;padding:11px 13px;font:800 8px DM Sans;letter-spacing:.13em;cursor:pointer;transition:.2s}
.admin-action:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(255,255,255,.06)}
.admin-action.ghost{background:transparent;color:#777}
.hour-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}
.hour-chip{border:1px solid #292929;background:#090909;color:#666;padding:12px 6px;font:500 11px Oswald;cursor:pointer;transition:.18s}
.hour-chip:hover{border-color:#777;color:#ddd;transform:translateY(-1px)}
.hour-chip.selected{background:#ddd;border-color:#ddd;color:#080808;box-shadow:0 8px 20px rgba(255,255,255,.04)}
.save-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #262626;margin-top:20px;padding-top:18px}
#saveMessage{font-size:9px;letter-spacing:.12em;color:#55514b}
.admin-save{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-width:205px;border:1px solid #d5d1c9;background:linear-gradient(135deg,#efede8,#aaa69e);color:#080808;padding:15px 16px;cursor:pointer;font:800 9px DM Sans;letter-spacing:.15em;position:relative;overflow:hidden}
.admin-save b{font-size:17px;font-weight:400}
.admin-save:hover{transform:translateY(-2px);box-shadow:0 15px 45px rgba(255,255,255,.08)}
.admin-save:disabled{opacity:.55;cursor:wait;transform:none}
.dot.hour{background:#aaa}
.admin-bookings{padding-top:130px}
.admin-section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:50px}
.admin-section-head h2{font-size:clamp(64px,8vw,112px)}
.request-summary{min-width:170px;border-top:1px solid #333;padding-top:15px;text-align:right}
.request-summary span{display:block;font:500 55px Oswald;color:#ddd;line-height:.9}
.request-summary small{display:block;color:#555;font-size:8px;letter-spacing:.16em;margin-top:9px}
.booking-filters{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #292929;padding-bottom:15px}
.filter{border:1px solid #292929;background:#090909;color:#5e5a54;padding:12px 15px;font:800 8px DM Sans;letter-spacing:.14em;cursor:pointer;transition:.2s}
.filter:hover{border-color:#777;color:#ccc}.filter.active{background:#ddd;border-color:#ddd;color:#080808}
.admin-booking-list{margin-top:10px;border-top:1px solid #202020}
.request-card{display:grid;grid-template-columns:1fr 1.5fr 1fr auto;gap:25px;align-items:center;padding:24px 0;border-bottom:1px solid #202020;position:relative}
.request-card:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:2px;background:#444}
.request-card.pending:before{background:#ddd}.request-card.confirmed:before{background:#8e8e8e}.request-card.closed:before{background:#3b3935}
.request-date{padding-left:16px}.request-date span{display:block;color:#55514b;font-size:8px;letter-spacing:.13em;text-transform:uppercase}.request-date strong{display:block;font:500 35px Oswald;color:#ddd;margin-top:4px}
.request-person strong{display:block;color:#ddd;font-size:15px}.request-person a{display:block;color:#777;text-decoration:none;font-size:10px;margin-top:4px}.request-person a:hover{color:#ddd}.request-person small{display:block;color:#4f4b46;font-size:8px;letter-spacing:.13em;margin-top:10px}
.request-status{text-align:left}.status-badge{display:inline-block;padding:7px 9px;border:1px solid #333;font:800 7px DM Sans;letter-spacing:.12em;color:#777}.status-badge.pending{color:#ddd;border-color:#666}.status-badge.confirmed{background:#ddd;color:#080808;border-color:#ddd}.status-badge.closed{color:#4c4944}.request-status small{display:block;color:#444;font-size:7px;margin-top:7px}
.request-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.request-btn{border:1px solid #3a3936;background:#0a0a0a;color:#aaa;padding:11px 12px;font:800 7px DM Sans;letter-spacing:.12em;cursor:pointer;transition:.2s;white-space:nowrap}.request-btn:hover{transform:translateY(-2px);border-color:#888;color:#fff}.request-btn.confirm{background:#ddd;color:#080808;border-color:#ddd}.request-btn.reject{color:#888}.request-btn.ghost{color:#666}.request-btn:disabled{opacity:.5;cursor:wait;transform:none}
.admin-empty{padding:40px 0;color:#4f4b46;font:9px DM Sans;letter-spacing:.16em}.admin-empty span{color:#aaa;font-size:18px;margin-right:8px}
@media(max-width:900px){.admin-days{grid-template-columns:repeat(4,1fr)}.hour-grid{grid-template-columns:repeat(6,1fr)}.request-card{grid-template-columns:1fr 1fr}.request-status{justify-self:end}.request-actions{grid-column:1/-1;justify-content:flex-start}.admin-section-head{align-items:start}}
@media(max-width:560px){.admin-main{padding:60px 6vw 90px}.admin-days{grid-template-columns:1fr 1fr}.admin-day{min-height:180px}.hour-editor{padding:20px}.hour-editor-head{align-items:start;flex-direction:column}.hour-grid{grid-template-columns:repeat(4,1fr)}.save-row{align-items:stretch;flex-direction:column}.admin-save{width:100%}.admin-bookings{padding-top:90px}.admin-section-head{display:block}.request-summary{margin-top:25px;text-align:left}.request-card{grid-template-columns:1fr 1fr;gap:16px;padding:20px 0}.request-date strong{font-size:28px}.request-person strong{font-size:13px}.request-actions{grid-column:1/-1}.request-btn{flex:1}.booking-filters{gap:5px}.filter{padding:10px 11px}}

/* ===== VCUTZ ADMIN V3 ===== */
.admin-days{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:28px;visibility:visible!important;min-height:190px}
.admin-day{display:flex!important;visibility:visible!important;width:100%;min-width:0;min-height:190px;padding:18px 15px;border:1px solid #292929;background:#0b0b0b;color:#ddd;cursor:pointer;flex-direction:column;align-items:flex-start;justify-content:space-between;text-align:left;transition:transform .25s,border-color .25s,background .25s,box-shadow .25s}
.admin-day:hover{transform:translateY(-4px);border-color:#666;background:#101010}
.admin-day.open{background:linear-gradient(145deg,#d9d6d0,#a7a39b);color:#080808;border-color:#ddd}
.admin-day.closed{background:#0b0b0b;color:#ddd}
.admin-day.active-day{border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.12),0 18px 45px rgba(0,0,0,.35)}
.admin-day span{font:700 8px DM Sans;letter-spacing:.16em;text-transform:uppercase;opacity:.65}
.admin-day strong{font:500 50px Oswald;line-height:.9}
.admin-day small{font-size:9px;opacity:.6;text-transform:uppercase;letter-spacing:.08em}
.admin-day em{font:800 8px DM Sans;letter-spacing:.13em;font-style:normal}
.admin-day i{font:7px DM Sans;letter-spacing:.1em;font-style:normal;opacity:.55;line-height:1.4}
.admin-load-error{margin-top:14px;border:1px solid #4a3939;background:#171010;color:#b5a5a0;padding:13px 15px;font-size:9px;letter-spacing:.08em}
.admin-load-error b{color:#ddd}
.hour-editor-copy strong{color:#aaa}
.hour-chip.selected{background:#efede8!important;border-color:#efede8!important;color:#080808!important;box-shadow:0 8px 24px rgba(255,255,255,.08)}
.hour-chip:not(.selected){background:#080808!important;color:#777!important}
@media(max-width:900px){.admin-days{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:560px){.admin-days{grid-template-columns:1fr 1fr}.admin-day{min-height:170px}.admin-day strong{font-size:42px}}
/* VCutZ custom-time editor */
.hour-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.hour-row{display:grid;grid-template-columns:34px 1fr 42px;align-items:center;gap:7px;border:1px solid #242424;background:#080808;padding:7px;transition:.2s}
.hour-row:hover{border-color:#555;transform:translateY(-1px)}
.hour-row.selected{border-color:#aaa;background:linear-gradient(145deg,#141414,#0b0b0b)}
.hour-toggle{width:32px;height:32px;border:1px solid #333;background:#0d0d0d;color:#ddd;cursor:pointer;font:700 12px DM Sans;transition:.2s}
.hour-toggle:hover{border-color:#888}
.hour-toggle.selected{background:#efede8;color:#080808;border-color:#efede8}
.hour-input{width:100%;min-width:0;border:1px solid #2d2d2d;background:#111;color:#eee;padding:9px 7px;outline:none;font:500 13px Oswald;letter-spacing:.04em;text-align:center}
.hour-input:focus{border-color:#aaa;box-shadow:0 0 0 2px rgba(255,255,255,.05)}
.hour-base{font:8px DM Sans;color:#555;text-align:center;letter-spacing:.05em}
@media(max-width:900px){.hour-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.hour-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hour-row{grid-template-columns:32px 1fr 38px}}

.hour-row.custom{border-style:dashed}.hour-row.custom .hour-base{color:#8d8a84}.hour-actions{flex-wrap:wrap}
