:root{--ink:#171612;--paper:#eeeae1;--cream:#e3ddd0;--accent:#b6d34b;--muted:#6d6a62;--line:rgba(23,22,18,.18);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--mono:'DM Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 var(--sans)}.grain{position:fixed;inset:0;pointer-events:none;opacity:.13;z-index:10;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}button,input,select{font:inherit}button{cursor:pointer}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5vw;border-bottom:1px solid var(--line)}.wordmark{font:700 28px/18px var(--sans);letter-spacing:-2px;color:inherit;text-decoration:none;display:inline-grid}.wordmark span{font:400 8px var(--sans);letter-spacing:0;vertical-align:top;margin-left:2px}.wordmark small{font:500 8px/9px var(--mono);letter-spacing:3.5px;padding-left:2px}.main-nav{display:flex;gap:30px;align-items:center;font:12px var(--mono);text-transform:uppercase}.main-nav a,.text-button{color:inherit;text-decoration:none;background:none;border:0;font:12px var(--mono);text-transform:uppercase;padding:0}.menu-button{display:none;border:0;background:none;font-size:24px}.hero{min-height:620px;display:grid;grid-template-columns:1.15fr .85fr;border-bottom:1px solid var(--line)}.hero-copy{padding:10vw 5.5vw;display:flex;align-items:flex-start;justify-content:center;flex-direction:column}.eyebrow{font:11px var(--mono);letter-spacing:1.2px;text-transform:uppercase;margin:0 0 24px;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1,h2{font:600 clamp(52px,7vw,102px)/.95 var(--serif);letter-spacing:-.065em;margin-bottom:28px}h1 em,h2 em{font-weight:600}.hero-intro{max-width:365px;font-size:18px;margin-bottom:35px}.button{display:inline-flex;gap:22px;align-items:center;justify-content:center;padding:15px 20px;border:1px solid var(--ink);text-decoration:none;font-weight:600;background:none;color:var(--ink);transition:.2s}.button span{font-size:20px;line-height:.8}.button-primary{background:var(--ink);color:var(--paper)}.button-primary:hover{background:var(--accent);color:var(--ink);border-color:var(--accent)}.button-secondary{background:transparent}.button-ghost{border-color:transparent}.hero-visual{background:#272821;color:#ece6da;position:relative;padding:8vw 5.5vw;min-height:520px;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-visual:before{content:'';position:absolute;width:550px;height:550px;border:1px solid rgba(182,211,75,.75);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-visual:after{content:'';position:absolute;width:300px;height:300px;border:1px solid rgba(238,234,225,.3);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-stamp{z-index:1;font:700 clamp(80px,11vw,160px)/.65 var(--sans);letter-spacing:-10px;text-align:center;color:var(--accent);transform:rotate(-7deg)}.hero-stamp i{font:500 16px var(--mono);letter-spacing:12px;color:var(--paper);font-style:normal}.hero-visual>p{z-index:1;position:absolute;top:30px;left:32px;font:10px/1.8 var(--mono);letter-spacing:1px}.hero-visual .visual-caption{top:auto;bottom:32px;left:auto;right:30px;writing-mode:vertical-rl}.visual-line{position:absolute;width:1px;height:100%;background:rgba(238,234,225,.35);z-index:1}.intro-section{padding:130px 5.5vw 80px;display:grid;grid-template-columns:1fr 1fr}.intro-section h2{grid-column:1/3;max-width:800px}.intro-detail{grid-column:2/3;display:grid;grid-template-columns:70px 1fr;gap:20px;margin-top:25px}.intro-detail span{font:12px var(--mono);color:var(--muted)}.intro-detail p{font-size:17px}.services-section{padding:100px 5.5vw;background:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:8vw}.section-heading h2{font-size:clamp(48px,5vw,75px)}.service-list{border-top:1px solid var(--ink)}.service-card{position:relative;border-bottom:1px solid var(--ink);padding:26px 0;display:grid;grid-template-columns:1fr auto;gap:20px}.service-card h3{font:600 28px/.95 var(--serif);letter-spacing:-.04em;margin:0 0 8px}.service-card p{font-size:14px;margin:0;color:var(--muted);max-width:310px}.service-meta{text-align:right;font:11px var(--mono);white-space:nowrap}.service-meta strong{display:block;font:600 15px var(--sans);margin-top:5px}.booking-section{background:var(--ink);color:var(--paper);padding:110px 5.5vw;display:grid;grid-template-columns:.82fr 1.18fr;gap:9vw}.booking-aside h2{font-size:clamp(48px,5vw,75px)}.booking-aside>p:not(.eyebrow){max-width:350px;color:#c7c1b6}.booking-note{margin-top:42px;border-top:1px solid #696760;padding-top:18px;max-width:360px;color:#d5d0c5;font-size:13px}.booking-note span{color:var(--accent);margin-right:8px}.booking-card{background:var(--paper);color:var(--ink);padding:34px;min-height:480px}.booking-progress{display:flex;gap:18px;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:36px;overflow:auto;white-space:nowrap}.booking-progress span{font:10px var(--mono);color:var(--muted)}.booking-progress .active{color:var(--ink)}.booking-step{display:none}.booking-step.active{display:block}.booking-step h3{font:600 33px/1 var(--serif);letter-spacing:-.04em;margin-bottom:24px}.booking-services{display:grid;gap:9px;margin-bottom:28px}.booking-service{background:transparent;border:1px solid var(--line);padding:15px;text-align:left;display:grid;grid-template-columns:1fr auto;gap:8px}.booking-service.active{border:2px solid var(--ink);background:#e3ddd0}.booking-service b{font-size:15px}.booking-service small{font:11px var(--mono);color:var(--muted)}.booking-service strong{grid-column:2;grid-row:1/3;align-self:center;font:600 14px var(--sans)}.next-step{float:right}.back-button{border:0;background:transparent;padding:0;font:11px var(--mono);margin-bottom:25px}.date-scroller{display:flex;gap:8px;overflow:auto;padding-bottom:8px;margin-bottom:25px}.date-button{min-width:65px;padding:11px 8px;border:1px solid var(--line);background:transparent;text-align:center;font:11px var(--mono)}.date-button strong{display:block;font:600 23px var(--serif);margin:2px 0}.date-button.active{background:var(--ink);color:var(--paper)}.slot-label{font:11px var(--mono);text-transform:uppercase}.time-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:28px}.slot{padding:11px 5px;border:1px solid var(--line);background:transparent;font:12px var(--mono)}.slot.active{background:var(--accent);border-color:var(--accent)}.slot[disabled]{opacity:.32;text-decoration:line-through;cursor:not-allowed}.selection-summary{background:var(--cream);padding:14px;font-size:13px}.booking-step form{display:grid;gap:15px}.booking-step label,.admin-login label,.inline-form label{display:grid;gap:7px;font-size:12px;font-weight:600}.booking-step input,.admin-login input,.inline-form input,.inline-form select{border:1px solid var(--line);border-radius:0;background:#faf8f2;padding:12px;font-size:15px}.checkbox-label{grid-template-columns:18px 1fr;align-items:start;gap:9px!important;font-size:12px!important;font-weight:400!important}.checkbox-label input{margin:4px 0 0;padding:0}.booking-success{text-align:center;padding:50px 10px}.success-mark{width:48px;height:48px;border-radius:50%;background:var(--accent);display:grid;place-items:center;font-size:28px;margin:0 auto 23px}.booking-success h3{font:600 42px var(--serif);letter-spacing:-.04em;margin-bottom:14px}.booking-success p:not(.eyebrow){max-width:330px;margin:0 auto 28px}footer{padding:45px 5.5vw;display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--cream)}footer p{font-size:12px;margin:0;color:var(--muted)}dialog{border:0;padding:0;max-width:min(1120px,94vw);width:100%;background:transparent}dialog::backdrop{background:rgba(15,14,12,.72);backdrop-filter:blur(4px)}.admin-shell{background:var(--paper);min-height:min(720px,90vh);position:relative}.close-dialog{position:absolute;right:15px;top:12px;z-index:5;border:0;background:none;font-size:31px}.admin-login{max-width:420px;margin:auto;padding:110px 35px}.admin-login h2{font-size:60px}.admin-login form{display:grid;gap:18px;margin-top:28px}.admin-login small{display:block;margin-top:25px;color:var(--muted)}.admin-login small strong{font-family:var(--mono)}#admin-panel{display:grid;grid-template-columns:220px 1fr;min-height:min(720px,90vh)}.admin-sidebar{padding:35px 22px;background:var(--ink);color:var(--paper);display:flex;flex-direction:column}.admin-sidebar .wordmark{font-size:23px}.admin-user{margin:54px 0 26px;font-size:14px}.admin-user span{font:10px var(--mono);color:#aaa69b}.admin-sidebar nav{display:grid;gap:3px}.admin-sidebar nav button,.logout-button{border:0;background:transparent;color:#c6c1b5;text-align:left;padding:11px 10px;font:12px var(--sans)}.admin-sidebar nav button.active{background:#35362e;color:var(--accent)}.logout-button{margin-top:auto;color:#aaa69b}.admin-content{padding:42px;overflow:auto;max-height:90vh}.admin-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;border-bottom:1px solid var(--line);padding-bottom:25px}.admin-top .eyebrow{margin-bottom:8px}.admin-top h2{font-size:42px;margin:0}.admin-top .button{font-size:12px;padding:12px}.agenda-date{font:12px var(--mono);margin:26px 0 12px;color:var(--muted)}.appointment-row{display:grid;grid-template-columns:75px 1fr auto;gap:15px;align-items:center;padding:17px 0;border-top:1px solid var(--line)}.appointment-time{font:12px var(--mono)}.appointment-main b{display:block}.appointment-main span{font-size:12px;color:var(--muted)}.status{font:10px var(--mono);text-transform:uppercase;padding:5px 7px;background:#d8e7a1}.empty{padding:35px 0;color:var(--muted)}.table{width:100%;border-collapse:collapse;margin-top:26px;text-align:left}.table th{font:10px var(--mono);text-transform:uppercase;color:var(--muted);padding:0 10px 9px}.table td{padding:12px 10px;border-top:1px solid var(--line);font-size:13px}.table button{background:none;border:0;text-decoration:underline;font-size:12px}.setting-card{margin-top:25px;border:1px solid var(--line);padding:22px;max-width:620px}.setting-card h3{font:600 25px var(--serif);margin-bottom:6px}.setting-card p{font-size:13px;color:var(--muted)}.hours-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:18px}.hour-day{padding:11px;border:1px solid var(--line);font-size:12px}.hour-day b{display:block}.hour-day span{color:var(--muted);font:10px var(--mono)}.inline-form{border:1px solid var(--line);padding:18px;display:grid;gap:12px;margin:24px 0}.inline-form h3{font:600 26px var(--serif);margin:0}.inline-form>div{display:flex;justify-content:flex-end;gap:8px}.block-list{margin-top:24px}.block-item{padding:12px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:13px}.block-item button{border:0;background:none;text-decoration:underline;font-size:12px}
@media(max-width:700px){.site-header{height:65px;padding:0 22px}.main-nav{display:none}.menu-button{display:block}.hero{grid-template-columns:1fr}.hero-copy{min-height:490px;padding:82px 22px}.hero-visual{min-height:330px}.hero-stamp{font-size:100px}.hero-visual:before{width:420px;height:420px}.intro-section{padding:82px 22px 55px;display:block}.intro-section h2{font-size:48px}.intro-detail{margin-top:45px}.services-section{padding:70px 22px;display:block}.section-heading h2{font-size:52px}.service-list{margin-top:40px}.booking-section{padding:75px 22px;display:block}.booking-aside h2{font-size:53px}.booking-aside{margin-bottom:45px}.booking-card{padding:22px;min-height:500px}.booking-progress{gap:13px;margin-bottom:28px}.time-slots{grid-template-columns:repeat(2,1fr)}footer{padding:34px 22px;display:grid;grid-template-columns:1fr auto}footer p{grid-column:1/3}#admin-panel{grid-template-columns:1fr}.admin-sidebar{padding:22px;min-height:auto}.admin-sidebar .wordmark,.admin-user,.logout-button{display:none}.admin-sidebar nav{display:flex;overflow:auto}.admin-sidebar nav button{white-space:nowrap}.admin-content{padding:27px 22px}.admin-top h2{font-size:35px}.admin-top{display:block}.admin-top .button{margin-top:18px}.appointment-row{grid-template-columns:58px 1fr}.appointment-row .status{display:none}.table{min-width:540px}.admin-content{overflow:auto}.admin-shell{min-height:100vh}.close-dialog{color:var(--paper)}dialog{max-width:100vw;min-height:100vh}.admin-login{padding-top:100px}}
.success-actions{display:flex;justify-content:center;align-items:center;gap:4px;flex-wrap:wrap}.footer-actions{display:flex;gap:21px}.manage-shell{background:var(--paper);position:relative;min-height:500px;padding:76px 8vw}.close-manage{position:absolute;right:18px;top:13px;border:0;background:none;font-size:30px}.manage-lookup,.manage-result{max-width:590px;margin:auto}.manage-lookup h2{font-size:58px}.manage-lookup>p:not(.eyebrow){max-width:390px}.manage-lookup form{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:30px}.manage-lookup label{display:grid;gap:7px;font-size:12px;font-weight:600}.manage-lookup input{border:1px solid var(--line);background:#faf8f2;padding:12px;font-size:15px}.manage-result h2{font-size:43px}.manage-appointment{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:20px 0;margin:23px 0}.manage-appointment strong{font:600 28px/1 var(--serif);letter-spacing:-.04em;display:block;margin-bottom:10px}.manage-appointment p{margin-bottom:4px;font-size:14px}.manage-actions{display:flex;gap:9px;flex-wrap:wrap}.manage-actions .cancel{border-color:#9d4338;color:#9d4338}.reschedule-form{border-top:1px solid var(--line);padding-top:20px;margin-top:20px;display:grid;gap:12px;max-width:460px}.reschedule-form label{display:grid;gap:7px;font-size:12px;font-weight:600}.reschedule-form input,.reschedule-form select{border:1px solid var(--line);padding:11px;background:#faf8f2}.reschedule-form .buttons{display:flex;gap:8px}@media(max-width:700px){.footer-actions{gap:13px}.manage-shell{min-height:100vh;padding:85px 25px}.manage-lookup h2{font-size:48px}.manage-lookup form{grid-template-columns:1fr}.manage-lookup .button{width:100%}}
.booking-step select{border:1px solid var(--line);border-radius:0;background:#faf8f2;padding:12px;font-size:15px}.field-help{font-size:11px;color:var(--muted);font-weight:400;margin-top:-2px}
.payment-result{min-height:100vh;max-width:720px;margin:auto;padding:18vh 8vw;background:var(--paper)}.payment-result h1{font-size:clamp(54px,8vw,92px);margin-bottom:25px}.payment-result p:not(.eyebrow){max-width:440px;font-size:17px;margin-bottom:30px}
:root{--ink:#101010;--paper:#f6f6f4;--cream:#e7e7e5;--accent:#fafafa;--muted:#686868;--line:rgba(16,16,16,.2)}.hero-visual{background:#111}.hero-visual:before{border-color:rgba(255,255,255,.72)}.hero-stamp{color:#fff}.button-primary:hover{background:#fff;color:#101010;border-color:#fff}.booking-service.active{background:#dededc}.slot.active{background:#101010;color:#fff;border-color:#101010}.success-mark{background:#fff;color:#101010}.status{background:#e0e0de}.work-section{padding:110px 5.5vw;background:#101010;color:#f6f6f4}.work-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:55px}.work-heading .eyebrow{grid-column:1/3;color:#aaa}.work-heading h2{font-size:clamp(52px,6vw,84px);margin:0}.work-heading>p:not(.eyebrow){max-width:330px;color:#c6c6c3;margin:0 0 8px}.work-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:280px 280px;gap:12px}.work-card{position:relative;overflow:hidden;background:#252525;min-height:220px}.work-card:first-child{grid-row:1/3}.work-card img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1);transition:transform .45s,filter .45s}.work-card:hover img{transform:scale(1.04);filter:grayscale(0)}.work-placeholder{height:100%;padding:22px;display:flex;align-items:flex-end;background:linear-gradient(145deg,#292929,#111);font:500 12px var(--mono);letter-spacing:1.5px;color:#aaa}.work-placeholder:before{content:'DZS';position:absolute;top:20px;right:18px;font:700 70px/.8 var(--serif);letter-spacing:-6px;color:#444}.work-caption{position:absolute;left:16px;bottom:14px;margin:0;font:10px var(--mono);letter-spacing:1.1px;text-transform:uppercase;color:#fff;text-shadow:0 1px 7px #000}.work-footnote{font:10px var(--mono);letter-spacing:1.4px;color:#aaa;text-align:right;margin:18px 0 0}.gallery-form{max-width:630px}.gallery-item-admin{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding:13px 0;font-size:13px}.gallery-item-admin small{color:var(--muted)}@media(max-width:700px){.work-section{padding:78px 22px}.work-heading{display:block;margin-bottom:36px}.work-heading .eyebrow{margin-bottom:20px}.work-heading h2{font-size:52px;margin-bottom:25px}.work-grid{grid-template-columns:1fr 1fr;grid-template-rows:255px 185px 185px;gap:8px}.work-card:first-child{grid-column:1/3;grid-row:auto}.work-footnote{text-align:left}.main-nav a[href="#cortes"]{display:none}}
.brand-logo{display:block;width:152px;height:45px;background-position:center;background-repeat:no-repeat;text-decoration:none}.logo-dark{background-color:transparent;background-image:url('assets/dzs-logo-black.jpg');background-size:230% auto;mix-blend-mode:multiply}.logo-light{width:155px;background-image:url('assets/dzs-logo-white.png');background-size:210% auto;mix-blend-mode:screen}.admin-sidebar .brand-logo{margin-bottom:0}.hero-stamp{width:min(70%,430px);height:250px;transform:none;display:grid;place-items:center;gap:22px;letter-spacing:0}.hero-monogram{display:block;width:225px;height:115px;background:url('assets/dzs-monogram.jpg') center/165% auto no-repeat;filter:invert(1);mix-blend-mode:screen}.hero-logo{display:block;width:290px;height:85px;background:url('assets/dzs-logo-white.png') center/155% auto no-repeat}.work-placeholder:before{content:'';width:120px;height:82px;background:url('assets/dzs-monogram.jpg') center/170% auto no-repeat;filter:invert(1);opacity:.14;top:20px;right:18px;position:absolute}@media(max-width:700px){.brand-logo{width:132px;height:40px}.hero-stamp{height:195px;width:85%}.hero-monogram{width:175px;height:92px}.hero-logo{width:220px;height:64px}.admin-sidebar .brand-logo{display:block!important}}
@media(max-width:700px){body.menu-open{overflow:hidden}.site-header{position:relative;z-index:30;background:var(--paper)}.menu-button{position:relative;z-index:32;width:42px;height:42px;border:1px solid var(--line);font-size:25px;line-height:1;background:var(--paper)}.main-nav.is-open{display:grid;position:absolute;z-index:31;top:65px;left:0;right:0;padding:9px 22px 24px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 18px 28px rgba(0,0,0,.12);gap:0}.main-nav.is-open a,.main-nav.is-open .text-button{display:block;width:100%;padding:16px 0;border-bottom:1px solid var(--line);font:12px var(--mono);text-align:left}.main-nav.is-open a[href="#cortes"]{display:block}.main-nav.is-open .text-button{padding-bottom:0;border-bottom:0;margin-top:8px;color:var(--muted)}}
 .work-grid{grid-template-columns:repeat(3,1fr);grid-template-rows:none}.work-card{aspect-ratio:3/4;min-height:0}.work-card:first-child{grid-column:auto;grid-row:auto}@media(max-width:700px){.work-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:none}.work-card{aspect-ratio:3/4}.work-card:first-child{grid-column:auto;grid-row:auto}}
