:root{--gold:#a57b32;--gold-dark:#765722;--ink:#1e1d1b;--muted:#68645f;--cream:#f7f5f1;--line:#ded9d0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',sans-serif;font-weight:300}a{color:inherit;text-decoration:none}.site-header{height:92px;padding:0 6vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);position:relative;z-index:4;background:#fff}.brand{width:70px;height:70px;display:block}.brand img{width:100%;height:100%;object-fit:contain}nav{display:flex;gap:44px;font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase}nav a{position:relative}nav a:after{content:"";position:absolute;height:1px;left:0;right:100%;bottom:-8px;background:var(--gold);transition:.25s}nav a:hover:after{right:0}.header-cta{justify-self:end;border:1px solid var(--ink);padding:13px 21px;font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;transition:.2s}.header-cta:hover{background:var(--ink);color:#fff}.hero{min-height:720px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;padding:7vw 9vw;position:relative}.hero-copy{max-width:780px}.eyebrow{color:var(--gold-dark);text-transform:uppercase;letter-spacing:.24em;font-size:10px;font-weight:600}h1,h2{font-family:'Italiana',serif;font-weight:400;letter-spacing:-.025em;margin:24px 0;line-height:1.04}h1{font-size:clamp(54px,6.4vw,94px)}h2{font-size:clamp(42px,5vw,72px)}em{color:var(--gold);font-weight:400}.intro{max-width:650px;color:var(--muted);font-size:17px;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:38px}.button{display:inline-block;padding:16px 25px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.12em;transition:.2s}.button.primary{color:#fff;background:var(--gold-dark);border:1px solid var(--gold-dark)}.button.primary:hover{background:var(--ink);border-color:var(--ink)}.text-link{font-size:12px;font-weight:500;border-bottom:1px solid var(--line);padding-bottom:7px}.text-link span{color:var(--gold);margin-left:8px}.hero-mark{display:grid;place-items:center;border-left:1px solid var(--line);min-height:500px}.hero-mark img{width:min(34vw,430px);filter:drop-shadow(0 14px 20px rgba(92,65,19,.08))}.trust-strip{min-height:76px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 6vw;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;text-align:center;color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.trust-strip span{border-right:1px solid var(--line);padding:10px}.trust-strip span:last-child{border-right:0}.statement{padding:9vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--cream);align-items:center}.statement h2{margin-bottom:0}.statement-copy{border-left:1px solid var(--gold);padding-left:45px}.statement-copy p{color:var(--muted);font-size:16px;line-height:1.85;margin:0 0 22px}.services{padding:9vw 7vw}.section-heading{display:grid;grid-template-columns:1.35fr .65fr;align-items:end;gap:9vw;margin-bottom:74px}.section-heading h2{margin-bottom:0}.section-heading>p{line-height:1.8;color:var(--muted);padding-bottom:8px}.treatment-list{border-top:1px solid var(--ink)}.treatment-group{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;padding:62px 0;border-bottom:1px solid var(--line)}.treatment-group header{display:grid;grid-template-columns:38px 1fr;gap:22px}.treatment-group header>span{font-family:'Italiana';color:var(--gold);font-size:14px}.treatment-group h3{font-family:'Italiana';font-size:clamp(30px,3vw,42px);font-weight:400;margin:0 0 18px}.treatment-group header p{color:var(--muted);line-height:1.75;margin:0}.treatment-group ul{list-style:none;margin:0;padding:0}.treatment-group li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.treatment-group li:first-child{padding-top:0}.treatment-group li:last-child{border-bottom:0}.treatment-group li span:before{content:"—";color:var(--gold);margin-right:14px}.treatment-group li a{font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dark);opacity:0;transition:.2s}.treatment-group li:hover a{opacity:1}.service-note{max-width:800px;color:var(--muted);font-size:12px;line-height:1.7;margin:36px 0 0}.contact{margin:0 3vw 3vw;padding:7vw;background:#252422;color:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center}.contact-card p{color:#d1cdc7;line-height:1.8;margin:0 0 30px}.contact-card>a:last-child{display:block;margin-top:24px;font-family:'Italiana';font-size:24px;color:#d5b36d}footer{padding:42px 6vw;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:var(--muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}footer img{width:68px}footer div{justify-self:end;display:flex;gap:22px}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto;padding:0 22px}nav{display:none}.hero{grid-template-columns:1fr;padding:80px 28px 50px;text-align:center}.intro{margin-inline:auto}.hero-actions{justify-content:center;flex-wrap:wrap}.hero-mark{min-height:370px;border-left:0;border-top:1px solid var(--line);margin-top:60px;padding-top:45px}.hero-mark img{width:min(78vw,390px)}.trust-strip{grid-template-columns:1fr 1fr;padding:16px}.trust-strip span:nth-child(2){border-right:0}.statement,.contact{grid-template-columns:1fr}.statement{padding:80px 28px;gap:42px}.statement-copy{padding-left:24px}.services{padding:80px 28px}.section-heading{grid-template-columns:1fr;gap:18px;margin-bottom:50px}.treatment-group{grid-template-columns:1fr;gap:38px;padding:50px 0}.treatment-group li a{opacity:1}.contact{margin:0;padding:72px 28px}footer{grid-template-columns:1fr;gap:22px;text-align:center}footer img,footer div{justify-self:center}}
@media(max-width:520px){h1{font-size:48px}.hero-actions{flex-direction:column}.trust-strip{grid-template-columns:1fr}.trust-strip span{border-right:0;border-bottom:1px solid var(--line)}.trust-strip span:last-child{border-bottom:0}.treatment-group header{grid-template-columns:1fr}.treatment-group li{align-items:flex-start}.treatment-group li a{padding-top:3px;white-space:nowrap}}

/* Editorial treatment layout: generous spacing and intentionally varied rhythm */
.services{padding:11vw 7vw 13vw;overflow:hidden}.section-heading{margin-bottom:110px}.section-heading>p{max-width:430px}.treatment-list{border:0;display:grid;gap:140px}.treatment-group{position:relative;border:0;padding:0}.treatment-group h3{font-size:clamp(34px,3.5vw,52px)}.treatment-group header p{max-width:430px}.treatment-01{display:grid;grid-template-columns:.72fr 1.28fr;gap:9vw;padding-right:2vw}.treatment-01 ul{columns:2;column-gap:60px}.treatment-01 li{break-inside:avoid}.treatment-02{width:88%;margin-left:auto;background:var(--cream);padding:7vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw}.treatment-02:before{content:"02";position:absolute;right:4vw;top:-7vw;font-family:'Italiana';font-size:15vw;color:rgba(165,123,50,.06)}.treatment-02 ul{display:grid;grid-template-columns:1fr 1fr;column-gap:48px}.treatment-03{width:72%;display:grid;grid-template-columns:1fr .9fr;gap:8vw;margin-left:5vw;padding-top:25px}.treatment-03:after{content:"";position:absolute;width:1px;height:160%;background:var(--gold);right:-8vw;top:-30%;opacity:.35}.treatment-03 ul{align-self:end}.service-note{max-width:740px;margin:100px 0 0 28%}
@media(max-width:900px){.services{padding:90px 28px}.section-heading{margin-bottom:75px}.treatment-list{gap:90px}.treatment-group,.treatment-01,.treatment-02,.treatment-03{width:100%;margin:0;grid-template-columns:1fr;gap:38px}.treatment-01{padding:0}.treatment-01 ul{columns:1}.treatment-02{padding:52px 34px}.treatment-02 ul{grid-template-columns:1fr}.treatment-03:after{display:none}.service-note{margin:70px 0 0}}

/* Professional finishing pass */
body{font-weight:400;letter-spacing:.005em}.site-header{position:sticky;top:0;height:86px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);box-shadow:0 10px 34px rgba(30,29,27,.035)}.brand{width:64px;height:64px}nav{font-size:11px;gap:48px}.header-cta{border-color:var(--gold-dark);color:var(--gold-dark)}.hero{min-height:680px;padding-top:6vw;padding-bottom:6vw}.hero-copy{max-width:720px}h1{font-size:clamp(52px,5.8vw,86px);line-height:1.07}.intro{font-size:16px;max-width:610px}.hero-mark{border-left-color:rgba(165,123,50,.25)}.hero-mark img{width:min(31vw,390px)}.trust-strip{background:#fbfaf8;color:#55514c}.statement-copy p,.section-heading>p,.treatment-group header p{color:#5f5b56}.treatment-group li{padding:16px 0;font-size:13px}.treatment-group li a{opacity:.62}.treatment-group li:hover a{opacity:1}.treatment-02{border:1px solid #ebe6dd;background:#f9f7f3}.treatment-02:before{display:none}.treatment-03:after{height:125%;top:-12%;opacity:.28}.service-note{border-top:1px solid var(--line);padding-top:24px}.contact{margin:0 5vw 4vw;background:#292825}.button:focus-visible,.header-cta:focus-visible,nav a:focus-visible,.treatment-group a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}footer a:hover{color:var(--gold-dark)}
@media(max-width:900px){.site-header{height:80px}.hero{min-height:auto}.hero-mark img{width:min(72vw,360px)}.contact{margin:0}}

.phone-link{font-family:'Cormorant Garamond',serif!important;font-size:26px!important;font-weight:500;letter-spacing:.035em;color:#d8c19a!important;line-height:1.2}.phone-link:hover{color:#f0dfc0!important}.hero-mark img,.brand img,footer img{filter:drop-shadow(0 8px 18px rgba(91,67,35,.06))}

/* Editorial beauty direction */
.site-header{position:relative;height:168px;padding:24px 5.5vw;border:0;box-shadow:none;grid-template-columns:1fr auto}.brand{width:112px;height:112px}.header-right{display:flex;align-items:center;gap:38px}.header-right nav{gap:34px}.editorial-hero{display:block;min-height:0;padding:0 5.5vw 9vw}.hero-visual{height:min(68vw,790px);min-height:580px;position:relative;overflow:hidden;background:#e9e3db}.hero-photo{width:100%;height:100%;object-fit:cover;display:block}.hero-title{position:absolute;left:5vw;bottom:5vw;color:var(--ink)}.hero-title .eyebrow{color:var(--ink);margin:0 0 20px}.hero-title h1{font-family:'DM Sans',sans-serif;font-size:clamp(62px,8.2vw,132px);font-weight:500;line-height:.78;letter-spacing:-.07em;margin:0}.hero-title h1 em{font-family:'Cormorant Garamond',serif;font-weight:400;color:var(--gold-dark);letter-spacing:-.035em}.hero-intro{display:grid;grid-template-columns:.7fr 1.3fr;gap:9vw;align-items:start;padding:52px 1vw 0 35%}.hero-intro>p{font-family:'Cormorant Garamond',serif;font-size:29px;line-height:1.15;margin:0}.hero-intro>span{color:var(--muted);font-size:14px;line-height:1.8}.hero-intro .hero-actions{grid-column:2;margin-top:-4px}.hero-intro .text-link b{color:var(--gold-dark);font-weight:400;margin-left:8px}.trust-strip{margin:0 5.5vw;border-left:1px solid var(--line);border-right:1px solid var(--line)}.statement{margin-top:7vw;padding:12vw 9vw;background:#f3f0eb}.statement h2{font-size:clamp(46px,6vw,86px)}.services{padding-top:13vw}.section-heading h2{font-size:clamp(50px,6.4vw,94px)}.treatment-group h3{font-family:'Cormorant Garamond',serif;font-size:clamp(42px,4.5vw,66px)}.contact{padding:9vw 8vw}.contact h2{font-size:clamp(48px,6vw,84px)}
@media(max-width:900px){.site-header{height:112px;padding:12px 22px}.brand{width:84px;height:84px}.header-right nav{display:none}.header-right{gap:0}.editorial-hero{padding:0 22px 80px}.hero-visual{height:78vh;min-height:560px}.hero-photo{object-position:62% center}.hero-title{left:24px;bottom:34px}.hero-title h1{font-size:clamp(54px,15vw,92px)}.hero-intro{grid-template-columns:1fr;padding:38px 4px 0;gap:18px}.hero-intro .hero-actions{grid-column:1;margin-top:18px}.trust-strip{margin:0 22px}.statement{margin-top:60px}}
@media(max-width:520px){.site-header{height:98px}.brand{width:72px;height:72px}.header-cta{padding:11px 14px;font-size:9px}.hero-visual{height:68vh;min-height:510px}.hero-title h1{font-size:52px}.hero-title .eyebrow{font-size:8px}.hero-intro>p{font-size:25px}}

.hero-brand-panel{background:linear-gradient(135deg,#f4f1ec 0%,#e8e1d8 100%);isolation:isolate}.hero-brand-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.78) 0%,rgba(255,255,255,.18) 52%,rgba(255,255,255,0) 100%);z-index:-1}.hero-logo-display{position:absolute;width:min(41vw,590px);height:min(41vw,590px);object-fit:contain;right:6%;top:50%;transform:translateY(-50%);opacity:.92;filter:drop-shadow(0 22px 38px rgba(93,65,16,.1))}.brand-orbit{position:absolute;border:1px solid rgba(118,87,34,.22);border-radius:50%;right:-5%;top:50%;transform:translateY(-50%)}.orbit-one{width:58vw;height:58vw}.orbit-two{width:45vw;height:45vw;border-style:dashed;opacity:.55}.hero-brand-panel .hero-title{z-index:2}
@media(max-width:900px){.hero-logo-display{width:75vw;height:75vw;right:-18%;opacity:.55}.brand-orbit{right:-42%}.orbit-one{width:105vw;height:105vw}.orbit-two{width:82vw;height:82vw}.hero-brand-panel:after{background:linear-gradient(90deg,rgba(255,255,255,.72),rgba(255,255,255,.08))}}

/* Appointment booking */
.contact{align-items:start;grid-template-columns:.72fr 1.28fr;gap:7vw}.contact-intro{position:sticky;top:42px}.contact-intro>p:not(.eyebrow){max-width:430px;color:#d1cdc7;line-height:1;font-size:14px}.contact-intro .phone-link{display:inline-block;margin-top:25px}.opening-hours{max-width:390px;margin-top:36px;padding-top:25px;border-top:1px solid rgba(255,255,255,.16)}.opening-hours h3{margin:0 0 15px;font:500 10px 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.15em;color:#d8c19a}.opening-hours dl{margin:0}.opening-hours dl>div{display:flex;justify-content:space-between;gap:20px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:11px}.opening-hours dt{color:#d1cdc7}.opening-hours dd{margin:0;color:#fff}.appointment-form{background:#fff;color:var(--ink);padding:clamp(30px,4.5vw,64px);display:grid;grid-template-columns:1fr 1fr;gap:25px 20px}.form-heading,.field-wide,.form-submit,.form-status{grid-column:1/-1}.form-heading{padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:6px}.form-heading>span{font-family:'Cormorant Garamond',serif;font-size:36px}.form-heading p{margin:8px 0 0;max-width:570px;color:var(--muted);font-size:13px;line-height:1.65}.field{display:grid;gap:9px}.field>span,.slot-form label>span{font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#56514a}.field small{font-size:8px;color:#8a857e}.field input,.field select,.field textarea,.slot-form input,.slot-form select{width:100%;border:0;border-bottom:1px solid #cfc8bd;background:#faf9f7;color:var(--ink);border-radius:0;padding:14px 13px;font:400 14px 'DM Sans',sans-serif;outline:none}.field textarea{resize:vertical;min-height:106px}.field input:focus,.field select:focus,.field textarea:focus,.slot-form input:focus,.slot-form select:focus{border-color:var(--gold);box-shadow:0 1px 0 var(--gold)}.privacy-check{display:flex;gap:12px;align-items:flex-start;color:var(--muted);font-size:11px;line-height:1.55}.privacy-check input{accent-color:var(--gold-dark);margin-top:3px}.form-submit{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:6px}.booking-button{border:1px solid var(--gold-dark);background:var(--gold-dark);color:#fff;cursor:pointer}.booking-button:disabled{cursor:not-allowed;opacity:.5}.form-submit p{margin:0;color:var(--muted);font-size:11px;text-align:right;line-height:1.55}.form-submit a{color:var(--gold-dark);border-bottom:1px solid #c9b98f}.form-status{padding:15px 17px;margin:0;font-size:12px;line-height:1.6}.form-status.success{background:#eef2eb;color:#3e573a}.form-status.error{background:#f7ecea;color:#7d3d35}

/* Owner appointment dashboard */
.admin-shell{min-height:100vh;background:#f5f2ed;padding:0 5vw 7vw}.admin-header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.admin-brand img{width:84px;height:84px;object-fit:contain}.admin-header>div{display:flex;align-items:center;gap:24px;color:var(--muted);font-size:11px}.admin-header a:not(.admin-brand){border-bottom:1px solid #b9aa88;color:var(--gold-dark)}.admin-intro{padding:7vw 0 5vw;display:grid;grid-template-columns:1fr .55fr;gap:8vw;align-items:end}.admin-intro h1{font-size:clamp(48px,6vw,82px);margin-bottom:0}.admin-intro>p{color:var(--muted);font-size:14px;line-height:1.8;max-width:480px}.admin-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;position:relative}.admin-panel{background:#fff;padding:clamp(25px,3.5vw,48px);min-width:0}.admin-panel-heading{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:28px}.admin-panel-heading h2{font-family:'Cormorant Garamond',serif;font-size:40px;margin:10px 0 0}.slot-form{display:grid;grid-template-columns:1.4fr .7fr;gap:16px}.slot-form label{display:grid;gap:8px}.slot-form button{grid-column:1/-1;justify-self:start;margin-top:4px}.slot-hours-note{grid-column:1/-1;color:var(--muted);font-size:10px;line-height:1.7;margin:2px 0 0}.slot-list,.request-list{display:grid;gap:12px;margin-top:34px}.slot-row{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.slot-row>div{display:grid;gap:4px}.slot-row strong{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:500}.slot-row>div span{color:var(--muted);font-size:10px}.slot-row button{border:0;background:transparent;color:#8a4b43;font:500 9px 'DM Sans';letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.status-chip{display:inline-block;padding:6px 9px;border-radius:20px;font-size:8px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:#eeeae4;color:#67615a;white-space:nowrap}.status-chip.available{background:#e8f0e5;color:#41603e}.status-chip.requested,.status-chip.pending{background:#f4ead3;color:#7d5d20}.status-chip.confirmed{background:#e4eee7;color:#315a40}.status-chip.declined{background:#f3e7e5;color:#7e4740}.request-card{border:1px solid var(--line);padding:24px}.request-card header{display:flex;justify-content:space-between;gap:20px;align-items:start}.request-card header>div>span{font-size:10px;color:var(--gold-dark);letter-spacing:.08em;text-transform:uppercase}.request-card h3{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:500;margin:7px 0 0}.request-card dl{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px;margin:23px 0}.request-card dl>div:last-child:nth-child(4){grid-column:1/-1}.request-card dt{font-size:8px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:#8a857e;margin-bottom:5px}.request-card dd{margin:0;font-size:12px;line-height:1.55;overflow-wrap:anywhere}.request-card dd a{color:var(--gold-dark);border-bottom:1px solid #d8c7a2}.request-actions{display:flex;gap:12px;border-top:1px solid var(--line);padding-top:18px}.request-actions button{border:1px solid var(--gold-dark);background:var(--gold-dark);color:#fff;padding:10px 15px;font:500 9px 'DM Sans';letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.request-actions .secondary-action{background:transparent;color:var(--ink);border-color:#aaa39a}.empty-state{color:var(--muted);font-size:12px}.admin-message{position:fixed;right:28px;bottom:28px;background:#292825;color:#fff;padding:16px 20px;box-shadow:0 16px 40px rgba(0,0,0,.18);font-size:12px;z-index:10}.admin-denied{max-width:700px;margin:12vh auto;background:#fff;padding:70px}.admin-denied h1{font-size:64px}.admin-denied>p:not(.eyebrow){color:var(--muted);line-height:1.7}.admin-denied a{display:inline-block;margin-top:25px;color:var(--gold-dark);border-bottom:1px solid var(--gold)}

.contact-intro>p:not(.eyebrow){line-height:1.8}.website-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:1000px){.contact{grid-template-columns:1fr}.contact-intro{position:static}.admin-grid{grid-template-columns:1fr}.admin-intro{grid-template-columns:1fr;gap:18px}.admin-intro>p{margin:0}}
@media(max-width:650px){.appointment-form{grid-template-columns:1fr;padding:28px 20px}.field{grid-column:1/-1}.form-submit{align-items:flex-start;flex-direction:column}.form-submit p{text-align:left}.admin-shell{padding:0 18px 60px}.admin-header{height:92px}.admin-brand img{width:68px;height:68px}.admin-header>div span{display:none}.admin-intro{padding:58px 0 38px}.admin-panel{padding:26px 19px}.slot-form{grid-template-columns:1fr}.slot-row{grid-template-columns:1fr auto}.slot-row button{grid-column:1/-1;justify-self:start}.request-card dl{grid-template-columns:1fr}.request-card dl>div{grid-column:1/-1}.admin-message{left:18px;right:18px;bottom:18px}}

/* Legal pages */
.privacy-check a{color:var(--gold-dark);border-bottom:1px solid #c9b98f}.danger-action{color:#873f37!important;border-color:#a76861!important}.legal-shell{min-height:100vh;background:#f7f5f1;color:var(--ink);padding:0 5.5vw}.legal-header{height:130px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.legal-header img{width:92px;height:92px;object-fit:contain}.legal-header>a:last-child{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dark);border-bottom:1px solid #c7b487;padding-bottom:6px}.legal-document{padding:8vw 0 10vw;display:grid;grid-template-columns:.68fr 1.32fr;gap:10vw;align-items:start}.legal-title{position:sticky;top:50px}.legal-title h1{font-size:clamp(58px,7vw,100px);margin:20px 0 28px}.legal-title>p:last-child{max-width:380px;color:var(--muted);line-height:1.75;font-size:13px}.legal-content{background:#fff;padding:clamp(34px,5vw,76px)}.legal-content section{padding:0 0 38px;margin:0 0 38px;border-bottom:1px solid var(--line)}.legal-content section:last-child{padding-bottom:0;margin-bottom:0;border-bottom:0}.legal-content h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;letter-spacing:0;margin:0 0 18px}.legal-content p{color:#57534e;font-size:13px;line-height:1.85;margin:0 0 16px}.legal-content p:last-child{margin-bottom:0}.legal-content strong{color:var(--ink);font-weight:600}.legal-content a{color:var(--gold-dark);border-bottom:1px solid #cfbf9e}.privacy-content section{scroll-margin-top:30px}.legal-footer{padding:34px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.legal-footer div{display:flex;gap:22px}.legal-footer a:hover{color:var(--gold-dark)}
@media(max-width:850px){.legal-shell{padding:0 22px}.legal-header{height:105px}.legal-header img{width:74px;height:74px}.legal-document{grid-template-columns:1fr;gap:46px;padding:70px 0}.legal-title{position:static}.legal-content{padding:35px 25px}.legal-footer{flex-direction:column;align-items:center;text-align:center}}

/* Plesk admin login */
.admin-login{max-width:980px;margin:8vw auto;display:grid;grid-template-columns:1fr .85fr;gap:8vw;align-items:center}.admin-login h1{font-size:clamp(48px,6vw,80px);margin:20px 0}.admin-login>div>p:last-child{color:var(--muted);line-height:1.8}.admin-login form{background:#fff;padding:clamp(28px,4vw,52px);display:grid;gap:24px}.admin-login label{display:grid;gap:8px}.admin-login label span{font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#56514a}.admin-login input{width:100%;border:0;border-bottom:1px solid #cfc8bd;background:#faf9f7;padding:14px 13px;font:400 14px Arial,sans-serif;outline:none}.admin-login input:focus{border-color:var(--gold);box-shadow:0 1px 0 var(--gold)}.admin-login button{justify-self:start}.admin-logout{border:0;background:transparent;color:var(--gold-dark);border-bottom:1px solid #b9aa88;padding:0 0 4px;font:500 10px Arial,sans-serif;cursor:pointer}.admin-message.error{background:#7d3d35}
@media(max-width:750px){.admin-login{grid-template-columns:1fr;margin:55px auto;gap:32px}.admin-login form{padding:28px 22px}}

/* Narrow-screen overflow protection */
@media(max-width:900px){.section-heading,.treatment-list,.treatment-group,.treatment-group header,.treatment-group ul{min-width:0}.section-heading,.treatment-list,.treatment-group,.treatment-01,.treatment-02,.treatment-03{grid-template-columns:minmax(0,1fr)}.treatment-group li span{min-width:0;overflow-wrap:anywhere}}
@media(max-width:520px){footer div{max-width:100%;flex-wrap:wrap;justify-content:center;gap:14px 18px}footer p{max-width:100%}}

/* Robust responsive sizing for long German treatment names */
@media(max-width:900px){.section-heading,.section-heading>div,.treatment-list,.treatment-group,.treatment-group header,.treatment-group header>div,.treatment-group ul{min-width:0}.section-heading,.treatment-list,.treatment-group,.treatment-01,.treatment-02,.treatment-03{grid-template-columns:minmax(0,1fr)}.treatment-group li span{min-width:0;overflow-wrap:anywhere}}
@media(max-width:520px){.section-heading h2{font-size:42px}.treatment-02{padding:44px 22px}}

/* Desktop overflow fix: keep every treatment grid inside the page width */
.section-heading,.section-heading>div,.treatment-list,.treatment-group,.treatment-group header,.treatment-group header>div,.treatment-group ul,.treatment-group li,.treatment-group li>span{min-width:0;max-width:100%}
.treatment-01{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)}
.treatment-02{width:min(88%,100%);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(44px,5vw,96px)}
.treatment-02 ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(28px,3vw,48px)}
.treatment-03{width:min(72%,100%);grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}
.treatment-group h3{max-width:100%;hyphens:auto;overflow-wrap:normal}
.treatment-group li>span{overflow-wrap:anywhere}
.treatment-group li>a{flex:0 0 auto;white-space:nowrap}
@media(max-width:1250px) and (min-width:901px){.treatment-02{width:94%;grid-template-columns:minmax(0,1fr);gap:52px;padding:6vw}.treatment-02 ul{grid-template-columns:repeat(2,minmax(0,1fr))}.treatment-03{width:82%}}
@media(max-width:900px){.treatment-01,.treatment-02,.treatment-03{width:100%;grid-template-columns:minmax(0,1fr)}.treatment-02 ul{grid-template-columns:minmax(0,1fr)}}

/* Version 1.0.2: align request links inside the card and reveal the full mobile logo */
.treatment-02{overflow:hidden}
.treatment-02>ul{width:100%;max-width:100%;overflow:hidden}
.treatment-02 li{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;column-gap:clamp(12px,1.4vw,24px);width:100%;padding-right:clamp(8px,.8vw,16px)}
.treatment-02 li>a{justify-self:end;margin:0}
@media(max-width:900px){.treatment-02 li{align-items:start}.hero-logo-display{width:min(78vw,430px);height:auto;max-height:62%;right:50%;top:38%;transform:translate(50%,-50%);object-fit:contain;object-position:center;opacity:.58}}

.schedule-publisher{display:grid;gap:14px;padding:20px;margin:0 0 26px;background:#f5f2ed}.schedule-publisher>div{display:grid;gap:6px}.schedule-publisher strong{font:500 17px 'Cormorant Garamond',serif}.schedule-publisher span{color:var(--muted);font-size:10px;line-height:1.6}.schedule-publisher button{justify-self:start}
