/*
Theme Name: Maks Bodywork
Author: Maks Bodywork
Description: Leichte, responsive WordPress-Theme-Grundlage mit Standard-Hooks, Block-Editor-Unterstützung und separaten Buchungsseiten.
Version: 0.10.0
Requires at least: 6.5
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: body-soul
*/
:root{--pine:#18392e;--deep:#102c23;--cream:#f6f3eb;--ink:#22382e;--muted:#5b675f;--line:#cdd3c7;--accent:#c0cfae;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b87c36;outline-offset:5px}button{cursor:pointer}img{max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12}h2{font-size:clamp(2.6rem,4vw,4.5rem);letter-spacing:-.045em}h2 em{font-weight:400}h3{font-size:1.85rem}a{text-underline-offset:5px}.skip{position:fixed;left:15px;top:-100px;background:#fff;padding:10px;z-index:100}.skip:focus{top:15px}.site-header{max-width:1600px;margin:auto;padding:24px 4.5%;display:flex;align-items:center;gap:30px;min-height:106px}.brand{display:flex;gap:15px;align-items:center;text-decoration:none;font-size:14px;letter-spacing:.12em;line-height:1.3;flex-shrink:0}.brand-logo{display:block;width:208px;height:208px;object-fit:contain}.brand small{display:block;font-size:8px;letter-spacing:.16em;margin-top:6px;white-space:nowrap}.site-header nav{display:flex;gap:28px;margin-left:auto;font-size:14px}.site-header nav a,.account-link{text-decoration:none}.account-link{font-size:14px;margin-left:20px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:34px;background:var(--pine);color:#fff;border:1px solid transparent;padding:15px 23px;border-radius:3px;text-decoration:none;font-size:14px;font-weight:500;line-height:1.5}.button:hover{background:#284d3d}.button span{font-size:21px;line-height:1}.button.light{background:var(--cream);color:var(--deep)}.button.light:hover{background:#dfe7d5}.hero{background:var(--pine);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;padding:0 4.5%;overflow:hidden}.hero-copy{padding:55px 7% 52px 0}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:500;line-height:1.6}.hero .eyebrow{color:#c8d3c1}.intro{margin:40px 0 16px;font-size:16px;color:#d4dece}h1{font-size:clamp(3rem,4.7vw,5.6rem);letter-spacing:-.04em;line-height:1.09}h1 em{color:var(--accent);font-weight:400}.hero-description{max-width:365px;margin:26px 0 27px;font-size:16px;line-height:1.8;color:#d5ded3}.hero-note{display:block;color:#c2cebe;font-size:12px;margin-top:14px}.hero-image{position:relative;margin:28px 0 0 20px;min-height:640px}.hero-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:49% center;border-radius:48% 48% 0 0}.hero-image:after{position:absolute;content:'';inset:65% 0 0;background:linear-gradient(transparent,#15281bbd)}.hero-image figcaption{position:absolute;z-index:1;bottom:25px;left:28px;right:18px;font-size:11px;letter-spacing:.18em}.hero-image figcaption small{display:block;margin-top:6px;letter-spacing:0;font-size:11px;color:#f1f0e9}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;padding:21px 0;border-top:1px solid #ffffff26;font-size:12px;color:#d2dccb}.hero-bottom a{text-decoration:none}.hero-bottom a span{margin-left:25px}.section{padding:95px 4.5%;max-width:1600px;margin:auto}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:34px}.section-heading .eyebrow{margin-bottom:22px}.section-heading>p{color:var(--muted);max-width:310px;margin-right:8%}.draft-note{font-size:12px;color:var(--muted);margin:20px 0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.service-card{padding:32px 28px 22px 0;display:flex;flex-direction:column}.service-card+.service-card{border-left:1px solid var(--line);padding-left:30px}.service-number{font-size:12px;color:var(--muted);margin-bottom:27px}.service-card h3{margin-bottom:19px}.service-card>p{font-size:14px;line-height:1.8;color:var(--muted);max-width:310px;flex:1}.service-end{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;margin-top:34px;padding-top:18px;border-top:1px solid var(--line);font-size:12px}.service-end a{font-size:14px}.philosophy{background:#e5e9dd;display:grid;grid-template-columns:1fr 1.4fr;gap:8%;padding-top:72px;padding-bottom:65px}.large-amp{display:block;font-family:var(--serif);font-style:italic;font-size:240px;line-height:1.1;font-weight:400;color:#365542}.small-caps{font-size:11px;letter-spacing:.17em}.philosophy-copy>.eyebrow{margin-bottom:28px}.philosophy-copy h2{max-width:580px}.philosophy-copy>p:not(.eyebrow):not(.draft-note){max-width:510px;color:#4c5b50;margin-top:28px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-top:1px solid #bdc7b9;padding-top:26px;margin-top:35px}.principles span{font-size:11px;color:var(--muted)}.principles h3{font-size:22px;margin:10px 0}.principles p{font-size:13px;color:#4c5b50}.instagram{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:9%}.instagram .eyebrow{margin-bottom:20px}.instagram p:not(.eyebrow){color:var(--muted);max-width:330px;margin:25px 0}.text-link{font-size:14px}.instagram-card{min-height:355px;display:flex;flex-direction:column;justify-content:space-between;padding:30px 34px;text-decoration:none;color:var(--cream);background:linear-gradient(140deg,#284d3d,#142f25);border-radius:150px 150px 4px 4px}.ig-icon{font-size:44px;text-align:center;line-height:1}.ig-card-title{font-family:var(--serif);font-size:clamp(2rem,3vw,3.2rem);line-height:1.2;text-align:center}.ig-card-bottom{display:flex;justify-content:space-between;font-size:13px;border-top:1px solid #ffffff36;padding-top:16px}.reviews{border-top:1px solid var(--line);text-align:center;padding-top:65px}.reviews h2{margin:18px 0 30px}.review-empty{max-width:500px;margin:auto;padding:25px;border-block:1px solid var(--line);color:var(--muted);font-size:15px}.review-caption{font-size:12px;color:var(--muted);margin-top:20px}.booking-banner{background:var(--pine);color:var(--cream);text-align:center;padding:78px 5%}.booking-banner h2{margin:25px 0 33px}.booking-banner h2 em{color:var(--accent)}.banner-account{display:block;width:fit-content;margin:18px auto 0;font-size:12px;color:#d5decf}.site-footer{padding:45px 4.5% 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:43px}.footer-top p{font-size:14px;color:var(--muted);margin-left:auto;margin-right:18%}.footer-top>a:last-child{font-size:14px}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;font-size:12px;color:var(--muted)}.footer-bottom nav{display:flex;gap:25px;flex-wrap:wrap}.mobile-book{display:none}.preview-ribbon{padding:8px 4.5%;background:#e5e9dd;color:#354a3d;font-size:12px;border-bottom:1px solid #ccd5c4}.page-main{max-width:1000px;min-height:55vh;padding:55px 5%;margin:auto}.page-main h1{font-size:clamp(2.6rem,5vw,4rem);margin-bottom:30px}.page-main p{margin-bottom:18px}.page-main input:not([type=checkbox]){max-width:100%;padding:12px;border:1px solid var(--line);border-radius:3px}.page-main label{display:block}.page-main .login-remember label{display:inline}.entry-content{overflow-wrap:anywhere}.entry-content>*{max-width:100%}.alignwide{width:100%}.alignfull{max-width:none}.wp-caption-text{font-size:13px}.sticky{}.bypostauthor{}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.screen-reader-text:focus{clip:auto;width:auto;height:auto}.bs-notice{padding:25px;background:#e5e9dd;border-left:3px solid var(--pine)}dialog{width:min(680px,calc(100% - 28px));max-height:90dvh;overflow:auto;border:0;border-radius:10px;padding:30px;background:var(--cream);color:var(--ink)}dialog::backdrop{background:#071b16b8;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.dialog-top .eyebrow{font-size:11px}.close{background:none;border:1px solid var(--line);border-radius:50%;width:40px;height:40px;font-size:25px;line-height:1}.dialog-title{font-size:36px;margin-bottom:15px}.demo-note{font-size:13px;padding:13px;background:#e5e9dd;margin-bottom:20px}dialog label{display:block;font-size:14px;margin-bottom:7px}dialog select{width:100%;border:1px solid #a6b3a4;background:transparent;padding:12px;color:var(--ink);margin-bottom:20px;border-radius:3px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin:8px 0 16px}.calendar-heading button{border:1px solid var(--line);background:transparent;width:40px;height:40px;border-radius:50%}.calendar-heading button:disabled{opacity:.35;cursor:default}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.calendar-grid .weekday{font-size:12px;color:var(--muted);padding:5px}.calendar-grid button{border:1px solid var(--line);background:transparent;border-radius:4px;min-height:42px;color:var(--ink)}.calendar-grid button:disabled{color:#707970;background:#eceee6;border-color:transparent;cursor:default}.calendar-grid button[aria-pressed=true],.slots button[aria-pressed=true]{background:var(--pine);color:#fff;border-color:var(--pine)}.slots{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.slots button{padding:9px 14px;background:transparent;border:1px solid #a6b3a4;border-radius:3px}.selection{font-size:14px;min-height:2em;margin:15px 0}.demo-end{font-size:13px;border-top:1px solid var(--line);padding-top:15px}.mobile-book{box-shadow:0 0 0 8px var(--cream)}@media(min-width:1600px){.hero{padding-inline:max(4.5%,calc((100vw - 1456px)/2))}}@media(max-width:1050px){.site-header nav{gap:17px}.site-header{gap:20px}.account-link{margin-left:auto}.site-header nav{display:none}.hero-copy{padding-top:40px}.hero-image{min-height:610px}h1{font-size:clamp(2.6rem,5.5vw,4rem)}.service-grid{gap:0}.service-card h3{font-size:25px}.service-end{display:block}.service-end a{display:block;margin-top:9px}.principles{gap:14px}.footer-top p{margin-right:5%}}@media(max-width:640px){.site-header{min-height:85px;padding:19px 6%;gap:12px}.brand{font-size:11px;gap:12px}.brand small{font-size:8px}.brand-logo{width:156px;height:156px}.account-link{font-size:12px}.header-book{display:none}.hero{padding:0 6%;grid-template-columns:1fr}.hero-copy{padding:30px 0 32px}.hero .eyebrow{font-size:10px}.intro{margin:27px 0 12px;font-size:14px}h1{font-size:clamp(2.85rem,10.5vw,4.3rem);line-height:1.12}.hero-description{font-size:15px;max-width:335px;margin:23px 0}.hero-image{margin:0;min-height:340px}.hero-image img{border-radius:46% 46% 0 0;object-position:50% 56%}.hero-image figcaption{left:20px;bottom:18px;font-size:10px}.hero-image figcaption small{font-size:10px;line-height:1.5;max-width:230px}.hero-bottom{font-size:10px;gap:16px;padding:17px 0}.hero-bottom a span{margin-left:7px}.section{padding:60px 6%}.section-heading{align-items:start;gap:20px;display:block}.section-heading>p{margin-top:20px;font-size:14px}.section-heading>p br{display:none}h2{font-size:2.65rem}.draft-note{font-size:12px}.service-grid{grid-template-columns:1fr}.service-card,.service-card+.service-card{padding:25px 0;border:0;border-bottom:1px solid var(--line)}.service-number{margin-bottom:17px}.service-card h3{font-size:28px}.service-card>p{max-width:none;font-size:15px}.service-end{display:flex;margin-top:22px;padding-top:0;border:0}.service-end a{margin:0}.philosophy{grid-template-columns:1fr;gap:28px}.philosophy-side{display:flex;align-items:center;justify-content:space-between;gap:15px}.philosophy-side .eyebrow{font-size:10px}.large-amp{font-size:88px;line-height:.8}.small-caps{display:none}.philosophy-copy>.eyebrow{font-size:10px;margin-bottom:20px}.principles{grid-template-columns:1fr;gap:20px}.principles>div{display:grid;grid-template-columns:25px 1fr;column-gap:12px}.principles h3{margin:0 0 6px;font-size:23px}.principles p{grid-column:2;font-size:14px}.instagram{grid-template-columns:1fr;gap:35px}.instagram-card{min-height:330px}.ig-card-title{font-size:2.5rem}.booking-banner{padding:60px 6%}.booking-banner h2{font-size:2.3rem}.booking-banner h2 br{display:none}.footer-top{flex-wrap:wrap;justify-content:start;gap:25px;padding-bottom:30px}.footer-top p{margin:0;font-size:12px}.footer-top>a:last-child{width:100%}.site-footer{padding:35px 6% 100px}.footer-bottom{font-size:11px;gap:18px}.footer-bottom nav{gap:15px}.mobile-book{display:flex;position:fixed;bottom:max(15px,env(safe-area-inset-bottom));left:6%;right:6%;z-index:5}.preview-ribbon{font-size:10px;padding:7px 6%}dialog{padding:22px 18px}.dialog-title{font-size:31px}.calendar-grid{gap:4px}.calendar-grid button{min-height:40px}.hero-note{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.site-header nav ul,.site-footer nav ul{display:flex;gap:22px;list-style:none;margin:0;padding:0;flex-wrap:wrap}.entry-content h2,.entry-content h3{margin:1em 0 .5em}.entry-content p{margin-bottom:1em}

/* Two locations and localized booking */
.language-switch{font-size:12px;border:1px solid var(--line);border-radius:3px;padding:5px 9px;text-decoration:none;line-height:1.3}.site-header{gap:20px}.site-header .account-link{margin-left:0}.booking-locations{max-width:850px;margin:35px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:18px;text-align:left}.booking-location{border:1px solid #ffffff48;padding:28px;color:var(--cream);text-decoration:none;border-radius:4px}.booking-location:hover{background:#ffffff09}.booking-location h3{font-size:34px;margin-bottom:12px}.booking-location p{font-size:14px;color:#d3dece;margin-bottom:22px}.booking-location span{display:block;border-top:1px solid #ffffff35;padding-top:17px;font-size:14px}.booking-banner .banner-account{margin-top:25px}.bs-progress{display:flex;gap:14px;list-style:none;padding:0;margin:0 0 22px;justify-content:space-between}.bs-progress li{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.bs-progress li span{border:1px solid var(--line);border-radius:50%;width:24px;height:24px;text-align:center;line-height:22px}.bs-progress [aria-current=step]{color:var(--pine);font-weight:bold}.bs-progress [aria-current=step] span{background:var(--pine);color:#fff;border-color:var(--pine)}.bs-dialog-intro{color:var(--muted);font-size:15px;margin-bottom:24px}.bs-location-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:25px 0 8px}.bs-location-option{display:flex;flex-direction:column;text-align:left;border:1px solid #a6b3a4;background:transparent;border-radius:5px;padding:24px;color:var(--ink)}.bs-location-option:hover{background:#e5e9dd;border-color:var(--pine)}.bs-location-option>strong{font-family:var(--serif);font-size:32px;line-height:1.2;margin-bottom:12px;font-weight:400}.bs-location-option>span{font-size:14px;line-height:1.65;flex:1}.bs-location-option>small{border-top:1px solid var(--line);padding-top:17px;margin-top:20px;font-size:13px}.bs-current{display:flex;justify-content:space-between;gap:20px;align-items:center;border:1px solid var(--line);border-radius:4px;padding:14px 16px;margin-bottom:24px;font-size:15px}.bs-current strong{display:block;font-size:16px}.bs-current small{display:block;font-size:12px;color:var(--muted)}.bs-text-button{border:0;background:transparent;padding:5px 0;color:var(--ink);text-decoration:underline;text-underline-offset:4px;font-size:13px;flex-shrink:0}.bs-service-options{border:0;padding:0;margin:20px 0 0}.bs-service-option{display:flex;align-items:start;gap:14px;padding:16px 14px;border:1px solid var(--line);margin-bottom:9px;border-radius:4px;cursor:pointer}.bs-service-option:has(input:checked){border-color:var(--pine);background:#e5e9dd}.bs-service-option input{accent-color:var(--pine);width:18px;height:18px;flex-shrink:0;margin:4px 0 0}.bs-service-option>span{flex:1}.bs-service-option strong{font-weight:500;font-size:15px;line-height:1.45;display:block}.bs-service-option small{display:block;color:var(--muted);font-size:13px;margin-top:5px}.bs-service-option .bs-procedure-description{font-size:13px;color:var(--muted);font-weight:400;display:block;line-height:1.6;margin-top:9px}.bs-service-option b{font-size:17px;white-space:nowrap;font-weight:500}.bs-actions{display:flex;justify-content:flex-end;align-items:center;gap:22px;margin-top:23px}.bs-actions .button:disabled{opacity:.45;cursor:default}#booking-comment{width:100%;max-width:100%;resize:vertical;border:1px solid #a6b3a4;background:transparent;border-radius:4px;padding:12px;font:inherit;font-size:15px;color:var(--ink)}.bs-field-help{font-size:12px;line-height:1.6;color:var(--muted);margin-top:9px}.bs-summary{margin:25px 0 0}.bs-summary>div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}.bs-summary dt{font-size:13px;color:var(--muted)}.bs-summary dd{margin:0;font-size:15px}.bs-summary dd small{display:block;color:var(--muted);font-size:13px;margin-top:4px}.bs-summary .bs-total{align-items:center}.bs-total dd{font-family:var(--serif);font-size:32px}.bs-demo-finish{margin-top:23px;font-size:14px;color:var(--muted)}.bs-comment-preview{white-space:pre-wrap;overflow-wrap:anywhere}dialog .dialog-title{font-size:clamp(1.9rem,4vw,2.3rem);outline:0}dialog .demo-note{font-size:12px}dialog label.bs-service-option{display:flex}.bs-actions .button{font-size:14px}@media(max-width:640px){.site-header{gap:12px}.site-header .account-link{margin-left:auto;font-size:11px}.language-switch{font-size:11px;padding:5px 7px}.booking-locations{grid-template-columns:1fr;gap:14px}.booking-location{padding:24px}.booking-location h3{font-size:31px}.bs-location-options{grid-template-columns:1fr}.bs-location-option{padding:20px}.bs-location-option>strong{font-size:28px}.bs-location-option>small{margin-top:14px;padding-top:12px}.bs-progress{gap:6px}.bs-progress li{font-size:11px;gap:5px}.bs-progress li span{width:22px;height:22px;line-height:20px}.bs-current{align-items:flex-start;gap:10px;padding:12px}.bs-current small{max-width:210px;font-size:12px}.bs-current .bs-text-button{font-size:12px;flex-shrink:1}.bs-service-option{padding:13px 10px;gap:10px}.bs-service-option strong{font-size:14px}.bs-service-option small{font-size:12px}.bs-service-option b{font-size:16px}.bs-actions{gap:15px;flex-wrap:wrap}.bs-actions>.button{flex:1}.bs-summary>div{grid-template-columns:1fr;gap:5px}.bs-summary .bs-total{grid-template-columns:1fr 1fr}.bs-total dd{text-align:right}}

/* Keep the mobile treatment list compact; selected procedure reveals its description. */
.bs-service-option:not(:has(input:checked)) .bs-procedure-description{display:none}

/* Complete procedure menu: one item per treatment, no numbered categories. */
.treatment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:36px}.treatment-card{border-top:1px solid var(--line);padding:30px 0 34px;min-width:0}.treatment-card h3{font-size:clamp(1.6rem,2.2vw,2rem);line-height:1.18;margin-bottom:18px;overflow-wrap:break-word}.treatment-card p{font-size:16px;line-height:1.75;color:var(--muted)}.treatment-footer{border-top:1px solid var(--line);padding-top:26px;display:flex;align-items:center;justify-content:space-between;gap:28px}.treatment-footer p{font-size:14px;color:var(--muted);max-width:430px}.treatment-footer .button{flex-shrink:0}@media(max-width:900px){.treatment-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}}@media(max-width:640px){.treatment-grid{grid-template-columns:1fr}.treatment-card{padding:25px 0}.treatment-card h3{font-size:27px;margin-bottom:14px}.treatment-footer{align-items:stretch;flex-direction:column;gap:18px}.treatment-footer .button{align-self:flex-start}.treatment-footer p{font-size:14px}}

/* Personal introduction and philosophy */
.about-section{background:#e5e9dd;display:grid;grid-template-columns:1fr 1.15fr;gap:8%;align-items:center}.about-image>.eyebrow{margin-bottom:25px}.about-image figure{position:relative}.about-image img{display:block;aspect-ratio:4/5;object-fit:cover;border-radius:44% 44% 3px 3px}.about-image figcaption{font-size:12px;color:var(--muted);padding-top:12px}.about-copy h2{font-size:clamp(2.6rem,3.8vw,4.2rem)}.about-intro{font-size:18px;line-height:1.8;margin-top:28px}.about-philosophy{border-top:1px solid #bdc7b9;margin-top:30px;padding-top:27px}.about-philosophy>.eyebrow{margin-bottom:16px}.about-philosophy h3{font-size:28px;margin-bottom:18px}.about-philosophy>p:last-child{font-size:16px;line-height:1.8;color:#4c5b50}@media(max-width:640px){.about-section{grid-template-columns:1fr;gap:35px}.about-image img{aspect-ratio:5/4;border-radius:42% 42% 3px 3px}.about-intro{font-size:16px}.about-copy h2{font-size:2.65rem}.about-philosophy h3{font-size:25px}}

/* Instagram feed surface; no fabricated posts while the account is disconnected. */
.instagram-section .section-heading{gap:28px}.instagram-profile>p{font-size:14px;line-height:1.75;color:var(--muted);margin-top:14px}.instagram-feed-host{min-width:0}.instagram-feed-unconnected{padding:45px 30px;text-align:center;background:#e5e9dd;border:1px solid #c7d2c1;border-radius:5px}.instagram-feed-unconnected .ig-icon{color:var(--pine);display:block;margin-bottom:18px}.instagram-feed-unconnected h3{font-size:32px;margin-bottom:18px}.instagram-feed-unconnected>p{font-size:15px;max-width:530px;margin:0 auto 24px;color:var(--muted)}.instagram-feed-unconnected .instagram-feed-status{font-size:12px;margin:18px auto 0}.instagram-privacy-note{font-size:12px;color:var(--muted);margin-top:18px}.instagram-feed-host #sb_instagram{width:100%;max-width:100%}@media(max-width:640px){.instagram-feed-unconnected{padding:30px 20px}.instagram-feed-unconnected h3{font-size:28px}.instagram-feed-unconnected>p{font-size:14px}.instagram-profile{margin-top:22px}.instagram-feed-unconnected .button{gap:18px}}

.bsmr-notice{padding:22px;background:#e5e9dd;color:#22382e;border-radius:4px;margin:20px 0}.bsmr-form{max-width:650px;margin:25px auto;text-align:left}.bsmr-form>label{display:block;margin:20px 0 7px;font-size:15px}.bsmr-form input:not([type=checkbox]),.bsmr-form textarea,.bsmr-form select{width:100%;border:1px solid #a6b3a4;border-radius:4px;padding:12px;background:transparent;color:inherit;font:inherit}.bsmr-form textarea{resize:vertical}.bsmr-form>p{font-size:13px;color:#5b675f}.bsmr-form .bsmr-consent{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.65}.bsmr-consent input{margin-top:6px;accent-color:#18392e}.bsmr-form button{border:0;border-radius:3px;background:#18392e;color:#fff;padding:14px 22px;font:inherit;cursor:pointer}.bsmr-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.bsmr-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:30px 0;text-align:left}.bsmr-card{border-top:1px solid #cdd3c7;padding:24px 0}.bsmr-card blockquote{margin:15px 0;font-size:16px;line-height:1.75;overflow-wrap:anywhere}.bsmr-rating{color:#365542;letter-spacing:.12em}.bsmr-author{font-size:14px;color:#5b675f}.reviews .review-button{margin-top:24px}@media(max-width:850px){.bsmr-list{grid-template-columns:1fr}} 

.about-image img{object-position:center 30%}.review-button{margin-top:24px}

/* Mobile delivery: readable controls, safe areas and reachable main navigation. */
dialog{max-height:90vh;max-height:90dvh;overscroll-behavior:contain}
.hero-image>picture,.about-image picture{display:block}.hero-image>picture{height:100%}
@media(max-width:1050px){.site-header{flex-wrap:wrap}.site-header nav{display:flex;order:5;flex-basis:100%;max-width:100%;overflow-x:auto;gap:22px;white-space:nowrap;scrollbar-width:thin}.site-header nav a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}.site-header nav ul{flex-wrap:nowrap;gap:22px}}
@media(max-width:640px){.bsmr-form input:not([type=checkbox]),.bsmr-form textarea,.bsmr-form select,#booking-comment{font-size:16px}.close,.calendar-heading button,.language-switch{min-width:44px;min-height:44px}.language-switch{display:inline-flex;align-items:center;justify-content:center}.site-header{padding-top:max(16px,env(safe-area-inset-top))}.bs-progress{flex-wrap:wrap}.bs-progress li{min-height:28px}.hero-image>picture{height:340px}.site-header .brand{flex-shrink:0}.site-header .account-link{max-width:100px}.about-image picture{width:100%}}

.salon-links{display:flex;gap:22px 50px;flex-wrap:wrap;padding:0 0 28px}.salon-links a{font-size:14px;display:block;min-height:44px}.salon-links small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.salon-links [aria-disabled=true]{cursor:default;color:var(--muted);text-decoration:none}@media(max-width:640px){.salon-links{gap:20px 35px}}

/* Appointment details and binding-order preview. */
.bs-customer-form{margin-top:24px}.bs-customer-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bs-customer-form label{display:block;margin:16px 0;font-size:14px}.bs-customer-form input{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #a6b3a4;border-radius:4px;background:transparent;color:inherit;font:inherit;font-size:16px}.bs-form-error{color:#8a3426;font-size:14px}.bs-booking-policy{margin:24px 0;padding:20px;background:#e5e9dd;border-left:3px solid #496551;border-radius:3px}.bs-booking-policy strong{font-size:16px}.bs-booking-policy p{font-size:14px;line-height:1.7;margin:10px 0}.bs-booking-policy small{font-size:12px;color:var(--muted)}.bs-terms-check{display:flex;align-items:flex-start;gap:12px;line-height:1.7;margin:20px 0!important}.bs-terms-check input{width:20px;height:20px;margin-top:3px;flex-shrink:0;accent-color:var(--pine)}.bs-checkout-actions{display:flex;flex-direction:column;align-items:stretch;gap:18px;margin-top:20px}.bs-checkout-actions .button{text-align:center;justify-content:center;white-space:normal;line-height:1.5}.bs-checkout-actions .button:disabled{opacity:.5;cursor:default}.bs-legal-document h3{font-size:24px;margin:28px 0 13px}.bs-legal-document p{font-size:15px;line-height:1.8;margin:13px 0}.bs-legal-document a{overflow-wrap:anywhere}@media(max-width:480px){.bs-customer-grid{grid-template-columns:1fr;gap:0}.bs-booking-policy{padding:16px}.bs-checkout-actions .button{font-size:15px}}

/* User-supplied Cologne room photos; native touch scrolling, no autoplay. */
.hero-image.room-gallery{min-width:0;min-height:0;display:flex;flex-direction:column}.hero-image.room-gallery:after{display:none}.room-gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:45% 45% 0 0;height:560px;overscroll-behavior-x:contain}.room-gallery-track::-webkit-scrollbar{display:none}.room-gallery-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}.room-gallery-slide picture{display:block;height:100%}.hero-image.room-gallery img{position:static;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:0}.hero-image.room-gallery figcaption{position:static;padding:12px 0 20px;font-size:12px;letter-spacing:.15em;color:var(--cream)}.hero-image.room-gallery figcaption small{display:block;font-size:14px;letter-spacing:0;margin-top:8px;max-width:none;color:var(--cream)}.room-gallery-toolbar{display:flex;align-items:center;justify-content:space-between;padding-top:14px;color:var(--cream)}.room-gallery-toolbar button{width:44px;height:44px;border:1px solid #ffffff66;border-radius:50%;background:transparent;color:inherit;font-size:28px;cursor:pointer}.room-gallery-toolbar button:disabled{opacity:.35;cursor:default}.room-gallery-toolbar span{font-size:14px}.room-gallery-track:focus-visible{outline:2px solid white;outline-offset:4px}@media(max-width:640px){.room-gallery-track{height:360px;border-radius:35% 35% 0 0}.hero-image.room-gallery{margin:0}.hero-image.room-gallery figcaption{padding-bottom:10px}.room-gallery-toolbar{padding-top:12px}}

/* Independent gallery below the restored hero. */
.photo-gallery{padding-top:55px;padding-bottom:55px;border-bottom:1px solid var(--line)}.photo-gallery .section-heading{margin-bottom:26px}.photo-gallery h2{font-size:clamp(2rem,3vw,3rem)}.photo-gallery .room-gallery-track{height:auto;border-radius:0;gap:20px;align-items:start;scroll-padding:0}.photo-gallery .room-gallery-slide{flex:0 0 calc((100% - 40px)/3);margin:0;min-width:0}.photo-gallery picture{height:auto;display:block}.photo-gallery img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:cover;border-radius:6px}.photo-gallery figcaption{font-size:14px;line-height:1.6;padding-top:14px;color:var(--ink);overflow-wrap:anywhere}.photo-gallery .room-gallery-toolbar{color:var(--ink);max-width:180px;margin:8px auto 0}.photo-gallery .room-gallery-toolbar[hidden]{display:none}.photo-gallery .room-gallery-toolbar button{border-color:var(--line)}.photo-gallery .room-gallery-track:focus-visible{outline-color:var(--pine)}@media(max-width:640px){.photo-gallery{padding-top:38px;padding-bottom:38px}.photo-gallery .room-gallery-slide{flex-basis:100%}.photo-gallery .room-gallery-track{gap:16px}.photo-gallery .room-gallery-toolbar{margin-top:10px}}

/* Side navigation remains visible as the photo collection grows. */
.photo-gallery .room-gallery-stage{position:relative;margin:0 22px;padding-bottom:38px}.photo-gallery .room-gallery-toolbar{position:absolute;inset:0 0 80px;max-width:none;margin:0;padding:0;pointer-events:none}.photo-gallery .room-gallery-toolbar button{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;background:var(--cream);color:var(--pine);border:1px solid var(--line);box-shadow:0 3px 12px #18392e18;pointer-events:auto;display:grid;place-items:center;line-height:1;z-index:2}.photo-gallery [data-gallery-prev]{left:-23px}.photo-gallery [data-gallery-next]{right:-23px}.photo-gallery .room-gallery-toolbar button:disabled{opacity:.45}.photo-gallery .room-gallery-toolbar button:focus-visible{outline:2px solid var(--pine);outline-offset:4px}.photo-gallery .room-gallery-toolbar span{position:absolute;top:calc(100% + 54px);left:0;right:0;text-align:center}@media(max-width:640px){.photo-gallery .room-gallery-stage{margin:0 12px}.photo-gallery [data-gallery-prev]{left:-22px}.photo-gallery [data-gallery-next]{right:-22px}}

.about-image img{aspect-ratio:3/4;object-fit:cover;object-position:center;border-radius:6px}

.about-section{align-items:start}.about-copy>p,.about-philosophy p,.about-learning p{margin-bottom:18px;line-height:1.75}.about-learning{margin-top:30px}.about-learning h3{font-family:var(--serif);font-size:28px;font-weight:400;margin-bottom:16px}.about-signoff{margin-top:28px;font-style:italic}

/* Portrait flows with the personal story instead of occupying a separate column. */
.about-section{display:block}.about-copy{display:flow-root;max-width:1020px;margin:0 auto}.about-copy>.eyebrow{margin-bottom:20px}.about-copy>.about-intro{max-width:760px;margin-top:24px;margin-bottom:30px;font-size:20px}.about-portrait-inline{float:right;width:36%;max-width:350px;margin:4px 0 26px 42px}.about-portrait-inline figure{margin:0}.about-portrait-inline img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:0}.about-philosophy{border:0;padding-top:0;margin-top:28px}.about-copy p{color:#4c5b50}.about-copy h3{font-size:26px;line-height:1.3}.about-signoff{clear:both;padding-top:12px}@media(max-width:640px){.about-portrait-inline{float:none;width:100%;max-width:320px;margin:24px auto 28px}.about-portrait-inline img{border-radius:0}.about-copy>.about-intro{font-size:18px;margin-bottom:22px}.about-copy h3{font-size:24px}}

.has-treatment-details{cursor:pointer}.treatment-read-more{display:inline-block;background:none;border:0;border-bottom:1px solid currentColor;padding:0 0 5px;margin-top:22px;color:var(--pine);font:inherit;font-size:14px;cursor:pointer}.treatment-read-more:focus-visible{outline:2px solid var(--pine);outline-offset:5px}.treatment-detail-dialog{width: min(820px,calc(100% - 32px));max-height:88dvh;padding:0;background:#e5e9dd;color:var(--ink);border:0;border-radius:8px;overflow-y:auto;overscroll-behavior:contain}.treatment-detail-dialog::backdrop{background:#132b24b3}.treatment-detail-top{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;background:#e5e9dd;padding:14px 28px;border-bottom:1px solid var(--line)}.treatment-detail-top span{font-size:12px;letter-spacing:.14em}.detail-close{background:none;border:1px solid var(--line);border-radius:50%;width:44px;height:44px;font-size:28px;color:var(--pine);cursor:pointer}.treatment-detail-copy{padding:30px 48px 44px}.treatment-detail-copy h2{font-size:clamp(28px,4vw,42px);line-height:1.15;overflow-wrap:anywhere}.treatment-detail-copy h3{font-size:23px;line-height:1.35;margin:28px 0 12px}.treatment-detail-copy p{font-size:16px;line-height:1.8;margin:0 0 18px;color:#4c5b50}.treatment-detail-copy .detail-intro{font-size:20px;margin:24px 0 28px}.detail-signoff{font-style:italic;border-top:1px solid var(--line);padding-top:24px;margin-top:30px!important}@media(max-width:640px){.treatment-detail-copy{padding:24px}.treatment-detail-top{padding:12px 20px}.treatment-detail-copy h3{font-size:21px}}

.hero-seo-title{font-size:clamp(32px,4.4vw,64px)!important;line-height:1.12}.hero-tagline{font-size:22px;margin:20px 0}.seo-location-links{display:flex;flex-wrap:wrap;gap:24px;margin:30px 0}.seo-location-links a{text-decoration:underline;text-underline-offset:5px}.seo-page{max-width:860px;margin:auto;padding:60px 24px}.seo-page h1{font-size:clamp(32px,5vw,52px);line-height:1.15;margin-bottom:28px}.seo-page h2{font-size:26px;margin:30px 0 16px}.seo-page p,.seo-page li{line-height:1.8;margin-bottom:16px}.seo-page ul{padding-left:22px}

/* Six room photos: Cologne on the first row, Bochum on the second. */
@media(min-width:641px){.photo-gallery .room-gallery-track{display:grid;grid-template-rows:repeat(2,auto);grid-auto-columns:calc((100% - 40px)/3);grid-auto-flow:column;gap:28px 20px;overflow-x:auto}.photo-gallery .room-gallery-slide{width:auto;grid-row:var(--gallery-row);grid-column:var(--gallery-column)}.photo-gallery .room-gallery-toolbar{display:flex}}
