:root{--ink:#151512;--paper:#f4f1ea;--paper-2:#ebe6dc;--white:#fffdf8;--gold:#b9945d;--gold-soft:#d8c099;--line:rgba(21,21,18,.15);--muted:#6e6b63;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--radius:3px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}main{min-height:65vh}.site-header{height:88px;border-bottom:1px solid var(--line);background:rgba(244,241,234,.94);backdrop-filter:blur(14px);position:relative;z-index:20}.nav-wrap{height:100%;max-width:1440px;margin:auto;padding:0 5vw;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;line-height:1}.brand-mark{width:38px;height:38px;border:1px solid var(--ink);display:grid;place-items:center;font:500 17px var(--serif);letter-spacing:-.08em;padding-right:2px}.brand strong{display:block;font:600 17px var(--serif);letter-spacing:.16em}.brand small{display:block;font-size:8px;letter-spacing:.3em;margin-top:7px}.primary-nav{display:flex;align-items:center;gap:34px;font-size:13px;letter-spacing:.05em}.primary-nav a,.nav-link-button{transition:opacity .2s}.primary-nav a:hover,.nav-link-button:hover{opacity:.55}.nav-cta{border:1px solid var(--ink);padding:11px 20px}.nav-link-button{border:0;background:none;color:inherit}.menu-toggle{display:none;border:0;background:transparent;width:40px}.menu-toggle span{display:block;height:1px;background:var(--ink);margin:8px 0}.eyebrow{font-size:11px;letter-spacing:.27em;font-weight:600;margin:0 0 22px}.button{min-height:52px;padding:0 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:42px;border:0;border-radius:var(--radius);font-size:13px;font-weight:600;letter-spacing:.035em;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--gold);color:#17140e}.button-primary:hover{background:#c4a16c}.button-light{background:var(--paper);color:var(--ink)}.button-dark{background:var(--ink);color:var(--white)}.hero{min-height:calc(100vh - 88px);display:grid;grid-template-columns:53% 47%;position:relative;overflow:hidden}.hero-copy{padding:11vh 7vw 12vh 9vw;display:flex;flex-direction:column;justify-content:center}.hero h1,.page-intro h1,.legal-page h1,.success-page h1{font:500 clamp(58px,7.5vw,116px)/.94 var(--serif);letter-spacing:-.045em;margin:0}.hero h1 em,.section-heading h2 em,.experience h2 em,.booking-callout h2 em,.page-intro h1 em,.legal-page h1 em,.success-page h1 em,.login-page h1 em{font-weight:500;color:var(--gold)}.hero-lead{max-width:540px;color:var(--muted);font-size:18px;margin:35px 0 38px}.hero-actions{display:flex;align-items:center;gap:34px}.text-link{font-size:13px;border-bottom:1px solid var(--ink);padding:8px 0}.text-link span{margin-left:18px}.hero-art{background:var(--ink);color:var(--paper);position:relative;display:grid;place-items:center;min-height:620px}.art-frame{width:62%;height:72%;border:1px solid rgba(255,255,255,.25);position:relative;display:grid;place-items:center;background:radial-gradient(circle at 70% 20%,rgba(185,148,93,.28),transparent 28%),linear-gradient(135deg,#25231f,#11110f 60%)}.art-frame:before,.art-frame:after{content:"";position:absolute;background:var(--gold)}.art-frame:before{width:1px;height:120%;transform:rotate(29deg);opacity:.5}.art-frame:after{width:44%;height:44%;border-radius:50%;background:transparent;border:1px solid var(--gold);opacity:.35}.art-monogram{font:500 clamp(90px,12vw,180px)/1 var(--serif);letter-spacing:-.13em;padding-right:.13em;color:var(--gold-soft);z-index:1}.art-word{position:absolute;top:18px;left:-48px;font-size:10px;letter-spacing:.5em;transform:rotate(-90deg)}.art-caption{position:absolute;bottom:22px;font-size:9px;letter-spacing:.35em}.art-number{position:absolute;top:6%;right:7%;font:italic 44px var(--serif);color:var(--gold)}.art-note{position:absolute;bottom:5%;left:8%;font:italic 18px var(--serif);color:var(--gold-soft)}.hero-scroll{position:absolute;left:2.8vw;bottom:8vh;writing-mode:vertical-rl;font-size:8px;letter-spacing:.26em}.hero-scroll span{display:inline-block;width:1px;height:45px;background:var(--ink);margin-top:12px}.section{padding:130px 9vw}.section-heading{display:grid;grid-template-columns:1fr .6fr;align-items:end;gap:60px;margin-bottom:70px}.section-heading h2,.experience h2,.booking-callout h2,.site-footer h2{font:500 clamp(44px,5vw,72px)/1.04 var(--serif);letter-spacing:-.035em;margin:0}.section-heading>p{color:var(--muted);max-width:430px}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:70px 1fr 150px 50px;align-items:center;min-height:142px;border-bottom:1px solid var(--line);transition:padding .25s,background .25s}.service-row:hover{padding:0 20px;background:rgba(255,255,255,.4)}.service-index{color:var(--gold);font:italic 17px var(--serif)}.service-name{font:500 30px var(--serif)}.service-name small{display:block;font:400 13px var(--sans);color:var(--muted);margin-top:7px}.service-meta{text-align:right;color:var(--muted);font-size:13px}.service-meta strong{color:var(--ink);font-weight:500}.service-arrow{font-size:23px;text-align:right}.experience{display:grid;grid-template-columns:1fr 1fr;min-height:800px;background:var(--ink);color:var(--paper)}.experience-visual{position:relative;overflow:hidden;background:radial-gradient(circle at 60% 40%,rgba(185,148,93,.35),transparent 28%),repeating-linear-gradient(120deg,transparent 0 60px,rgba(255,255,255,.025) 61px 62px);display:grid;place-items:center}.experience-mark{width:44%;aspect-ratio:1;border:1px solid rgba(216,192,153,.45);border-radius:50%;display:grid;place-items:center;font:500 clamp(85px,12vw,180px) var(--serif);letter-spacing:-.13em;padding-right:.13em;color:var(--gold-soft)}.vertical-text{position:absolute;left:6%;top:9%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.4em}.experience-copy{padding:110px 9vw 100px 8vw;display:flex;flex-direction:column;justify-content:center}.experience-copy>p:not(.eyebrow){color:#aaa79f;max-width:580px}.experience-copy ul{list-style:none;padding:0;margin:32px 0 42px;border-top:1px solid rgba(255,255,255,.15)}.experience-copy li{border-bottom:1px solid rgba(255,255,255,.15);padding:15px 0}.experience-copy li span{color:var(--gold);font:italic 14px var(--serif);margin-right:25px}.experience-copy .button{align-self:flex-start}.booking-callout{text-align:center;padding:140px 20px}.booking-callout h2{margin-bottom:24px}.booking-callout p:not(.eyebrow){color:var(--muted);margin:0 auto 36px;max-width:520px}.site-footer{background:#0d0d0c;color:var(--paper);padding:90px 7vw 30px}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:50px}.footer-kicker,.site-footer span{font-size:9px;letter-spacing:.25em;color:#85827a}.site-footer h2{font-size:42px;margin-top:30px}.site-footer h2 em{color:var(--gold);font-weight:500}.site-footer p{font-size:14px;color:#bbb7ad}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:70px;padding-top:24px;display:flex;gap:35px;font-size:11px;color:#77746d}.footer-bottom span{margin-right:auto}.page-intro{padding:85px 9vw 65px}.page-intro h1{font-size:clamp(52px,6vw,90px)}.page-intro>p:last-child{color:var(--muted);font-size:17px}.booking-form{max-width:1280px;margin:0 auto 120px;padding:0 5vw}.booking-step{background:rgba(255,255,255,.5);border:1px solid var(--line);border-bottom:0;padding:42px}.booking-step:last-child{border-bottom:1px solid var(--line)}.step-heading{display:flex;gap:22px;margin-bottom:30px}.step-heading>span{width:36px;height:36px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;font:italic 12px var(--serif)}.step-heading h2{font:500 28px var(--serif);margin:0}.step-heading p{color:var(--muted);font-size:13px;margin:3px 0}.service-options{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.select-card{min-height:175px;border:1px solid var(--line);padding:22px;position:relative;display:flex;flex-direction:column;cursor:pointer;transition:.2s}.select-card:hover{border-color:var(--gold)}.select-card input{position:absolute;opacity:0}.select-card:has(input:checked){background:var(--ink);color:var(--paper);border-color:var(--ink)}.select-card strong{font:500 20px var(--serif);margin-bottom:8px}.select-card small{font-size:12px;color:var(--muted);line-height:1.5}.select-card:has(input:checked) small{color:#aaa79f}.select-check{position:absolute;right:16px;top:14px;opacity:0;color:var(--gold)}.select-card:has(input:checked) .select-check{opacity:1}.option-meta{margin-top:auto;font-size:11px;letter-spacing:.06em;color:var(--gold)}.date-options{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.date-card{background:transparent;border:1px solid var(--line);min-width:91px;height:115px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--ink);position:relative}.date-card small{font-size:9px;letter-spacing:.12em;color:var(--muted)}.date-card strong{font:500 27px var(--serif)}.date-card span{font-size:10px;color:var(--muted)}.date-card:hover:not(:disabled),.date-card.is-selected{background:var(--gold);border-color:var(--gold)}.date-card.is-closed{opacity:.35;cursor:not-allowed}.date-card em{font-size:8px;text-transform:uppercase}.time-options{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.time-button{height:48px;background:transparent;border:1px solid var(--line);color:var(--ink)}.time-button:hover,.time-button.is-selected{background:var(--ink);color:var(--paper)}.time-button:disabled{opacity:.25;text-decoration:line-through;cursor:not-allowed}.slot-placeholder{grid-column:1/-1;background:var(--paper-2);padding:30px;text-align:center;color:var(--muted);font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-field{display:flex;flex-direction:column}.form-field.full{grid-column:1/-1}.form-field label{font-size:12px;margin-bottom:8px;font-weight:600}.form-field label small{color:var(--muted);font-weight:400}.form-field input,.form-field textarea,.filter-bar input,.filter-bar select,.date-filter input{border:1px solid var(--line);background:rgba(255,255,255,.45);border-radius:var(--radius);padding:14px 15px;outline:none;color:var(--ink)}.form-field input:focus,.form-field textarea:focus,.filter-bar input:focus,.filter-bar select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(185,148,93,.12)}.field-validation,.form-field>span{color:#9b3c36;font-size:11px;margin-top:5px}.field-validation:empty,.form-field>span:empty{display:none}.input-validation-error{border-color:#9b3c36!important}.validation-summary{background:#f4deda;color:#7e2d28;padding:13px 16px;margin-bottom:20px;font-size:13px}.validation-summary:empty,.validation-summary-valid{display:none}.consent,.remember{display:flex;align-items:flex-start;gap:10px;font-size:12px;color:var(--muted);margin:22px 0}.consent input,.remember input{accent-color:var(--gold);margin-top:4px}.consent a{text-decoration:underline}.booking-submit{width:100%;margin-top:15px}.form-footnote{text-align:center;color:var(--muted);font-size:11px}.success-page{max-width:850px;margin:0 auto;padding:110px 30px 140px;text-align:center}.success-mark,.login-mark{width:70px;height:70px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:italic 30px var(--serif);margin:0 auto 30px}.success-page h1{font-size:clamp(48px,6vw,78px)}.success-page>p:not(.eyebrow){color:var(--muted);max-width:550px;margin:25px auto}.success-card{display:grid;grid-template-columns:1fr 1fr;text-align:left;border:1px solid var(--line);margin:40px 0}.success-card div{padding:22px;border-bottom:1px solid var(--line)}.success-card div:nth-child(odd){border-right:1px solid var(--line)}.success-card span,.success-card strong{display:block}.success-card span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em}.success-card strong{font:500 18px var(--serif);margin-top:5px}.legal-page{max-width:1100px;margin:auto;padding:100px 7vw 140px}.legal-page h1{font-size:clamp(50px,6vw,78px)}.legal-copy{max-width:750px;margin:70px 0 0 auto}.legal-copy h2{font:500 25px var(--serif);margin:35px 0 8px}.legal-copy p{color:var(--muted)}.legal-note{border-left:2px solid var(--gold);padding:15px 20px;background:rgba(185,148,93,.08)}
/* Admin */
.admin-shell{background:#eeece6}.admin-shell .site-header{background:#141412;color:var(--paper);border-color:#292925}.admin-shell .brand-mark{border-color:var(--gold);color:var(--gold)}.admin-shell .menu-toggle span{background:var(--paper)}.admin-page{max-width:1450px;margin:auto;padding:65px 5vw 110px}.admin-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:36px}.admin-heading h1,.detail-heading h1{font:500 clamp(38px,5vw,62px) var(--serif);margin:0}.admin-heading p{color:var(--muted);margin:5px 0}.date-filter{display:flex;flex-direction:column}.date-filter label,.filter-bar label{font-size:10px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:5px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.stat-card{background:var(--white);border:1px solid var(--line);padding:25px}.stat-card.accent{background:var(--gold);border-color:var(--gold)}.stat-card span,.stat-card small{display:block;color:var(--muted);font-size:11px}.stat-card strong{display:block;font:500 38px var(--serif);margin:8px 0}.stat-card.accent span,.stat-card.accent small{color:#4e402b}.admin-card{background:var(--white);border:1px solid var(--line);padding:30px}.admin-card-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px}.admin-card-head h2,.detail-card h2,.status-actions h2{font:500 24px var(--serif);margin:0}.admin-card-head p,.status-actions p{margin:2px 0;color:var(--muted);font-size:12px}.admin-card-head>a{font-size:12px;border-bottom:1px solid}.appointment-timeline{padding-top:12px}.timeline-item{display:grid;grid-template-columns:80px 28px 1fr;min-height:120px}.timeline-item time{font:500 20px var(--serif);padding-top:25px}.timeline-item time small{display:block;color:var(--muted);font:400 10px var(--sans)}.timeline-line{position:relative}.timeline-line:before{content:"";width:1px;background:var(--line);position:absolute;left:50%;top:0;bottom:0}.timeline-line span{width:9px;height:9px;border-radius:50%;background:var(--gold);position:absolute;left:calc(50% - 4px);top:34px}.timeline-content{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:22px 0 18px 25px}.timeline-content h3{font:500 21px var(--serif);margin:6px 0 0}.timeline-content p{color:var(--muted);font-size:12px;margin:0}.appointment-note{color:var(--muted);font-style:italic}.timeline-actions{display:flex;align-items:center;gap:18px;font-size:12px}.icon-button{width:38px;height:38px;border:1px solid var(--line);display:inline-grid;place-items:center}.status-pill{font-size:9px;text-transform:uppercase;letter-spacing:.08em;border-radius:50px;padding:5px 9px;background:#ece8de;white-space:nowrap}.status-pending{--status:#b77b32}.status-confirmed{--status:#3d7564}.status-completed{--status:#516d86}.status-cancelled{--status:#a54b45}.status-noshow{--status:#6f6876}.status-pill{color:var(--status);background:color-mix(in srgb,var(--status) 12%,white)}.empty-state{text-align:center;padding:75px 20px}.empty-state span{font-size:35px;color:var(--gold)}.empty-state h3{font:500 22px var(--serif);margin:10px}.empty-state p{color:var(--muted)}.filter-bar{display:grid;grid-template-columns:180px 190px 1fr auto auto;align-items:end;gap:12px;margin-bottom:24px}.filter-bar>div{display:flex;flex-direction:column}.filter-bar .button{min-height:51px}.clear-filter{font-size:12px;padding:15px}.responsive-table{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:780px}th{text-align:left;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.12em;padding:16px;border-bottom:1px solid var(--line)}td{padding:18px 16px;border-bottom:1px solid var(--line);font-size:13px}td strong,td small{display:block}td small{color:var(--muted)}.table-card{padding:0}.table-card .admin-card-head{padding:24px 30px}.table-card table{padding:0 15px}.detail-page>.back-link{display:inline-block;margin-bottom:30px}.detail-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px}.detail-heading p{color:var(--muted);font-size:12px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-card dl{margin:20px 0 0}.detail-card dl div{display:grid;grid-template-columns:130px 1fr;padding:15px 0;border-top:1px solid var(--line)}.detail-card dt{color:var(--muted);font-size:11px}.detail-card dd{margin:0}.status-actions{margin-top:16px;display:flex;justify-content:space-between;align-items:center}.action-buttons{display:flex;gap:8px;flex-wrap:wrap}.action-buttons form{display:inline}.status-button{border:1px solid var(--status);color:var(--status);background:transparent;padding:9px 13px;font-size:11px}.login-page{min-height:calc(100vh - 88px);display:grid;grid-template-columns:1fr 1fr}.login-aside{background:var(--ink);color:var(--paper);padding:10vh 8vw;display:flex;flex-direction:column;justify-content:center}.login-aside h1{font:500 clamp(52px,6vw,84px)/.98 var(--serif);margin:0}.login-aside>p:not(.eyebrow){color:#aaa79f;max-width:440px}.login-quote{border-top:1px solid #33332e;margin-top:70px;padding-top:25px;color:var(--gold-soft);font:italic 17px var(--serif)}.login-panel{display:grid;place-items:center;padding:50px}.login-box{width:min(430px,100%)}.login-box .login-mark{margin:0 0 35px}.login-box h2{font:500 35px var(--serif);margin:0}.login-box>p{color:var(--muted);margin-bottom:30px}.login-box .form-field{margin-bottom:18px}.login-box .back-link{display:inline-block;margin-top:25px;font-size:12px}.toast{position:fixed;right:25px;top:105px;z-index:50;padding:14px 20px;color:white;font-size:13px;box-shadow:0 10px 35px rgba(0,0,0,.2);animation:toast-in .35s ease}.toast-success{background:#345f52}.toast-error{background:#92433d}@keyframes toast-in{from{opacity:0;transform:translateY(-10px)}}
.service-admin-table{min-width:1050px}.service-admin-table td:nth-child(2){max-width:360px}.service-admin-table tr.is-muted{opacity:.58}.visibility-pill{display:inline-flex;border-radius:50px;padding:5px 10px;font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.visibility-pill.is-visible{color:#2e6855;background:#e3f0e9}.visibility-pill.is-hidden{color:#766e61;background:#ece9e2}.service-actions{display:flex;align-items:center;gap:7px;white-space:nowrap}.service-actions form{display:inline}.small-action{border:1px solid var(--line);background:transparent;color:var(--ink);padding:7px 9px;font-size:10px}.small-action:hover{border-color:var(--gold)}.small-action.danger{color:#93443e}.service-edit-page{max-width:1050px}.service-edit-page>.back-link{display:inline-block;margin-bottom:28px}.service-edit-form{padding:38px}.service-edit-form .form-field input,.service-edit-form .form-field textarea{background:var(--paper)}.field-help{color:var(--muted);font-size:10px;margin-top:6px}.visibility-field>label:first-child{font-size:12px;margin-bottom:8px;font-weight:600}.switch-field{min-height:55px;border:1px solid var(--line);background:var(--paper);padding:10px 14px;display:flex;align-items:center;gap:12px;cursor:pointer}.switch-field input{width:18px;height:18px;accent-color:var(--gold)}.switch-field span,.switch-field strong,.switch-field small{display:block}.switch-field strong{font-size:12px}.switch-field small{font-size:10px;color:var(--muted)}.form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.form-actions .button-light{border:1px solid var(--line)}.schedule-admin-page{max-width:1120px}.schedule-form{padding:38px}.schedule-note{display:flex;gap:16px;padding:17px 20px;margin-bottom:24px;border-left:2px solid var(--gold);background:rgba(185,148,93,.1);font-size:12px}.schedule-note span{color:var(--muted)}.schedule-list{border-top:1px solid var(--line)}.schedule-row{display:grid;grid-template-columns:minmax(150px,1fr) 105px 180px 180px;gap:22px;align-items:center;padding:20px 10px;border-bottom:1px solid var(--line);transition:opacity .2s}.schedule-row.is-closed{opacity:.58}.schedule-day strong,.schedule-day small{display:block}.schedule-day strong{font:500 20px var(--serif)}.schedule-day small{font-size:10px;color:var(--muted)}.schedule-toggle{display:flex;align-items:center;gap:8px;cursor:pointer}.schedule-toggle input{position:absolute;opacity:0}.schedule-toggle>span{width:38px;height:21px;border-radius:20px;background:#c7c2b7;position:relative;transition:.2s}.schedule-toggle>span:after{content:"";width:15px;height:15px;border-radius:50%;background:white;position:absolute;left:3px;top:3px;transition:.2s}.schedule-toggle input:checked+span{background:var(--gold)}.schedule-toggle input:checked+span:after{transform:translateX(17px)}.schedule-toggle em{font-style:normal;font-size:11px}.schedule-time{display:flex;flex-direction:column}.schedule-time label{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:5px}.schedule-time input{border:1px solid var(--line);background:var(--paper);padding:10px 12px;color:var(--ink)}.schedule-time input[readonly]{cursor:not-allowed}.schedule-time>span{color:#9b3c36;font-size:10px}.footer-hours span{display:block;color:#bbb7ad;font-size:12px;letter-spacing:0}.footer-hours b{font-weight:500;color:var(--paper)}
@media(max-width:980px){.hero{grid-template-columns:1fr}.hero-copy{padding:90px 8vw}.hero-art{min-height:570px}.hero-scroll{display:none}.service-options{grid-template-columns:1fr 1fr}.time-options{grid-template-columns:repeat(5,1fr)}.experience{grid-template-columns:1fr}.experience-visual{min-height:600px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.stat-grid{grid-template-columns:1fr 1fr}.filter-bar{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.login-page{grid-template-columns:1fr}.login-aside{min-height:500px}.detail-grid{grid-template-columns:1fr}.schedule-row{grid-template-columns:1fr 100px 150px 150px;gap:12px}}
@media(max-width:680px){.site-header{height:72px}.nav-wrap{padding:0 20px}.menu-toggle{display:block}.primary-nav{display:none;position:absolute;left:0;right:0;top:72px;background:var(--paper);color:var(--ink);padding:28px 20px;flex-direction:column;align-items:stretch;gap:20px;border-bottom:1px solid var(--line)}.admin-shell .primary-nav{background:var(--ink);color:var(--paper)}.primary-nav.is-open{display:flex}.hero{min-height:auto}.hero-copy{padding:70px 24px}.hero h1{font-size:58px}.hero-lead{font-size:16px}.hero-actions{align-items:stretch;flex-direction:column;gap:14px}.hero-art{min-height:500px}.art-frame{width:70%;height:70%}.section{padding:90px 24px}.section-heading{grid-template-columns:1fr;gap:20px}.service-row{grid-template-columns:35px 1fr 35px;min-height:120px}.service-meta{display:none}.service-name{font-size:24px}.service-name small{font-size:11px}.experience-visual{min-height:470px}.experience-copy{padding:80px 24px}.booking-callout{padding:100px 24px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-wrap:wrap}.footer-bottom span{width:100%}.page-intro{padding:65px 24px 40px}.booking-form{padding:0 14px;margin-bottom:70px}.booking-step{padding:28px 18px}.service-options{grid-template-columns:1fr}.select-card{min-height:140px}.date-card{min-width:78px}.time-options{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.success-card{grid-template-columns:1fr}.success-card div:nth-child(odd){border-right:0}.site-footer{padding:70px 24px 25px}.admin-page{padding:40px 15px 80px}.admin-heading,.detail-heading{align-items:flex-start;flex-direction:column;gap:20px}.stat-grid{grid-template-columns:1fr 1fr}.stat-card{padding:18px}.stat-card strong{font-size:29px}.admin-card{padding:20px}.timeline-item{grid-template-columns:58px 20px 1fr}.timeline-content{padding-left:14px}.timeline-actions>a:first-child{display:none}.filter-bar{grid-template-columns:1fr}.search-field{grid-column:auto}.table-card{padding:0}.detail-grid{grid-template-columns:1fr}.detail-card dl div{grid-template-columns:100px 1fr}.status-actions{align-items:flex-start;flex-direction:column;gap:20px}.login-panel{padding:60px 24px}.login-aside{padding:80px 24px;min-height:460px}.legal-page{padding:70px 24px 100px}.service-edit-form{padding:22px}.form-actions{align-items:stretch;flex-direction:column-reverse}.form-actions .button{width:100%}.schedule-form{padding:18px}.schedule-note{flex-direction:column;gap:3px}.schedule-row{grid-template-columns:1fr 90px;gap:14px;padding:18px 4px}.schedule-time{grid-column:auto}.schedule-time input{width:100%}}
