@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Oswald:wght@400;500;600;700&display=swap');
:root{--bg:#171918;--panel:#202321;--ink:#f0eee8;--muted:#a6aaa2;--line:#ffffff21;--accent:#d4a574;--green:#b7ce9a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px Manrope,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button:disabled{opacity:.3;cursor:not-allowed}h1,h2,h3,p{margin:0}h1,h2,.display,.brand{font-family:Oswald,'Arial Narrow',sans-serif}h2{font-size:clamp(38px,5vw,62px);font-weight:500;line-height:1.1;text-transform:uppercase}.wrap{width:min(1280px,90%);margin:auto}.nav{height:94px;display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--line)}.brand{font-size:28px;letter-spacing:4px;font-weight:600;display:flex;align-items:center;gap:12px}.brand small{font:8px Manrope;letter-spacing:3px;display:block;margin-top:1px}.brand-mark{border:1px solid var(--accent);width:38px;height:44px;display:grid;place-items:center;color:var(--accent);font-size:24px;transform:skewY(-8deg)}.navlinks{display:flex;gap:30px;margin:auto;color:#c7c9c2;font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--accent);color:#20211e;font-weight:800;padding:17px 25px;border:1px solid transparent;transition:background .2s,transform .2s}.btn:hover{background:#e3ba8f;transform:translateY(-2px)}.btn.ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn.small{padding:11px 17px;font-size:12px}.subtle{background:transparent;color:var(--muted);padding:10px}.eyebrow{font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--accent);font-weight:700}.hero{position:relative;min-height:650px;display:grid;grid-template-columns:1.02fr 1fr;align-items:center;gap:35px;padding:52px 0 58px}.hero-copy{position:relative;z-index:1}.hero h1{font-size:clamp(65px,7.5vw,112px);line-height:1.04;font-weight:500;letter-spacing:-2px;text-transform:uppercase;margin:26px 0}.hero h1 span{color:var(--accent)}.hero p{color:var(--muted);line-height:1.9;max-width:350px}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:32px}.hero-actions .micro{font-size:11px;color:var(--muted);line-height:1.7}.hero-image{height:535px;position:relative;background:#38332b url('hero.jpg') center/cover}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent 65%)}.hero-image .vertical{position:absolute;right:-23px;top:40px;writing-mode:vertical-rl;font-size:9px;letter-spacing:4px;color:var(--muted)}.photo-note{position:absolute;bottom:28px;left:28px;z-index:1;font-size:11px;letter-spacing:1px;line-height:1.7}.round-label{position:absolute;right:24px;top:24px;border:1px solid #fff8;width:86px;height:86px;border-radius:50%;display:grid;place-content:center;text-align:center;z-index:1;font-size:9px;letter-spacing:1px}.round-label b{font-family:Oswald;font-size:27px;font-weight:400}.stripe{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;color:#c6c8c1;font-size:12px}.stripe span:first-letter{color:var(--accent)}.section{padding:86px 0}.section-head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:36px}.section-head .eyebrow{margin-bottom:18px}.section-head p{color:var(--muted);max-width:290px;line-height:1.8;font-size:12px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service{background:var(--panel);border:1px solid var(--line);padding:30px;position:relative;transition:border-color .2s}.service:hover{border-color:var(--accent)}.service.featured{border-color:var(--accent)}.service .number{font:30px Oswald;color:#71766b}.service .tag{position:absolute;right:20px;top:25px;background:var(--accent);color:#1b2019;font-size:9px;padding:6px 10px;font-weight:800;letter-spacing:1px}.service h3{font:28px Oswald;text-transform:uppercase;margin:32px 0 12px}.service p{color:var(--muted);font-size:12px;line-height:1.8;min-height:45px}.service-footer{margin-top:32px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.service-footer strong{font-size:23px}.service-footer small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.arrow{background:transparent;color:var(--accent);font-size:27px;width:42px;height:42px;border:1px solid var(--line)}.masters{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.master{display:flex;gap:20px;align-items:center;border-top:1px solid var(--line);padding-top:25px}.avatar{width:66px;height:66px;background:#373f35;color:var(--accent);font:27px Oswald;display:grid;place-items:center;flex-shrink:0}.master:nth-child(2) .avatar{background:#493a2e}.master:nth-child(3) .avatar{background:#363b42}.master h3{font-size:18px}.master p{font-size:11px;color:var(--muted);margin:7px 0 12px}.text-link{color:var(--accent);background:transparent;padding:0;font-size:11px}.visit{display:grid;grid-template-columns:1fr 1fr;background:var(--panel);margin:30px auto 80px}.visit-copy{padding:50px}.visit h2{font-size:46px;margin:20px 0}.visit p{color:var(--muted);line-height:1.9;margin-bottom:25px}.map-art{position:relative;min-height:330px;overflow:hidden;background:repeating-linear-gradient(28deg,transparent 0 71px,#b3bf9a13 72px 88px,transparent 89px 140px),repeating-linear-gradient(112deg,#283027 0 95px,#56604a 96px 108px,#283027 109px 190px);display:grid;place-content:center;text-align:center}.map-pin{font:32px Oswald;background:var(--accent);color:#20221c;padding:20px 26px;box-shadow:0 18px 50px #0005}.map-art small{margin-top:25px;color:#d8ddca;background:#202820;padding:8px}.footer{padding:30px 0;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}.demo-pill{display:inline-flex;gap:8px;align-items:center;color:var(--green);font-size:10px}.demo-pill:before{content:'';width:5px;height:5px;background:var(--green);border-radius:50%}dialog{padding:0;border:1px solid #505747;background:#202420;color:var(--ink);max-width:680px;width:calc(100% - 28px);max-height:90dvh;overflow:auto;box-shadow:0 20px 100px #0008}dialog::backdrop{background:#070b0ac9;backdrop-filter:blur(7px)}.modal-head{padding:26px 30px 20px;display:flex;align-items:start;justify-content:space-between;border-bottom:1px solid var(--line)}.modal-head h2{font-size:30px;margin-top:7px}.close{background:transparent;color:var(--muted);font-size:26px;padding:0 5px}.modal-body{padding:26px 30px}.steps{display:flex;gap:8px;margin-bottom:25px}.steps span{height:3px;background:#ffffff20;flex:1}.steps span.on{background:var(--accent)}.choice{width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;padding:18px;border:1px solid var(--line);background:transparent;color:var(--ink);margin-bottom:10px;gap:12px}.choice.active{border-color:var(--accent);background:#d4a57412}.choice small{color:var(--muted);display:block;margin-top:5px}.choice b{white-space:nowrap}.field{display:block;margin-bottom:18px;font-size:12px;color:var(--muted)}input,select,textarea{width:100%;padding:13px 14px;border:1px solid #ffffff28;background:#171c18;color:var(--ink);margin-top:8px;border-radius:0;color-scheme:dark;min-width:0}input:focus,select:focus,textarea:focus{outline:1px solid var(--accent)}.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0 22px}.slot{background:transparent;border:1px solid var(--line);color:var(--ink);padding:12px}.slot.active{background:var(--accent);color:#161916}.modal-footer{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.summary{padding:18px;background:#171c18;margin:20px 0;line-height:1.9;font-size:13px}.hint{font-size:11px;color:var(--muted);line-height:1.7}.consent{display:flex;gap:10px;align-items:flex-start;font-size:11px;color:var(--muted);line-height:1.6}.consent input{width:16px;flex-shrink:0;margin:2px 0}.success{text-align:center;padding:20px 0}.success-icon{display:grid;place-content:center;width:65px;height:65px;border:1px solid var(--green);border-radius:50%;color:var(--green);font-size:32px;margin:0 auto 25px}.success h2{font-size:36px}.success p{margin-top:15px;color:var(--muted);line-height:1.8}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,25px);background:var(--accent);color:#191d17;padding:15px 25px;z-index:10;opacity:0;pointer-events:none;transition:.2s;max-width:90%;text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}
.admin{min-height:100vh;display:grid;grid-template-columns:220px 1fr;background:#141815}.sidebar{border-right:1px solid var(--line);padding:32px 20px;display:flex;flex-direction:column;gap:35px}.sidebar .brand{font-size:21px;letter-spacing:2px}.sidebar nav{display:grid;gap:8px}.side-btn{background:transparent;text-align:left;padding:14px 16px;color:var(--muted);display:flex;gap:13px;font-size:12px}.side-btn.active{color:var(--accent);background:#d4a57413;border-left:2px solid var(--accent)}.sidebar-bottom{margin-top:auto;font-size:10px;color:var(--muted);line-height:1.8}.admin-main{padding:36px 40px;min-width:0}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:26px}.admin-top h1{font:34px Oswald;font-weight:500;margin:6px 0}.admin-top p{font-size:11px;color:var(--muted)}.admin-actions{display:flex;gap:10px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:28px 0}.stat{background:#202720;border:1px solid var(--line);padding:20px}.stat small{color:var(--muted);font-size:11px}.stat b{display:block;font:34px Oswald;margin:12px 0 5px}.stat span{color:var(--green);font-size:10px}.toolbar{display:flex;align-items:center;gap:12px;margin-bottom:22px;flex-wrap:wrap}.toolbar input,.toolbar select{margin:0;width:auto}.toolbar input[type=search]{flex:1;min-width:180px}.toolbar .date-label{font:22px Oswald;margin-right:auto}.schedule{display:grid;grid-template-columns:62px repeat(3,minmax(150px,1fr));border:1px solid var(--line);overflow:hidden}.schedule-head{padding:20px 14px;text-align:center;border-bottom:1px solid var(--line);background:#202720}.schedule-head small{display:block;color:var(--muted);font:10px Manrope;margin-top:5px}.time-axis,.day-col{height:720px;position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 79px,#ffffff10 79px,#ffffff10 80px)}.day-col{border-left:1px solid var(--line)}.time-axis span{position:absolute;left:12px;color:var(--muted);font-size:10px}.appointment{position:absolute;left:7px;right:7px;padding:9px 12px;text-align:left;border-left:3px solid var(--accent);background:#574631;color:#f8e6ca;overflow:hidden;min-height:38px}.appointment.confirmed{background:#35492e;border-color:#9cba7c;color:#dcebd0}.appointment.done{background:#303c41;border-color:#859ea8;color:#c6dae1}.appointment b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appointment small{font-size:9px;display:block;margin-top:3px}.legend{display:flex;gap:18px;font-size:10px;color:var(--muted);margin:18px 0}.legend i{display:inline-block;width:7px;height:7px;margin-right:6px;background:var(--accent)}.table-wrap{overflow:auto;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{color:var(--muted);font-size:10px;font-weight:500;background:#202720;padding:16px}td{padding:17px 16px;border-top:1px solid var(--line);font-size:12px}td small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.badge{display:inline-block;background:#d4a57418;color:var(--accent);font-size:10px;padding:6px 9px}.badge.confirmed{background:#b7ce9a15;color:var(--green)}.badge.done{color:#a8bccc;background:#a8bccc15}.badge.cancelled{color:#ba8c88;background:#ba8c8815}.empty{text-align:center;padding:60px;color:var(--muted)}.analytics-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}.panel{padding:25px;background:var(--panel);border:1px solid var(--line)}.panel h3{font-size:15px;margin-bottom:25px}.bar-row{margin:24px 0}.bar-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:12px}.bar-track{height:8px;background:#ffffff10}.bar-track i{display:block;height:100%;background:var(--accent)}.notice{padding:12px 16px;border:1px dashed #d4a57440;color:var(--muted);font-size:10px;line-height:1.7;margin-bottom:22px}.danger{color:#e4a39b!important;border-color:#e4a39b55!important}.client-note{margin-top:20px}.mobile-book{display:none}@media(min-width:1600px){.hero{min-height:730px}.hero-image{height:590px}}@media(max-width:1000px){.navlinks{gap:15px}.nav{gap:18px}.hero h1{font-size:76px}.hero-image{height:500px}.hero-actions{gap:12px}.admin{grid-template-columns:175px 1fr}.sidebar{padding:25px 12px}.admin-main{padding:25px 20px}.stats{gap:8px}.stat{padding:15px}.stat b{font-size:28px}.service{padding:22px}.schedule{grid-template-columns:48px repeat(3,minmax(130px,1fr))}.admin-actions{flex-wrap:wrap;justify-content:end}.nav .btn{padding:13px}.admin-top h1{font-size:29px}}@media(max-width:700px){.nav{height:78px}.navlinks{display:none}.nav>.btn{margin-left:auto;font-size:11px}.nav>.subtle{display:none}.brand{font-size:22px;letter-spacing:3px}.brand-mark{width:30px;height:36px}.hero{padding:35px 0;grid-template-columns:1fr;gap:32px}.hero h1{font-size:74px;max-width:500px}.hero p{font-size:13px}.hero-image{height:350px;margin-right:15px}.hero-actions{gap:20px}.stripe{flex-wrap:wrap;font-size:10px;gap:15px}.section{padding:55px 0}.section-head{align-items:start;flex-direction:column;gap:18px}.section-head p{max-width:100%}.services,.masters{grid-template-columns:1fr}.service h3{margin-top:15px}.service p{min-height:0}.service-footer{margin-top:20px}.masters{gap:25px}.visit{grid-template-columns:1fr;margin-bottom:40px}.visit-copy{padding:30px}.map-art{min-height:240px}.footer{flex-wrap:wrap;padding-bottom:90px}.mobile-book{display:flex;position:fixed;bottom:0;left:0;right:0;background:#171918ee;backdrop-filter:blur(8px);padding:12px 5%;z-index:3;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}.mobile-book span{font-size:11px;color:var(--muted)}.mobile-book .btn{padding:13px 18px}.admin{display:block}.sidebar{padding:15px 5%;gap:16px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .brand{font-size:19px}.sidebar nav{display:flex;gap:3px;overflow:auto}.side-btn{padding:10px;font-size:10px;white-space:nowrap;gap:5px}.sidebar-bottom{display:none}.admin-main{padding:22px 5%}.admin-top{align-items:start}.admin-top h1{font-size:26px}.admin-actions .btn{padding:10px;font-size:10px}.stats{grid-template-columns:1fr 1fr;margin:20px 0}.stat b{font-size:30px}.schedule-scroll{overflow:auto}.schedule{min-width:570px}.toolbar .date-label{width:100%}.toolbar input,.toolbar select{max-width:100%;font-size:12px}.analytics-grid{grid-template-columns:1fr}.modal-body{padding:22px}.modal-head{padding:22px}.two{gap:10px}.slots{grid-template-columns:repeat(3,1fr)}.modal-footer .btn{padding:14px 18px}.legend{flex-wrap:wrap}.notice{font-size:9px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.live-map{min-height:380px;position:relative;background:#ddd}.live-map iframe{display:block;width:100%;height:100%;min-height:380px;border:0}.map-fallback{position:absolute;bottom:34px;left:18px;background:var(--bg);padding:12px 16px;font-size:11px}.master-photo{object-fit:cover;width:100px;height:100px}.masters{grid-template-columns:1fr}.catalog{margin-top:-45px;margin-bottom:75px}.catalog details{border:1px solid var(--line);padding:24px}.catalog summary{cursor:pointer;font-size:19px;font-weight:700}.catalog summary span{float:right;font-size:11px;color:var(--accent);margin-top:7px}.catalog h3{font:26px Oswald;margin:35px 0 16px}.catalog-row{display:flex;justify-content:space-between;gap:20px;padding:20px 0;width:100%;text-align:left;background:transparent;color:var(--ink);border-top:1px solid var(--line)}.catalog-row small{display:block;color:var(--muted);font-size:11px;line-height:1.7;margin-top:7px}.catalog-row strong{white-space:nowrap;color:var(--accent)}.catalog .hint{margin-top:24px}.date-controls{display:flex;gap:5px}.status-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}.status-chip{border:1px solid var(--line);background:transparent;color:var(--muted);padding:11px 14px}.status-chip.active{background:var(--accent);color:var(--bg);border-color:var(--accent)}.status-chip span{margin-left:8px;opacity:.7}.quick-detail{margin-top:18px}.schedule{min-width:0}.appointment{max-width:none}.service h3{font-size:25px}.sidebar nav{position:sticky;top:15px}@media(max-width:700px){.catalog{margin-top:-20px;margin-bottom:45px}.catalog summary{font-size:16px}.catalog summary span{float:none;display:block}.catalog-row{gap:10px}.catalog-row strong{font-size:12px}.catalog-row span{font-size:12px}.date-controls{width:100%}.status-chip{font-size:10px;padding:10px}.schedule{min-width:0!important;grid-template-columns:48px minmax(180px,1fr)!important}.master-photo{width:84px;height:84px}.live-map,.live-map iframe{min-height:320px}.toolbar .date-label{font-size:20px}}
