:root,[data-theme="cutclub"]{--color-base-100:#080809;--color-base-200:#121214;--color-base-300:#29292e;--color-base-content:#f4f3f7;--color-primary:#b49aff;--color-primary-content:#f4f3f7;--color-secondary:#292333;--color-secondary-content:#141417;--color-accent:#b49aff;--color-accent-content:#f4f3f7;--color-neutral:#1b1b1f;--color-neutral-content:#141417;--color-info:#93baff;--color-info-content:#101d36;--color-success:#99d6ba;--color-success-content:#102b20;--color-warning:#efc58b;--color-warning-content:#35210b;--color-error:#ff9aab;--color-error-content:#141417;--radius-selector:.25rem;--radius-field:.4rem;--radius-box:.7rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--color-base-100);color:var(--color-base-content);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.35}button:focus-visible,a:focus-visible{outline:3px solid #b49aff;outline-offset:4px}[hidden]{display:none!important}header{max-width:1440px;margin:auto;padding:25px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff12}.logo{font-weight:900;font-size:28px;letter-spacing:-1.7px}.logo span{color:#b49aff;padding:0 3px}.logo sup{font-size:10px;vertical-align:top;position:relative;top:5px;letter-spacing:0}nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:600}nav .active{border-bottom:2px solid #b49aff;padding:12px 0}.btn{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:44px;padding:0 20px;border:1px solid #ffffff18;border-radius:6px;background:transparent;font-weight:700;box-shadow:none}.btn:hover{background:#29292e}.hero-layout{max-width:1440px;padding:48px 5% 42px;margin:auto;display:grid;grid-template-columns:1.08fr 1fr;gap:5%}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;display:flex;align-items:center;gap:9px}.dot{height:7px;width:7px;background:#b49aff;border-radius:50%}.hero-copy{padding-top:12px}.hero-copy h1{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:clamp(60px,6.6vw,100px);font-weight:800;letter-spacing:-1px;line-height:.94;margin:29px 0 22px;position:relative;max-width:580px}.hero-copy h1 span{color:#b49aff}.hero-copy h1 svg{display:block;width:65%;height:17px;margin-left:30%;fill:none;stroke:#b49aff;stroke-width:4}.hero-copy p{line-height:1.8;color:#aaa7b2;font-size:14px}.hero-cta{margin-top:19px;background:#f4f3f7!important;color:#141417;border:0;padding:0 24px;min-height:48px}.hero-cta span{font-size:22px;margin-left:24px}.hero-foot{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;margin-top:42px;color:#aaa7b2;max-width:485px}.hero-art{min-height:388px;position:relative;overflow:hidden;background:#231c32;border-radius:8px;color:#e9dcff}.art-grid{position:absolute;inset:0;opacity:.15;background-image:linear-gradient(#b49aff 1px,transparent 1px),linear-gradient(90deg,#b49aff 1px,transparent 1px);background-size:48px 48px;transform:rotate(-15deg) scale(1.4)}.art-top{position:absolute;top:25px;left:27px;font-size:10px;font-weight:700;letter-spacing:1.5px}.art-word{position:absolute;bottom:54px;left:25px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:88px;line-height:.82;font-weight:800;transform:rotate(-7deg);letter-spacing:-2px}.art-word span{-webkit-text-stroke:1px #e9dcff;color:transparent}.scissors{position:absolute;right:35px;top:45px;font-size:220px;line-height:1;color:#b49aff;transform:rotate(-35deg);text-shadow:9px 11px 0 #0d0b11}.comb{position:absolute;left:40px;top:110px;width:210px;height:36px;background:#b49aff;transform:rotate(-30deg);border-radius:14px;display:flex;justify-content:space-evenly;padding:25px 10px 0;box-shadow:0 8px 0 #0d0b11}.comb i{height:49px;width:7px;background:#b49aff;border-radius:0 0 5px 5px}.art-sticker{position:absolute;right:28px;bottom:48px;width:108px;height:108px;background:#b49aff;border-radius:50%;color:#160a30;transform:rotate(13deg);display:flex;flex-direction:column;justify-content:center;align-items:center;border:5px double #231c32;font-size:28px;font-weight:900;line-height:1.1}.art-sticker small{font-size:10px;letter-spacing:1px}.art-bottom{position:absolute;bottom:18px;left:27px;font-size:9px;letter-spacing:2px}.ticker{background:#231c32;border-block:1px solid #ffffff12;white-space:nowrap;overflow:hidden;padding:13px 0;font-size:11px;letter-spacing:3px;font-weight:700;word-spacing:7px}.ticker b{margin:0 32px;font-size:18px}.booking-section{max-width:1440px;margin:auto;padding:56px 5% 60px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.section-heading h2,h2{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:34px;font-weight:700;margin:8px 0;line-height:1.1}.section-heading h2 span{margin-left:20px;color:#b49aff}.badge{font-size:10px;border:1px solid #ffffff18;padding:7px 11px;display:inline-flex;border-radius:20px;white-space:nowrap;height:auto}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:25px}.booking-main{border:1px solid #ffffff12;border-radius:8px;background:#141417}.steps-bar{display:flex;gap:30px;border-bottom:1px solid #ffffff12;padding:20px 26px;color:#aaa7b2;font-size:11px}.steps-bar span{display:flex;gap:8px;align-items:center}.steps-bar b{font-size:12px;font-weight:500}.steps-bar .selected{color:#b49aff;font-weight:700}.steps-bar .selected b{font-weight:700}#booking-body{padding:25px 26px}.step-title{font-size:20px;font-weight:700;margin:0 0 5px}.muted{color:#aaa7b2;font-size:12px;line-height:1.6}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.service{display:flex;gap:13px;text-align:left;padding:19px 15px;background:#141417;border:1px solid #ffffff12;border-radius:6px;position:relative;min-height:112px}.service:hover{border-color:#9875d4}.service.selected{border:1.5px solid #a17be2;background:#231c32}.service-icon{font-size:26px;color:#b49aff;width:31px;flex-shrink:0}.service strong{display:block;font-size:13px;padding-right:17px}.service p{font-size:10px;line-height:1.5;color:#aaa7b2;margin:5px 0 10px}.service small{font-size:10px;color:#aaa7b2}.service .price{float:right;color:#f4f3f7;font-size:13px;font-weight:700}.selection-dot{position:absolute;right:12px;top:15px;height:13px;width:13px;border-radius:50%;border:1px solid #ffffff30}.selected .selection-dot{background:#b49aff;border:3px solid #231c32;outline:1px solid #b49aff}.service:last-child{grid-column:1/-1}.staff-section{margin-top:25px;border-top:1px solid #ffffff12;padding-top:20px}.staff-options{display:flex;gap:10px;margin-top:13px;flex-wrap:wrap}.staff-option{border:1px solid #ffffff12;background:#141417;padding:10px 16px;border-radius:6px;display:flex;gap:10px;align-items:center;font-size:12px}.staff-option.selected{border-color:#9875d4;background:#231c32}.avatar-letter{border-radius:50%;background:#383040;padding:7px 10px;font-weight:bold}.staff-option small{display:block;color:#aaa7b2;font-size:10px}.summary-box{border:1px solid #ffffff12;background:#16131c;border-radius:8px;padding:23px}.summary-heading{display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.3px;font-weight:700}.summary-heading span{font-size:19px}.summary-rule{border:0;border-top:1px dashed #ffffff14;margin:20px 0}.summary-line{display:flex;justify-content:space-between;margin:13px 0;font-size:12px;gap:10px}.summary-line span{color:#aaa7b2}.total{font-size:14px;font-weight:bold}.total strong{font-size:27px}.btn-primary{background:#b49aff!important;color:#f4f3f7;border-color:#b49aff}.full{width:100%;margin-top:18px}.summary-note{font-size:10px;text-align:center;color:#aaa7b2;line-height:1.7;margin-top:12px}.aside-note{padding:23px 10px;display:flex;gap:12px}.aside-note b{display:block;font-size:11px;margin-bottom:4px}.aside-note p{font-size:11px;color:#aaa7b2;line-height:1.7;margin:0}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin:22px 0 12px}.calendar-header b{text-transform:capitalize}.calendar-header .btn{min-height:30px;padding:0 12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-grid small{text-align:center;color:#aaa7b2;padding:5px}.day{background:none;border:1px solid transparent;border-radius:5px;height:37px}.day:hover:not(:disabled){background:#29292e}.day.selected{background:#231c32;color:white}.day:disabled{opacity:.22}.slots{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px}.slot{padding:9px;border:1px solid #ffffff18;border-radius:5px;background:#141417;font-size:12px}.slot.selected{background:#231c32;border-color:#b49aff}.back{background:none;border:0;color:#aaa7b2;font-size:12px;margin-bottom:19px;padding:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:25px}label{font-size:12px;font-weight:600;display:block}.input,select{width:100%;border:1px solid #ffffff20;background:#141417;border-radius:5px;padding:11px 13px;min-height:44px;margin-top:7px;color:#f4f3f7}.wide{grid-column:1/-1}.privacy{font-size:11px;font-weight:400;line-height:1.7;color:#aaa7b2;margin-top:22px}.error{color:#ff9aab;font-size:12px;line-height:1.5}.success-view{text-align:center;padding:25px 10px}.success-symbol{width:64px;height:64px;border-radius:50%;background:#231c32;margin:0 auto 22px;display:grid;place-items:center;font-size:30px}.success-view h2{font-size:39px}.bottom-strip{background:#141417;margin:0 5% 35px;border-radius:8px;padding:30px 35px;display:flex;align-items:center;justify-content:space-between}.bottom-strip h3{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:29px;line-height:1.1;font-weight:700;margin:0}.bottom-strip p{color:#aaa7b2;font-size:12px;line-height:1.8}.bottom-strip>span{font-size:60px;color:#b49aff}footer{display:flex;justify-content:space-between;align-items:center;padding:26px 5%;border-top:1px solid #ffffff12}footer>span{font-size:9px;letter-spacing:1px;color:#aaa7b2}footer .logo{font-size:22px}dialog{border:1px solid #ffffff20;border-radius:12px;padding:34px;background:#080809;width:440px;max-width:92vw;margin:auto;max-height:90vh;overflow:auto;color:#f4f3f7}dialog::backdrop{background:#000000bb;backdrop-filter:blur(5px)}dialog .close{position:absolute;right:9px;top:7px;border:0;font-size:23px}dialog p{color:#aaa7b2;font-size:12px;line-height:1.7}dialog label{margin-top:15px}.dark-btn{background:#231c32;color:#141417;width:100%;margin-top:15px}.dark-btn:hover{color:#231c32}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:20;background:#251e32;color:white;border-radius:8px;padding:15px 24px;box-shadow:0 5px 25px #0002;max-width:90vw}#team{padding:40px 5%;min-height:70vh}.team-top{display:flex;justify-content:space-between;align-items:center}.team-top h1{font-size:48px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-weight:700;margin:8px 0}.team-actions{display:flex;gap:10px;flex-wrap:wrap}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:25px 0}.stat-box{padding:20px;border:1px solid #ffffff18;border-radius:8px;background:var(--color-base-200)}.stat-box strong{font-size:30px;display:block}.stat-box span{font-size:11px;color:#aaa7b2}.agenda-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.agenda-controls input,.agenda-controls select{width:auto;margin:0}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));min-width:920px;border:1px solid #ffffff18;background:var(--color-base-200);border-radius:8px;overflow:hidden}.week-scroll{overflow:auto}.week-day{border-right:1px solid #ffffff12;min-height:350px;padding:10px}.week-day h3{font-size:12px;text-transform:capitalize;text-align:center;border-bottom:1px solid #ffffff12;padding-bottom:15px;margin:5px 0 15px}.appointment{display:block;width:100%;text-align:left;border:1px solid #b49aff30;border-left:3px solid #b49aff;background:#231c32;padding:11px 8px;margin-bottom:9px;border-radius:4px;overflow-wrap:anywhere}.appointment strong{display:block;font-size:11px;margin:6px 0}.appointment small{font-size:10px;color:#c5b6de}.appointment.cancelled{opacity:.5;background:#202024;border-color:#65616c;text-decoration:line-through}.appointment.completed{background:#182820;border-color:#557d69}.empty-day{text-align:center;font-size:10px;color:#aaa7b2;padding:20px 0}.edit-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.danger{color:#ff9aab}.detail-meta{font-size:12px;margin:18px 0}.session-user{font-size:11px;color:#aaa7b2}
@media(min-width:1500px){.bottom-strip{max-width:1296px;margin-left:auto;margin-right:auto}}@media(max-width:1000px){.hero-art{min-height:340px}.scissors{font-size:170px;right:15px}.art-word{font-size:73px}.comb{width:165px;top:100px}.booking-layout{grid-template-columns:minmax(0,1fr) 255px}.steps-bar{gap:15px;padding:18px}.steps-bar b{font-size:10px}#booking-body{padding:22px 18px}.service{padding:15px 10px;gap:6px}.service-icon{width:23px;font-size:23px}.hero-copy h1{font-size:65px}.hero-foot{margin-top:27px;font-size:8px}.section-heading h2{font-size:29px}}
@media(max-width:720px){header{padding:18px 5%}.logo{font-size:24px}nav{gap:16px}nav>a{display:none}nav .btn{font-size:11px;min-height:34px;padding:0 10px}.hero-layout{padding-top:30px;grid-template-columns:1fr;gap:26px}.hero-copy h1{font-size:73px;max-width:440px}.hero-copy h1 svg{width:60%}.hero-art{min-height:275px}.art-word{left:30px;bottom:40px;font-size:80px}.comb{left:42%;top:60px;width:145px}.scissors{right:12%;top:25px;font-size:175px}.art-sticker{width:82px;height:82px;right:25px;bottom:35px;font-size:23px}.art-sticker small{font-size:8px}.hero-foot{max-width:none}.ticker{font-size:9px;padding:9px 0}.booking-section{padding:35px 5%}.section-heading{display:block}.section-heading .badge{margin-top:10px}.section-heading h2{font-size:29px}.booking-layout{grid-template-columns:1fr}.services-grid{gap:9px}.service strong{font-size:12px}.service p{font-size:10px}.service-icon{display:none}.steps-bar{justify-content:space-between;gap:6px}.summary-box{padding:22px}.aside-note{padding-bottom:0}.bottom-strip{padding:25px;gap:15px}.bottom-strip p{display:none}.bottom-strip h3{font-size:26px}footer{gap:20px;flex-wrap:wrap}footer>span:nth-child(2){display:none}.slots{grid-template-columns:repeat(4,1fr)}.team-top{align-items:flex-start;gap:15px}.team-top h1{font-size:34px}.team-actions{flex-direction:column}.team-actions .btn{font-size:10px;padding:0 10px}.stats-row{gap:8px}.stat-box{padding:12px}.stat-box strong{font-size:24px}.stat-box span{font-size:10px}.form-grid{gap:10px}.art-top{font-size:9px}}
/* Midnight theme and refined components. */
:root,[data-theme="cutclub"]{--color-primary-content:#160a30;--color-secondary-content:#e5d9ff;--color-accent-content:#160a30;--color-neutral-content:#f4f3f7;--color-error-content:#350a15;--radius-selector:1rem;--radius-field:.8rem;--radius-box:1.5rem;--muted:#aaa7b2;--line:#ffffff12;--selected:#231c32}
body{-webkit-font-smoothing:antialiased}html{scroll-padding-top:105px}::selection{background:var(--color-accent);color:var(--color-accent-content)}
header{position:sticky;top:0;z-index:10;max-width:none;min-height:82px;padding:0 max(5%,calc((100% - 1240px)/2));background:#080809db;backdrop-filter:blur(22px)}
.logo{font-size:25px;font-weight:850}nav{font-size:12px;font-weight:500;color:var(--muted)}nav .active{border:0;color:var(--color-base-content)}nav a:hover{color:var(--color-accent)}
.btn{border-radius:999px;font-size:12px;font-weight:600;gap:14px;min-height:44px;background:var(--color-neutral);color:var(--color-neutral-content);transition:background .2s,border-color .2s,transform .2s}.btn-ghost{background:transparent}.btn:active{transform:scale(.98)}.btn:hover{background:var(--color-base-300);border-color:#ffffff28}input:focus-visible,select:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}
.hero-layout{max-width:1380px;padding:64px 5% 72px;gap:6%;grid-template-columns:1.05fr 1fr;align-items:center}.hero-copy{padding:12px 0}.eyebrow{font-weight:600;color:var(--muted)}.dot{width:6px;height:6px;box-shadow:0 0 12px #b49aff50}.hero-copy h1{font-size:clamp(50px,5.9vw,84px);line-height:1.06;font-weight:650;letter-spacing:-5px;margin:29px 0 31px}.hero-copy h1>span{position:relative;display:inline-block}.hero-copy h1 svg{position:absolute;left:0;bottom:-13px;width:100%;height:20px;margin:0;stroke-width:3;transform:rotate(-3deg)}.hero-copy p{font-size:15px;line-height:1.8;margin:0}.hero-actions{display:flex;align-items:center;gap:23px;margin-top:32px}.hero-cta{background:var(--color-base-content)!important;color:var(--color-base-100);min-height:50px;margin:0;padding:0 25px}.hero-cta:hover{background:#d9cef6!important}.hero-cta span{font-size:19px;margin-left:0}.hero-caption{color:var(--muted);font-size:10px;line-height:1.7}.hero-foot{max-width:none;font-size:8px;letter-spacing:1.4px;margin-top:49px}
.hero-art{isolation:isolate;aspect-ratio:1.06;min-height:370px;border:1px solid #ffffff0e;border-radius:28px;background:radial-gradient(ellipse at 60% 54%,#4b26784f,transparent 67%),linear-gradient(145deg,#1b1721,#0d0c10 70%)}.art-grain{position:absolute;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.6' d='M0 0h160v160H0z'/%3E%3C/svg%3E");pointer-events:none}.art-orbit{position:absolute;width:80%;height:50%;top:28%;left:10%;border:1px solid #b49aff25;border-radius:50%;transform:rotate(-34deg)}.art-top{top:27px;left:28px;font-size:13px;letter-spacing:1px;font-weight:750}.art-top small{display:block;font-size:7px;letter-spacing:1.5px;margin-top:7px;font-weight:400;color:var(--muted)}.graffiti-lines{position:absolute;inset:0;width:100%;height:100%;color:var(--color-accent)}.spray{stroke:#944ff1;stroke-width:21;opacity:.52;filter:blur(8px)}.ink{stroke:var(--color-accent);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.drip{stroke:#9864ef;stroke-width:5;stroke-linecap:round;opacity:.7}.art-word{top:25%;bottom:auto;left:13%;font-family:Impact,'Arial Black',sans-serif;font-style:italic;font-size:clamp(75px,8.2vw,119px);font-weight:950;line-height:.93;letter-spacing:-5px;transform:rotate(-10deg) skew(-5deg);color:#e9dcff;text-shadow:3px 4px 0 #7b46b8,7px 9px 0 #0d0b11}.art-word span{color:var(--color-accent);-webkit-text-stroke:1px #e4d2ff}.art-scissors{position:absolute;right:7%;top:16%;font-size:68px;color:var(--color-accent);transform:rotate(-25deg)}.art-sticker{right:9%;bottom:15%;width:auto;height:auto;display:block;padding:13px 18px;border:0;border-radius:5px;background:#ded4f3;color:#20132e;box-shadow:4px 5px 0 #0004;transform:rotate(9deg);font-weight:850;font-size:19px;letter-spacing:-.7px}.art-sticker span{display:block;font-size:6px;letter-spacing:1.6px;margin-top:3px}.art-bottom{bottom:24px;left:28px;right:28px;font-size:7px;letter-spacing:1.7px;color:var(--muted);display:flex;justify-content:space-between;align-items:center}.art-bottom b{font-size:23px;color:var(--color-accent)}
.ticker{background:#0d0c10;padding:18px 0;color:#aaa3b5;font-size:9px;letter-spacing:3px;word-spacing:5px}.ticker b{margin:0 34px;font-size:15px;color:var(--color-accent)}
.booking-section{max-width:1380px;padding:68px 5% 72px}.section-heading{align-items:end;gap:20px;margin-bottom:29px}h2,.section-heading h2{font-weight:600;letter-spacing:-1.3px;line-height:1.2}.section-heading h2{font-size:37px;margin:12px 0 0}.badge{color:var(--muted);background:#ffffff03;padding:9px 13px}.booking-layout{grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}.booking-main{border-radius:24px;background:var(--color-base-200);overflow:hidden}.steps-bar{justify-content:space-between;gap:12px;padding:24px 28px}.steps-bar b{font-size:11px;font-weight:500}.steps-bar .selected b{color:var(--color-base-content);font-weight:500}#booking-body{padding:28px}.step-title{font-size:20px;font-weight:550;letter-spacing:-.5px;margin-bottom:7px}.services-grid{margin-top:24px}.service{min-height:130px;padding:21px 16px;border-radius:15px;background:#19191c;gap:14px;transition:border-color .2s,background .2s,transform .2s}.service:hover{background:#202025;transform:translateY(-2px)}.service.selected{border-width:1px;border-color:#a17be2;background:var(--selected)}.service strong{font-weight:600}.service p{font-size:11px;margin:7px 0 13px}.service .price{font-size:14px;font-weight:600}.selection-dot{top:19px;right:13px;width:12px;height:12px}.service:last-child{min-height:110px}.staff-section{padding-top:24px}.staff-options{gap:12px;margin-top:15px}.staff-option{border-radius:14px;padding:10px 17px;text-align:left;background:var(--color-neutral)}.avatar-letter{display:grid;place-items:center;width:34px;height:34px;padding:0;color:#e2d0ff;font-size:12px}.staff-option small{margin-top:3px}.summary-box{padding:26px;border:1px solid #b49aff24;border-radius:24px;background:linear-gradient(150deg,#211b2a,#131216 70%)}.summary-heading{align-items:center;font-size:10px;font-weight:600;color:#d0c7db}.summary-heading span{color:var(--color-accent)}.summary-rule{border-top-style:solid;margin:23px 0}.summary-line b{font-weight:500;text-align:right}.total{align-items:center;font-size:13px}.total strong{font-size:34px;font-weight:500;letter-spacing:-1.3px}.btn-primary{background:var(--color-primary)!important;color:var(--color-primary-content);border-color:transparent}.btn-primary:hover{background:#c4afff!important;box-shadow:0 5px 30px #a172ed22}.full{min-height:48px;margin-top:22px}.aside-note>span{font-size:23px;color:var(--color-accent)}.aside-note b{font-weight:500}
.calendar-header{margin:25px 0 17px}.calendar-header b{font-size:14px;font-weight:500}.calendar-header .btn{min-height:34px}.calendar-grid{gap:6px}.day{border-radius:12px;height:42px;font-size:13px}.day.selected,.slot.selected{background:var(--color-accent);color:var(--color-accent-content);border-color:var(--color-accent)}.slots{gap:9px}.slot{padding:11px 5px;border-radius:11px;background:var(--color-neutral)}.slot:hover:not(.selected){border-color:var(--color-accent)}.back:hover{color:var(--color-accent)}label{font-weight:500}.input,select{max-width:100%;min-height:46px;margin-top:8px;border-radius:12px;background:#1b1b20;color:var(--color-base-content);font-size:13px}.input::placeholder{color:#8d8897}.success-symbol{color:var(--color-accent);border:1px solid #b49aff40}.success-view h2{font-size:34px}.success-view .btn{margin-top:15px}
.bottom-strip{padding:36px 40px;border:1px solid var(--line);border-radius:24px;background:radial-gradient(ellipse at 100% 50%,#5d36722e,transparent 60%),#111113;gap:24px}.bottom-strip h3{font-size:27px;letter-spacing:-1px;font-weight:550;line-height:1.2}.bottom-strip>span{font-size:65px;font-weight:300;transform:rotate(-15deg)}footer>span{font-size:8px;letter-spacing:1.5px}dialog{border-radius:25px;background:var(--color-base-200);padding:38px;width:465px;max-height:90dvh;box-shadow:0 35px 100px #0009}dialog::backdrop{background:#000b;backdrop-filter:blur(12px)}dialog h2{font-size:28px}dialog .error{color:var(--color-error)}.dark-btn{margin-top:20px;background:var(--color-base-content);color:var(--color-base-100)}.dark-btn:hover{background:#ded3f7;color:var(--color-base-100)}#toast{border:1px solid #b49aff40;border-radius:16px;background:#251e32ed;backdrop-filter:blur(15px);padding:17px 24px}
#team{max-width:1440px;margin:auto;padding-top:48px}.team-top h1{font-size:45px;font-weight:600;letter-spacing:-2px;margin:13px 0}.stats-row{gap:18px;margin:30px 0}.stat-box{padding:25px;border-radius:19px}.stat-box strong{font-size:34px;font-weight:500;letter-spacing:-1px;margin-bottom:5px}.week-scroll{border-radius:18px}.week-grid{border-radius:18px}.week-day h3{font-size:11px;font-weight:500;padding-top:9px;padding-bottom:20px}.appointment{padding:13px 10px;margin-bottom:10px;border-radius:10px}.appointment strong{font-weight:600}.appointment.cancelled{opacity:1}.appointment.cancelled small{color:var(--muted)}.appointment.completed small{color:#b1d5c1}
@media(min-width:1001px){#summary{position:sticky;top:110px}}
@media(max-width:1050px){.hero-layout{gap:4%;padding-top:42px}.hero-copy h1{letter-spacing:-3px;font-size:61px}.hero-art{min-height:340px}.art-word{font-size:88px}.booking-layout{grid-template-columns:minmax(0,1fr) 280px;gap:18px}#booking-body{padding:22px}.steps-bar{padding:22px 20px;gap:8px}.service{padding:18px 13px;gap:8px}.service-icon{width:21px;font-size:22px}.summary-box{padding:22px}.section-heading h2{font-size:32px}}
@media(max-width:760px){header{min-height:70px;padding:0 5%}.logo{font-size:23px}nav{gap:17px}nav>a{display:none}nav .btn{min-height:36px;font-size:11px;padding:0 14px}.hero-layout{grid-template-columns:1fr;padding:40px 6% 36px;gap:35px}.hero-copy h1{font-size:clamp(53px,10vw,76px);letter-spacing:-3px;line-height:1.08;margin-top:25px}.hero-copy h1 svg{width:100%}.hero-copy p{font-size:14px}.hero-actions{gap:19px}.hero-foot{margin-top:34px;font-size:7px}.hero-art{min-height:0;aspect-ratio:1.15;max-height:450px}.art-word{font-size:clamp(80px,18vw,130px);top:24%;bottom:auto;left:13%}.art-scissors{font-size:56px;top:15%}.art-top{top:22px;left:23px}.art-bottom{bottom:20px;left:23px;right:23px}.art-sticker{bottom:14%;font-size:17px;padding:10px 14px;width:auto;height:auto}.ticker{font-size:8px;padding:14px 0}.ticker b{margin:0 20px}.booking-section{padding:43px 5%}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:32px}.section-heading .badge{margin-top:17px;font-size:9px}.booking-layout{grid-template-columns:1fr}.booking-main{border-radius:20px}.steps-bar{padding:20px 17px}.steps-bar b{font-size:10px}.steps-bar>span{gap:6px}#booking-body{padding:23px 17px}.service{min-height:135px;gap:0}.service-icon{display:none}.service p{font-size:10px}.service strong{font-size:12px}.service .price{font-size:13px}.services-grid{gap:10px}.summary-box{padding:25px;border-radius:20px}.aside-note{padding-bottom:0}.bottom-strip{padding:28px;margin-bottom:30px}.bottom-strip h3{font-size:24px}.bottom-strip p{display:none}.bottom-strip>span{font-size:52px}footer{flex-wrap:wrap}footer>span:nth-child(2){display:none}.slots{grid-template-columns:repeat(4,1fr)}.team-top{align-items:start;gap:15px}.team-top h1{font-size:33px;letter-spacing:-1px}.team-actions{flex-direction:column}.team-actions .btn{font-size:10px;padding:0 12px}.stats-row{gap:9px}.stat-box{padding:16px 11px;border-radius:14px}.stat-box strong{font-size:26px}.stat-box span{font-size:10px}.form-grid{gap:12px}dialog{padding:32px 23px}.agenda-controls label{width:100%}.agenda-controls input{margin-left:9px}}
@media(max-width:380px){.hero-caption{display:none}.hero-copy h1{font-size:49px}.hero-art{border-radius:20px}.art-word{font-size:76px}.art-top small{font-size:6px}.art-sticker{font-size:14px}.services-grid{grid-template-columns:1fr}.service-icon{display:block;width:30px;margin-right:12px}.service{min-height:110px}.steps-bar b{font-size:9px}.hero-foot{letter-spacing:.8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Decorative depth: only artwork moves; booking controls remain stationary. */
[data-motion-scene]{isolation:isolate}
.motion-layer{pointer-events:none;backface-visibility:hidden}
.motion-control.btn{margin-top:24px;padding:0;min-height:28px;height:auto;border:0;border-radius:0;background:none;color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.2px}
.motion-control.btn:hover{background:none;color:var(--color-accent)}
.motion-control.btn:disabled{opacity:.75;cursor:default}
.hero-copy:has(.motion-control:not([hidden])) .hero-foot{margin-top:20px}
.hero-art::after{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(circle at var(--light-x,50%) var(--light-y,50%),#b49aff13,transparent 52%);opacity:0;transition:opacity .5s}
.motion-enabled .hero-art:hover::after{opacity:1}
.art-top,.art-bottom{z-index:4}
.ticker-track{display:inline-block;padding-inline:100px;margin-left:-100px;white-space:nowrap}
.studio-scene{position:relative;max-width:1242px;min-height:560px;margin:0 auto 65px;overflow:hidden;overflow:clip;border-block:1px solid var(--line);background:radial-gradient(ellipse at 50% 50%,#27183755,transparent 65%),var(--color-base-100);display:grid;place-items:center;padding:85px 25px 100px}
.studio-backdrop{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.studio-halo{position:absolute;inset:13% 16%;border-radius:50%;background:radial-gradient(ellipse,#7d42bf22,transparent 70%)}
.studio-outline{position:absolute;top:4%;left:-3%;font-family:Impact,'Arial Black',sans-serif;font-size:clamp(125px,19vw,255px);font-weight:900;line-height:1;letter-spacing:-8px;color:transparent;-webkit-text-stroke:1px #b49aff1c;transform:rotate(-7deg);white-space:nowrap}
.studio-tag{position:absolute;width:65%;height:80%;left:18%;top:10%;stroke:var(--color-accent);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.15;transform:rotate(-8deg)}
.studio-comb{position:absolute;width:23%;max-width:275px;top:13%;left:1%;stroke:var(--color-accent);stroke-width:5;stroke-linecap:round;transform:rotate(-32deg);opacity:.5;filter:drop-shadow(0 0 22px #b49aff12)}
.studio-comb rect{fill:var(--color-accent);stroke:none}
.studio-shears{position:absolute;width:17%;max-width:185px;right:3%;bottom:9%;stroke:var(--color-accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;transform:rotate(25deg);opacity:.65}
.studio-star{position:absolute;left:14%;bottom:15%;font-size:80px;color:var(--color-accent);opacity:.65;transform:rotate(-15deg)}
.studio-copy{position:relative;text-align:center;max-width:680px}
.studio-copy .badge{font-size:8px;letter-spacing:2px;background:#100e16d9;border-color:#b49aff24;padding:10px 15px}
.studio-copy h2{font-size:clamp(34px,4.5vw,64px);font-weight:550;line-height:1.1;letter-spacing:-2.6px;margin:27px 0 23px;text-shadow:0 2px 28px #080809}
.studio-copy h2 em{font-style:normal;color:var(--color-accent)}
.studio-copy p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}
.studio-signature{display:block;font-family:'Segoe Print','Comic Sans MS',cursive;font-style:italic;font-size:20px;color:var(--color-accent);transform:rotate(-6deg);margin-top:28px}
.studio-caption{position:absolute;bottom:25px;left:5%;right:5%;display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px;color:var(--muted)}
@media(max-width:1380px){.studio-scene{margin-inline:5%}}
@media(max-width:760px){.studio-scene{min-height:460px;padding:72px 20px 85px;margin-bottom:35px}.studio-copy h2{font-size:clamp(32px,7vw,46px);letter-spacing:-1.4px}.studio-copy p{font-size:12px}.studio-outline{top:10%;font-size:25vw;letter-spacing:-4px}.studio-comb{top:5%;left:-4%;width:31%;opacity:.32}.studio-shears{width:20%;right:-2%;bottom:11%;opacity:.35}.studio-star{font-size:50px;left:1%;bottom:10%;opacity:.3}.studio-tag{width:95%;left:3%;opacity:.1}.studio-copy .badge{font-size:7px}.studio-caption{font-size:6px;letter-spacing:1px}.studio-signature{font-size:17px}.motion-control.btn{min-height:36px}}
@media(prefers-reduced-motion:reduce){.motion-layer{translate:none!important;will-change:auto!important}.hero-art::after{display:none}}
/* Barber editorial: Bebas display + Helvetica interface. */
:root{--font-display:'Bebas Neue','Arial Narrow',Impact,sans-serif;--font-interface:'Helvetica Neue',Helvetica,Arial,sans-serif}
body{font-family:var(--font-interface)}
.logo{font-family:var(--font-display);font-size:32px;font-weight:700;letter-spacing:.1px}
.hero-layout{grid-template-columns:1fr 1fr;gap:5%;padding-top:38px;padding-bottom:48px;align-items:center}
.hero-copy h1{font-family:var(--font-display);font-weight:700;text-transform:uppercase;font-size:clamp(76px,8.5vw,124px);line-height:.9;letter-spacing:-1.3px;max-width:660px;margin:31px 0 32px}
.hero-copy h1>span{display:inline-block}
.hero-copy h1 svg{bottom:-10px;height:15px;opacity:.85}
.hero-copy p{font-family:var(--font-interface);font-size:14px;line-height:1.85;max-width:390px}
.hero-copy .eyebrow{font-size:9px;letter-spacing:2.4px}
.hero-art.hero-photo-art{aspect-ratio:4/5;min-height:490px;max-height:670px;border-radius:5px;border:1px solid #ffffff1c;background:radial-gradient(ellipse at center,#372343,#100d15);overflow:hidden}
.hero-photo-wrap{position:absolute;inset:-7% 0;z-index:-1}
.hero-photo{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 42%;filter:grayscale(1) contrast(1.08) brightness(.83)}
.hero-photo-art .art-grain{z-index:1;opacity:.07}
.hero-photo-art::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;background:linear-gradient(180deg,#08080966 0%,transparent 35%,#0808091a 55%,#080809dc 100%)}
.hero-photo-art .art-orbit{display:none}
.hero-photo-art .graffiti-lines{z-index:1;opacity:.46}
.hero-photo-art .spray{opacity:.45}
.hero-photo-art .art-word{z-index:2;top:auto;bottom:13%;left:7%;font-family:var(--font-display);font-size:clamp(68px,7vw,100px);font-weight:700;letter-spacing:0;line-height:.8;transform:rotate(-8deg);text-shadow:2px 3px 0 #120d1c}
.hero-photo-art .art-word span{-webkit-text-stroke:.7px #e4d2ff}
.hero-photo-art .art-top{font-family:var(--font-display);font-size:25px;letter-spacing:1px;color:#fff;text-shadow:0 2px 12px #0008}
.hero-photo-art .art-top small{font-family:var(--font-interface);color:#e2dce9;font-size:7px;letter-spacing:1.4px}
.hero-photo-art .art-sticker{right:7%;bottom:15%;font-family:var(--font-display);font-size:27px;font-weight:700;letter-spacing:.4px;padding:12px 18px;border-radius:1px;z-index:2;background:var(--color-accent)}
.hero-photo-art .art-sticker span{font-family:var(--font-interface);font-size:6px}
.hero-photo-art .art-scissors{top:13%;font-size:52px;z-index:2;opacity:.8}
.hero-photo-art .art-bottom{bottom:20px;left:23px;right:23px;font-size:6px;letter-spacing:1.2px;color:#ddd3e9}
.hero-photo-credit{position:absolute;right:17px;top:55%;z-index:4;writing-mode:vertical-rl;font-size:8px;color:#f1ebf8;letter-spacing:.7px;text-shadow:0 1px 6px #000}
.hero-photo-credit:hover{color:var(--color-accent)}
.section-heading h2,.team-top h1,.studio-copy h2,.bottom-strip h3,.success-view h2,dialog h2{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.1px}
.section-heading h2{font-size:49px;line-height:1}.studio-copy h2{font-size:76px;line-height:.96}.bottom-strip h3{font-size:38px;line-height:1}.team-top h1{font-size:58px}.success-view h2{font-size:46px}dialog h2{font-size:38px}
.step-title,.service strong,.summary-line,.input,select,.steps-bar,.staff-option{font-family:var(--font-interface)}
.booking-main,.summary-box{border-radius:16px}.service{border-radius:10px}.btn{border-radius:9px}.hero-cta{border-radius:3px;font-size:11px;letter-spacing:.5px}.hero-cta span{font-size:20px}
.ticker{font-family:var(--font-display);font-weight:400;font-size:17px;letter-spacing:2px;padding:13px 0}.ticker b{font-family:var(--font-interface);font-size:12px}
.lookbook{max-width:1380px;margin:0 auto;padding:12px 5% 75px}
.lookbook-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}
.lookbook-heading h2{font-family:var(--font-display);font-size:clamp(44px,5vw,69px);font-weight:700;letter-spacing:.2px;line-height:1;margin:12px 0 0}
.lookbook-heading p{color:var(--muted);font-size:12px;line-height:1.8;margin:0}
.lookbook-grid{display:grid;grid-template-columns:1fr 1fr;gap:27px}
.editorial-card{border:0;border-radius:0;background:transparent;overflow:hidden}
.editorial-card figure{position:relative;display:block;margin:0;aspect-ratio:5/4;overflow:hidden;background:radial-gradient(ellipse,#33223f,#141216);border:1px solid var(--line)}
.editorial-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 40%;filter:saturate(.55) contrast(1.05);transition:filter .45s,transform .7s}
.editorial-card:nth-child(2) img{object-position:50% 35%}
.editorial-card figure::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 55%,#08080966)}
.photo-index{position:absolute;bottom:18px;left:22px;font-family:var(--font-display);font-size:58px;color:#fff;z-index:1;line-height:1}
.editorial-card .card-body{display:block;padding:22px 0 10px;gap:0}
.editorial-card .card-title{font-family:var(--font-display);font-size:36px;font-weight:700;letter-spacing:.4px;margin:10px 0 8px;line-height:1}
.editorial-card .card-body p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}
.photo-credit{display:inline-block;margin-top:16px;font-size:9px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.photo-credit:hover{color:var(--color-accent)}
.lookbook-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:24px;margin-top:20px}
.lookbook-foot>span{font-size:8px;letter-spacing:1.5px;color:var(--muted)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.editorial-card:hover img{filter:saturate(.95) contrast(1.02);transform:scale(1.035)}}
@media(max-width:1050px){.hero-copy h1{font-size:clamp(72px,9vw,95px);letter-spacing:-.5px}.hero-art.hero-photo-art{min-height:465px}.hero-photo-art .art-word{font-size:79px}.hero-photo-art .art-sticker{font-size:23px;padding:10px 14px}.section-heading h2{font-size:41px}.studio-copy h2{font-size:64px}}
@media(max-width:760px){header .logo{font-size:29px}.hero-layout{grid-template-columns:1fr;padding:35px 6% 36px;gap:32px}.hero-copy h1{font-size:clamp(78px,14vw,110px);letter-spacing:0;line-height:.9;margin:28px 0}.hero-copy p{font-size:14px}.hero-art.hero-photo-art{min-height:0;max-height:610px;aspect-ratio:4/5}.hero-photo-art .art-word{font-size:clamp(85px,17vw,120px);bottom:13%}.hero-photo-art .art-sticker{font-size:26px}.hero-photo-art .art-top{font-size:26px}.hero-photo-art .art-top small{font-size:6px}.section-heading h2{font-size:41px}.lookbook{padding:5px 5% 42px}.lookbook-heading{display:block}.lookbook-heading h2{font-size:48px}.lookbook-heading p{margin-top:16px}.lookbook-grid{grid-template-columns:1fr;gap:28px}.editorial-card figure{aspect-ratio:5/4}.editorial-card .card-title{font-size:34px}.lookbook-foot{align-items:start;flex-direction:column}.lookbook-foot .btn{width:100%}.studio-copy h2{font-size:clamp(44px,9vw,64px);letter-spacing:0}.bottom-strip h3{font-size:32px}.team-top h1{font-size:42px;letter-spacing:0}dialog h2{font-size:34px}.hero-photo-credit{font-size:7px}.ticker{font-size:15px}}
@media(max-width:380px){.hero-copy h1{font-size:72px}.hero-photo-art .art-word{font-size:78px}.hero-photo-art .art-sticker{font-size:21px}.lookbook-heading h2{font-size:40px}.section-heading h2{font-size:36px}}
/* Final art direction: editorial hierarchy with a quieter booking workspace. */
.edition-line{max-width:1242px;margin:24px auto 0;display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:8px;letter-spacing:1.7px;padding:0 1px}
.skip-link{position:fixed;top:10px;left:15px;translate:0 -150%;z-index:100;background:var(--color-accent);color:var(--color-accent-content);padding:13px 20px;border-radius:6px}.skip-link:focus{translate:0 0}
header{min-height:76px;background:#080809e8}.hero-layout{padding-top:34px;padding-bottom:60px;gap:3%;grid-template-columns:1.06fr 1fr}.hero-copy{position:relative;z-index:2}.hero-copy h1{font-size:clamp(82px,9vw,130px);line-height:.88;letter-spacing:-1px}.hero-copy h1>span{color:var(--color-accent)}.hero-copy .hero-caption{border-left:1px solid var(--line);padding-left:19px}.hero-art.hero-photo-art{border-radius:2px;border:0;min-height:550px;box-shadow:18px 18px 0 #b49aff08}.hero-photo-art .graffiti-lines{opacity:.26}.hero-photo-art .art-word{font-size:79px;opacity:.85}.hero-photo-art .art-sticker{font-size:23px;bottom:17%}.hero-photo-art .art-scissors{display:none}.hero-photo-art .art-top{font-size:17px}.hero-photo-art .art-top small{font-size:6px}.hero-actions .btn{position:relative;overflow:hidden;min-height:52px}.hero-actions .btn span,.lookbook-foot .btn{transition:transform .25s}.hero-actions .btn:hover span{transform:translate(3px,-3px)}
.ticker{border-color:#b49aff20;background:#121015;color:var(--color-accent);font-size:19px;padding:16px 0;letter-spacing:2px}.booking-section{padding-top:75px;padding-bottom:85px}.section-heading .eyebrow::before,.lookbook-heading .eyebrow::before{content:'01';font-size:10px;color:var(--color-accent);margin-right:11px}.lookbook-heading .eyebrow::before{content:'02'}.section-heading h2{font-size:55px}.section-heading .badge{font-size:11px}.booking-layout{grid-template-columns:minmax(0,1fr) 320px;gap:28px}.booking-main{background:#111113;border-color:#ffffff15;border-radius:18px}.summary-box{border-radius:18px;background:#17131e;border-color:#b49aff28}.summary-rule{margin:22px 0}.summary-line{font-size:13px}.summary-note{font-size:11px}.summary-heading{font-size:11px}.total strong{font-family:var(--font-display);font-size:42px;letter-spacing:.1px}.aside-note p{font-size:12px}
.steps-bar{margin:0;width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:0;background:#161518}.steps-bar button{display:flex;align-items:center;justify-content:center;gap:9px;padding:22px 12px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font-size:11px;border-radius:0;min-height:65px}.steps-bar button b{font-size:12px;font-weight:500}.steps-bar button.selected{border-bottom-color:var(--color-accent);background:#b49aff09;color:var(--color-accent)}.steps-bar button.done{color:#ddd0f2}.steps-bar button:disabled{opacity:.4}.steps-bar button:hover:not(:disabled){background:#ffffff05}.steps-bar .selected b{color:var(--color-base-content)}#booking-body{padding:30px;scroll-margin-top:95px}#booking-body:focus{outline:none}#booking-body:focus-visible{outline:1px solid var(--color-accent);outline-offset:-5px}.step-title{font-size:23px;font-weight:500}.muted{font-size:13px}.services-grid{gap:13px}.service{min-height:132px;background:#19191c;border-color:#ffffff0e;padding:22px 17px;border-radius:11px}.service.selected{background:#241b32;border-color:#b49aff}.service strong{font-size:14px}.service p{font-size:12px;line-height:1.5}.service small{font-size:11px}.service .price{font-size:16px}.service-icon{font-size:23px;opacity:.8}.service:hover{transform:none;background:#201d25}.selection-dot{top:20px}.staff-option{min-height:66px;padding:12px 18px;flex:1;border-radius:11px;font-size:13px}.staff-option small{font-size:11px}.input,select{font-size:16px;min-height:49px}label{font-size:13px}.privacy{font-size:12px}.day{height:45px;font-size:14px}.slot{min-height:45px;font-size:13px}.back{min-height:30px;font-size:12px}.error{font-size:13px}
.lookbook-grid{grid-template-columns:1.12fr .88fr;gap:7%;align-items:start}.editorial-card:nth-child(2){margin-top:115px}.editorial-card:first-child figure{aspect-ratio:1.06}.editorial-card:nth-child(2) figure{aspect-ratio:.85}.lookbook-heading{border-top:1px solid var(--line);padding-top:28px;margin-bottom:42px}.lookbook-heading h2{font-size:73px}.editorial-card .card-title{font-size:39px}.editorial-card .card-body p{font-size:13px}.photo-credit{font-size:10px}.lookbook-foot{margin-top:35px}.lookbook-foot>span{font-size:9px}.studio-scene{border-block-color:#b49aff20;margin-top:10px}.studio-copy h2{font-size:84px}.studio-caption{font-size:9px}.bottom-strip{padding:45px 40px;border-radius:3px;background:var(--color-accent);color:var(--color-accent-content)}.bottom-strip h3{font-size:44px}.bottom-strip p{color:var(--color-accent-content);font-size:13px;opacity:.8}.bottom-strip>span{color:var(--color-accent-content);font-size:80px}footer{padding-block:35px}footer .logo{font-size:34px}
.booking-dock{position:fixed;bottom:0;left:0;right:0;padding:12px 5% max(12px,env(safe-area-inset-bottom));display:none;align-items:center;justify-content:space-between;gap:15px;background:#141218f2;backdrop-filter:blur(18px);border-top:1px solid #b49aff30;z-index:12}.booking-dock>div{min-width:0}.booking-dock span{display:block;font-size:10px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}.booking-dock strong{display:block;font-size:20px;font-weight:500;margin-top:3px}.booking-dock .btn{min-width:145px;background:var(--color-accent);color:var(--color-accent-content);font-size:12px;min-height:46px}.asset-unavailable{position:relative}.asset-unavailable::after{content:'CUT / CLUB';position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-display);font-size:clamp(35px,8vw,110px);color:#b49aff44;pointer-events:none;background:linear-gradient(145deg,#251b31,#101012);z-index:-1}.asset-unavailable img{opacity:0}
@keyframes editorial-enter{from{opacity:.35;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes title-enter{from{opacity:.3;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.motion-enabled .editorial-arrived{animation:editorial-enter .75s cubic-bezier(.2,.7,.2,1) both}.motion-enabled .hero-copy h1{animation:title-enter .75s cubic-bezier(.2,.7,.2,1) both}.motion-enabled .hero-photo{transition:filter .7s}.motion-enabled .hero-photo-art:hover .hero-photo{filter:grayscale(.35) contrast(1.05) brightness(.9)}}
@media(max-width:1380px){.edition-line{margin-inline:5%}}
@media(max-width:1050px){.hero-copy h1{font-size:9.8vw}.hero-art.hero-photo-art{min-height:460px}.booking-layout{grid-template-columns:minmax(0,1fr) 280px;gap:18px}#booking-body{padding:24px 20px}.service{padding:20px 13px}.service-icon{display:none}.steps-bar button{padding-inline:7px}.steps-bar button b{font-size:11px}.lookbook-heading h2{font-size:60px}.editorial-card:nth-child(2){margin-top:90px}}
@media(max-width:760px){.edition-line{font-size:7px;margin-top:18px;letter-spacing:1.1px}.edition-line>span:nth-child(2){display:none}.hero-layout{grid-template-columns:1fr;padding-top:28px;gap:30px;padding-bottom:42px}.hero-copy h1{font-size:clamp(77px,17vw,115px);letter-spacing:-.7px}.hero-art.hero-photo-art{min-height:0;aspect-ratio:4/5;max-height:580px;box-shadow:9px 9px 0 #b49aff0b}.hero-photo-art .art-word{font-size:90px}.hero-copy .hero-caption{padding-left:15px}.hero-foot{font-size:8px}.hero-caption{font-size:11px}.hero-copy p{font-size:15px}.booking-section{padding-top:47px;padding-bottom:50px}.section-heading h2{font-size:44px}.section-heading .badge{font-size:10px}.booking-layout{grid-template-columns:1fr}.steps-bar{padding:0}.steps-bar button{min-height:61px;font-size:10px;gap:6px}.steps-bar button b{font-size:11px}#booking-body{padding:25px 18px}.service{min-height:140px;padding:21px 13px}.service strong{font-size:13px}.service p{font-size:11px}.service:last-child{min-height:115px}.staff-option{padding:12px;font-size:12px}.staff-option small{font-size:10px}.booking-dock:not([hidden]){display:flex}body:has(dialog[open]) .booking-dock{display:none}.booking-dock:has(.btn:disabled){opacity:1}.lookbook-heading h2{font-size:50px}.lookbook-grid{grid-template-columns:1fr;gap:30px}.editorial-card:nth-child(2){margin-top:0}.editorial-card:nth-child(n) figure{aspect-ratio:1.2}.editorial-card .card-title{font-size:36px}.studio-copy h2{font-size:clamp(46px,10vw,70px)}.studio-caption{font-size:7px}.bottom-strip{padding:30px 25px}.bottom-strip h3{font-size:35px}.bottom-strip>span{font-size:60px}.day{height:44px}.slot{min-height:44px}.calendar-grid{gap:4px}}
@media(max-width:380px){.services-grid{grid-template-columns:1fr}.service{min-height:110px}.hero-copy h1{font-size:72px}.staff-options{flex-direction:column}.steps-bar button{gap:4px}.steps-bar button b{font-size:10px}.booking-dock .btn{min-width:130px}.booking-dock span{max-width:120px}}
/* Smartphone-first controls and liquid-glass surfaces. */
:root{--glass-fill:linear-gradient(145deg,#ffffff24 0%,#ffffff09 46%,#b49aff1c 100%);--glass-edge:#ffffff32}
.btn:not(.motion-control):not(.back){position:relative;isolation:isolate;min-height:48px;border-radius:999px;background:var(--glass-fill);color:var(--color-base-content);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 #ffffff30,inset 0 -1px 0 #ffffff09,0 5px 18px #0002;backdrop-filter:blur(12px) saturate(135%);-webkit-backdrop-filter:blur(12px) saturate(135%);transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .2s,border-color .2s,background .2s}
.btn:not(.motion-control):not(.back):hover{background:linear-gradient(145deg,#ffffff30,#b49aff21);border-color:#ffffff50;box-shadow:inset 0 1px 0 #ffffff45,0 6px 22px #0003}
.btn:not(.motion-control):not(.back):active{transform:scale(.96);box-shadow:inset 0 2px 8px #0003,0 1px 8px #0002}
.btn.hero-cta,.btn.hero-cta:hover{background:linear-gradient(145deg,#d9c8ffdf,#ad88eac7)!important;color:#160a30;border-color:#e5d7ff90;box-shadow:inset 0 1px 0 #ffffff80,0 7px 30px #9260cc22}
.btn.btn-primary,.booking-dock .btn{background:linear-gradient(145deg,#decefff0,#b08cebe8)!important;color:#1b0d30;border-color:#f0e8ff88;box-shadow:inset 0 1px 0 #ffffff90,0 4px 18px #a472ec20}
.btn:disabled{opacity:.42;transform:none!important;box-shadow:none!important}.btn.danger{color:var(--color-error)}
button:focus-visible,a:focus-visible{outline:2px solid #d4c1ff;outline-offset:3px}.service,.staff-option,.slot,.day{touch-action:manipulation;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}.service:active,.staff-option:active,.slot:active,.day:active{transform:scale(.98)}.service.selected,.staff-option.selected{box-shadow:inset 0 1px 0 #dcc5ff22,0 0 0 1px #b49aff18}.slot.selected,.day.selected{background:linear-gradient(140deg,#dfceff,#ad87e9);box-shadow:inset 0 1px 0 #ffffff60; color:#160a30}
.tap-wave{position:fixed;z-index:100;pointer-events:none;border-radius:50%;width:60px;height:60px;margin:-30px 0 0 -30px;border:1px solid #e1d1ff99;background:radial-gradient(circle,#c9adff20,transparent 65%)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.btn:not(.motion-control){background-color:#32293e}.booking-dock{background:#211b29!important}}
@media(max-width:760px){
 html{scroll-padding-top:82px}body{font-size:15px}header{min-height:66px;padding:8px max(16px,env(safe-area-inset-left)) 8px max(16px,env(safe-area-inset-right));gap:14px}header .logo{font-size:28px}header nav{gap:0}header #team-button{min-height:44px;padding:0 17px;font-size:12px;white-space:nowrap}header .logo{flex-shrink:0}.edition-line{margin:16px 20px 0;font-size:7px;letter-spacing:1px}.edition-line>span:last-child{display:none}
 .hero-layout{padding:24px 20px 30px;gap:24px}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(66px,17vw,98px);margin:22px 0 27px;letter-spacing:-.6px}.hero-copy .eyebrow{font-size:8px}.hero-copy p{font-size:14px;line-height:1.7}.hero-actions{gap:16px;margin-top:24px}.hero-actions .hero-cta{min-height:52px;padding-inline:22px;font-size:13px;flex:1;max-width:320px}.hero-caption{font-size:10px}.hero-foot{display:none}.motion-control.btn{margin-top:13px;min-height:44px;font-size:11px}.hero-art.hero-photo-art{aspect-ratio:1.55;max-height:320px;border-radius:22px;box-shadow:none}.hero-photo-wrap{inset:-12% 0}.hero-photo{object-position:50% 40%}.hero-photo-art .art-word{font-size:64px;bottom:16%;left:7%}.hero-photo-art .art-top{top:18px;left:19px;font-size:16px}.hero-photo-art .art-top small{font-size:5px}.hero-photo-art .art-sticker{bottom:22%;font-size:20px;padding:10px 12px}.hero-photo-art .art-bottom{bottom:14px;left:19px;right:19px;font-size:5px}.hero-photo-credit{right:10px;font-size:6px;top:30%}.ticker{padding:12px 0;font-size:15px}
 .booking-section{padding:34px 12px 38px}.section-heading{padding:0 8px;margin-bottom:22px}.section-heading .eyebrow{font-size:8px;letter-spacing:1.5px}.section-heading h2{font-size:clamp(35px,9vw,48px);margin-top:12px}.section-heading h2 span{margin-left:8px}.section-heading .badge{margin-top:13px;font-size:10px;padding:8px 12px}.booking-layout{gap:16px}.booking-main{border-radius:22px}.steps-bar{position:relative;background:#17151c;grid-template-columns:repeat(3,minmax(0,1fr));border-radius:22px 22px 0 0;overflow:hidden}.steps-bar button{min-height:62px;padding:15px 6px;gap:5px;flex-direction:column;font-size:10px}.steps-bar button b{font-size:12px}.steps-bar button.selected{background:linear-gradient(#b49aff14,#b49aff06)}#booking-body{padding:24px 16px;scroll-margin-top:80px}.step-title{font-size:21px}.muted{font-size:13px;line-height:1.65}
 .services-grid{grid-template-columns:1fr;gap:10px;margin-top:20px}.service,.service:last-child{min-height:104px;padding:17px 18px;gap:13px;border-radius:17px}.service-icon{display:grid;place-items:center;width:34px;height:38px;flex-shrink:0;font-size:26px}.service strong{font-size:15px;padding-right:18px}.service p{font-size:12px;margin:6px 0 10px;line-height:1.4}.service small{font-size:12px}.service .price{font-size:17px}.selection-dot{width:14px;height:14px;right:16px;top:18px}.staff-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.staff-option{min-width:0;min-height:74px;gap:9px;padding:12px 10px;border-radius:16px;font-size:13px}.staff-option small{font-size:10px;line-height:1.4}.avatar-letter{width:30px;height:30px;flex-shrink:0}.staff-section{margin-top:22px;padding-top:22px}
 .calendar-header{margin-top:17px;gap:8px}.calendar-header b{font-size:14px}.calendar-header .btn{width:44px;min-height:44px;padding:0}.calendar-grid{gap:3px}.calendar-grid small{font-size:11px}.day{height:44px;padding:0;min-width:0;border-radius:13px;font-size:15px}.slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.slot{min-height:48px;border-radius:14px;font-size:14px;padding:9px 2px}.form-grid{grid-template-columns:1fr;gap:18px;margin-top:20px}.wide{grid-column:auto}.input,select{font-size:16px;min-height:52px;border-radius:15px;scroll-margin-block:100px}.back{min-height:44px;margin-bottom:13px;font-size:13px}.privacy{font-size:12px;line-height:1.7}
 .summary-box{padding:22px;border-radius:22px}.summary-heading{font-size:11px}.summary-line{font-size:14px}.summary-rule{margin:18px 0}.summary-box .full{min-height:52px;font-size:14px}.aside-note{padding:16px 10px 5px}.summary-note{font-size:11px}.booking-dock{left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));padding:12px 13px;border:1px solid #ffffff35;border-radius:26px;background:linear-gradient(135deg,#292332ec,#1b1722e8);box-shadow:inset 0 1px 0 #ffffff1a,0 8px 32px #0008;backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);gap:12px}.booking-dock .btn{min-height:50px;min-width:138px;padding:0 17px;font-size:13px;border-radius:18px}.booking-dock span{font-size:11px;max-width:145px}.booking-dock strong{font-size:22px}
 .lookbook{padding:10px 20px 38px}.lookbook-heading{padding-top:23px;margin-bottom:25px}.lookbook-heading h2{font-size:clamp(37px,10vw,52px)}.editorial-card:nth-child(n) figure{border-radius:20px;aspect-ratio:1.22}.lookbook-grid{gap:26px}.editorial-card .card-body{padding-top:18px}.editorial-card .card-title{font-size:34px}.lookbook-foot{padding-top:20px}.lookbook-foot .btn{min-height:50px}.studio-scene{margin-inline:14px;min-height:400px;padding:65px 16px 80px}.studio-copy h2{font-size:clamp(42px,11vw,60px)}.studio-copy p{font-size:13px}.bottom-strip{margin-inline:14px;border-radius:22px;padding:27px 23px}.bottom-strip h3{font-size:32px}footer{padding:24px 20px;gap:14px}footer>span{font-size:9px}
 dialog{position:fixed;inset:auto 0 0;width:100%;max-width:100%;max-height:90dvh;margin:0;border:1px solid #ffffff25;border-bottom:0;border-radius:28px 28px 0 0;padding:37px 22px max(24px,env(safe-area-inset-bottom));background:#16131d;overscroll-behavior:contain;scrollbar-gutter:stable}dialog::before{content:'';position:absolute;top:12px;left:calc(50% - 19px);width:38px;height:4px;background:#ffffff35;border-radius:4px}dialog .close{top:20px;right:13px;width:44px;padding:0;z-index:1}dialog h2{font-size:32px;padding-right:40px}dialog .form-grid{gap:2px}dialog .dark-btn{min-height:52px}.edit-actions .btn{flex:1;min-height:48px}.success-view{padding:16px 0}.success-view h2{font-size:37px}
 #team{padding:26px 16px;min-width:0}.team-top{display:block}.team-top h1{font-size:43px}.team-actions{flex-direction:row;margin-top:20px}.team-actions .btn{flex:1;font-size:12px;min-height:48px}.stats-row{gap:8px;margin:22px 0}.stat-box{min-width:0;border-radius:16px;padding:15px 10px}.stat-box strong{font-size:27px}.stat-box span{font-size:11px;line-height:1.5;display:block}.agenda-controls{gap:8px}.agenda-controls>.btn{min-height:46px}.agenda-controls label{display:flex;align-items:center;gap:10px;font-size:12px}.agenda-controls input{width:0;flex:1;margin-left:0}.agenda-controls select{width:100%;margin:0}.week-scroll{overflow:visible}.week-grid{display:block;min-width:0;background:transparent;border:0;overflow:visible}.week-day{min-height:0;padding:0 0 18px;border:0}.week-day h3{text-align:left;font-size:14px;padding:15px 0 12px;margin:0 0 12px;border-color:var(--line)}.appointment{padding:16px;border-radius:16px;min-height:86px;margin:0 0 9px}.appointment strong{font-size:16px;margin:7px 0}.appointment small{font-size:12px}.empty-day{text-align:left;padding:4px 0 12px;margin:0;font-size:12px}.session-user{font-size:12px}
 #toast{bottom:calc(108px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 28px);font-size:13px;border-radius:18px;padding:15px 18px}
}
@media(max-width:360px){.hero-caption{display:none}.hero-copy h1{font-size:65px}.hero-actions .hero-cta{max-width:none}.service-icon{display:none}.staff-options{grid-template-columns:1fr}.steps-bar button b{font-size:11px}.booking-dock .btn{min-width:126px;font-size:12px}.booking-dock span{max-width:112px}.calendar-grid{gap:1px}#booking-body{padding-inline:12px}.studio-copy h2{font-size:40px}}
@media(prefers-reduced-motion:no-preference){.motion-enabled dialog[open]{animation:sheet-rise .28s cubic-bezier(.2,.8,.2,1)}.motion-enabled .success-symbol{animation:confirmed-pop .4s cubic-bezier(.2,.8,.2,1)}}
@keyframes sheet-rise{from{opacity:.5;translate:0 24px}to{opacity:1;translate:0 0}}
@keyframes confirmed-pop{0%{transform:scale(.8);opacity:.3}70%{transform:scale(1.06)}100%{transform:scale(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.tap-wave{display:none!important}.service:active,.staff-option:active,.slot:active,.day:active,.btn:active{transform:none!important}}
@media(prefers-contrast:more){.btn:not(.motion-control){border-color:#e5d5ff;background-color:#31223e;backdrop-filter:none;-webkit-backdrop-filter:none}.booking-dock{background:#16111e}}
/* Focused calendar styling; day availability uses the shared salon resource. */
.calendar-header{display:grid;grid-template-columns:46px 1fr 46px;align-items:center;gap:12px;margin:25px 0 17px;padding:5px 2px}
.calendar-header>b{text-align:center;text-transform:capitalize;font-family:var(--font-display);font-size:25px;letter-spacing:.3px;font-weight:700}
.calendar-arrow.btn{width:46px;height:46px;min-height:46px;padding:0;font-size:20px;border-color:#ffffff26;background:linear-gradient(140deg,#ffffff16,#b49aff0d)}
.calendar-arrow:disabled{visibility:hidden}
.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;padding:13px;border:1px solid #ffffff13;border-radius:20px;background:linear-gradient(150deg,#ffffff07,#b49aff06),#0e0e11;box-shadow:inset 0 1px 0 #ffffff09}
.calendar-grid small{display:grid;place-items:center;height:34px;font-size:10px;letter-spacing:.5px;font-weight:600;color:#aaa3b5}
.calendar-grid>span{aspect-ratio:1}
.day{position:relative;width:100%;height:auto;aspect-ratio:1;min-height:37px;max-height:53px;justify-self:center;align-self:center;border:1px solid transparent;border-radius:15px;font-size:14px;font-weight:500;font-variant-numeric:tabular-nums;color:#e7e3ed;background:transparent;transition:background .18s,border-color .18s,transform .18s,box-shadow .18s}
.day:not(:disabled)::after{content:'';position:absolute;width:4px;height:4px;border-radius:50%;bottom:4px;left:calc(50% - 2px);background:#bd9cff;opacity:.55}
.day:hover:not(:disabled){background:linear-gradient(145deg,#ffffff18,#b49aff12);border-color:#ffffff20;transform:translateY(-1px)}
.day:focus-visible,.slot:focus-visible{outline:2px solid #ddcbff;outline-offset:2px;z-index:2}
.day.selected{color:#170b2b;background:linear-gradient(140deg,#e2d5ff,#b596f1);border-color:#efe6ff;box-shadow:inset 0 1px 0 #ffffffbc,0 5px 18px #b49aff3b;font-weight:700}
.day.selected::after{background:#3e265b;opacity:.8}
.day:disabled{cursor:default;opacity:1;color:#514d58;background:#ffffff03}.day:disabled::after{opacity:0}
.day.closed{color:#625d69}.day.past{color:#413d47}
.availability-legend{display:flex;align-items:center;gap:18px;margin-top:14px;color:var(--muted);font-size:10px}
.availability-legend>span{display:flex;align-items:center;gap:7px}.availability-legend i{display:inline-block;width:10px;height:10px;border-radius:4px;border:1px solid #ffffff40}
.availability-legend>span:first-child i{background:linear-gradient(140deg,#e2d5ff,#b596f1);border-color:#d4c2fb}.availability-legend>span:last-child i{background:#ffffff09;border-color:#ffffff1e}
.slots-date{font-family:var(--font-display);font-size:25px!important;font-weight:700!important;letter-spacing:.3px;margin:22px 0 2px!important;text-transform:capitalize}
.shared-capacity{margin:7px 0 13px;color:#aaa3b5;font-size:11px;line-height:1.6}.shared-capacity::before{content:'●';font-size:7px;color:#c6acff;margin-right:7px;vertical-align:2px}
.slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.slot{position:relative;min-height:47px;border-radius:14px;border:1px solid #ffffff1b;background:linear-gradient(145deg,#ffffff0d,#b49aff08),#18171c;color:#f1edf8;font-size:13px;font-variant-numeric:tabular-nums;box-shadow:inset 0 1px 0 #ffffff0b;transition:transform .16s,border-color .2s,background .2s,box-shadow .2s}
.slot:hover:not(.selected){border-color:#c5a8ff88;background:linear-gradient(140deg,#ffffff17,#b49aff1c);transform:translateY(-2px)}
.slot:active{transform:scale(.96)}.slot.selected{background:linear-gradient(140deg,#e2d5ff,#b596f1);border-color:#efe6ff;color:#170b2b;box-shadow:inset 0 1px 0 #ffffffb0,0 4px 16px #b49aff32;font-weight:700}
#slots-info:empty{display:none}#slots-info:not(:empty){min-height:35px;margin-top:12px;padding:9px 12px;border-radius:11px;background:#ffffff07;font-size:11px}
@media(max-width:760px){.calendar-header{grid-template-columns:48px 1fr 48px;gap:8px;margin:20px 0 13px}.calendar-header>b{font-size:24px}.calendar-arrow.btn{width:46px;height:46px;min-height:46px}.calendar-grid{gap:4px;padding:11px;border-radius:20px}.calendar-grid small{height:31px;font-size:10px}.day{min-height:38px;max-height:48px;border-radius:14px;font-size:14px}.day:not(:disabled)::after{bottom:3px}.availability-legend{gap:15px;margin-top:12px;font-size:10px}.slots-date{font-size:26px!important;margin-top:19px!important}.shared-capacity{font-size:11px}.slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.slot{min-height:49px;border-radius:14px;font-size:13px}}
@media(max-width:370px){.calendar-grid{padding:8px;gap:2px}.calendar-header{gap:5px}.calendar-header>b{font-size:22px}.calendar-arrow.btn{width:42px;height:42px;min-height:42px}.calendar-grid small{font-size:9px}.day{min-height:35px}.slots{gap:6px}.slot{min-height:45px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.day,.slot{transition:none}.day:hover:not(:disabled){transform:none}}
.calendar-hours-note{margin:5px 0 10px;color:#d9c8ff;font-size:12px;font-weight:500;font-variant-numeric:tabular-nums}
.calendar-hours-note::before{content:'◷';margin-right:7px;color:#b49aff}
@media(max-width:760px){.calendar-hours-note{font-size:12px;margin-bottom:9px}}
/* Manager account console: glass surfaces, permission controls, mobile friendly. */
.team-admin{margin:27px 0 30px;padding:27px;border:1px solid #ffffff17;border-radius:23px;background:linear-gradient(140deg,#17141d,#101012);box-shadow:inset 0 1px 0 #ffffff09}
.admin-heading{display:flex;justify-content:space-between;align-items:start;gap:20px}.admin-heading h2{font-family:var(--font-display);font-size:39px;line-height:1;margin:12px 0 6px}.admin-heading .muted{max-width:550px;margin:8px 0;font-size:12px}.employee-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px;padding:22px;border:1px solid #ffffff12;border-radius:17px;background:#ffffff04}.employee-form label{min-width:0;font-size:12px}.employee-form .input{font-size:14px;min-height:45px}.password-create{display:flex;align-items:center;gap:9px}.password-create .input{flex:1;min-width:0}.password-create .btn{min-height:43px;padding:0 15px}.permission-switch{grid-column:1/-1;display:flex!important;flex-direction:row;align-items:center;gap:13px;border:1px solid #ffffff13;border-radius:14px;padding:15px;background:#ffffff04;cursor:pointer}.permission-switch .toggle{flex:none}.permission-switch span b,.permission-switch span small{display:block}.permission-switch span b{font-size:12px}.permission-switch span small{font-size:10px;line-height:1.6;color:var(--muted);margin-top:4px}.employee-form-actions{grid-column:1/-1}.employee-form-actions .btn{min-height:46px}.employee-form-actions .error{min-height:0}.created-credentials{display:grid;gap:10px;margin-top:18px;padding:19px;border:1px solid #b49aff45;border-radius:15px;background:#b49aff10}.created-credentials>strong{font-size:13px;margin-bottom:3px}.created-credentials>div{display:grid;grid-template-columns:135px minmax(0,1fr) auto;align-items:center;gap:10px}.created-credentials>div>span{font-size:11px;color:var(--muted)}.created-credentials code{overflow-wrap:anywhere;font-size:12px;color:#e7dcff}.created-credentials .btn{min-height:36px;padding:0 12px;font-size:10px}.team-users-title{display:flex;justify-content:space-between;align-items:baseline;gap:15px;border-top:1px solid #ffffff12;margin-top:24px;padding-top:20px}.team-users-title h3{font-family:var(--font-display);font-size:25px;margin:0}.team-users-title>.muted{font-size:10px}.team-user-row{display:grid;grid-template-columns:38px minmax(140px,1fr) 175px 125px;align-items:center;gap:14px;padding:15px 5px;border-bottom:1px solid #ffffff10}.team-user-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#b49aff17;color:#deccff;font-size:14px}.team-user-info{min-width:0}.team-user-info>b,.team-user-info>small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-user-info>b{font-size:12px}.team-user-info>small{color:var(--muted);font-size:10px;margin-top:4px}.permission-switch.compact{grid-column:auto;border:0;background:none;padding:2px;gap:9px}.permission-switch.compact .toggle{width:42px;height:24px}.permission-switch.compact span b{font-size:10px}.permission-switch.compact span small{font-size:9px;margin-top:2px}.active-switch{display:flex!important;align-items:center;gap:8px;font-size:10px;color:var(--muted);cursor:pointer}.active-switch input{accent-color:#b49aff;width:16px;height:16px}.team-no-access{max-width:700px;margin:35px auto;padding:35px;border:1px solid #ffffff18;border-radius:22px;background:#131216}.team-no-access h2{font-family:var(--font-display);font-size:40px;margin:20px 0 10px}.team-no-access p{font-size:13px;line-height:1.8;color:var(--muted)}
@media(max-width:760px){.team-admin{margin:22px 0;padding:19px 15px;border-radius:20px}.admin-heading{display:block}.admin-heading>.badge{margin-top:10px}.admin-heading h2{font-size:35px}.employee-form{grid-template-columns:1fr;gap:13px;padding:15px;margin-top:17px}.employee-form label{font-size:13px}.employee-form .input{font-size:16px;min-height:49px}.employee-form .permission-switch{grid-column:auto}.employee-form-actions{grid-column:auto}.employee-form-actions>.btn{width:100%;white-space:normal}.password-create .btn{min-height:47px}.team-users-title{align-items:start;flex-direction:column;gap:5px}.team-user-row{grid-template-columns:36px minmax(0,1fr) auto;gap:9px;padding:14px 0}.team-user-info>b{font-size:12px}.team-user-info>small{font-size:9px}.permission-switch.compact{grid-column:2/-1;grid-row:2;justify-self:start}.active-switch{grid-column:3;grid-row:1;font-size:10px}.created-credentials{padding:14px}.created-credentials>div{grid-template-columns:95px minmax(0,1fr) auto;gap:7px}.created-credentials code{font-size:10px}.created-credentials .btn{padding:0 9px}.team-no-access{padding:23px}.team-no-access h2{font-size:34px}}

/* CUT / CLUB - DaisyUI 5 theme tokens and editorial street direction. */
:root,[data-theme="cutclub"]{
 color-scheme:dark;
 --color-base-100:#08080a;--color-base-200:#101013;--color-base-300:#202025;--color-base-content:#f2f0f4;
 --color-primary:#8b5cf6;--color-primary-content:#fff;--color-secondary:#211a2d;--color-secondary-content:#f2f0f4;
 --color-accent:#8b5cf6;--color-accent-content:#fff;--color-neutral:#18181b;--color-neutral-content:#f2f0f4;
 --color-info:#b7a1ff;--color-info-content:#17121f;--color-success:#a7d7bb;--color-success-content:#102319;
 --color-warning:#e6c58d;--color-warning-content:#28200f;--color-error:#ff9bac;--color-error-content:#291016;
 --radius-selector:.2rem;--radius-field:.2rem;--radius-box:.25rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:0;--noise:0;
 --ink:#08080a;--paper:#f2f0f4;--muted:#96929d;--rule:#ffffff1c;--violet:#8b5cf6;--violet-dim:#211a2d;
 --font-display:'Bebas Neue',Impact,'Arial Narrow',sans-serif;--font-body:Helvetica,Arial,sans-serif;
}
html{background:var(--ink);scroll-padding-top:90px}body{font-family:var(--font-body);letter-spacing:.005em;background:radial-gradient(ellipse at 80% 16%,#8b5cf60b,transparent 34%),var(--ink)}
::selection{background:var(--violet);color:#fff}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--violet);outline-offset:3px}
header{position:sticky;z-index:20;top:0;max-width:none;padding:17px max(5%,calc((100vw - 1290px)/2));background:#08080ae8;backdrop-filter:blur(18px);border-bottom:1px solid var(--rule)}
.logo{font-family:var(--font-display);font-size:31px;letter-spacing:1px}.logo span{color:var(--violet)}header nav{gap:clamp(16px,3vw,38px);font-size:11px;letter-spacing:1px;text-transform:uppercase}header nav a{transition:color .2s}header nav a:hover{color:#c9b4ff}header nav .active{border-color:var(--violet)}
.btn{border-radius:2px;min-height:46px;padding:0 19px;font-size:11px;letter-spacing:.09em;text-transform:uppercase;transition:transform .22s cubic-bezier(.2,.8,.2,1),background-color .22s,border-color .22s,color .22s,box-shadow .22s}
.btn:hover:not(:disabled){transform:translateY(-2px);border-color:#8b5cf6a8;box-shadow:0 8px 28px #8b5cf61b}.btn:active:not(:disabled){transform:translateY(0) scale(.985)}.btn-primary{background:var(--violet)!important;border-color:var(--violet)!important;color:#fff!important}.btn-primary:hover{background:#9a70ff!important}
.hero-layout{max-width:1440px;min-height:min(710px,calc(100svh - 76px));padding:clamp(58px,8vw,112px) 6% 68px;grid-template-columns:1fr 1.04fr;align-items:center;gap:7%}
.hero-copy{position:relative;z-index:2;padding-top:0}.eyebrow{color:#b4aebd;font-size:9px;letter-spacing:.2em;text-transform:uppercase}.dot{background:var(--violet);box-shadow:0 0 16px #8b5cf6}
.hero-copy h1{font-family:var(--font-display);font-size:clamp(82px,11vw,162px);font-weight:400;letter-spacing:-.025em;line-height:.79;text-transform:uppercase;margin:32px 0 28px;max-width:690px}.hero-copy h1 span{color:var(--violet)}.hero-copy h1 svg{height:12px;stroke-width:5}.hero-copy>p{max-width:380px;color:#b0acb6;font-size:14px;line-height:1.85}.hero-cta{background:var(--paper)!important;color:var(--ink)!important;border:0}.hero-cta:hover{background:var(--violet)!important;color:#fff!important}.hero-caption{font-size:9px;line-height:1.65;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.hero-foot{max-width:none;border-top:1px solid var(--rule);padding-top:14px;margin-top:clamp(42px,7vw,88px);font-variant-numeric:tabular-nums}.hero-art{min-height:clamp(420px,55vw,680px);border-radius:1px;background:#15131a;box-shadow:22px 22px 0 -21px var(--violet)}.hero-photo-wrap{inset:0}.hero-photo{filter:saturate(.72) contrast(1.08);transition:transform .9s cubic-bezier(.2,.75,.2,1),filter .5s}.hero-art:hover .hero-photo{transform:scale(1.035);filter:saturate(.95) contrast(1.08)}.art-word{font-family:var(--font-display);font-size:clamp(80px,10vw,144px);font-weight:400;line-height:.76;letter-spacing:-.02em}.art-sticker{width:95px;height:95px;border-radius:2px;background:var(--violet);border:1px solid #ffffff80;transform:rotate(8deg);font-family:var(--font-display);font-size:35px}.art-grid{background-image:linear-gradient(#8b5cf622 1px,transparent 1px),linear-gradient(90deg,#8b5cf622 1px,transparent 1px)}.art-top,.art-bottom{font-size:9px;letter-spacing:.2em}.ticker{background:var(--violet);color:#fff;border:0;padding:15px 0;font-family:var(--font-display);font-size:18px;letter-spacing:.14em;word-spacing:.5em}.ticker b{font-size:15px;color:#20132f}
.booking-section{max-width:1440px;padding:clamp(68px,9vw,126px) 6% 110px}.section-heading{align-items:end;margin-bottom:38px;gap:25px}.section-heading h2,h2{font-family:var(--font-display);font-size:clamp(40px,5vw,66px);font-weight:400;letter-spacing:.015em;text-transform:uppercase}.section-heading h2 span{color:var(--violet)}.badge{height:auto;border-radius:1px;padding:7px 9px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;background:#ffffff04;border-color:var(--rule)}
.booking-layout{grid-template-columns:minmax(0,1fr) 280px;gap:clamp(16px,3vw,38px);align-items:start}.booking-main,.summary-box,.team-admin,.team-no-access{border-radius:2px;background:#101013;border-color:var(--rule);box-shadow:none}.booking-main{overflow:hidden}.steps-bar{gap:clamp(14px,3vw,36px);padding:19px clamp(16px,2.4vw,32px);background:#0c0c0f}.steps-bar button{font-size:10px;letter-spacing:.06em;text-transform:uppercase;transition:color .2s}.steps-bar .selected{color:#c5aaff}.steps-bar .done{color:#bbb4c5}.steps-bar b{font-size:11px}#booking-body{padding:clamp(19px,3vw,38px)}.step-title{font-family:var(--font-display);font-size:34px;font-weight:400;letter-spacing:.025em;text-transform:uppercase}.muted{color:var(--muted)}
.services-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.service{grid-column:span 3;min-height:135px;align-items:flex-start;padding:21px 18px;border:1px solid var(--rule);border-radius:1px;background:#0d0d10;transition:transform .24s,border-color .24s,background .24s}.service:nth-child(3),.service:nth-child(4){grid-column:span 3}.service:last-child{grid-column:span 6}.service:hover{transform:translateY(-3px);border-color:#8b5cf680}.service.selected{border:1px solid var(--violet);background:linear-gradient(110deg,#8b5cf617,transparent 75%),#101013;box-shadow:inset 3px 0 var(--violet)}.service-icon{color:#b79aff}.service strong{font-size:14px;letter-spacing:.005em}.service p{font-size:11px;color:var(--muted)}.service small{font-variant-numeric:tabular-nums;text-transform:uppercase;letter-spacing:.08em}.service .price{font-family:var(--font-display);font-size:21px;font-weight:400}.selection-dot{border-radius:1px}.selected .selection-dot{background:var(--violet);border-color:var(--violet);outline:0}
.staff-section{border-color:var(--rule)}.staff-section .step-title{font-size:25px!important}.staff-option{border-radius:1px;background:#0d0d10;transition:transform .2s,border-color .2s,background .2s}.staff-option:hover{transform:translateY(-2px);border-color:#8b5cf680}.staff-option.selected{border-color:var(--violet);background:#211a2d}.avatar-letter{border-radius:1px;background:#211a2d;color:#d5c6ff}.summary-box{position:sticky;top:94px;padding:22px}.summary-heading{font-size:9px;letter-spacing:.17em}.summary-heading span{color:var(--violet)}.summary-rule{border-top-style:solid;border-color:var(--rule)}.summary-line{font-size:11px}.total strong{font-family:var(--font-display);font-size:35px;font-weight:400}.summary-note,.summary-note+p{color:var(--muted)}.aside-note{border-left:1px solid var(--violet);margin-top:16px;padding:14px}.aside-note>span{color:#c1aaff}.calendar-header>b{font-family:var(--font-display);font-size:30px;letter-spacing:.03em}.calendar-arrow.btn{width:40px;min-height:38px;height:38px}.calendar-grid{gap:6px}.calendar-grid small{font-size:9px;letter-spacing:.08em}.day{border-radius:1px;transition:background .18s,border-color .18s,color .18s,transform .18s}.day:hover:not(:disabled){background:#ffffff0d;transform:translateY(-2px)}.day.selected{background:var(--violet);color:#fff;box-shadow:0 4px 20px #8b5cf633}.slots{gap:7px}.slot{border-radius:1px;background:#0c0c0f;transition:transform .18s,border-color .18s,background .18s}.slot:hover{transform:translateY(-2px);border-color:#8b5cf6}.slot.selected{border-color:var(--violet);background:#211a2d;color:#fff}.input,select{border-radius:1px;background:#0c0c0f;border-color:#ffffff24;transition:border-color .2s,box-shadow .2s}.input:focus,select:focus{border-color:var(--violet);box-shadow:0 0 0 3px #8b5cf61b;outline:0}.input::placeholder{color:#716d77}
.lookbook{max-width:1440px;padding:clamp(60px,9vw,116px) 6%}.lookbook-heading h2{font-family:var(--font-display);font-size:clamp(45px,7vw,94px);font-weight:400;letter-spacing:.015em}.lookbook-grid{grid-template-columns:1.1fr .86fr;align-items:start;gap:clamp(20px,5vw,70px)}.editorial-card{border-radius:1px;background:transparent}.editorial-card:first-child{margin-top:0}.editorial-card:nth-child(2){margin-top:clamp(45px,9vw,120px)}.editorial-card figure{border-radius:1px;aspect-ratio:4/5}.editorial-card:nth-child(2) figure{aspect-ratio:4/4.6}.editorial-card img{filter:saturate(.68) contrast(1.05);transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .4s}.editorial-card:hover img{transform:scale(1.035);filter:saturate(.92) contrast(1.08)}.editorial-card .card-body{padding:20px 0;border-bottom:1px solid var(--rule)}.editorial-card .card-title{font-family:var(--font-display);font-size:33px;font-weight:400;letter-spacing:.04em}.editorial-card p{color:#aaa6b0;font-size:12px}.photo-index{border-radius:1px!important;background:var(--violet)!important;font-family:var(--font-display);font-size:24px!important}.lookbook-foot{border-top-color:var(--rule)}.studio-scene{border-block:1px solid var(--rule);background:#0b0b0e}.studio-copy h2{font-family:var(--font-display);font-size:clamp(54px,8vw,106px);font-weight:400;line-height:.9}.studio-copy h2 em{color:#b99fff}.bottom-strip{border-radius:1px;background:#101013;border-top:1px solid var(--rule)}.bottom-strip h3{font-family:var(--font-display);font-size:clamp(34px,5vw,58px);font-weight:400;text-transform:uppercase}.bottom-strip>span{color:var(--violet)}
#team{max-width:1440px;min-height:70vh;margin:auto;padding:clamp(28px,5vw,72px) 6% 90px}.team-top{padding:28px 0 30px;border-bottom:1px solid var(--rule)}.team-top h1{font-family:var(--font-display);font-size:clamp(46px,7vw,84px);font-weight:400;letter-spacing:.025em;text-transform:uppercase}.team-actions{gap:10px}.stats-row{gap:0;border-block:1px solid var(--rule)}.stat-box{border:0;border-right:1px solid var(--rule);border-radius:0;background:transparent;padding:19px 22px}.stat-box:first-child{padding-left:0}.stat-box strong{font-family:var(--font-display);font-size:39px;font-weight:400;color:#c2a9ff}.stat-box span,.agenda-controls,.week-day h3{font-size:9px;letter-spacing:.11em;text-transform:uppercase}.agenda-controls{border-bottom:1px solid var(--rule);padding:17px 0}.week-grid{gap:8px}.week-day{border-radius:1px;background:#0e0e11;border-color:var(--rule)}.week-day h3{font-weight:600}.appointment{border-radius:1px;background:#17141d;border-left:2px solid var(--violet);transition:transform .18s,background .18s}.appointment:hover{transform:translateY(-2px);background:#211a2d}.appointment strong{font-size:12px}.team-admin{padding:clamp(20px,3vw,36px);margin:25px 0 32px}.admin-heading h2,.team-users-title h3,.team-no-access h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase}.employee-form{border-radius:1px;background:#0c0c0f}.permission-switch{border-radius:1px;background:#111114}.team-user-avatar{border-radius:1px;background:#211a2d;color:#d7c7ff}.created-credentials{border-radius:1px;border-color:#8b5cf650;background:#8b5cf60c}.created-credentials code{color:#d3c0ff}.dialog,dialog{border-radius:2px;border-color:var(--rule);background:#101013;color:var(--paper);box-shadow:0 30px 100px #000c}.toast{border-radius:1px}
footer{border-top-color:var(--rule)}footer .logo{font-family:var(--font-display)}
@media(max-width:900px){.hero-layout{grid-template-columns:1fr 1fr;gap:4%;padding-inline:5%}.hero-copy h1{font-size:clamp(76px,10vw,120px)}.booking-layout{grid-template-columns:minmax(0,1fr) 240px}.booking-section,.lookbook{padding-inline:5%}.week-grid{grid-template-columns:repeat(7,minmax(145px,1fr))}}
@media(max-width:760px){header{padding:12px 5%;}header nav{gap:13px}header nav>a{display:none}.logo{font-size:28px}.hero-layout{min-height:0;padding:44px 5% 36px;grid-template-columns:1fr;gap:32px}.hero-copy h1{font-size:clamp(82px,18vw,132px);margin:25px 0 20px}.hero-copy>p{font-size:13px}.hero-foot{margin-top:35px}.hero-art{min-height:clamp(390px,112vw,560px);margin-right:8px}.art-word{font-size:clamp(78px,18vw,124px)}.ticker{font-size:15px}.booking-section{padding:64px 5% 72px}.section-heading{align-items:start;flex-direction:column;margin-bottom:23px}.section-heading h2{font-size:46px}.section-heading>.badge{white-space:normal}.booking-layout{grid-template-columns:1fr}.summary-box{position:static}.booking-main{order:0}.summary-box{order:1}.steps-bar{gap:11px;padding:16px 12px;justify-content:space-between}.steps-bar button{font-size:9px;letter-spacing:0}.steps-bar b{font-size:10px}.services-grid{grid-template-columns:1fr 1fr;gap:7px}.service{grid-column:span 1!important;min-height:142px;padding:15px 11px;gap:8px}.service:last-child{grid-column:span 2!important}.service-icon{font-size:21px;width:23px}.service strong{font-size:12px}.service p{font-size:10px}.service .price{font-size:19px}.staff-option{padding:9px 11px}.lookbook{padding:68px 5%}.lookbook-heading{align-items:start;flex-direction:column}.lookbook-heading h2{font-size:clamp(48px,12vw,78px)}.lookbook-grid{grid-template-columns:1fr;gap:24px}.editorial-card:nth-child(2){margin:8px 0 0 12%}.editorial-card figure{aspect-ratio:4/4.5}.editorial-card:nth-child(2) figure{aspect-ratio:4/4.5}.studio-copy h2{font-size:clamp(52px,12vw,82px)}.bottom-strip{margin-inline:5%;padding:24px 18px;gap:14px}.bottom-strip h3{font-size:36px}.team-top{align-items:flex-start;gap:20px;flex-direction:column}.team-top h1{font-size:52px}.stats-row{grid-template-columns:1fr 1fr}.stat-box{padding:14px 12px}.stat-box:nth-child(2){border-right:0}.stat-box:last-child{grid-column:1/-1;border-top:1px solid var(--rule);padding-left:0}.agenda-controls{gap:8px}.agenda-controls .input,.agenda-controls select{max-width:none}.week-scroll{margin-inline:-5vw;padding-inline:5vw}.week-grid{grid-template-columns:repeat(7,minmax(190px,1fr))}.team-admin{padding:18px 14px}.employee-form{padding:14px}.team-user-row{grid-template-columns:34px minmax(0,1fr) auto}.permission-switch.compact{grid-column:2/-1;grid-row:2}.active-switch{grid-column:3;grid-row:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Reference direction: dark creative storefront, oversized image and vivid single-color hits. */
:root,[data-theme="cutclub"]{--color-base-100:#09090b;--color-base-200:#111114;--color-base-300:#242329;--color-primary:#8b5cf6;--color-accent:#8b5cf6;--ink:#09090b;--violet:#8b5cf6;--violet-dim:#25183b;--rule:#ffffff1a}
body{background-color:#09090b;background-image:radial-gradient(ellipse at 83% 26%,#8b5cf60a,transparent 38%)}
.edition-line{max-width:1440px;margin:0 auto;padding:18px 6% 0;color:#77727f;font-size:9px;letter-spacing:.17em;text-transform:uppercase}
.edition-line span:nth-child(2){color:#b7a0f4}
.hero-layout{position:relative;max-width:1440px;grid-template-columns:.88fr 1.12fr;padding-top:clamp(55px,7vw,100px);padding-bottom:clamp(60px,8vw,112px)}
.hero-layout::before{content:"CUT / CLUB — 001";position:absolute;left:2%;top:44%;writing-mode:vertical-rl;transform:rotate(180deg);font-size:8px;letter-spacing:.2em;color:#77727f}
.hero-copy h1{font-size:clamp(92px,12vw,174px);line-height:.75;letter-spacing:-.035em}
.hero-copy h1 span{color:var(--paper)}.hero-copy h1 span svg{stroke:var(--violet)}
.hero-photo-art{isolation:isolate;background:#131116;box-shadow:12px 12px 0 -11px var(--violet)}
.hero-photo-art::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(180deg,#09090b18 0%,transparent 35%,#09090b26 100%),linear-gradient(90deg,#09090b27,transparent 58%);mix-blend-mode:multiply}
.hero-photo{filter:grayscale(.18) saturate(.72) contrast(1.12)}
.art-word{z-index:2;text-shadow:0 3px 22px #0008}.art-word span{-webkit-text-stroke:1px #e8e1f2}.art-sticker{z-index:3;box-shadow:5px 5px 0 #09090b}
.ticker{background:#17151c;color:#e8e3ee;border-block:1px solid var(--rule)}.ticker b{color:#b89aff}
.section-heading h2,.lookbook-heading h2{letter-spacing:-.01em}.booking-section{padding-top:clamp(80px,10vw,140px)}
.booking-main{background:#0e0e11}.steps-bar{background:#0a0a0c}.steps-bar .selected{color:#cbb8ff}.steps-bar .done{color:#b8adbF}
.service{background:#0b0b0e}.service.selected{background:linear-gradient(100deg,#8b5cf61c,transparent 76%),#101013}.service .price{color:#c8b3ff}.service:nth-child(1)::before,.service:nth-child(2)::before,.service:nth-child(3)::before,.service:nth-child(4)::before,.service:nth-child(5)::before{position:absolute;top:14px;right:37px;color:#716b79;font:12px var(--font-display);letter-spacing:.12em}.service:nth-child(1)::before{content:"01"}.service:nth-child(2)::before{content:"02"}.service:nth-child(3)::before{content:"03"}.service:nth-child(4)::before{content:"04"}.service:nth-child(5)::before{content:"05"}
.summary-box{background:#111014;border-top:2px solid var(--violet)}.summary-heading{color:#cbb8ff}.total strong{color:#eee9f4}
.lookbook{position:relative}.lookbook::before{content:"THE EDIT / 01—02";display:block;margin-bottom:16px;color:#8a8490;font-size:9px;letter-spacing:.19em}.editorial-card:first-child{transform:translateY(-8px)}.editorial-card:nth-child(2){margin-top:clamp(70px,11vw,145px)}.editorial-card figure{background:#15131a}.editorial-card .card-body{border-bottom-color:#ffffff1c}.photo-index{box-shadow:4px 4px 0 #09090b}
.studio-scene{background:radial-gradient(ellipse at 72% 48%,#8b5cf615,transparent 42%),#0a0a0c}.studio-halo{background:radial-gradient(circle,#8b5cf62b,transparent 68%)}.studio-outline{-webkit-text-stroke-color:#8b5cf64a}.studio-copy .badge{color:#d4c4fa;border-color:#8b5cf655}.studio-copy h2 em{color:#ad8aff}
.bottom-strip{position:relative;overflow:hidden}.bottom-strip::after{content:"CUT";position:absolute;right:3%;bottom:-.33em;color:#8b5cf611;font:clamp(120px,24vw,320px)/.8 var(--font-display);pointer-events:none}.bottom-strip h3,.bottom-strip p{position:relative;z-index:1}
.btn-primary{box-shadow:0 5px 22px #8b5cf638}.badge-outline{border-color:#ffffff27}
@media(max-width:760px){.edition-line{padding:12px 5% 0;font-size:7px;letter-spacing:.12em;gap:8px}.edition-line span:nth-child(2){display:none}.hero-layout{padding-top:42px}.hero-layout::before{left:auto;right:5%;top:20px;writing-mode:horizontal-tb;transform:none}.hero-copy h1{font-size:clamp(86px,19vw,136px)}.hero-art{min-height:clamp(400px,118vw,570px)}.ticker{background:#151319;font-size:14px}.lookbook::before{margin-bottom:20px}.editorial-card:first-child,.editorial-card:nth-child(2){transform:none}.summary-box{border-top-width:2px}}

/* Final mobile pass: compact type, full-width touch targets, no sideways overflow. */
@media(max-width:760px){
 html,body{width:100%;max-width:100%;overflow-x:clip;scroll-padding-top:72px}
 header{position:sticky;top:0;z-index:50;min-height:62px;padding:8px 5%;gap:12px;background:#09090bf0;backdrop-filter:blur(18px)}
 header .logo{font-size:25px;flex:none}header nav{margin-left:auto;gap:0}header nav .btn{min-height:42px;padding:0 13px;font-size:10px;letter-spacing:.09em;white-space:nowrap}
 .edition-line{display:flex;justify-content:space-between;padding:12px 5% 0;font-size:7px;letter-spacing:.1em}.edition-line span:last-child{font-size:6px}
 .hero-layout{width:100%;padding:42px 5% 34px;grid-template-columns:minmax(0,1fr);gap:24px}
 .hero-layout::before{right:5%;top:13px;font-size:7px;letter-spacing:.14em}
 .hero-copy{min-width:0}.hero-copy h1{width:100%;max-width:100%;font-size:clamp(54px,16vw,86px);line-height:.82;letter-spacing:-.015em;margin:23px 0 18px;overflow-wrap:normal}
 .hero-copy h1 span{white-space:nowrap}.hero-copy h1 svg{width:80%;height:11px;margin-left:15%}
 .hero-copy>p{max-width:34ch;font-size:13px;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hero-cta{min-height:48px;padding:0 16px;font-size:10px;gap:10px}.hero-cta span{margin-left:4px}.hero-caption{font-size:8px}.hero-foot{margin-top:27px;padding-top:11px;font-size:7px;letter-spacing:.12em}
 .hero-art{width:100%;min-width:0;min-height:0;height:auto;aspect-ratio: .92;margin:0;border-radius:1px}.hero-photo-wrap{inset:0}.hero-photo{width:100%;height:100%;object-fit:cover}.art-top{top:17px;left:16px;font-size:8px}.art-word{left:16px;bottom:43px;font-size:clamp(72px,18vw,112px)}.art-sticker{right:16px;bottom:32px;width:74px;height:74px;font-size:26px}.art-sticker span{font-size:7px}.art-bottom{left:15px;bottom:13px;font-size:6px;letter-spacing:.13em}.hero-photo-credit{font-size:8px}
 .ticker{padding:12px 0;font-size:13px;letter-spacing:.1em;word-spacing:.25em}.ticker b{margin:0 14px;font-size:14px}
 .booking-section{width:100%;padding:66px 5% 70px}.section-heading{align-items:flex-start;gap:11px;margin-bottom:20px}.section-heading h2{font-size:clamp(37px,10.7vw,47px);line-height:.95;margin:9px 0 0;letter-spacing:0}.section-heading h2 span{margin-left:5px}.section-heading>.badge{max-width:100%;font-size:8px;padding:6px 8px;white-space:normal}
 .booking-layout{display:flex;flex-direction:column;gap:14px;width:100%;min-width:0}.booking-main{order:0;width:100%;min-width:0;border-radius:1px}.steps-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:11px 8px}.steps-bar button{min-width:0;min-height:43px;padding:5px 2px;display:flex;align-items:center;justify-content:center;gap:5px;font-size:10px;white-space:nowrap}.steps-bar b{font-size:9px;white-space:normal;text-align:left}.steps-bar button.selected{border-bottom:2px solid var(--violet)}
 #booking-body{padding:22px 15px 19px;min-width:0}.step-title{font-size:29px;line-height:.98}.muted{font-size:11px}
 .services-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:17px}.service,.service:nth-child(n){grid-column:1/-1!important;min-width:0;min-height:unset;padding:14px 13px;gap:10px;border-radius:1px;align-items:flex-start}.service-icon{width:25px;flex:0 0 25px;font-size:22px}.service>div{min-width:0}.service strong{font-size:13px;line-height:1.25;padding-right:5px}.service p{margin:4px 0 8px;font-size:10px;line-height:1.45}.service small{font-size:9px}.service .price{font-size:18px}.service:nth-child(n)::before{top:12px;right:32px;font-size:11px}.selection-dot{right:10px;top:12px;width:12px;height:12px}
 .staff-section{margin-top:19px;padding-top:16px}.staff-section .step-title{font-size:23px!important}.staff-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.staff-option{min-width:0;min-height:54px;padding:8px 9px;gap:8px;font-size:11px}.staff-option>span:last-child{min-width:0;overflow-wrap:anywhere}.avatar-letter{flex:none;padding:7px 9px}.staff-option small{font-size:9px;line-height:1.3}
 .summary-box{position:static;order:1;width:100%;padding:17px 16px;border-radius:1px}.summary-line{gap:8px;font-size:11px}.summary-line b{text-align:right}.total strong{font-size:32px}.summary-box .full,.summary-box #next{width:100%;min-height:50px}.summary-note{font-size:9px}.aside-note{margin-top:10px;padding:11px}.aside-note p{font-size:10px}
 .calendar-header{grid-template-columns:42px minmax(0,1fr) 42px;gap:6px;margin:17px 0 10px}.calendar-header>b{font-size:24px}.calendar-arrow.btn{width:42px;height:42px;min-height:42px;padding:0}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;padding:8px}.calendar-grid small{height:27px;padding:4px 0;font-size:9px}.day{width:100%;min-width:0;min-height:39px;max-height:none;aspect-ratio:1;border-radius:1px;font-size:12px}.availability-legend{gap:8px;font-size:9px;flex-wrap:wrap}.slots-date{font-size:23px!important}.shared-capacity{font-size:10px;line-height:1.45}.slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.slot{min-width:0;min-height:45px;padding:7px 4px;font-size:11px;border-radius:1px}
 .form-grid{grid-template-columns:minmax(0,1fr);gap:13px;margin-top:18px}.form-grid label{min-width:0}.form-grid .wide{grid-column:1}.input,select{width:100%;min-height:48px;margin-top:6px;padding:11px 12px;font-size:16px}.privacy{font-size:10px;line-height:1.55}
 .lookbook{width:100%;padding:58px 5% 64px}.lookbook-heading h2{font-size:clamp(45px,12vw,62px);line-height:.9}.lookbook-heading p{font-size:11px}.lookbook-grid{grid-template-columns:minmax(0,1fr);gap:23px}.editorial-card,.editorial-card:nth-child(2){width:100%;margin:0;transform:none}.editorial-card figure,.editorial-card:nth-child(2) figure{width:100%;aspect-ratio:4/4.3}.editorial-card .card-body{padding:15px 0}.editorial-card .card-title{font-size:29px}.editorial-card p{font-size:11px}.lookbook-foot{gap:12px;align-items:flex-start;flex-direction:column}.lookbook-foot .btn{max-width:100%;white-space:normal}
 .studio-scene{min-height:520px;padding:34px 5%}.studio-copy{max-width:100%}.studio-copy h2{font-size:clamp(47px,12vw,68px);line-height:.86}.studio-caption{font-size:7px;letter-spacing:.1em;gap:10px}.studio-outline{font-size:clamp(80px,19vw,128px)}
 .bottom-strip{width:90%;margin:0 auto 25px;padding:23px 17px;display:grid;grid-template-columns:1fr auto;gap:10px}.bottom-strip h3{font-size:clamp(31px,9vw,39px);line-height:.92}.bottom-strip p{grid-column:1/-1;font-size:10px;line-height:1.6}.bottom-strip>span{grid-column:2;grid-row:1;font-size:25px}footer{padding:18px 5%;gap:10px;flex-wrap:wrap;font-size:8px}footer .logo{font-size:24px}
 .booking-dock{left:0;right:0;bottom:0;z-index:45;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#121016f5;backdrop-filter:blur(18px);border-top:1px solid #ffffff20}.booking-dock .btn{min-height:46px}
 dialog{width:min(100% - 24px,430px);max-width:none;padding:24px 18px;border-radius:2px}dialog h2{font-size:34px}dialog form label{margin-top:13px}dialog form .btn{width:100%;margin-top:12px}
 #team{width:100%;padding:28px 5% 80px}.team-top{padding:16px 0 20px;gap:13px}.team-top h1{font-size:clamp(43px,12vw,58px);line-height:.9;margin:10px 0}.team-actions{width:100%;display:flex;flex-wrap:wrap}.team-actions .btn{flex:1;min-width:135px}.stats-row{display:grid;grid-template-columns:1fr 1fr;margin:15px 0}.stat-box{min-width:0;padding:13px 8px}.stat-box strong{font-size:32px}.stat-box span{font-size:8px;line-height:1.4}.agenda-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:12px 0}.agenda-controls .btn{min-width:0;padding:0 7px;font-size:9px}.agenda-controls label{grid-column:1/-1}.agenda-controls .input,.agenda-controls select{width:100%;max-width:none;min-width:0;font-size:14px}.week-scroll{max-width:calc(100vw - 10vw);overflow-x:auto;overscroll-behavior-x:contain}.week-grid{grid-template-columns:repeat(7,minmax(190px,1fr))}.team-admin{width:100%;margin:16px 0 24px;padding:17px 13px}.employee-form{grid-template-columns:minmax(0,1fr);padding:12px;gap:12px}.employee-form .permission-switch{grid-column:1}.employee-form-actions{grid-column:1}.team-user-row{grid-template-columns:32px minmax(0,1fr) auto;gap:7px}.team-user-info>small{font-size:8px}.created-credentials>div{grid-template-columns:84px minmax(0,1fr) auto;gap:5px}.created-credentials code{font-size:9px}.created-credentials .btn{min-height:37px;padding:0 8px;font-size:9px}
}
@media(max-width:370px){
 header .logo{font-size:23px}header nav .btn{padding:0 10px;font-size:9px}.hero-copy h1{font-size:clamp(50px,15.5vw,58px)}.hero-copy>p{font-size:12px}.hero-art{aspect-ratio:.86}.steps-bar{padding-inline:5px}.steps-bar button{gap:3px;font-size:9px}.steps-bar b{font-size:8px}.service{padding:12px 10px}.calendar-grid{gap:2px;padding:5px}.calendar-grid small{font-size:8px}.day{min-height:35px}.studio-caption{gap:5px}.agenda-controls .btn{font-size:8px}
}
/* DROP FADE reference rebuild — black canvas, magenta ink, compact barber booking */
:root,[data-theme="cutclub"]{
 color-scheme:dark;
 --color-base-100:#08080a;--color-base-200:#111014;--color-base-300:#25222a;
 --color-base-content:#f7f4f8;--color-primary:#d51cf4;--color-primary-content:#fff;
 --color-accent:#d51cf4;--color-accent-content:#fff;--color-secondary:#211328;
 --ink:#08080a;--paper:#f7f4f8;--muted:#aaa5ae;--rule:#ffffff20;
 --violet:#d51cf4;--violet-dim:#2c1034;
 --font-display:'Bebas Neue',Impact,'Arial Narrow',sans-serif;
 --font-body:Helvetica,Arial,sans-serif;
 --radius-selector:.55rem;--radius-field:.6rem;--radius-box:.7rem;
}
body{background:#08080a;color:#f7f4f8;font-family:var(--font-body);overflow-x:hidden}
html{scroll-padding-top:78px}
.dropfade-header{position:sticky;top:0;z-index:30;width:min(100%,540px);height:64px;min-height:64px;margin:0 auto;padding:10px 22px;display:flex;align-items:center;justify-content:space-between;border:0;background:#08080aee;backdrop-filter:blur(18px)}
.dropfade-header .logo{display:flex;align-items:center;color:#fff;text-decoration:none}
.dropfade-header .logo-main{font:25px/.9 var(--font-display);letter-spacing:.055em}
.dropfade-header .logo-main::first-letter{color:var(--violet)}
.dropfade-nav{display:flex;align-items:center;gap:0}
.dropfade-header .team-trigger{width:38px;height:38px;min-height:38px;padding:8px;border:1px solid #ffffff3b;border-radius:50%;color:#fff;background:#ffffff0c;transition:background .2s,border-color .2s,transform .2s}
.dropfade-header .team-trigger svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.dropfade-header .team-trigger:hover{background:#d51cf42b;border-color:#d51cf4;transform:scale(1.04)}
.dropfade-header .logo-main{font-family:var(--font-display);font-size:27px;letter-spacing:.08em}
.dropfade-header .logo-main span{color:var(--violet)}
.dropfade-hero{width:min(100%,540px);margin:0 auto;padding:0 20px}
.dropfade-hero .hero-art{position:relative;isolation:isolate;width:100%;height:auto;min-height:0;aspect-ratio:.96;overflow:hidden;border:0;border-radius:0;background:#09090b;box-shadow:none}
.hero-atmosphere{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 52% 49%,#4c0b5f55 0,transparent 55%),radial-gradient(ellipse at 83% 65%,#d51cf42b 0,transparent 34%),linear-gradient(180deg,#09090b 0%,#100b13 58%,#09090b 100%);pointer-events:none}
.hero-atmosphere::after{content:"";position:absolute;inset:0;background-image:url("/assets/dropfade/dropfade-poster.png");background-size:cover;background-position:center;opacity:.28;mix-blend-mode:screen}
.hero-mascot{position:absolute;z-index:1;top:-1%;left:50%;width:105%;height:97%;max-width:none;object-fit:contain;object-position:center top;transform:translateX(-50%);filter:drop-shadow(0 10px 22px #0009);pointer-events:none;will-change:translate}
.hero-copy{position:absolute;z-index:4;left:5%;right:5%;bottom:8%;padding:0;text-align:left}
.hero-copy h1{max-width:none;margin:0;color:#fff;font:clamp(49px,13vw,68px)/.78 var(--font-display);font-weight:400;letter-spacing:.004em;text-transform:uppercase;text-shadow:0 2px 12px #070609,2px 2px 0 #c30fe6}
.hero-copy h1 span{color:#fff}
.hero-brush{display:block;width:86%;height:25px;margin:10px 0 0 1%;overflow:visible}
.hero-brush path{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(1px 2px 0 #d51cf4)}
.motion-control{position:absolute;z-index:8;right:6px;bottom:5px;min-height:28px;padding:0 8px;border:0;color:#aaa;font-size:9px;opacity:0;pointer-events:none}
.reference-facts.ticker{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;margin:-3px 0 22px;padding:9px 2px 12px;overflow:visible;border:0;border-bottom:1px solid #ffffff28;background:transparent;color:#d9d4dd;font:10px var(--font-body);letter-spacing:.14em}
.reference-facts b{color:var(--violet);font-size:12px}
.booking-section{width:min(100%,540px);margin:0 auto;padding:0 20px 92px}
.booking-kicker{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:#f8f5f8;font:15px var(--font-display);letter-spacing:.08em;text-transform:uppercase}
.booking-kicker>span:first-child{color:var(--violet)}
.kicker-rule{height:1px;flex:1;background:linear-gradient(90deg,#d51cf4a8,transparent)}
.booking-section .steps-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 16px;padding:0;border:0;background:none}
.booking-section .steps-bar button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:34px;padding:5px 6px;border:1px solid #ffffff16;border-radius:5px;background:#121014;color:#8f8994;font:10px var(--font-body);letter-spacing:.04em;transition:background .2s,border-color .2s,color .2s,transform .2s}
.booking-section .steps-bar button b{font-size:10px;font-weight:500}
.booking-section .steps-bar button.selected,.booking-section .steps-bar button.done{border-color:#d51cf4b8;background:#291331;color:#fff}
.booking-section .steps-bar button.selected:first-letter{color:var(--violet)}
.booking-section .booking-layout{display:block;width:100%;min-width:0}
.booking-section .booking-main{width:100%;min-width:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
#booking-body{min-width:0;padding:0;outline:0}
#services{min-width:0}
#services .step-title,.staff-title{margin:0 0 4px;color:#fff;font:26px/.94 var(--font-display);letter-spacing:.03em;text-transform:uppercase}
#services>.muted{margin:0 0 12px;color:#a29ca8;font-size:10px;line-height:1.45}
.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.service{position:relative;isolation:isolate;display:block;width:100%;min-width:0;min-height:104px;padding:13px 11px 12px;overflow:hidden;border:1px solid #ffffff2a;border-radius:9px;background:#18131c;color:#fff;text-align:left;box-shadow:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.service::before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center 40%;filter:saturate(.83);opacity:.66;transition:transform .45s,opacity .3s}
.service::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#100b14eb 0%,#100b14b8 56%,#100b1450 100%),linear-gradient(0deg,#09090bbb,transparent 74%)}
.service[data-service="cut"]::before{background-image:url("/assets/dropfade/barber-fade.jpg")}
.service[data-service="fade"]::before{background-image:url("/assets/dropfade/barber-scissors.jpg")}
.service[data-service="beard"]::before{background-image:url("/assets/dropfade/barber-beard.jpg")}
.service[data-service="combo"]::before{background-image:url("/assets/dropfade/barber-ritual.jpg")}
.service[data-service="color"]::before{background-image:url("/assets/dropfade/dropfade-poster.png")}
.service:hover{transform:translateY(-2px);border-color:#d51cf4a6;box-shadow:0 8px 22px #d51cf422}
.service:hover::before{transform:scale(1.04);opacity:.8}
.service.selected{border-color:#ef55ff;box-shadow:inset 0 0 0 1px #d51cf4,0 0 20px #d51cf42b}
.service.selected::after{background:linear-gradient(90deg,#1a0d20e8 0%,#150b19ad 62%,#10091366 100%),linear-gradient(0deg,#08080bdc,transparent 82%)}
.service-copy{position:relative;z-index:2;display:flex;min-height:76px;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:3px;padding-right:17px}
.service-copy strong{max-width:100%;color:#fff;font:17px/.98 var(--font-display);letter-spacing:.025em;text-transform:uppercase;text-shadow:0 1px 5px #000}
.service-copy p{display:-webkit-box;max-width:100%;margin:2px 0 0;overflow:hidden;color:#d5cdd7;font-size:9px;line-height:1.25;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.service-copy small{color:#d2c9d4;font-size:8px;letter-spacing:.05em}
.service-copy .price{position:absolute;right:0;bottom:0;color:#fff;font:18px/1 var(--font-display)}
.service-icon{position:absolute;z-index:2;top:8px;right:8px;display:grid;width:22px;height:22px;place-items:center;border:1px solid #ffffff3a;border-radius:50%;background:#09090b77;color:#fff;font-size:11px}
.service.selected .service-icon{border-color:#ed56ff;background:var(--violet);color:#fff}
.selection-dot{position:absolute;right:8px;bottom:9px;width:10px;height:10px;border:1px solid #fff8;border-radius:50%;background:#08080b66}
.service.selected .selection-dot{border-color:#f49cff;background:var(--violet);box-shadow:0 0 9px #d51cf4}
.services-grid::after{content:"";min-height:104px;border:1px solid #ffffff12;border-radius:9px;background:linear-gradient(135deg,#252329,#17161a)}
.staff-section{margin:19px 0 0;padding-top:13px;border-top:1px solid #ffffff20}
.staff-title{font-size:19px}
.staff-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.staff-option{display:flex;align-items:center;gap:9px;min-width:0;min-height:49px;padding:7px 10px;border:1px solid #ffffff25;border-radius:30px;background:#17151a;color:#fff;text-align:left;transition:background .2s,border-color .2s,transform .2s}
.staff-option:hover{transform:translateY(-1px);border-color:#d51cf4}
.staff-option.selected{border-color:#e64aff;background:#2a1231;box-shadow:0 0 15px #d51cf420}
.avatar-letter{display:grid;flex:none;width:32px;height:32px;place-items:center;border:1px solid #fff;border-radius:50%;background:#f5f1f7;color:#151018;font:18px var(--font-display)}
.staff-option>span:last-child{display:flex;min-width:0;flex-direction:column;gap:2px;font-size:11px;font-weight:700}
.staff-option small{overflow:hidden;color:#aaa3ae;font-size:8px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}
#summary{display:none}
.booking-dock{position:fixed;right:max(14px,calc((100vw - 500px)/2));bottom:calc(13px + env(safe-area-inset-bottom));left:max(14px,calc((100vw - 500px)/2));z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px 9px 17px;border:1px solid #ffffff35;border-radius:50px;background:#26222bf0;box-shadow:0 12px 35px #000a,0 0 22px #d51cf422;backdrop-filter:blur(18px)}
.booking-dock>div{display:flex;min-width:0;flex-direction:column;gap:2px}
.booking-dock #dock-service{overflow:hidden;color:#f7f2f8;font:15px var(--font-display);text-overflow:ellipsis;white-space:nowrap}
.booking-dock #dock-price{color:#c5bdc8;font-size:10px}
.booking-dock .btn{min-height:43px;padding:0 17px;border:0;border-radius:30px;background:var(--violet);color:#fff;font-size:11px;white-space:nowrap;transition:transform .2s,box-shadow .2s}
.booking-dock .btn:hover{transform:scale(1.025);box-shadow:0 0 18px #d51cf477}
.dropfade-footer{position:relative;display:flex;align-items:center;gap:10px;width:min(100%,540px);min-height:83px;margin:0 auto;padding:17px 22px calc(19px + env(safe-area-inset-bottom));overflow:hidden;border-top:1px solid #ffffff24;background:radial-gradient(ellipse at 12% 50%,#d51cf421,transparent 36%),#09090b}
.dropfade-footer>img{width:38px;height:37px;object-fit:contain;transform:rotate(-25deg);opacity:.9}
.dropfade-footer>div{display:flex;flex-direction:column;gap:2px}
.dropfade-footer strong{font:19px var(--font-display);letter-spacing:.04em}
.dropfade-footer>div span,.footer-team{color:#aaa3ae;font-size:8px;letter-spacing:.1em}
.footer-team{margin-left:auto;color:#eee;text-decoration:none}
.footer-team span{color:var(--violet);font-size:13px}
.dropfade-hero .reveal-item{transition:opacity .65s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.motion-enabled .dropfade-hero .reveal-item:not(.editorial-arrived){opacity:0;transform:translateY(13px)}
.motion-enabled .dropfade-hero .reveal-item.editorial-arrived{opacity:1;transform:translateY(0)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.dropfade-hero .hero-art:hover .hero-mascot{filter:drop-shadow(0 10px 28px #d51cf43b)}}
@media(max-width:370px){.dropfade-header{padding-inline:16px}.dropfade-hero,.booking-section{padding-inline:15px}.hero-copy h1{font-size:47px}.service{min-height:99px;padding-inline:9px}.service-copy strong{font-size:15px}.services-grid::after{min-height:99px}.staff-options{gap:6px}.staff-option{gap:6px;padding-inline:7px}}
@media(min-width:760px){.dropfade-header{height:74px;min-height:74px}.dropfade-hero{padding-inline:30px}.dropfade-hero .hero-art{aspect-ratio:.94}.hero-copy h1{font-size:68px}.booking-section{padding-inline:30px}.dropfade-footer{padding-inline:30px}}
@media(prefers-reduced-motion:reduce){.dropfade-hero .reveal-item{opacity:1!important;transform:none!important;transition:none!important}.hero-mascot,.service,.staff-option,.booking-dock .btn{transition:none!important;animation:none!important}}

/* Final font/color overrides after legacy responsive styles. */
:root{--font-display:'Archivo',Arial,sans-serif;--font-body:'Archivo',Arial,sans-serif;--font-interface:'Archivo',Arial,sans-serif}
body,#customer,#team,dialog{font-family:'Archivo',Arial,sans-serif;color:#fff}
#customer :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend),#team :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend),dialog :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend){color:#fff!important}
#customer :is(input,select,textarea),#team :is(input,select,textarea),dialog :is(input,select,textarea){color:#fff;font-family:'Archivo',Arial,sans-serif}
#customer :is(input,select,textarea)::placeholder,#team :is(input,select,textarea)::placeholder,dialog :is(input,select,textarea)::placeholder{color:#fff9}
#customer .hero-copy h1,#customer .step-title,#customer .staff-title,#customer .service-copy strong,#customer .dropfade-header .logo-main,#customer .booking-dock #dock-service,#customer .dropfade-footer strong{font-weight:800}
#customer .avatar-letter,#team .avatar-letter{background:#211329;color:#fff!important}

/* Archivo typography + reference requirement: all interface copy stays white. */
:root{--font-display:'Archivo',Arial,sans-serif;--font-body:'Archivo',Arial,sans-serif;--font-interface:'Archivo',Arial,sans-serif}
body,#customer,#team,dialog{font-family:'Archivo',Arial,sans-serif;color:#fff}
#customer :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend),
#team :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend),
dialog :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend){color:#fff!important}
#customer :is(input,select,textarea),#team :is(input,select,textarea),dialog :is(input,select,textarea){color:#fff;font-family:'Archivo',Arial,sans-serif}
#customer :is(input,select,textarea)::placeholder,#team :is(input,select,textarea)::placeholder,dialog :is(input,select,textarea)::placeholder{color:#fff9}
#customer .hero-copy h1,#customer .step-title,#customer .staff-title,#customer .service-copy strong,#customer .dropfade-header .logo-main,#customer .booking-dock #dock-service,#customer .dropfade-footer strong{font-weight:800}
#customer .avatar-letter,#team .avatar-letter{background:#211329;color:#fff!important}
@media(prefers-reduced-motion:no-preference){.services-grid.services-enter .service{animation:service-arrive .55s cubic-bezier(.2,.7,.2,1) both}.services-grid .service:nth-child(2){animation-delay:.06s}.services-grid .service:nth-child(3){animation-delay:.12s}.services-grid .service:nth-child(4){animation-delay:.18s}.services-grid .service:nth-child(5){animation-delay:.24s}@keyframes service-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}
.motion-control{opacity:0;pointer-events:none}
@media(prefers-reduced-motion:no-preference){.services-grid.services-enter .service{animation:service-arrive .55s cubic-bezier(.2,.7,.2,1) both}.services-grid .service:nth-child(2){animation-delay:.06s}.services-grid .service:nth-child(3){animation-delay:.12s}.services-grid .service:nth-child(4){animation-delay:.18s}.services-grid .service:nth-child(5){animation-delay:.24s}@keyframes service-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}

/* DROP / FADE — art-directed homepage, built on the existing DaisyUI system */
.dropfade-hero.hero{display:grid;grid-template-columns:.94fr 1.06fr;gap:clamp(25px,5vw,76px);align-items:center;width:min(1440px,100%);max-width:1440px;min-height:660px;margin:auto;padding:54px 6% 70px;overflow:visible}
.dropfade-hero .hero-content{display:block;width:100%;max-width:none;padding:0;text-align:left}
.dropfade-hero .hero-copy h1{font-size:clamp(72px,9.4vw,142px);line-height:.78;letter-spacing:-.025em;margin:34px 0 26px}
.dropfade-hero .hero-copy h1>span{color:var(--violet);white-space:nowrap}
.dropfade-hero .hero-cta{background:var(--violet)!important;color:#fff!important;border-color:var(--violet)!important}
.dropfade-hero .hero-cta:hover{background:#9a70ff!important}
.dropfade-hero .hero-copy>p{max-width:36ch;color:#b4afb9;font-size:14px;line-height:1.8}
.dropfade-hero .hero-art{width:100%;min-width:0;min-height:0;height:auto;aspect-ratio:.88;max-height:760px;position:relative;isolation:isolate;overflow:hidden;border:1px solid #ffffff1b;border-radius:1px;background:#111014;box-shadow:14px 14px 0 #8b5cf615}
.dropfade-hero .hero-photo-wrap{position:absolute;inset:-2%;z-index:-1;transform:scale(1.04)}
.dropfade-hero .hero-photo{width:100%;height:100%;object-fit:cover;object-position:53% 45%;filter:brightness(.73) saturate(.62) contrast(1.08)}
.dropfade-hero .hero-art::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#08080b5c,transparent 37%,#08080bd9 100%),linear-gradient(90deg,#08080b45,transparent 70%);pointer-events:none}
.dropfade-hero .hero-mascot{position:absolute;z-index:2;right:-5%;bottom:-4%;width:60%;height:auto;max-height:88%;object-fit:contain;object-position:bottom right;filter:drop-shadow(0 15px 30px #000b);pointer-events:none}
.dropfade-hero .hero-shears{position:absolute;z-index:2;left:7%;top:30%;width:18%;height:38%;object-fit:contain;transform:rotate(-17deg);filter:drop-shadow(0 5px 10px #0008);pointer-events:none}
.dropfade-hero .art-top{z-index:3;top:25px;left:25px;font:24px var(--font-display);letter-spacing:.07em}
.dropfade-hero .art-top small{font:8px var(--font-interface);letter-spacing:.15em;color:#e2dce9}
.dropfade-hero .art-word{z-index:3;left:7%;bottom:13%;font:clamp(72px,9vw,130px)/.72 var(--font-display);letter-spacing:.015em;transform:rotate(-7deg);text-shadow:3px 5px #09090b}
.dropfade-hero .art-word span{-webkit-text-stroke:1px #d7c8ff;color:transparent}
.dropfade-hero .art-sticker{z-index:4;right:6%;bottom:10%;border-radius:1px;background:var(--violet);font:26px var(--font-display);padding:12px 16px;transform:rotate(4deg)}
.dropfade-hero .art-sticker span{font:7px var(--font-interface);letter-spacing:.12em}
.dropfade-hero .art-bottom{z-index:3;left:22px;bottom:17px;right:22px;font-size:7px;letter-spacing:.17em}
.dropfade-hero .graffiti-lines{z-index:1;opacity:.57;color:#b59aff}
.dropfade-hero .hero-foot{letter-spacing:.15em}
.reveal-item{transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.motion-enabled .reveal-item:not(.editorial-arrived){opacity:0;transform:translate3d(0,24px,0)}
.motion-enabled .dropfade-hero .hero-art.reveal-item:not(.editorial-arrived){transform:translate3d(0,30px,0) rotate(1deg)}
.motion-enabled .reveal-item.editorial-arrived{opacity:1;transform:translate3d(0,0,0)}
.motion-enabled .hero-mascot{animation:dropfade-float 6s ease-in-out infinite}
@keyframes dropfade-float{0%,100%{translate:0 0}50%{translate:0 -9px}}
.ticker{border-block:1px solid #ffffff16;background:#121116}
.lookbook-heading h2{letter-spacing:.005em}
.editorial-card figure{border-color:#ffffff22}
@media(max-width:760px){
 .dropfade-hero.hero{grid-template-columns:minmax(0,1fr);gap:25px;min-height:0;padding:34px 5% 40px}
 .dropfade-hero .hero-content{padding:0}
 .dropfade-hero .hero-copy h1{font-size:clamp(58px,14.6vw,90px);line-height:.8;margin:25px 0 20px;letter-spacing:-.025em}
 .dropfade-hero .hero-copy>p{font-size:13px;line-height:1.7}
 .dropfade-hero .hero-art{aspect-ratio:.9;max-height:none;min-height:0;box-shadow:8px 8px 0 #8b5cf615}
 .dropfade-hero .hero-photo{object-position:55% center}
 .dropfade-hero .hero-mascot{width:64%;right:-5%;bottom:-2%;max-height:90%}
 .dropfade-hero .hero-shears{left:5%;top:31%;width:16%;height:36%}
 .dropfade-hero .art-top{top:17px;left:17px;font-size:20px}
 .dropfade-hero .art-top small{font-size:6px}
 .dropfade-hero .art-word{font-size:clamp(72px,19vw,104px);bottom:13%}
 .dropfade-hero .art-sticker{right:5%;bottom:10%;font-size:21px;padding:9px 11px}
 .dropfade-hero .art-sticker span{font-size:6px}
 .dropfade-hero .art-bottom{left:15px;right:15px;bottom:12px;font-size:6px}
 .dropfade-hero .hero-foot{font-size:7px}
}
@media(max-width:370px){.dropfade-hero .hero-copy h1{font-size:clamp(51px,14.2vw,57px)}.dropfade-hero .art-word{font-size:69px}.dropfade-hero .art-sticker{font-size:18px;padding:8px}}
@media(prefers-reduced-motion:reduce){.motion-enabled .reveal-item:not(.editorial-arrived){opacity:1;transform:none}.motion-enabled .hero-mascot{animation:none}.reveal-item{transition:none}}

/* DROP FADE reference rebuild — black canvas, magenta ink, compact barber booking */
:root,[data-theme="cutclub"]{
 color-scheme:dark;
 --color-base-100:#08080a;--color-base-200:#111014;--color-base-300:#25222a;
 --color-base-content:#f7f4f8;--color-primary:#d51cf4;--color-primary-content:#fff;
 --color-accent:#d51cf4;--color-accent-content:#fff;--color-secondary:#211328;
 --ink:#08080a;--paper:#f7f4f8;--muted:#aaa5ae;--rule:#ffffff20;
 --violet:#d51cf4;--violet-dim:#2c1034;
 --font-display:'Bebas Neue',Impact,'Arial Narrow',sans-serif;
 --font-body:Helvetica,Arial,sans-serif;
 --radius-selector:.55rem;--radius-field:.6rem;--radius-box:.7rem;
}
body{background:#08080a;color:#f7f4f8;font-family:var(--font-body);overflow-x:hidden}
html{scroll-padding-top:78px}
.dropfade-header{position:sticky;top:0;z-index:30;width:min(100%,540px);height:64px;min-height:64px;margin:0 auto;padding:10px 22px;display:flex;align-items:center;justify-content:space-between;border:0;background:#08080aee;backdrop-filter:blur(18px)}
.dropfade-header .logo{display:flex;align-items:center;color:#fff;text-decoration:none}
.dropfade-header .logo-main{font:25px/.9 var(--font-display);letter-spacing:.055em}
.dropfade-header .logo-main::first-letter{color:var(--violet)}
.dropfade-nav{display:flex;align-items:center;gap:0}
.dropfade-header .team-trigger{width:38px;height:38px;min-height:38px;padding:8px;border:1px solid #ffffff3b;border-radius:50%;color:#fff;background:#ffffff0c;transition:background .2s,border-color .2s,transform .2s}
.dropfade-header .team-trigger svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.dropfade-header .team-trigger:hover{background:#d51cf42b;border-color:#d51cf4;transform:scale(1.04)}
.dropfade-hero{width:min(100%,540px);margin:0 auto;padding:0 20px}
.dropfade-hero .hero-art{position:relative;isolation:isolate;width:100%;height:auto;min-height:0;aspect-ratio:.96;overflow:hidden;border:0;border-radius:0;background:#09090b;box-shadow:none}
.hero-atmosphere{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 52% 49%,#4c0b5f55 0,transparent 55%),radial-gradient(ellipse at 83% 65%,#d51cf42b 0,transparent 34%),linear-gradient(180deg,#09090b 0%,#100b13 58%,#09090b 100%);pointer-events:none}
.hero-atmosphere::after{content:"";position:absolute;inset:0;background-image:url("/assets/dropfade/dropfade-poster.png");background-size:cover;background-position:center;opacity:.28;mix-blend-mode:screen}
.hero-mascot{position:absolute;z-index:1;top:-1%;left:50%;width:105%;height:97%;max-width:none;object-fit:contain;object-position:center top;transform:translateX(-50%);filter:drop-shadow(0 10px 22px #0009);pointer-events:none;will-change:translate}
.hero-copy{position:absolute;z-index:4;left:5%;right:5%;bottom:8%;padding:0;text-align:left}
.hero-copy h1{max-width:none;margin:0;color:#fff;font:clamp(49px,13vw,68px)/.78 var(--font-display);font-weight:400;letter-spacing:.004em;text-transform:uppercase;text-shadow:0 2px 12px #070609,2px 2px 0 #c30fe6}
.hero-copy h1 span{color:#fff}
.hero-brush{display:block;width:86%;height:25px;margin:10px 0 0 1%;overflow:visible}
.hero-brush path{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(1px 2px 0 #d51cf4)}
.motion-control{position:absolute;z-index:8;right:6px;bottom:5px;min-height:28px;padding:0 8px;border:0;color:#aaa;font-size:9px}
.reference-facts.ticker{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;margin:-3px 0 22px;padding:9px 2px 12px;overflow:visible;border:0;border-bottom:1px solid #ffffff28;background:transparent;color:#d9d4dd;font:10px var(--font-body);letter-spacing:.14em}
.reference-facts b{color:var(--violet);font-size:12px}
.booking-section{width:min(100%,540px);margin:0 auto;padding:0 20px 92px}
.booking-kicker{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:#f8f5f8;font:15px var(--font-display);letter-spacing:.08em;text-transform:uppercase}
.booking-kicker>span:first-child{color:var(--violet)}
.kicker-rule{height:1px;flex:1;background:linear-gradient(90deg,#d51cf4a8,transparent)}
.booking-section .steps-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 16px;padding:0;border:0;background:none}
.booking-section .steps-bar button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:34px;padding:5px 6px;border:1px solid #ffffff16;border-radius:5px;background:#121014;color:#8f8994;font:10px var(--font-body);letter-spacing:.04em;transition:background .2s,border-color .2s,color .2s,transform .2s}
.booking-section .steps-bar button b{font-size:10px;font-weight:500}
.booking-section .steps-bar button.selected,.booking-section .steps-bar button.done{border-color:#d51cf4b8;background:#291331;color:#fff}
.booking-section .steps-bar button.selected:first-letter{color:var(--violet)}
.booking-section .booking-layout{display:block;width:100%;min-width:0}
.booking-section .booking-main{width:100%;min-width:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
#booking-body{min-width:0;padding:0;outline:0}
#services{min-width:0}
#services .step-title,.staff-title{margin:0 0 4px;color:#fff;font:26px/.94 var(--font-display);letter-spacing:.03em;text-transform:uppercase}
#services>.muted{margin:0 0 12px;color:#a29ca8;font-size:10px;line-height:1.45}
.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.service{position:relative;isolation:isolate;display:block;width:100%;min-width:0;min-height:104px;padding:13px 11px 12px;overflow:hidden;border:1px solid #ffffff2a;border-radius:9px;background:#18131c;color:#fff;text-align:left;box-shadow:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.service::before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center 40%;filter:saturate(.83);opacity:.66;transition:transform .45s,opacity .3s}
.service::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#100b14eb 0%,#100b14b8 56%,#100b1450 100%),linear-gradient(0deg,#09090bbb,transparent 74%)}
.service[data-service="cut"]::before{background-image:url("/assets/dropfade/barber-fade.jpg")}
.service[data-service="fade"]::before{background-image:url("/assets/dropfade/barber-scissors.jpg")}
.service[data-service="beard"]::before{background-image:url("/assets/dropfade/barber-beard.jpg")}
.service[data-service="combo"]::before{background-image:url("/assets/dropfade/barber-ritual.jpg")}
.service[data-service="color"]::before{background-image:url("/assets/dropfade/dropfade-poster.png")}
.service:hover{transform:translateY(-2px);border-color:#d51cf4a6;box-shadow:0 8px 22px #d51cf422}
.service:hover::before{transform:scale(1.04);opacity:.8}
.service.selected{border-color:#ef55ff;box-shadow:inset 0 0 0 1px #d51cf4,0 0 20px #d51cf42b}
.service.selected::after{background:linear-gradient(90deg,#1a0d20e8 0%,#150b19ad 62%,#10091366 100%),linear-gradient(0deg,#08080bdc,transparent 82%)}
.service-copy{position:relative;z-index:2;display:flex;min-height:76px;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:3px;padding-right:17px}
.service-copy strong{max-width:100%;color:#fff;font:17px/.98 var(--font-display);letter-spacing:.025em;text-transform:uppercase;text-shadow:0 1px 5px #000}
.service-copy p{display:-webkit-box;max-width:100%;margin:2px 0 0;overflow:hidden;color:#d5cdd7;font-size:9px;line-height:1.25;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.service-copy small{color:#d2c9d4;font-size:8px;letter-spacing:.05em}
.service-copy .price{position:absolute;right:0;bottom:0;color:#fff;font:18px/1 var(--font-display)}
.service-icon{position:absolute;z-index:2;top:8px;right:8px;display:grid;width:22px;height:22px;place-items:center;border:1px solid #ffffff3a;border-radius:50%;background:#09090b77;color:#fff;font-size:11px}
.service.selected .service-icon{border-color:#ed56ff;background:var(--violet);color:#fff}
.selection-dot{position:absolute;right:8px;bottom:9px;width:10px;height:10px;border:1px solid #fff8;border-radius:50%;background:#08080b66}
.service.selected .selection-dot{border-color:#f49cff;background:var(--violet);box-shadow:0 0 9px #d51cf4}
.services-grid::after{content:"";min-height:104px;border:1px solid #ffffff12;border-radius:9px;background:linear-gradient(135deg,#252329,#17161a)}
.staff-section{margin:19px 0 0;padding-top:13px;border-top:1px solid #ffffff20}
.staff-title{font-size:19px}
.staff-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.staff-option{display:flex;align-items:center;gap:9px;min-width:0;min-height:49px;padding:7px 10px;border:1px solid #ffffff25;border-radius:30px;background:#17151a;color:#fff;text-align:left;transition:background .2s,border-color .2s,transform .2s}
.staff-option:hover{transform:translateY(-1px);border-color:#d51cf4}
.staff-option.selected{border-color:#e64aff;background:#2a1231;box-shadow:0 0 15px #d51cf420}
.avatar-letter{display:grid;flex:none;width:32px;height:32px;place-items:center;border:1px solid #fff;border-radius:50%;background:#f5f1f7;color:#151018;font:18px var(--font-display)}
.staff-option>span:last-child{display:flex;min-width:0;flex-direction:column;gap:2px;font-size:11px;font-weight:700}
.staff-option small{overflow:hidden;color:#aaa3ae;font-size:8px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}
#summary{display:none}
.booking-dock{position:fixed;right:max(14px,calc((100vw - 500px)/2));bottom:calc(13px + env(safe-area-inset-bottom));left:max(14px,calc((100vw - 500px)/2));z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px 9px 17px;border:1px solid #ffffff35;border-radius:50px;background:#26222bf0;box-shadow:0 12px 35px #000a,0 0 22px #d51cf422;backdrop-filter:blur(18px)}
.booking-dock>div{display:flex;min-width:0;flex-direction:column;gap:2px}
.booking-dock #dock-service{overflow:hidden;color:#f7f2f8;font:15px var(--font-display);text-overflow:ellipsis;white-space:nowrap}
.booking-dock #dock-price{color:#c5bdc8;font-size:10px}
.booking-dock .btn{min-height:43px;padding:0 17px;border:0;border-radius:30px;background:var(--violet);color:#fff;font-size:11px;white-space:nowrap;transition:transform .2s,box-shadow .2s}
.booking-dock .btn:hover{transform:scale(1.025);box-shadow:0 0 18px #d51cf477}
.dropfade-footer{position:relative;display:flex;align-items:center;gap:10px;width:min(100%,540px);min-height:83px;margin:0 auto;padding:17px 22px calc(19px + env(safe-area-inset-bottom));overflow:hidden;border-top:1px solid #ffffff24;background:radial-gradient(ellipse at 12% 50%,#d51cf421,transparent 36%),#09090b}
.dropfade-footer>img{width:38px;height:37px;object-fit:contain;transform:rotate(-25deg);opacity:.9}
.dropfade-footer>div{display:flex;flex-direction:column;gap:2px}
.dropfade-footer strong{font:19px var(--font-display);letter-spacing:.04em}
.dropfade-footer>div span,.footer-team{color:#aaa3ae;font-size:8px;letter-spacing:.1em}
.footer-team{margin-left:auto;color:#eee;text-decoration:none}
.footer-team span{color:var(--violet);font-size:13px}
.dropfade-hero .reveal-item{transition:opacity .65s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.motion-enabled .dropfade-hero .reveal-item:not(.editorial-arrived){opacity:0;transform:translateY(13px)}
.motion-enabled .dropfade-hero .reveal-item.editorial-arrived{opacity:1;transform:translateY(0)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.dropfade-hero .hero-art:hover .hero-mascot{filter:drop-shadow(0 10px 28px #d51cf43b)}}
@media(max-width:370px){.dropfade-header{padding-inline:16px}.dropfade-hero,.booking-section{padding-inline:15px}.hero-copy h1{font-size:47px}.service{min-height:99px;padding-inline:9px}.service-copy strong{font-size:15px}.services-grid::after{min-height:99px}.staff-options{gap:6px}.staff-option{gap:6px;padding-inline:7px}}
@media(min-width:760px){.dropfade-header{height:74px;min-height:74px}.dropfade-hero{padding-inline:30px}.dropfade-hero .hero-art{aspect-ratio:.94}.hero-copy h1{font-size:68px}.booking-section{padding-inline:30px}.dropfade-footer{padding-inline:30px}}
@media(prefers-reduced-motion:reduce){.dropfade-hero .reveal-item{opacity:1!important;transform:none!important;transition:none!important}.hero-mascot,.service,.staff-option,.booking-dock .btn{transition:none!important;animation:none!important}}

/* Final font/color overrides after all legacy responsive styles. */
:root{--font-display:'Archivo',Arial,sans-serif;--font-body:'Archivo',Arial,sans-serif;--font-interface:'Archivo',Arial,sans-serif}
body,#customer,#team,dialog{font-family:'Archivo',Arial,sans-serif;color:#fff}
#customer :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend),#team :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend),dialog :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend){color:#fff!important}
#customer :is(input,select,textarea),#team :is(input,select,textarea),dialog :is(input,select,textarea){color:#fff;font-family:'Archivo',Arial,sans-serif}
#customer :is(input,select,textarea)::placeholder,#team :is(input,select,textarea)::placeholder,dialog :is(input,select,textarea)::placeholder{color:#fff9}
#customer .hero-copy h1,#customer .step-title,#customer .staff-title,#customer .service-copy strong,#customer .dropfade-header .logo-main,#customer .booking-dock #dock-service,#customer .dropfade-footer strong{font-weight:800}
#customer .avatar-letter,#team .avatar-letter{background:#211329;color:#fff!important}
/* DROP FADE — PDF art direction, responsive composition, DaisyUI booking components */
:root,[data-theme="cutclub"]{--font-display:'Archivo',Arial,sans-serif;--font-body:'Archivo',Arial,sans-serif;--font-interface:'Archivo',Arial,sans-serif;--violet:#941dff;--color-primary:#941dff;--color-accent:#941dff}
html,body{background:#070709;color:#fff;font-family:'Archivo',Arial,sans-serif}body{overflow-x:clip}#customer,#team,dialog{font-family:'Archivo',Arial,sans-serif;color:#fff}
#customer :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend),#team :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend),dialog :is(h1,h2,h3,h4,p,span,b,strong,small,label,a,button,em,i,li,dt,dd,legend){color:#fff!important}
#customer :is(input,select,textarea),#team :is(input,select,textarea),dialog :is(input,select,textarea){color:#fff;font-family:'Archivo',Arial,sans-serif}#customer :is(input,select,textarea)::placeholder,#team :is(input,select,textarea)::placeholder,dialog :is(input,select,textarea)::placeholder{color:#fff9}
#customer{width:100%;min-height:100vh}.dropfade-header{position:relative;top:auto;width:min(100%,540px);height:62px;min-height:62px;margin:0 auto;padding:8px 7%;background:#070709;border:0}
.dropfade-header .logo{display:flex;align-items:center;gap:8px;color:#fff}.brand-mark{font:900 19px/.9 'Archivo',sans-serif;letter-spacing:-.1em;transform:scaleX(.88);color:#fff}.dropfade-header .logo-main{font:800 18px/.9 'Archivo',sans-serif;letter-spacing:.04em;color:#fff}.dropfade-header .logo-main::first-letter{color:#fff}
.dropfade-header .team-trigger{width:32px;height:32px;min-height:32px;padding:6px;border:1px solid #fff;border-radius:50%;color:#fff;background:transparent}.dropfade-header .team-trigger svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.dropfade-hero{width:min(100%,540px);margin:0 auto;padding:0 7%;display:block}.dropfade-hero .hero-art{position:relative;width:100%;height:auto;min-height:0;aspect-ratio:1.02;overflow:hidden;border:0;border-radius:0;background:#070709;box-shadow:none;isolation:isolate}.hero-atmosphere{position:absolute;z-index:-1;inset:0;background:#08080a;pointer-events:none}.hero-atmosphere::after{content:"";position:absolute;inset:0;background-image:url('/assets/dropfade/dropfade-poster.png');background-size:cover;background-position:center;opacity:.15;mix-blend-mode:screen}.hero-monogram{position:absolute;left:-12%;top:12%;font:900 clamp(180px,64vw,310px)/.8 'Archivo',sans-serif;letter-spacing:-.12em;color:#fff;opacity:.11;transform:scaleX(.8)}
.dropfade-hero .hero-mascot{position:absolute;z-index:1;top:-7%;left:50%;width:125%;height:110%;max-width:none;object-fit:contain;object-position:50% 3%;transform:translateX(-50%);filter:drop-shadow(0 8px 18px #0009);pointer-events:none;will-change:transform}.dropfade-hero .hero-copy{position:absolute;z-index:4;left:0;right:0;bottom:5%;padding:0;text-align:left}.dropfade-hero .hero-copy h1{max-width:none;margin:0;color:#fff;font:900 clamp(34px,9.6vw,51px)/.92 'Archivo',sans-serif;letter-spacing:-.035em;text-transform:uppercase;text-shadow:0 2px 9px #000b}.dropfade-hero .hero-copy h1 span{color:#fff}.hero-brush{display:none}.dropfade-hero .hero-brush{display:block;width:96%;height:24px;margin:5px 0 0;overflow:visible}.dropfade-hero .hero-brush path{fill:none;stroke:#fff;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 2px #fff);stroke-dasharray:3 1}.hero-subline{width:100%;margin:2px auto 0;padding:0 7%;font:500 clamp(11px,3vw,15px)/1.3 'Archivo',sans-serif;text-align:left;letter-spacing:.005em}
.booking-section{width:min(100%,540px);margin:0 auto;padding:clamp(49px,13vw,86px) 7% 12px}.booking-section .reference-steps{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:0 0 13px;padding:0;background:none;border:0;overflow:visible}.reference-steps button{position:relative;min-width:0;min-height:34px;padding:5px 3px;border:0;background:transparent;color:#fff;font:500 clamp(10px,2.7vw,13px)/1 'Archivo',sans-serif;white-space:nowrap;text-align:center}.reference-steps button.selected::before{content:"";position:absolute;z-index:-1;inset:-4px -3px;border:2px solid #fff;border-radius:50% 44% 49% 46%;transform:rotate(-3deg);filter:drop-shadow(0 0 1px #fff)}.reference-steps button:disabled{opacity:.68}
.booking-section .booking-layout{display:flex;flex-direction:column;gap:0;width:100%;min-width:0}.booking-section .booking-main{order:0;width:100%;min-width:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.booking-section #booking-body{min-width:0;padding:0;outline:0}#services{min-width:0}#services .step-title,#services>.muted{display:none!important}
.booking-section .services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.booking-section .services-grid .service,.booking-section .services-grid .service:nth-child(n){position:relative;isolation:isolate;display:block!important;grid-column:auto!important;width:100%;min-width:0;height:auto;min-height:0;aspect-ratio:1.91;padding:8px 9px 7px;overflow:hidden;border:1px solid #ffffff20;border-radius:6px;background:#160c21;color:#fff;text-align:left;box-shadow:none;transition:transform .2s,border-color .2s,box-shadow .2s}.service::before{content:"";position:absolute;z-index:-2;inset:0;background-size:cover;background-position:70% 42%;filter:saturate(.72) contrast(1.06);opacity:.68;transition:transform .45s,opacity .25s}.service[data-service="cut"]::before{background-image:url('/assets/dropfade/barber-scissors.jpg')}.service[data-service="beard"]::before{background-image:url('/assets/dropfade/barber-beard.jpg')}.service[data-service="fade"]::before{background-image:url('/assets/dropfade/barber-fade.jpg')}.service[data-service="combo"]::before{background-image:url('/assets/dropfade/barber-ritual.jpg')}.service[data-service="color"]::before{background-image:url('/assets/dropfade/barber-ritual.jpg')}.service::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#7715cfe8 0%,#6410b5c9 38%,#210c36a8 69%,#09090b55 100%),linear-gradient(0deg,#070709a8,transparent 55%)}.service:hover{transform:translateY(-2px);border-color:#fff;box-shadow:0 4px 16px #941dff60}.service:hover::before{transform:scale(1.045);opacity:.82}.service.selected{border:2px solid #fff;box-shadow:0 0 14px #941dff80}.service.selected::after{background:linear-gradient(90deg,#8d19efed 0%,#7211cdd1 42%,#230b38a8 73%,#09090b44 100%)}
.service-copy{position:absolute;z-index:2;inset:8px 9px 7px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto 1fr auto;align-content:start;align-items:end;justify-content:stretch;gap:2px;padding:0}.service-copy strong{grid-column:1/-1;max-width:100%;color:#fff;font:800 clamp(11px,3.1vw,16px)/1 'Archivo',sans-serif;letter-spacing:-.015em;text-transform:none;text-shadow:0 1px 3px #0009}.service-copy p{grid-column:1/-1;max-width:94%;margin:1px 0 0;color:#fff;font:400 clamp(8px,2.1vw,10px)/1.1 'Archivo',sans-serif;text-shadow:0 1px 3px #000a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.service-copy small{grid-column:1;grid-row:4;align-self:end;color:#fff;font:500 clamp(8px,2vw,10px)/1 'Archivo',sans-serif;text-shadow:0 1px 3px #000a}.service-copy .price{grid-column:2;grid-row:4;position:static;align-self:end;color:#fff;font:800 clamp(14px,3.6vw,19px)/1 'Archivo',sans-serif;text-shadow:0 1px 3px #000b}.service-icon{position:absolute;z-index:3;left:7px;bottom:6px;display:block;width:13px;height:13px;background:none;border:0}.service-icon svg{display:block;width:13px;height:13px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.service-copy small{padding-left:16px}.selection-dot{display:none}.booking-section .services-grid::after{content:"";display:block;grid-column:auto;min-height:0;aspect-ratio:1.91;border:0;border-radius:6px;background:#414143}
.staff-section{position:relative;margin:21px 0 0;padding:0;border:0}.staff-section .staff-title{display:block!important;margin:0 0 9px;color:#fff;font:800 clamp(13px,3.5vw,17px)/1.1 'Archivo',sans-serif;letter-spacing:.01em;text-transform:uppercase}.staff-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.staff-option{position:relative;display:flex;align-items:center;gap:8px;min-width:0;min-height:44px;padding:5px 10px;border:0;border-radius:28px;background:#525254;color:#fff;text-align:left;transition:transform .2s,background .2s,box-shadow .2s}.staff-option:hover{transform:translateY(-2px);background:#66666a}.staff-option.selected{background:#5a5a5d;box-shadow:inset 0 0 0 1.5px #fff}.avatar-letter{flex:none;width:30px;height:30px;padding:0;border:0;border-radius:50%;background:#fff;color:#fff;font-size:0}.staff-option>span:last-of-type{display:flex;min-width:0;flex-direction:column;gap:2px;font:700 clamp(10px,2.7vw,13px)/1.05 'Archivo',sans-serif;white-space:nowrap}.staff-option small{color:#fff;font:italic 500 clamp(8px,2.2vw,10px)/1.1 'Archivo',sans-serif}.staff-sparkle{position:absolute;right:-5px;top:-10px;width:27px;height:21px;fill:#fff;pointer-events:none}
#summary{display:block;width:100%;margin:13px 0 0}.summary-box{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:2px 8px;width:100%;min-height:48px;padding:8px 12px;border:0;border-radius:28px;background:#bdbdc0;color:#fff;box-shadow:none}.booking-line{display:flex;flex-direction:column;grid-column:1;grid-row:1/3;gap:1px;min-width:0}.booking-line>span{overflow:hidden;color:#fff;font:700 12px/1.15 'Archivo',sans-serif;text-overflow:ellipsis;white-space:nowrap}.booking-line>strong{color:#fff;font:900 22px/1 'Archivo',sans-serif}.booking-meta,.booking-success{grid-column:1/-1;margin:0;color:#fff;font:500 10px/1.3 'Archivo',sans-serif}.summary-box .full{grid-column:2;grid-row:1/3;min-height:32px;padding:0 14px;border:0;border-radius:24px;background:#941dff;color:#fff;font:700 10px/1 'Archivo',sans-serif;white-space:nowrap}.summary-box .full:disabled{opacity:.5}.booking-success{grid-row:1/-1;margin:0 0 4px}
.reference-flourish{position:relative;display:block;height:90px;margin:8px 0 -1px;overflow:hidden}.reference-flourish>img{position:absolute;left:-12px;bottom:-47px;width:128px;height:130px;object-fit:contain;transform:rotate(-16deg);filter:drop-shadow(2px 3px 0 #fff)}.reference-flourish>svg{position:absolute;right:3%;top:0;width:62%;height:72px;overflow:visible}.reference-flourish>svg path{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px #fff)}.reference-flourish>span{position:absolute;right:4%;bottom:3px;color:#fff;font:italic 700 12px/1 'Archivo',sans-serif;transform:rotate(-7deg)}
.dropfade-footer.reference-footer{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;width:min(100%,540px);min-height:76px;margin:0 auto;padding:11px 7% calc(13px + env(safe-area-inset-bottom));border-top:1px solid #fff;background:#070709}.footer-monogram{font:900 25px/.85 'Archivo',sans-serif;letter-spacing:-.12em;transform:scaleX(.78);color:#fff}.footer-address,.footer-contact{display:flex;flex-direction:column;gap:2px}.footer-address strong{color:#fff;font:700 10px/1.1 'Archivo',sans-serif}.footer-address span{color:#fff;font:400 9px/1.1 'Archivo',sans-serif}.footer-contact{gap:4px}.footer-contact a{display:flex;align-items:center;gap:5px;color:#fff;text-decoration:none;font:400 9px/1.1 'Archivo',sans-serif;white-space:nowrap}.footer-contact a:first-child{font-weight:700}.footer-contact svg{width:12px;height:12px;flex:none;fill:none;stroke:#fff;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
#booking-dock{display:none!important}.dropfade-hero .reveal-item{transition:opacity .6s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.motion-enabled .dropfade-hero .reveal-item:not(.editorial-arrived){opacity:0;transform:translateY(14px)}.motion-enabled .dropfade-hero .reveal-item.editorial-arrived{opacity:1;transform:translateY(0)}.motion-enabled .hero-mascot{animation:dropfade-float 6s ease-in-out infinite}@keyframes dropfade-float{0%,100%{translate:0 0}50%{translate:0 -5px}}
@media(min-width:600px){.dropfade-hero,.booking-section,.dropfade-footer.reference-footer{padding-left:30px;padding-right:30px}.dropfade-hero .hero-art{aspect-ratio:1.1}.dropfade-hero .hero-copy h1{font-size:54px}.booking-section{padding-top:55px}.booking-section .services-grid{gap:14px}.service-copy strong{font-size:16px}.staff-option{min-height:56px}.dropfade-footer.reference-footer{grid-template-columns:45px minmax(0,1fr) auto}}
@media(max-width:370px){.dropfade-header{padding-inline:16px}.dropfade-hero,.booking-section{padding-left:16px;padding-right:16px}.dropfade-hero .hero-art{aspect-ratio:.98}.dropfade-hero .hero-copy h1{font-size:32px}.booking-section .services-grid{gap:7px}.booking-section .services-grid .service,.booking-section .services-grid::after{aspect-ratio:1.78}.service-copy{inset:7px}.service-copy strong{font-size:10px}.service-copy p{font-size:7px}.staff-options{gap:6px}.staff-option{padding-inline:7px}.dropfade-footer.reference-footer{padding-left:16px;padding-right:16px;grid-template-columns:30px minmax(0,1fr) auto}.footer-contact a{font-size:8px}}
@media(prefers-reduced-motion:reduce){.dropfade-hero .reveal-item,.hero-mascot,.service,.staff-option{transition:none!important;animation:none!important}.motion-enabled .dropfade-hero .reveal-item{opacity:1!important;transform:none!important}}
/* Use the PDF’s exported wordmark, lock, monogram, and hand-painted assets. */
.dropfade-header .logo{gap:0}.dropfade-header .reference-wordmark{display:block;width:clamp(116px,34vw,170px);height:auto;object-fit:contain}.dropfade-header .team-trigger{padding:0;border:0;background:transparent}.dropfade-header .team-trigger img{display:block;width:34px;height:34px;object-fit:contain;border-radius:50%}.hero-atmosphere::after{display:none}.hero-atmosphere .hero-monogram{position:absolute;left:-25%;top:8%;width:68%;height:75%;font-size:0;object-fit:contain;opacity:.95}.dropfade-hero .hero-mascot{z-index:2}.dropfade-hero .hero-copy{z-index:4}.dropfade-hero .hero-brush{display:block;width:100%;height:auto;max-height:30px;margin:4px 0 0;object-fit:contain;object-position:left center}.dropfade-hero .hero-copy h1{font-stretch:112.5%}
.reference-flourish{height:auto;min-height:0;margin:7px 0 0;overflow:hidden}.reference-flourish .reference-loop-arrow{display:block;width:100%;height:auto;object-fit:contain;object-position:center top}.dropfade-footer.reference-footer{border-top:0}.dropfade-footer.reference-footer .footer-monogram{display:block;width:36px;height:39px;object-fit:contain}.footer-contact img{width:12px;height:12px;object-fit:contain;mix-blend-mode:screen}.footer-address strong{font-weight:700}.footer-contact a:first-child{font-weight:700}
.booking-meta{display:none}.booking-section .staff-section .staff-title{margin-top:0}.reference-steps button.selected{z-index:0}.reference-steps button:focus-visible,.service:focus-visible,.staff-option:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:420px){.dropfade-header .reference-wordmark{width:34vw;max-width:139px}.dropfade-header .team-trigger img{width:36px;height:36px}.hero-atmosphere .hero-monogram{left:-25%;top:10%;width:72%;height:75%}.dropfade-hero .hero-mascot{top:-8%;width:132%;height:110%}.dropfade-hero .hero-copy h1{font-size:clamp(31px,9.2vw,37px);line-height:.96;letter-spacing:-.025em}.dropfade-hero .hero-art{aspect-ratio:1.02}.booking-section{padding-top:clamp(42px,12vw,54px)}.reference-flourish{margin-top:4px}.dropfade-footer.reference-footer{padding-top:8px}}
/* Precise mobile scale from the 720px reference artboard. */
.dropfade-header .reference-wordmark{width:30vw;min-width:105px;max-width:170px}.dropfade-hero .hero-art{aspect-ratio:.82}.dropfade-hero .hero-mascot{top:-7%;width:125%;height:108%;object-position:50% 3%}.dropfade-hero .hero-copy{bottom:0;left:0;right:0}.dropfade-hero .hero-copy h1{font-size:clamp(32px,9.2vw,40px);line-height:.92;letter-spacing:-.025em}.dropfade-hero .hero-subline{display:block;width:auto;margin:5px 0 0;padding:0;color:#fff;font:500 12px/1.2 'Archivo',sans-serif;text-align:left}.dropfade-hero .hero-brush{width:60%;height:auto;max-height:none;margin:3px 0 0 -1%;object-fit:contain}
.booking-section{padding-top:20px}.booking-section .reference-steps{gap:8px;margin-bottom:10px}.reference-steps button{min-height:21px;padding:2px 0;font-size:12px}.reference-steps button.selected::before{inset:-2px -3px;border-width:2px}.booking-section .services-grid{gap:10px}.booking-section .services-grid .service,.booking-section .services-grid .service:nth-child(n){aspect-ratio:1.91;padding:0;border:0;border-radius:7px;background-color:#40105e;background-size:100% 100%;background-position:center;background-repeat:no-repeat;box-shadow:none}.booking-section .services-grid .service::before,.booking-section .services-grid .service::after{display:none!important}.booking-section .services-grid .service[data-service="cut"]{background-image:url('/assets/dropfade/reference-service-1.jpg')}.booking-section .services-grid .service[data-service="beard"]{background-image:url('/assets/dropfade/reference-service-2.jpg')}.booking-section .services-grid .service[data-service="fade"]{background-image:url('/assets/dropfade/reference-service-3.jpg')}.booking-section .services-grid .service[data-service="combo"]{background-image:url('/assets/dropfade/reference-service-4.jpg')}.booking-section .services-grid .service[data-service="color"]{background-image:url('/assets/dropfade/reference-service-5.jpg')}.booking-section .services-grid .service.selected{outline:2px solid #fff;outline-offset:-2px;box-shadow:0 0 12px #941dff80}.booking-section .services-grid .service:hover{transform:translateY(-1px);box-shadow:0 4px 14px #941dff60}.service-copy,.service-icon,.selection-dot{opacity:0;pointer-events:none}.booking-section .services-grid::after{aspect-ratio:1.91;min-height:0;background:#414143;border:0;border-radius:7px}.staff-section{margin-top:15px}.staff-section .staff-title{margin-bottom:9px;font-size:clamp(13px,3.5vw,16px)}.staff-option{min-height:34px;padding:4px 8px;gap:7px;background:#535355}.avatar-letter{width:26px;height:26px}.staff-option>span:last-of-type{font-size:12px}.staff-option small{font-size:9px}.staff-sparkle{right:-2px;top:-10px;width:25px;height:20px}
#summary{margin-top:13px}.summary-box{min-height:49px;padding:7px 10px 7px 19px;border:1px solid #fff;border-radius:30px;background:#4e4e50;gap:1px 8px}.booking-line>span{font-size:12px;line-height:1.15}.booking-line>strong{font-size:23px;line-height:1}.summary-box .full{min-height:32px;padding:0 15px;border-radius:22px;background:#c900ee;font-size:11px;text-transform:uppercase}.booking-meta{display:none}
.reference-flourish{position:relative;height:66px;margin:0;overflow:hidden}.reference-flourish .reference-loop-arrow{position:absolute;right:0;top:0;width:46%;height:auto;max-height:66px;margin:0;object-fit:contain;object-position:top right}.reference-flourish::before{content:"";position:absolute;z-index:1;left:-3%;bottom:-4px;width:49%;height:65px;background:url('/assets/dropfade/dropfade-shears.png') left bottom/contain no-repeat;pointer-events:none}.dropfade-footer.reference-footer{min-height:45px;padding:6px 7% calc(7px + env(safe-area-inset-bottom));grid-template-columns:33px minmax(0,1fr) auto;gap:8px;border-top:1px solid #fff}.dropfade-footer.reference-footer .footer-monogram{width:32px;height:34px}.footer-address{gap:1px}.footer-address strong{font-size:10px}.footer-address span{font-size:9px}.footer-contact{gap:3px}.footer-contact a{gap:4px;font-size:9px}.footer-contact img{width:12px;height:12px}
@media(max-width:420px){.dropfade-header .reference-wordmark{width:30vw;max-width:128px}.dropfade-hero .hero-art{aspect-ratio:.82}.dropfade-hero .hero-mascot{top:-7%;width:125%;height:108%}.dropfade-hero .hero-copy h1{font-size:clamp(32px,9.2vw,38px)}.booking-section{padding-top:20px}.booking-section .services-grid{gap:10px}.booking-section .services-grid .service,.booking-section .services-grid::after{aspect-ratio:1.91}.staff-options{gap:10px}.staff-option{min-height:34px}.reference-flourish{height:66px}.dropfade-footer.reference-footer{min-height:45px;padding:6px 7% calc(7px + env(safe-area-inset-bottom));grid-template-columns:33px minmax(0,1fr) auto}.footer-contact a{font-size:9px}}
.dropfade-hero .hero-mascot{top:-2%;height:104%}.dropfade-hero .hero-copy{bottom:0}.dropfade-hero .hero-brush{width:60%;max-height:none}.booking-section .reference-steps{margin-bottom:10px}.reference-flourish .reference-loop-arrow{right:15%;width:46%}.dropfade-footer.reference-footer{grid-template-columns:32px minmax(0,1fr) auto}.booking-line>span,.booking-line>strong{font-stretch:112.5%}
@media(max-width:370px){.dropfade-footer.reference-footer{grid-template-columns:28px minmax(0,1fr);row-gap:4px;padding:6px 16px calc(7px + env(safe-area-inset-bottom))}.dropfade-footer.reference-footer .footer-monogram{grid-column:1;grid-row:1/3;width:27px;height:30px}.dropfade-footer.reference-footer .footer-address{grid-column:2;grid-row:1}.dropfade-footer.reference-footer .footer-contact{grid-column:2;grid-row:2;display:flex;flex-direction:row;flex-wrap:wrap;gap:3px 9px}.dropfade-footer.reference-footer .footer-contact a{font-size:8px}}
.reference-flourish{margin-top:-7px}.reference-flourish::before{transform:translateY(30px)}

/* User supplied hero mark: solid white, layered over the mascot. */
.hero-atmosphere{z-index:3;background:transparent}
.hero-atmosphere .hero-monogram{left:-8%;top:3.5%;width:41%;height:auto;object-fit:contain;opacity:1;z-index:0;filter:brightness(0) invert(1)}
.reference-steps button.selected::before{content:none!important;display:none!important}
.reference-steps button.selected{box-shadow:inset 0 -2px #941dff;color:#fff!important;font-weight:800}

/* Mobile-first refinements across customer booking, team, and dialogs. */
@media(max-width:600px){
 html{scroll-padding-top:68px;-webkit-text-size-adjust:100%}
 body{min-width:320px;overflow-x:clip}
 .dropfade-header{width:100%;padding-inline:clamp(16px,6.8vw,30px)}
 .dropfade-hero{width:100%;padding-inline:clamp(16px,6.8vw,30px)}
 .dropfade-hero .hero-art{aspect-ratio:.91}
 .hero-atmosphere .hero-monogram{left:-7%;top:3.5%;width:41%;height:auto}
 .dropfade-hero .hero-copy{left:0;right:0;bottom:0}
 .booking-section{width:100%;padding:clamp(18px,5vw,28px) clamp(16px,6.8vw,30px) 18px}
 .booking-section .reference-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(3px,1.6vw,8px)}
 .reference-steps button{min-width:0;font-size:clamp(10px,3.05vw,13px);letter-spacing:-.02em}
 .booking-section .services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(7px,2.2vw,11px)}
 .booking-section .services-grid .service,.booking-section .services-grid .service:nth-child(n){grid-column:auto!important;min-width:0;aspect-ratio:1.91}
 .booking-section .services-grid::after{min-width:0;aspect-ratio:1.91}
 #booking-body,.booking-layout,.booking-main,.calendar-panel,.form-grid,.slots{min-width:0;max-width:100%}
 .calendar-grid{padding-inline:2px;gap:clamp(2px,.8vw,5px)}
 .calendar-grid small{min-width:0}
 .day{min-width:0;width:100%;min-height:0;aspect-ratio:1}
 .slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .slot{min-width:0;min-height:44px;padding-inline:3px;font-size:clamp(10px,3vw,12px)}
 .staff-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .staff-option{min-width:0}
 .staff-option>span:last-child{overflow-wrap:anywhere}
 .dropfade-footer.reference-footer{width:100%;grid-template-columns:32px minmax(0,1fr) minmax(0,auto);padding-inline:clamp(16px,6.8vw,30px);gap:7px}
 .footer-contact{min-width:0;max-width:52vw}
 .footer-contact a{min-width:0;overflow-wrap:anywhere}
 #team{width:100%;min-width:0;padding:clamp(18px,5vw,30px) clamp(16px,5vw,28px) calc(40px + env(safe-area-inset-bottom))}
 .team-top,.team-top>div,.team-actions,#team-content,.team-admin,.admin-heading,.employee-form,.team-user-row{min-width:0;max-width:100%}
 .team-top{display:flex;flex-direction:column;align-items:stretch}
 .team-top h1{font-size:clamp(34px,10vw,52px);overflow-wrap:anywhere}
 .team-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,135px),1fr));gap:8px}
 .team-actions .btn{min-width:0;white-space:normal}
 .stats-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 .stat-box:last-child{grid-column:1/-1}
 .agenda-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .agenda-controls>*{min-width:0}
 .agenda-controls label{grid-column:1/-1}
 .agenda-controls .btn{min-height:42px}
 .agenda-controls select{grid-column:1/-1}
 .week-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
 .week-grid{grid-template-columns:repeat(7,minmax(168px,1fr));width:max-content;min-width:100%}
 .week-day{scroll-snap-align:start}
 .team-admin{padding:clamp(14px,4vw,20px);overflow:hidden}
 .admin-heading{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
 .employee-form{grid-template-columns:minmax(0,1fr);gap:12px;padding:12px}
 .employee-form>*{min-width:0}
 .password-create{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}
 .password-create .btn{min-width:0;padding-inline:10px}
 .created-credentials{overflow-wrap:anywhere}
 .created-credentials>div{grid-template-columns:70px minmax(0,1fr) auto}
 .team-user-row{grid-template-columns:30px minmax(0,1fr);gap:8px}
 .team-user-row .permission-switch,.team-user-row .active-switch{grid-column:2}
 dialog{width:calc(100vw - 24px);max-width:430px;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;padding:22px 17px calc(18px + env(safe-area-inset-bottom));overscroll-behavior:contain}
 dialog form .btn,dialog button[type=submit]{min-height:48px}
}
@media(max-width:370px){
 .dropfade-hero .hero-art{aspect-ratio:.86}
 .booking-section{padding-inline:14px}
 .booking-section .reference-steps{gap:2px}
 .reference-steps button{font-size:10px}
 .booking-section .services-grid{gap:7px}
 .staff-options{grid-template-columns:minmax(0,1fr)}
 .stats-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .footer-contact{max-width:48vw}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Let the hero artwork breathe into the page instead of clipping it to a card. */
.dropfade-hero .hero-art{overflow:visible;background:transparent}
.dropfade-hero .hero-background{position:absolute;top:0;left:-12%;z-index:1;width:124%;height:88%;max-width:none;object-fit:contain;object-position:center;transform:scale(1.38);transform-origin:center;pointer-events:none}
.hero-atmosphere{overflow:visible;background:transparent}
@media(max-width:600px){
 .dropfade-hero .hero-art{width:100vw;max-width:none;margin-left:calc(50% - 50vw);overflow:visible;background:transparent}
 .dropfade-hero .hero-copy{left:clamp(16px,6.8vw,30px);right:clamp(16px,6.8vw,30px)}
 .hero-atmosphere .hero-monogram{left:0;top:3.5%;width:35.5vw;height:auto}
 .dropfade-hero .hero-mascot{left:52%}
}
.dropfade-header .team-trigger{box-sizing:border-box;display:grid;flex:0 0 40px;width:40px!important;height:40px!important;min-width:40px;max-width:40px;min-height:40px!important;max-height:40px;aspect-ratio:1/1;padding:0;place-items:center;appearance:none;border:1px solid #fff;border-radius:50%!important;background:transparent;color:#fff;transition:background .2s,border-color .2s}
.dropfade-header .team-trigger svg{display:block;width:19px;height:19px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dropfade-header .team-trigger:hover{border-color:#fff;background:#941dff33}

/* Full-width service artwork: larger cards and reference typography on every screen. */
.booking-section .services-grid{grid-template-columns:minmax(0,1fr);gap:14px}
.booking-section .services-grid .service,
.booking-section .services-grid .service:nth-child(n){width:100%;aspect-ratio:1.91}
.booking-section .services-grid::after{content:none;display:none}

/* Compact service cards keep live text legible, separate from the PDF photographs. */
.service[data-service="cut"]{--service-photo:url('/assets/dropfade/service-photo-1.jpg')}
.service[data-service="beard"]{--service-photo:url('/assets/dropfade/service-photo-2.jpg')}
.service[data-service="fade"]{--service-photo:url('/assets/dropfade/service-photo-3.jpg')}
.service[data-service="combo"]{--service-photo:url('/assets/dropfade/service-photo-4.jpg')}
.service[data-service="color"]{--service-photo:url('/assets/dropfade/service-photo-5.jpg')}
#services .services-grid{gap:11px}
#services .services-disclosure{position:relative}
#services .services-viewport{overflow:hidden}
#services .services-reveal{position:absolute;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:flex-end;justify-content:center;height:96px;padding-bottom:4px;background:linear-gradient(to bottom,transparent 0%,#070709d9 38%,#070709 65%,#070709 100%)}
#services .services-reveal{pointer-events:none}
#services .services-disclosure.is-expanded .services-reveal{position:relative;height:64px;padding:12px 0 4px;background:none}
#services .services-more{box-sizing:border-box;display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;min-width:48px;max-width:48px;min-height:48px;max-height:48px;padding:0;gap:0;appearance:none;border:1px solid #ffffffa6;border-radius:50%;background:linear-gradient(145deg,#ffffff29,#ffffff06 60%),#17131f9e;background-image:linear-gradient(145deg,#ffffff29,#ffffff06 60%);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);color:#fff;box-shadow:inset 0 1px 1px #ffffff66,inset 0 -1px 1px #ffffff12,0 5px 18px #0005;line-height:1;pointer-events:auto;transition:background-color .2s,border-color .2s,box-shadow .2s}
#services .services-more:hover{background-color:#57228070;border-color:#fff;box-shadow:inset 0 1px 1px #ffffff80,0 5px 20px #941dff26}
#services .services-more:focus-visible{outline:2px solid #fff;outline-offset:3px}
#services .services-more svg{display:block;width:24px;height:24px;margin:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
#services .services-disclosure.is-expanded .services-plus-stem{display:none}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#services .services-more{background-color:#27212f}}
@media(prefers-reduced-motion:reduce){#services .services-more{transition:none}}
#services .services-grid .service{
 aspect-ratio:auto;min-height:132px;padding:14px 16px;border-radius:9px;
 background-image:linear-gradient(to right,rgba(0,0,0,1) 0%,rgba(0,0,0,.9) 20%,rgba(0,0,0,0) 100%),var(--service-photo);
 background-size:cover;background-position:center;
}
#services .service-copy{
 position:relative;inset:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;
 grid-template-rows:auto auto 1fr auto;min-height:104px;width:100%;padding:0;gap:3px 12px;opacity:1;
}
#services .service-copy strong{font:800 clamp(19px,5.1vw,23px)/1.12 'Archivo',sans-serif;letter-spacing:-.02em;padding:0;white-space:normal}
#services .service-copy p{display:block;max-width:100%;margin:0;font:400 12px/1.35 'Archivo',sans-serif;white-space:normal;overflow:visible}
#services .service-copy p:empty{display:none}
#services .service-copy small{padding:8px 0 0 24px;font:500 13px/1.3 'Archivo',sans-serif}
#services .service-copy .price{font:800 25px/1 'Archivo',sans-serif}
#services .service-icon{display:block;inset:auto auto 15px 16px;width:18px;height:18px;opacity:1;padding:0;border:0;background:none}
#services .service-icon svg{width:18px;height:18px}

/* Dark glass surfaces for staff selection and the booking total. */
.booking-section .staff-option,#summary .summary-box{
 border:1px solid #ffffff30;
 background:linear-gradient(145deg,#ffffff16,#ffffff04 55%),#17131fc9;
 -webkit-backdrop-filter:blur(18px) saturate(145%);backdrop-filter:blur(18px) saturate(145%);
 box-shadow:inset 0 1px 0 #ffffff26,inset 0 -1px 0 #ffffff08,0 8px 24px #0004;
 color:#fff;
}
.booking-section .staff-section{margin-top:34px}
.booking-section .staff-option{min-height:48px;padding:6px 12px;gap:9px;border-radius:999px;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}
.booking-section .staff-option .avatar-letter{width:30px;height:30px;flex:0 0 30px;background:linear-gradient(145deg,#ffffff3d,#ffffff12);box-shadow:inset 0 1px 0 #ffffff45;border:1px solid #ffffff24}
.booking-section .staff-option>span:last-of-type{font-size:13px;line-height:1.2;white-space:normal;gap:1px}
.booking-section .staff-option small{font-size:11px;line-height:1.3;white-space:normal;overflow:visible;margin-top:0}
.booking-section .staff-option.selected{border-color:#d6b6ffb3;background:linear-gradient(145deg,#ffffff20,#ffffff04 65%),#682ca04d;box-shadow:inset 0 1px 0 #ffffff38,0 0 18px #941dff24,0 8px 24px #0004}
.booking-section .staff-option:active{transform:scale(.98)}
.booking-section{padding-bottom:12px}
#summary{margin-top:18px}
#summary .summary-box{min-height:82px;padding:14px 22px;border-radius:999px;grid-template-rows:auto;align-items:center;gap:8px 12px}
#summary .booking-line{grid-row:1;gap:5px}
#summary .booking-line>span{font-size:13px;line-height:1.3;white-space:normal;overflow:visible}
#summary .booking-line>strong{font-size:28px;line-height:1}
#summary .summary-box .full{grid-row:1;align-self:center;justify-self:center;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;height:auto;max-width:100%;margin:0;padding:10px 20px;border:0;border-radius:999px;background:linear-gradient(100deg,#d000eb 0%,#9800b1 100%)!important;box-shadow:none;color:#fff;font-size:13px;font-weight:900;line-height:1.15;letter-spacing:.01em;text-transform:uppercase;white-space:normal;transition:filter .2s,transform .2s}
#summary .summary-box .full>span{flex-shrink:0;font-size:26px;font-weight:500;line-height:1}
#summary .summary-box .full:active:not(:disabled){transform:scale(.97)}
@media(hover:hover){
 .booking-section .staff-option:hover{border-color:#ffffff75;background:linear-gradient(145deg,#ffffff22,#ffffff09 65%),#2a2036d9}
 #summary .summary-box .full:hover:not(:disabled){filter:brightness(1.12)}
}
@media(max-width:600px){
 #summary .summary-box{display:grid;grid-template-columns:minmax(0,1fr) minmax(96px,40%);grid-template-rows:auto;align-items:center;min-height:82px;padding:12px 18px;gap:10px}
 #summary .booking-line{display:flex;flex-direction:column;grid-column:1;grid-row:1;min-width:0;gap:5px;text-align:left}
 #summary .booking-line>span{font-size:12px;line-height:1.3;white-space:normal;overflow-wrap:anywhere}
 #summary .booking-line>strong{font-size:26px;line-height:1}
 #summary .summary-box .full{grid-column:2;grid-row:1;align-self:center;justify-self:end;width:100%;min-width:0;min-height:44px;padding:10px 9px;font-size:11px;line-height:1.2;gap:0}
 #summary .summary-box .full>span{display:none}
 #summary .summary-box .booking-success{grid-column:1/-1;grid-row:1}
 #summary .summary-box .booking-success~.booking-line{grid-column:1/-1;grid-row:2}
}
@media(prefers-reduced-motion:reduce){
 .booking-section .staff-option,#summary .summary-box .full{transition:none}
 .booking-section .staff-option:active,#summary .summary-box .full:active:not(:disabled){transform:none}
}

/* Hero artwork: a single proportional size, independent of legacy card limits. */
.dropfade-hero .hero-art{max-height:none;min-height:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
.dropfade-hero .hero-art::before{content:"";position:absolute;inset:-18%;z-index:0;border-radius:50%;background:radial-gradient(ellipse at var(--light-x,50%) var(--light-y,50%),#941dff38 0%,#941dff14 30%,transparent 65%);mask-image:radial-gradient(ellipse,#000 35%,transparent 70%);opacity:0;transition:opacity .3s;pointer-events:none}
.dropfade-hero .hero-art::after{content:none;display:none}
.motion-enabled .dropfade-hero .hero-art:hover::before{opacity:1}
.dropfade-hero .hero-art:hover .hero-mascot{filter:drop-shadow(0 8px 18px #0009)}
.dropfade-hero .hero-copy .hero-brush{display:block;position:relative;width:60%;height:auto;max-height:none;aspect-ratio:2226/570;margin:3px 0 0;object-fit:contain;opacity:1;visibility:visible}
.dropfade-hero .hero-mascot{
 top:-2%;right:auto;bottom:auto;left:54%;
 width:112%;height:auto;max-width:none;max-height:none;aspect-ratio:1;
 object-fit:contain;object-position:center;transform:translateX(-50%);
 will-change:translate;
}
.hero-atmosphere .hero-monogram{transform:none}
/* JS owns translate for parallax; the entrance only changes opacity. */
.motion-enabled .dropfade-hero .hero-mascot{animation:puppet-enter .65s ease-out both}
@keyframes puppet-enter{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){
 .motion-enabled .dropfade-hero .hero-mascot{animation:none;translate:none!important}
}

/* Keep the new notice inside the phone viewport; preserve the existing palette. */
#staff-change-dialog[open]{width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:16px;border:0;border-radius:0;background:transparent;overflow:hidden;display:grid;place-items:center}
#staff-change-dialog::before{display:none}
#staff-change-dialog .modal-box{width:100%;max-width:400px;min-width:0;max-height:100%;padding:24px;overflow:auto;background:var(--color-base-100);color:var(--color-base-content)}
#staff-change-dialog h2{font-size:24px;line-height:1.2;overflow-wrap:anywhere}
#staff-change-dialog p{font-size:14px;line-height:1.6;overflow-wrap:anywhere}

#edit-dialog h2{font-size:clamp(22px,6.8vw,28px)}

/* Slightly larger header wordmark; recap corners match the 9px service cards. */
.dropfade-header .reference-wordmark{width:34vw;min-width:118px;max-width:190px}

/* Dialog controls must override the shared .btn positioning. */
#login-dialog,#edit-dialog{min-width:0;scrollbar-gutter:auto}
#login-dialog .close,#edit-dialog .close{position:absolute;inset:10px 10px auto auto;display:grid;place-items:center;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;padding:0;margin:0;transform:none;z-index:2}
#login-dialog h2,#edit-dialog h2{max-width:100%;padding-right:38px;overflow-wrap:anywhere;line-height:1.2}
#login-dialog .eyebrow{padding-right:42px;white-space:normal}
#login-dialog form,#edit-dialog form,#edit-dialog .form-grid>*{min-width:0;max-width:100%}
#edit-dialog .btn{white-space:normal;height:auto;line-height:1.4}
#edit-dialog .edit-actions{display:flex;flex-wrap:wrap;gap:10px}
#edit-dialog .edit-actions .btn{flex:1 1 150px;min-width:0}
body:has(dialog[open]){overflow:hidden}
@media(max-width:600px){
 #login-dialog,#edit-dialog{inset:12px;margin:auto;width:calc(100% - 24px);max-width:430px;max-height:calc(100dvh - 24px);padding:28px 18px 22px;overflow:auto;overscroll-behavior:contain;scroll-padding-block:20px}
 body{min-width:0}
 #login-dialog::before,#edit-dialog::before{display:none}
 #login-dialog h2{font-size:clamp(24px,7vw,30px);margin-top:14px}
 #edit-dialog{padding-top:58px}
 #edit-dialog h2{font-size:clamp(22px,6vw,28px);padding-right:0}
 #login-dialog input,#edit-dialog input,#edit-dialog select,#team input,#team select{font-size:16px;min-width:0;max-width:100%}
 #edit-dialog .form-grid{grid-template-columns:minmax(0,1fr);gap:6px}
 #edit-dialog .form-grid .wide{grid-column:1}
 #edit-dialog .edit-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
 #edit-dialog .edit-actions .btn{margin:0}
 #team .week-scroll{margin-inline:0;padding-inline:0;width:100%;max-width:100%;overflow:visible}
 #team .week-grid{display:grid;grid-template-columns:minmax(0,1fr);width:100%;min-width:0;gap:12px}
 #team .week-day,#team .appointment{min-width:0;max-width:100%;overflow-wrap:anywhere}
 #team .agenda-controls label{display:flex;flex-direction:column;align-items:stretch;gap:8px}
 #team .agenda-controls input{width:100%;flex:auto;margin:0}
 #team .agenda-controls .btn{font-size:12px;min-height:44px;white-space:normal}
 #team #refresh-team{grid-column:1/-1}
 #team .created-credentials>div{grid-template-columns:minmax(0,1fr) auto}
 #team .created-credentials>div>span{grid-column:1/-1}
 #team .created-credentials code{font-size:13px;overflow-wrap:anywhere}
 #team .team-user-info>small{font-size:12px;white-space:normal;overflow-wrap:anywhere}
 #team .team-user-info>b{white-space:normal;overflow-wrap:anywhere}
 #team .permission-switch,#team .active-switch{min-height:44px}
 .booking-section .staff-option{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .booking-section .staff-option>span:last-child{min-width:0}
 #toast{width:max-content;max-width:calc(100% - 24px);overflow-wrap:anywhere;bottom:max(12px,env(safe-area-inset-bottom));padding:12px 16px}
}
@media(max-width:370px){
 #team .password-create{grid-template-columns:minmax(0,1fr)}
 #team .password-create .btn{justify-self:start;margin-top:0}
}
#summary .summary-box,#summary .summary-box .full,.booking-dock,.booking-dock .btn{border-radius:9px}

/* Slow, autonomous hero motion; the original artwork and proportions stay intact. */
.dropfade-hero .hero-glow{position:absolute;z-index:1;left:-5%;top:0;width:110%;height:95%;border-radius:50%;background:radial-gradient(ellipse at 52% 46%,#941dff 0%,#941dffcc 28%,#941dff70 46%,#941dff20 60%,transparent 73%);pointer-events:none;opacity:.14;transform:scale(.95)}
.motion-enabled .dropfade-hero .hero-glow{animation:hero-light-breathe 8s ease-in-out infinite}
.motion-enabled .dropfade-hero .hero-mascot{animation:hero-soft-float 12s ease-in-out infinite;will-change:transform;translate:none}
.dropfade-hero .hero-art::before{display:none}
@keyframes hero-light-breathe{0%,100%{opacity:.03;transform:scale(.94)}50%{opacity:.42;transform:scale(1.02)}}
@keyframes hero-soft-float{0%,100%{transform:translate(-50%,0) rotate(-.65deg)}35%{transform:translate(calc(-50% + 4px),-7px) rotate(.45deg)}70%{transform:translate(calc(-50% - 3px),-3px) rotate(-.15deg)}}
.hero-motion-paused .hero-glow,.hero-motion-paused .hero-mascot{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.motion-enabled .dropfade-hero .hero-glow,.motion-enabled .dropfade-hero .hero-mascot{animation:none!important;will-change:auto}.dropfade-hero .hero-glow{opacity:.14}}

/* Home-screen invitation: glass surface, no focus trap or automatic install. */
#home-install{position:fixed;z-index:70;inset:auto 12px max(12px,env(safe-area-inset-bottom));width:min(460px,calc(100% - 24px));max-height:calc(100dvh - 32px);margin-inline:auto;overflow:auto;padding:17px;border:1px solid #ffffff45;border-radius:24px;background:linear-gradient(135deg,#ffffff20,#ffffff06 65%),#17131fe8;backdrop-filter:blur(26px) saturate(155%);-webkit-backdrop-filter:blur(26px) saturate(155%);box-shadow:inset 0 1px 0 #ffffff50,0 18px 60px #0009;color:var(--color-base-content);font-family:'Archivo',Arial,sans-serif}
#home-install .install-heading{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center}
#home-install .install-icon{display:block;width:48px;height:48px;border-radius:12px;background:#000;border:1px solid #ffffff25}
#home-install h2{font:700 16px/1.3 'Archivo',Arial,sans-serif;letter-spacing:0;text-transform:none;margin:0 0 5px;overflow-wrap:anywhere}
#home-install p{font-size:12px;line-height:1.5;margin:0;color:#f4f0fa}
#home-install .install-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:14px}
#home-install .btn{position:relative;inset:auto;margin:0;min-width:0;min-height:44px;height:auto;padding:11px 14px;white-space:normal;border-radius:12px;line-height:1.3;font-size:12px;letter-spacing:0;text-transform:none}
#home-install #install-accept{background:#941dff!important;border-color:#ffffff25;color:white}
#home-install #install-later{background:#ffffff0c;color:white}
#home-install #install-help{margin-top:13px;padding-top:12px;border-top:1px solid #ffffff26;font-size:13px;line-height:1.6}
.install-footer{display:flex;justify-content:center;padding:0 18px 26px}
.install-footer .btn{font-size:12px;min-height:44px;white-space:normal}
@media(prefers-reduced-motion:no-preference){#home-install:not([hidden]){animation:install-enter .45s cubic-bezier(.2,.7,.2,1) both}}
@keyframes install-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}

@media(prefers-reduced-motion:no-preference){.services-grid.services-awaiting .service{opacity:0}}

/* Preserve the original white artwork while converting its dark matte to alpha. */
.dropfade-header .reference-wordmark,.dropfade-hero .hero-copy .hero-brush{background:transparent;filter:url(#white-artwork-transparency)}


/* Icon-only circles keep identical dimensions at every breakpoint. */
#calendar .calendar-header{grid-template-columns:44px minmax(0,1fr) 44px}
#calendar .calendar-arrow{--circle-size:44px}
.dropfade-header .team-trigger{--circle-size:40px}
#services .services-more{--circle-size:48px}
#calendar .calendar-arrow,.dropfade-header .team-trigger,#services .services-more{box-sizing:border-box;display:grid;place-items:center;flex:0 0 var(--circle-size);width:var(--circle-size)!important;height:var(--circle-size)!important;min-width:var(--circle-size);max-width:var(--circle-size);min-height:var(--circle-size)!important;max-height:var(--circle-size);aspect-ratio:1;padding:0;gap:0;border-radius:50%!important;line-height:1;letter-spacing:0}
/* Mobile staff accounts: explicit rows prevent status controls displacing names. */
@media(max-width:760px){
 #team .team-user-row{grid-template-columns:36px minmax(0,1fr);grid-template-areas:"avatar info" "permission permission" "active active";gap:8px 12px;padding:18px 0;align-items:start}
 #team .team-user-avatar{grid-area:avatar;width:36px;height:36px}
 #team .team-user-info{grid-area:info;min-width:0;align-self:center}
 #team .team-user-info>b,#team .team-user-info>small{white-space:normal;word-break:normal;overflow-wrap:break-word;overflow:visible;text-overflow:clip;line-height:1.5}
 #team .team-user-info>b{font-size:14px}
 #team .team-user-info>small{font-size:12px;margin-top:3px}
 #team .team-user-row .permission-switch{grid-area:permission;justify-self:stretch;min-width:0;margin:4px 0 0;padding:8px 0;gap:12px}
 #team .team-user-row .active-switch{grid-area:active;min-width:0;margin:0;padding:4px 0;gap:12px;min-height:44px;font-size:13px}
 #team .permission-switch>span{min-width:0;white-space:normal;word-break:normal;overflow-wrap:break-word;line-height:1.5}
 #team .permission-switch span b{font-size:13px;line-height:1.4}
 #team .permission-switch span small{font-size:12px;line-height:1.5}
 #team .permission-switch .toggle{flex:0 0 42px;width:42px;min-width:42px;height:24px;margin:0}
 #team .active-switch input{flex:0 0 18px;width:18px;height:18px;margin:0 24px 0 0}
 #team .active-switch>span{white-space:nowrap}
 #team .employee-form .permission-switch{align-items:flex-start;padding:12px;gap:10px}
 #team .team-users-title{align-items:flex-start;gap:8px}
 #team .team-users-title h3{line-height:1.2;word-break:normal}
 #team .team-users-title>.muted{font-size:12px;line-height:1.5}
}

/* Team workspace: daisyUI tabs/cards with the salon's existing typography. */
#team .team-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px;margin:20px 0;background:var(--color-base-200);border:1px solid #ffffff18;border-radius:12px}
#team .team-tabs .tab{height:auto;min-height:48px;padding:10px 8px;white-space:normal;text-align:center;font:600 13px/1.35 'Archivo',sans-serif;color:var(--color-base-content);border-radius:8px}
#team .team-tabs .tab-active{background:#941dff26;box-shadow:inset 0 0 0 1px #941dff80}
#team .team-admin{margin-top:0}
#team .create-employee-disclosure{margin-top:20px;border:1px solid #ffffff20;border-radius:12px;padding:14px}
#team .create-employee-disclosure>summary{cursor:pointer;min-height:30px;font-weight:700;line-height:1.5}
#team .team-user-actions{grid-column:2/-1;display:flex;flex-wrap:wrap;gap:8px}
#team .team-user-actions .btn{min-height:44px;font-size:12px;white-space:normal;line-height:1.4;padding:10px 14px}
.team-user-avatar img,.avatar-letter img,.profile-photo img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
.team-user-avatar,.avatar-letter{overflow:hidden}
.profile-button-photo{width:28px;height:28px;object-fit:cover;border-radius:50%;flex:none}
.profile-dialog{width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:30px 24px;overflow-y:auto;overscroll-behavior:contain;border-radius:16px}
.profile-dialog .close{position:absolute;inset:8px 8px auto auto;width:44px;height:44px;min-height:44px;padding:0;transform:none;z-index:2}
.profile-dialog h2{font-size:26px;line-height:1.2;padding-right:36px;margin:12px 0 16px}
.profile-dialog label{display:block;font-size:14px;line-height:1.4;margin:14px 0}
.profile-dialog input{font-size:16px;min-width:0}
.profile-dialog .input{width:100%}
.profile-photo-editor{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:start;gap:16px;margin:20px 0}
.profile-photo{display:grid;place-items:center;width:80px;height:80px;border-radius:50%;background:var(--color-base-200);font-size:28px;overflow:hidden}
.profile-dialog .profile-file-label{margin-top:0}
.profile-dialog .file-input{display:block;width:100%;height:auto;max-width:100%;padding:8px 0;border:0;margin-top:8px;white-space:normal;overflow:hidden}
.profile-dialog .btn{position:relative;inset:auto;min-height:44px;height:auto;line-height:1.4;white-space:normal;padding:10px 16px;font-size:13px;letter-spacing:0}
.profile-dialog .close{position:absolute;inset:8px 8px auto auto;padding:0}
.profile-password{margin-top:22px;padding:16px 0;border-block:1px solid #ffffff20}
.profile-password summary{cursor:pointer;font-size:15px;font-weight:700;min-height:32px}
.profile-actions{display:flex;flex-wrap:wrap;gap:10px}
#team .team-availability{border-color:#ffffff20;background:var(--color-base-100);border-radius:16px}
#team .team-availability .card-body{padding:24px;gap:14px;min-width:0}
#team .team-availability h2{font-size:28px;line-height:1.2}
#team .team-availability h3{font-size:18px;margin:18px 0 4px}
#team #block-form label{display:block;min-width:0;font-size:14px;line-height:1.4;margin:12px 0}
#team #block-form .select,#team #block-form .input{display:block;width:100%;font-size:16px;margin-top:8px}
#team .block-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#team .availability-item{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;padding:18px;margin-bottom:12px;border-color:#ffffff18;border-radius:12px}
#team .availability-item>div{min-width:0;overflow-wrap:break-word}
#team .availability-item h4{font-size:16px;margin:10px 0 6px}
#team .availability-item p{font-size:13px;line-height:1.5}
#team .availability-item .btn{flex:none;white-space:normal;font-size:12px;letter-spacing:0}
@media(max-width:760px){
 #team .team-user-row{grid-template-areas:"avatar info" "permission permission" "active active" "actions actions"}
 #team .team-user-actions{grid-area:actions;display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
 #team .create-employee-disclosure{padding:12px}
 #team .employee-form{padding:0;border:0;background:none}
 #team .team-availability .card-body{padding:16px}
 #team .block-dates{grid-template-columns:minmax(0,1fr);gap:0}
 #team .availability-item{flex-direction:column;align-items:stretch}
 #team .team-actions .btn{flex:1 1 145px;min-width:0;font-size:12px;white-space:normal}
 .profile-dialog{padding:26px 18px}
 .profile-photo-editor{grid-template-columns:minmax(0,1fr)}
 .profile-dialog .profile-actions{display:grid;grid-template-columns:minmax(0,1fr)}
}

#profile-dialog,#delete-profile-dialog{inset:12px;margin:auto;width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:58px 20px 24px}
#profile-dialog::before,#delete-profile-dialog::before{display:none}
#profile-dialog .close,#delete-profile-dialog .close{position:absolute;inset:8px 8px auto auto;display:grid;place-items:center;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px;transform:none;padding:0;margin:0;border-radius:50%}
#profile-dialog h2,#delete-profile-dialog h2{margin-top:0;padding-right:0}

/* Keep the install action beside the team access at the same height. */
.dropfade-header .dropfade-nav{gap:8px;flex-shrink:0}
.dropfade-header .install-header{box-sizing:border-box;height:40px!important;min-height:40px!important;max-height:40px!important;align-self:center;flex:none;padding:0 12px;border:1px solid #ffffff3b;border-radius:999px;background:#ffffff0c;color:#fff;font-size:11px;line-height:1;letter-spacing:0;white-space:nowrap}
.dropfade-header .install-header:hover{background:#941dff33;border-color:#fff}
@media(max-width:370px){.dropfade-header{gap:8px}.dropfade-header .install-header{padding-inline:9px;font-size:10px}}

/* Match the booking content edges without fading footer content. */
.dropfade-footer.reference-footer{border-top:0}
.dropfade-footer.reference-footer::before{content:"";position:absolute;top:0;left:clamp(16px,6.8vw,30px);right:clamp(16px,6.8vw,30px);height:1px;background:#fff;opacity:.5;pointer-events:none}
@media(max-width:370px){.dropfade-footer.reference-footer::before{left:14px;right:14px}}
/* Override shared button padding so icon centers match their circular controls. */
#calendar .calendar-arrow,.dropfade-header .team-trigger,#services .services-more,.profile-dialog .close{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;gap:0!important;line-height:1;letter-spacing:0}
#calendar .calendar-arrow svg,.dropfade-header .team-trigger svg,#services .services-more svg{display:block;flex:none;margin:0}
#calendar .calendar-arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.dropfade-footer.reference-footer{padding-top:14px;padding-bottom:calc(15px + env(safe-area-inset-bottom))}

/* Inventory uses the existing backstage palette with clear, responsive groups. */
#team .team-tabs{flex-wrap:wrap}
.stock-area{padding-block:20px}
.stock-heading,.stock-product-title{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.stock-heading h2{margin:0;font-size:30px}
.stock-actions{display:flex;gap:8px;flex-wrap:wrap}
#team .stock-actions .btn{min-height:44px;height:auto;white-space:normal;padding:9px 14px;font-size:12px;line-height:1.3}
.stock-period,.stock-filters{display:flex;align-items:end;flex-wrap:wrap;gap:14px;margin:20px 0}
.stock-period label,.stock-filters label{display:grid;gap:7px;flex:1;min-width:160px;font-size:13px}
.stock-area .input,.stock-area .select{width:100%;min-width:0}
.stock-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;background:#ffffff06;border:1px solid #ffffff18;border-radius:16px}
.stock-stats .stat{min-width:0;padding:20px}
.stock-stats .stat-value{font-size:28px;white-space:normal;overflow-wrap:anywhere}
.stock-stats .stat-title,.stock-stats .stat-desc{white-space:normal;line-height:1.5}
.stock-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.stock-product{background:#ffffff05;border:1px solid #ffffff18;border-radius:16px;min-width:0}
.stock-product .card-body{padding:20px;gap:10px}
.stock-product h3{font:700 19px/1.3 'Archivo',sans-serif;overflow-wrap:anywhere;margin:0}
.stock-product p{margin:0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.stock-product .badge{height:auto;padding:5px 8px;white-space:normal;line-height:1.3}
.stock-product .stock-quantity{font-size:14px}.stock-quantity strong{font-size:30px}
.stock-reorder{padding:10px;border-radius:10px;background:#941dff20;color:#e3cdff}
.stock-history{margin-top:28px;border-top:1px solid #ffffff18;padding-top:20px}
.stock-history summary{cursor:pointer;font-weight:700;padding:10px 0}
.stock-movements{display:grid;gap:8px}
.stock-movement{display:flex;flex-direction:row;justify-content:space-between;gap:12px;padding:16px;border:1px solid #ffffff18;overflow-wrap:anywhere}
.stock-movement p{margin:5px 0}.stock-movement small{color:var(--muted)}
.stock-dialog{max-width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto}
.stock-dialog label{display:grid;gap:7px;min-width:0}.stock-dialog small{font-size:12px;line-height:1.4;font-weight:400}
.stock-dialog .input,.stock-dialog .select{width:100%;min-width:0}
#team .inventory-permission{width:100%;justify-content:flex-start}
@media(max-width:700px){.stock-stats,.stock-products{grid-template-columns:minmax(0,1fr)}.stock-stats .stat{border-bottom:1px solid #ffffff12}.stock-period label,.stock-filters label{flex-basis:100%}.stock-heading{align-items:flex-start}.stock-movement{flex-wrap:wrap}.stock-dialog .form-grid{grid-template-columns:1fr}.stock-dialog .wide{grid-column:auto}}
#team .team-tabs{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}@media(max-width:700px){#team .team-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.stock-stats{grid-auto-flow:row!important}.stock-stats .stat{display:block}.stock-stats .stat-value{margin:8px 0}.stock-stats .stat-desc{margin-top:6px}

/* Inventory: focus on everyday actions before reporting. */
#team .stock-heading h2{font-size:28px;line-height:1.2}#team .stock-heading .muted{font-size:14px;line-height:1.5}
.stock-overview{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:16px 0}
.stock-overview .badge{min-height:32px;padding:6px 10px;font-size:12px}.stock-overview .btn{font-size:12px;min-height:36px}
#team .stock-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border:1px solid #ffffff18;border-radius:12px;background:#ffffff05;margin-bottom:20px}
#team .stock-tabs .tab{min-width:0;width:100%;min-height:48px;height:auto;padding:10px 6px;font:600 13px/1.4 'Archivo',sans-serif;white-space:normal;color:#fff;border-radius:8px}
#team .stock-tabs .tab:checked{background:#941dff25;box-shadow:inset 0 0 0 1px #941dff80}
#team .stock-area .stock-primary{background:#941dff24;border-color:#b46bff80;color:#fff}
.stock-filters{margin-top:0}.stock-reorder-intro{margin-bottom:20px;background:#941dff15;border:1px solid #941dff40;line-height:1.5;font-size:14px}
.stock-reorder-intro p{margin:8px 0}.stock-reorder-intro small{font-size:12px}
.stock-product .card-body{gap:12px}#team .stock-product .card-title{font-size:19px}.stock-product .stock-quantity strong{font-size:32px}
#team .stock-product .card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
#team .stock-product .card-actions .btn{padding:10px 8px;min-width:0;font-size:13px;text-transform:none;letter-spacing:0;line-height:1.4}
.stock-more{border-top:1px solid #ffffff12;border-radius:0;margin-top:4px;min-width:0}
.stock-more .collapse-title{padding:12px 28px 12px 0;font-size:13px;min-height:44px;cursor:pointer;line-height:1.5}
.stock-more .collapse-content{padding:0;gap:8px}.stock-more[open] .collapse-content{padding-bottom:12px}
.stock-history h3{font-size:20px}.stock-result{display:block;background:#941dff18;border:1px solid #941dff40;margin-top:16px;font-size:14px;line-height:1.5}
.stock-dialog h2{padding-right:32px;font-size:27px;line-height:1.2;overflow-wrap:anywhere}
.stock-dialog .form-grid{gap:16px}.stock-dialog .form-grid label{font-size:14px;line-height:1.4}
#team .stock-filters label{font-size:14px}#team .stock-period label{font-size:14px}
@media(max-width:420px){#team .stock-tabs .tab{font-size:12px}.stock-product .card-body{padding:16px}.stock-heading .stock-actions{width:100%}.stock-heading #stock-add{flex:1}}

/* Shared spacing rhythm: field 8px, actions 12px, groups 20–24px. */
:root{--space-field:8px;--space-action:12px;--space-group:20px;--space-section:24px}
#team .team-actions,#team .stock-actions,.profile-actions,#edit-dialog .edit-actions{gap:var(--space-action)}
#team .team-top{row-gap:var(--space-group)}
#team .team-tabs{margin-block:var(--space-section);gap:8px}
#team .agenda-controls{gap:var(--space-action);padding-block:16px}
#team .team-users-title{gap:12px;margin-top:24px;padding-top:24px}
#team .team-user-row{grid-template-columns:40px minmax(0,1fr) minmax(150px,210px);grid-template-areas:"avatar info active" ". permission inventory" ". actions actions";gap:16px 20px;padding:24px 0;align-items:center}
#team .team-user-avatar{grid-area:avatar}
#team .team-user-info{grid-area:info;min-width:0}
#team .team-user-row>.permission-switch{grid-area:permission;justify-self:stretch;margin:0;padding:8px 0;gap:12px;min-width:0;min-height:48px}
#team .team-user-row>.inventory-permission{grid-area:inventory;width:auto}
#team .team-user-row>.active-switch{grid-area:active;margin:0;padding:8px 0;gap:12px;min-height:48px}
#team .team-user-row>.team-user-actions{grid-area:actions;display:flex;flex-wrap:wrap;gap:12px;margin-top:4px;min-width:0}
#team .team-user-actions .btn{position:relative;inset:auto;transform:none;margin:0;min-width:0;min-height:48px}
#team .team-user-row .permission-switch>span{min-width:0;white-space:normal;word-break:normal;overflow-wrap:break-word}
#team .team-user-row .permission-switch b{font-size:14px;line-height:1.4}
#team .team-user-row .permission-switch small{font-size:12px;line-height:1.5;margin-top:2px}
#team .team-user-row .active-switch input{margin:0 24px 0 0;flex:none}
#team .employee-form{gap:20px;margin-top:20px}
#team .employee-form-actions{gap:12px;margin-top:4px}
#team #block-form label{margin:16px 0}
#team #block-form p{margin-block:16px;line-height:1.6}
#team #block-form button[type=submit]{margin-top:4px}
#team .availability-item{gap:20px}
#team .stock-heading{gap:20px}
#team .stock-heading p{margin:10px 0 0}
#team .stock-overview{gap:12px;margin-block:20px}
#team .stock-period,#team .stock-filters{gap:16px;margin-bottom:24px}
#team .stock-period :is(input,select),#team .stock-filters :is(input,select){margin-top:0}
#team .stock-products{gap:20px}
#team .stock-product .card-actions{gap:12px;margin-top:12px}
#team .stock-more{margin-top:8px}
#team .stock-more[open] .collapse-content{padding-block:8px 16px;gap:12px}
#team .stock-history>p{margin:12px 0 20px}
#team .stock-movements{gap:12px}
dialog .form-grid,#edit-dialog .form-grid{gap:20px;margin-top:20px}
dialog .form-grid label,#edit-dialog .form-grid label{margin:0;min-width:0;line-height:1.5}
dialog .form-grid label :is(input,select,output){margin-top:8px}
.stock-dialog .form-grid label{gap:8px}
.stock-dialog .form-grid label :is(input,select){margin-top:0}
dialog form>label{margin-block:18px}
dialog form>p{margin-block:16px;line-height:1.6}
dialog form>.btn:not(.close){margin-top:20px}
dialog .edit-actions,.profile-dialog .profile-actions{margin-top:24px;gap:12px}
dialog .edit-actions .btn,.profile-dialog .profile-actions .btn{margin:0}
.profile-dialog .profile-photo-editor{gap:20px;margin-block:24px}
.profile-dialog .profile-password{margin-block:24px;padding-block:18px}
.profile-dialog .profile-password summary{padding-bottom:8px}
.stock-dialog #stock-move-help{margin:16px 0 20px}
.stock-dialog .stock-result{margin-top:20px;padding:14px;line-height:1.5}
#booking-body .form-grid{gap:20px;margin-top:24px}
#booking-body .form-grid label{margin:0;line-height:1.5}
#booking-body .form-grid input{margin-top:8px}
#booking-body .privacy{margin-top:20px;line-height:1.6}
.booking-section .slots{gap:10px;margin-top:20px}
.booking-section .staff-options{gap:12px;margin-top:16px}
#summary{margin-top:24px}
#summary .summary-box{column-gap:16px;padding:14px 16px}
.success-view .btn{margin:8px 6px}
@media(max-width:760px){
 #team .team-user-row{grid-template-columns:36px minmax(0,1fr);grid-template-areas:"avatar info" "permission permission" "inventory inventory" "active active" "actions actions";gap:12px 16px;padding:24px 0}
 #team .team-user-row>.team-user-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:8px}
 #team .team-user-actions .btn{width:100%}
 #team .team-users-title{align-items:start}
 #team .team-admin{padding:20px 16px}
 #team .team-availability .card-body{padding:20px;gap:16px}
 #team .block-dates{gap:4px}
 #edit-dialog .edit-actions{gap:12px}
 .profile-dialog .profile-actions{gap:12px}
}
@media(max-width:360px){#team .stock-product .card-actions{grid-template-columns:minmax(0,1fr)}}
#login-dialog .remember-access{display:flex;align-items:flex-start;gap:12px;margin:24px 0 16px;cursor:pointer;min-height:44px}
#login-dialog .remember-access input{flex:0 0 22px;width:22px;height:22px;min-height:22px;margin:2px 0 0;padding:0}
#login-dialog .remember-access span{display:grid;gap:6px;min-width:0}
#login-dialog .remember-access b{font-size:14px;line-height:1.5;font-weight:600}
#login-dialog .remember-access small{font-size:12px;line-height:1.5;font-weight:400;opacity:.75}

/* Internal product sales: generous touch spacing and one column on phones. */
#booking-products-dialog{inset:12px;margin:auto;width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:58px 20px 24px}
#booking-products-dialog::before{display:none}
#booking-products-dialog .close{position:absolute;inset:8px 8px auto auto;width:44px;height:44px;margin:0;padding:0;display:grid;place-items:center}
#booking-products-dialog h2{padding:0;margin-top:0;font-size:26px}
.sale-picker,.sale-lines{display:grid;gap:16px;margin:24px 0}
.sale-picker label,.sale-line label{display:grid;gap:8px;margin:0;min-width:0}
.sale-picker .select,.sale-line .input{width:100%;margin:0;font-size:16px}
.sale-line{padding:16px;gap:16px;border:1px solid #ffffff24;border-radius:12px;min-width:0}
.sale-line .card-title{font-size:18px;line-height:1.4;margin:0;overflow-wrap:anywhere}
.sale-line-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sale-dialog form .btn{position:relative;inset:auto;margin:0;min-height:48px;height:auto;padding:12px 16px;white-space:normal;line-height:1.4}
.sale-recap{display:grid;gap:14px;padding:20px;border:1px solid #a65de550;border-radius:12px;background:#941dff12;margin-bottom:24px}
.sale-recap h3{font-size:18px;margin:0 0 6px}.sale-recap>div{display:flex;justify-content:space-between;gap:16px}.sale-recap b{white-space:nowrap}
.sale-grand-total{border-top:1px solid #ffffff24;padding-top:16px;font-size:20px}.sale-recap small{line-height:1.6}
#sale-reload{margin-top:12px}#sale-error:empty{display:none}
@media(max-width:400px){.sale-line-fields{grid-template-columns:minmax(0,1fr)}}

/* Internal creation dialog only: never changes the public booking layout. */
#team-booking-dialog[open]{inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:16px;border:0;background:transparent;display:grid;place-items:center;overflow:hidden}
#team-booking-dialog::before{display:none}
#team-booking-dialog .modal-box{position:relative;width:100%;max-width:760px;max-height:calc(100dvh - 32px);padding:36px;overflow:auto;background:var(--color-base-100);border:1px solid #ffffff24;border-radius:16px;color:var(--color-base-content)}
#team-booking-dialog .close{position:absolute;inset:12px 12px auto auto;display:grid;place-items:center;width:40px;height:40px;min-height:40px;padding:0;margin:0;border-radius:50%;transform:none}
#team-booking-dialog h2{font-size:28px;line-height:1.3;margin:0 40px 12px 0}
#team-booking-dialog .internal-booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}
#team-booking-dialog fieldset{min-width:0;border:1px solid #ffffff20;border-radius:12px;padding:16px;margin:0}
#team-booking-dialog legend{padding:0 8px;font-weight:700;font-size:14px}
#team-booking-dialog label{margin:0 0 16px;font-size:13px;line-height:1.5;min-width:0}
#team-booking-dialog label:last-child{margin-bottom:0}
#team-booking-dialog :is(input,select){display:block;width:100%;min-width:0;margin-top:8px;height:48px;font-size:16px;border-radius:8px}
#team-booking-dialog .internal-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#team-booking-dialog .internal-wide{grid-column:1/-1}
#team-booking-dialog .internal-recap{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:24px;padding:16px;border-radius:12px;background:#941dff18;line-height:1.5}
#team-booking-dialog .internal-recap strong{font-size:24px;white-space:nowrap}
#team-booking-dialog .modal-action{display:flex;gap:12px;margin-top:20px}
#team-booking-dialog .modal-action .btn{position:static;margin:0;min-height:48px;padding:12px 20px;border-radius:9px;white-space:normal;line-height:1.4}
#team-booking-dialog .error:empty{display:none}
@media(max-width:760px){#team-booking-dialog[open]{padding:12px}#team-booking-dialog .modal-box{padding:56px 16px 20px;max-height:calc(100dvh - 24px)}#team-booking-dialog h2{font-size:25px;margin-right:0}#team-booking-dialog .internal-booking-grid{grid-template-columns:minmax(0,1fr);gap:20px}#team-booking-dialog .modal-action{display:grid;grid-template-columns:1fr 1.5fr}#team-booking-dialog .modal-action .btn{padding-inline:10px}}
@media(max-width:360px){#team-booking-dialog .internal-pair{grid-template-columns:minmax(0,1fr)}}

.service[data-service="mesh-cut"]{--service-photo:url("/assets/dropfade/service-mesh-cut.png")}

@media(max-width:700px){
 #team .stock-heading>.stock-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:8px}
 #team .stock-heading>.stock-actions .btn{width:100%;min-width:0;height:100%;min-height:48px;padding:9px 6px;font-size:11px;line-height:1.35;text-align:center}
}

#service-create-dialog[open]{inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:16px;border:0;background:transparent;display:grid;place-items:center;overflow:hidden}
#service-create-dialog::before{display:none}
#service-create-dialog .modal-box{position:relative;width:100%;max-width:760px;max-height:calc(100dvh - 32px);padding:36px;overflow:auto;background:var(--color-base-100);border:1px solid #ffffff24;border-radius:16px;color:var(--color-base-content)}
#service-create-dialog .close{position:absolute;inset:12px 12px auto auto;display:grid;place-items:center;width:40px;height:40px;min-height:40px;padding:0;margin:0;border-radius:50%;transform:none}
#service-create-dialog h2{font-size:28px;line-height:1.3;margin:0 40px 12px 0}
#service-create-dialog .internal-booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}
#service-create-dialog fieldset{min-width:0;border:1px solid #ffffff20;border-radius:12px;padding:16px;margin:0}
#service-create-dialog legend{padding:0 8px;font-weight:700;font-size:14px}
#service-create-dialog label{margin:0 0 16px;font-size:13px;line-height:1.5;min-width:0}
#service-create-dialog label:last-child{margin-bottom:0}
#service-create-dialog :is(input,select){display:block;width:100%;min-width:0;margin-top:8px;height:48px;font-size:16px;border-radius:8px}
#service-create-dialog .internal-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#service-create-dialog .internal-wide{grid-column:1/-1}
#service-create-dialog .internal-recap{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:24px;padding:16px;border-radius:12px;background:#941dff18;line-height:1.5}
#service-create-dialog .internal-recap strong{font-size:24px;white-space:nowrap}
#service-create-dialog .modal-action{display:flex;gap:12px;margin-top:20px}
#service-create-dialog .modal-action .btn{position:static;margin:0;min-height:48px;padding:12px 20px;border-radius:9px;white-space:normal;line-height:1.4}
#service-create-dialog .error:empty{display:none}
@media(max-width:760px){#service-create-dialog[open]{padding:12px}#service-create-dialog .modal-box{padding:56px 16px 20px;max-height:calc(100dvh - 24px)}#service-create-dialog h2{font-size:25px;margin-right:0}#service-create-dialog .internal-booking-grid{grid-template-columns:minmax(0,1fr);gap:20px}#service-create-dialog .modal-action{display:grid;grid-template-columns:1fr 1.5fr}#service-create-dialog .modal-action .btn{padding-inline:10px}}
@media(max-width:360px){#service-create-dialog .internal-pair{grid-template-columns:minmax(0,1fr)}}
#service-create-dialog .modal-box{max-width:560px}
#service-photo-preview{width:100%;max-height:180px;object-fit:cover;border-radius:9px;margin:12px 0}

#team-booking-dialog .service-picker-field{margin-bottom:16px;min-width:0}
#team-booking-dialog .service-picker-label{font-size:13px;font-weight:600;line-height:1.5}
#team-service-picker{display:block;width:100%;min-width:0;margin-top:8px}
#team-service-picker summary{display:block;width:100%;height:auto;min-height:48px;padding:12px 36px 12px 12px;margin:0;white-space:normal;line-height:1.4;list-style:none;cursor:pointer}
#team-service-picker summary::-webkit-details-marker{display:none}
#team-service-picker .service-picker-content{position:static;width:100%;margin-top:8px;padding:6px;border:1px solid #ffffff24;border-radius:9px;background:#15141b;max-height:320px;overflow-y:auto;overscroll-behavior:contain}
#team-service-picker:not([open]) .service-picker-content{display:none}
#team-service-picker .service-picker-menu{display:block;width:100%;padding:0;gap:0}
#team-service-picker .service-picker-row{display:block;padding:0;border-bottom:1px solid #ffffff12}
#team-service-picker .service-picker-line{display:flex;align-items:center;gap:6px;padding:0;background:none;cursor:default}
#team-service-picker .service-picker-choice{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;text-align:left;gap:5px;padding:12px 8px;border:0;border-radius:6px;background:transparent;color:inherit;white-space:normal;line-height:1.4}
#team-service-picker .service-picker-choice span{font-size:13px;font-weight:600;overflow-wrap:anywhere}
#team-service-picker .service-picker-choice small{font-size:11px;opacity:.7}
#team-service-picker .service-picker-selected{background:#941dff20}
#team-service-picker .service-picker-trash{flex:none;display:grid;place-items:center;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;gap:0;color:#e8b3be;border-radius:50%}
#team-service-picker .service-picker-trash svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#team-service-picker .service-picker-confirm{display:flex;flex-wrap:wrap;gap:8px;padding:10px;background:#ffffff06;cursor:default}
#team-service-picker .service-picker-confirm p{flex-basis:100%;font-size:12px;line-height:1.5;margin:0 0 4px}
#team-service-picker .service-picker-confirm .btn{padding:8px 10px;font-size:11px;min-height:40px}
#team-service-picker .service-picker-create{width:100%;min-height:48px;padding:12px 8px;color:#cdb3ff;font-weight:700;white-space:normal}
#team-service-picker .error:empty{display:none}

/* Prioritize catalog creation and keep row controls precisely centered. */
#team-service-picker .service-picker-create{display:flex;justify-content:flex-start;align-items:center;margin:0 0 8px;padding:12px;min-height:48px;border:1px solid color-mix(in srgb,var(--color-primary) 65%,transparent);border-radius:7px;background:linear-gradient(125deg,color-mix(in srgb,var(--color-primary) 60%,#6116ad),#6524a5);color:var(--color-base-content);font-size:12px;line-height:1.4;text-align:left;box-shadow:inset 0 1px 0 #ffffff20}
#team-service-picker .service-picker-create:hover{filter:brightness(1.12)}
#team-service-picker .service-picker-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
#team-service-picker .service-picker-trash{align-self:center;justify-self:center;margin:0;line-height:1;transform:none}
#team-service-picker .service-picker-trash svg{display:block;margin:0;transform:none}

#team-booking-dialog .internal-slots-label{font-size:13px;font-weight:600;margin:20px 0 10px;color:var(--color-base-content)}
#team-booking-dialog .internal-slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px;margin:0;max-height:260px;overflow-y:auto;padding:4px}
#team-booking-dialog .internal-slots:empty{display:none}
#team-booking-dialog .internal-slots .slot{min-height:44px;margin:0;padding:10px 6px;font-size:12px;white-space:nowrap;text-align:center}
#team-booking-dialog .internal-slots .slot.selected{border-color:var(--color-primary);background:var(--selected);box-shadow:inset 0 0 0 1px var(--color-primary)}
@media(max-width:600px){#team-booking-dialog .internal-slots{grid-template-columns:repeat(2,minmax(0,1fr))}}

#customer-form .privacy-confirm{display:flex;align-items:flex-start;gap:12px;font-size:12px;line-height:1.65;font-weight:400;cursor:pointer;padding:8px 0}
#customer-form .privacy-confirm .checkbox{flex:0 0 20px;width:20px;height:20px;min-width:20px;min-height:20px;margin:2px 0 0;border-radius:3px;accent-color:var(--color-primary)}
#customer-form .privacy-confirm span{flex:1;min-width:0}
#customer-form .privacy-confirm strong{font-weight:600}

#team-booking-dialog .internal-week-title{margin:0 0 12px;text-align:center;font-weight:600;font-size:13px;color:var(--color-base-content)}
#team-booking-dialog .internal-week-row{display:grid;grid-template-columns:30px minmax(0,1fr) 30px;align-items:center;gap:6px}
#team-booking-dialog .internal-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
#team-booking-dialog .internal-week-day{display:flex;flex-direction:column;gap:5px;width:100%;min-width:0;height:56px;min-height:56px;padding:5px 0;margin:0;border-radius:7px;line-height:1}
#team-booking-dialog .internal-week-day span{font-size:10px;font-weight:500;opacity:.8}
#team-booking-dialog .internal-week-day strong{font-size:15px}
#team-booking-dialog .internal-week-day.selected{background:linear-gradient(135deg,#941dff,#6923a6);border-color:var(--color-primary);color:#fff;box-shadow:inset 0 0 0 1px #cfa4ff50}
#team-booking-dialog .internal-week-arrow{width:30px;height:30px;min-width:30px;min-height:30px;padding:0;margin:0;display:grid;place-items:center;line-height:1;font-size:24px}
#team-booking-dialog #internal-selected-days{margin:12px 0 4px;overflow-wrap:anywhere;line-height:1.6}
#team-booking-dialog .internal-recap strong{white-space:normal;font-size:13px;line-height:1.6}
@media(max-width:600px){#team-booking-dialog .internal-week-row{grid-template-columns:22px minmax(0,1fr) 22px;gap:3px;margin-inline:-8px}#team-booking-dialog .internal-week-days{gap:3px}#team-booking-dialog .internal-week-arrow{width:22px;min-width:22px;height:30px;min-height:30px;font-size:20px}#team-booking-dialog .internal-week-day{height:50px;min-height:50px}#team-booking-dialog .internal-week-day strong{font-size:13px}}

#team-booking-dialog .internal-mobile-weeks,#team-booking-dialog .internal-swipe-hint{display:none}
@media(max-width:600px){
 #team-booking-dialog #internal-week-picker>.internal-week-title,#team-booking-dialog #internal-week-picker>.internal-week-row{display:none}
 #team-booking-dialog .internal-mobile-weeks{display:flex;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:4px 0;margin-inline:0;scrollbar-width:none}
 #team-booking-dialog .internal-mobile-week{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}
 #team-booking-dialog .internal-mobile-week .internal-week-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
 #team-booking-dialog .internal-mobile-week .internal-week-day{height:66px;min-height:66px;border-radius:9px;gap:10px;touch-action:pan-x pan-y}
 #team-booking-dialog .internal-mobile-week .internal-week-day span{font-size:10px;opacity:1}
 #team-booking-dialog .internal-mobile-week .internal-week-day strong{font-size:18px}
 #team-booking-dialog .internal-mobile-week .internal-week-title{text-align:left;font-size:13px;white-space:nowrap}
 #team-booking-dialog .internal-swipe-hint{display:block;font-size:11px;margin:4px 0 0;line-height:1.5;color:var(--muted)}
}

@media(max-width:600px){#team-booking-dialog .internal-mobile-weeks::-webkit-scrollbar{display:none;width:0;height:0}}
