/* Consistent finishing, readable controls and responsive layouts. */
:root{--red:#b52b38;--muted:#bdc7d5;--line:#3e4b5d}
html{scroll-padding-top:115px}body{overflow-wrap:break-word}main{min-width:0}
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:5px;font-size:14px;line-height:1.4;text-decoration:none;transition:background .18s,border-color .18s}
.button.red{background:#b52b38}.button.outline:hover{border-color:#ec929d}.button:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #f3b2bb;outline-offset:4px}
.new-header .menu{min-height:48px;min-width:48px;cursor:pointer}.header-short a{padding-block:14px}.megagroup>a{min-height:44px;display:flex;align-items:center;font-size:14px}
.fine,.service-price>small{font-size:13px;line-height:1.7}.eyebrow{line-height:1.7}.sectionhead>p,.opening-bottom>p,.membership-inner>div>p,.new-personal p{font-size:16px;line-height:1.8}
.service-row{scroll-margin-top:115px}.service-row>div{min-width:0}.service-row p,.service-row ul{font-size:15px;line-height:1.75}.service-row summary{font-size:14px;min-height:44px;display:flex;align-items:center;cursor:pointer}.service-row summary:after{content:'+';margin-left:12px;color:#f0a6b0}.service-row details[open] summary:after{content:'−'}.service-row .eyebrow{font-size:10px}.service-price .button{min-width:175px;min-height:48px;font-size:13px}.service-row.featured-service{border-top-color:#d45a67}.featured-service .eyebrow{color:#ffbac4}
.opening-photo{border-radius:8px}.service-row>img{border-radius:6px}.treatment,.projectstory,.subtotal,.bookingbox,.reviewgrid .customer-review{border-radius:8px;overflow:hidden}.treatment-list button{min-height:64px;font-size:14px;cursor:pointer}.detail-copy p,.detail-copy ul{font-size:15px;line-height:1.75}.detail-copy .duration{font-size:13px;line-height:1.7}.detail-copy .button{width:100%}.detail-copy{display:flex;flex-direction:column;align-items:flex-start}.detail-copy .button{margin-top:auto}.detail-copy .duration{margin-bottom:20px}
.subcalculator select{font-size:16px;min-height:52px;width:100%;max-width:100%}.subcalculator label{font-size:15px}.subtotal .button{width:100%}.membership-rates small{font-size:11px}.subtotal p{line-height:1.8}.three p{font-size:15px;line-height:1.8}
.live-agreement>.section{padding:0}.live-agreement{margin:auto}.live-agreement form{border-radius:8px;max-width:850px}.live-agreement input:not([type=checkbox]),.live-agreement select{font-size:16px;min-height:50px;border-radius:4px}.live-agreement input[type=checkbox]{flex-shrink:0}.live-agreement form>details{border-block:1px solid #52617a;padding:16px 0;margin:24px 0}.live-agreement form>details>summary{font-weight:700;cursor:pointer;line-height:1.6;padding-block:8px}.live-agreement button[type=submit]{min-height:50px;font-size:15px;border-radius:5px;cursor:pointer}.live-agreement .legal-index{position:static;display:block;background:transparent;padding:12px 0}.live-agreement .legal-index-grid{display:flex;flex-wrap:wrap;gap:12px}.live-agreement form>details .site-section{padding:24px 0}.live-agreement form>details .site-intro{padding:24px 0}.live-agreement form>details h2{font-size:24px;line-height:1.3}.live-agreement form>details .waps-breadcrumb{display:none}
.selection-recap{padding:20px 24px;border:1px solid #596c86;border-left:3px solid #e47785;background:#1a2739;border-radius:6px;margin:0 0 25px}.selection-recap p{margin:8px 0 0;font-size:15px}.selection-recap strong{font-size:20px}.selection-recap a{font-size:13px;display:inline-block;margin-top:10px}
.projectphoto{border-radius:5px}.photolabel{font-size:12px}.projectcaption p{font-size:15px}.projectcaption a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}.projectalbum>summary{min-height:48px;font-size:14px}.footgrid a{font-size:14px;padding-block:5px}.footgrid p{font-size:14px}.footbottom{font-size:12px;line-height:1.7}.quietlink{font-size:14px;min-height:44px;display:flex;align-items:center}
@media(min-width:1400px){.opening-title,.section,.intro-line,.heading{padding-left:max(6%,calc((100vw - 1280px)/2));padding-right:max(6%,calc((100vw - 1280px)/2))}}
@media(max-width:800px){html{scroll-padding-top:95px}.opening-title h1{font-size:clamp(40px,10vw,58px)}.opening-bottom{gap:22px}.opening-photo{height:430px;margin-inline:5%}.sectionhead>p,.opening-bottom>p,.membership-inner>div>p,.new-personal p{font-size:15px}.service-row{grid-template-columns:100px minmax(0,1fr);gap:16px;padding:24px 0}.service-row>img{width:100%;height:125px;grid-column:1;grid-row:1}.service-row>.service-number{display:none}.service-row>div:not(.service-price){grid-column:2;grid-row:1}.service-row h3{font-size:29px}.service-row p{font-size:14px}.service-price{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;text-align:left}.service-price>strong{font-size:38px}.service-price>small{margin:0;flex:1}.service-price .button{width:100%;min-height:50px}.service-row ul{font-size:14px}.service-row summary{font-size:13px}.new-header .brand{min-width:0}.new-header .brand small{font-size:7px}.new-header .header-actions>.button{font-size:12px;min-height:44px}.new-header .menu{padding-inline:10px}.new-header{gap:10px}.header-actions{gap:5px}.megagroup>a{min-height:46px}.membership-rates{gap:8px}.membership-rates small{font-size:10px}.live-agreement{padding-inline:5%}.live-agreement h1{font-size:clamp(34px,9vw,48px);line-height:1.15}.live-agreement form{padding:20px}.live-agreement button[type=submit]{width:100%;padding-inline:14px}.live-agreement form>details li{font-size:14px;line-height:1.8}.subtotal{padding:25px}.treatment-detail{grid-template-columns:1fr}.package-image{height:250px;min-height:0;object-fit:cover}.detail-copy{padding:25px}.footgrid{gap:24px}.projectcaption p{font-size:14px}.projectbadge{white-space:normal}.new-review blockquote>p{font-size:30px}.photo-caption{font-size:13px}.footbottom{font-size:11px}}
@media(max-width:380px){.brand{font-size:17px}.brand img{width:34px;height:34px}.header-actions>.button{padding:10px!important;font-size:11px!important}.new-header .menu{padding-inline:6px;min-width:40px}.service-row{grid-template-columns:80px minmax(0,1fr)}.service-row h3{font-size:25px}.membership-rates strong{font-size:34px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Final responsive and legibility refinements for the existing dark/red design. */
:root{--red:#b52b38}
.new-header .header-short a,.new-header .menu{font-size:14px}
.new-header .brand small{font-size:9px}
.eyebrow,.sectionhead .eyebrow,.opening-title>.eyebrow,.service-row .eyebrow,.workintro .eyebrow,.menulabel{font-size:12px;line-height:1.6;letter-spacing:.1em}
.membership-rates small,.intro-line>div,.intro-line>a>span,.photo-sign>span,.workfeature span,.new-review blockquote footer>span{font-size:13px;line-height:1.6}
.photo-sign>span,.photo-caption{text-shadow:0 2px 8px #000}
.service-row{min-height:220px}
.service-row>img{align-self:start}
.service-row details[open]{padding-bottom:8px}
.service-row summary{gap:8px}
.service-row summary:after{margin-left:auto}
.service-price .button{white-space:normal}
.subcalculator select{cursor:pointer}
.subtotal{align-self:start}
.subtotal h3{line-height:1.4;overflow-wrap:break-word}
#nav{overscroll-behavior:contain;scrollbar-gutter:stable}
#nav a{text-underline-offset:5px}
#nav a:hover,#nav a:focus-visible{background:#ffffff08}
.footgrid>div{min-width:0}
.footgrid a{overflow-wrap:anywhere;line-height:1.7}
button,summary,a{-webkit-tap-highlight-color:#e4778540}
@media(min-width:801px) and (max-width:1100px){
 .header-short{display:none}.header-actions{margin-left:auto}
 .service-row{grid-template-columns:120px minmax(0,1fr) 180px;gap:24px}
 .service-number{display:none}.service-row>img{width:120px;height:145px}
 .service-price .button{min-width:0;width:100%}
 .membership-inner{grid-template-columns:1fr 1fr;gap:32px}
 .sectionhead{gap:25px}
}
@media(max-width:800px){
 .new-header .menu{font-size:0;min-width:44px;min-height:44px}
 .new-header .brand small{font-size:8px;letter-spacing:.08em}
 .opening-title>.eyebrow{font-size:11px;max-width:100%}
 .opening-bottom>.button{width:100%;min-height:52px}
 .opening-photo{height:clamp(320px,105vw,460px)}
 .photo-sign{left:20px;right:20px;bottom:80px}
 .photo-sign>span{font-size:11px}.photo-sign>strong{font-size:58px}
 .photo-caption{left:20px;right:20px;bottom:22px;min-height:44px;min-width:0;font-size:14px;align-items:center}
 .intro-line{grid-template-columns:1fr;gap:24px}
 .intro-line>p{grid-column:auto}.intro-line>div{font-size:14px;gap:10px}
 .intro-line>a{border-left:0;border-top:1px solid #455267;padding:18px 0 0;display:flex;align-items:center;gap:16px}
 .intro-line>a>span{font-size:13px}.intro-line>a>b{font-size:40px}
 .service-row{min-height:0}.service-row .eyebrow{font-size:11px}
 .service-row>img{width:100%;height:125px}
 .service-price>small{font-size:13px}.service-row summary{font-size:14px}
 .membership-rates{gap:12px}.membership-rates small{font-size:11px;letter-spacing:.02em;line-height:1.5}
 .workfeature span{font-size:12px}.workfeature>div{left:24px;right:24px}
 .megagroup>a{font-size:14px;min-height:48px}
 .megapanel .menulabel{font-size:12px}
 .menu-title>span{display:none}.menu-title h2{font-size:34px}
 .heading h1{font-size:clamp(38px,10vw,58px);line-height:1.12}
 .heading p{font-size:16px;line-height:1.8}
 .sectionhead{display:block}.sectionhead>p{margin-top:20px}
 .foot-top>.actions{flex-direction:column;align-items:stretch}
 .foot-top .button{font-size:14px;min-height:50px}
 .new-review blockquote footer>span{font-size:13px}
 .mobilebook{padding-bottom:max(14px,env(safe-area-inset-bottom));min-height:52px;font-size:14px}
}
@media(max-width:380px){
 .new-header{padding-inline:4%;gap:8px}.new-header .brand{gap:7px;font-size:16px}
 .new-header .brand img{width:32px;height:32px}.new-header .brand small{font-size:7px}
 .new-header .header-actions>.button{font-size:12px!important;padding:10px!important;gap:6px}
 .header-actions{gap:4px}.new-header .menu{padding-left:8px;padding-right:4px;min-width:44px}
 .megapanel{grid-template-columns:1fr}.megagroup:first-child{grid-column:auto}
 .service-row{grid-template-columns:80px minmax(0,1fr);gap:14px}
 .membership-rates{gap:8px}.membership-rates strong{font-size:34px}
}

/* Local navigation and a complete first render of the treatment selector. */
.place-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:22px 6% 0;color:#bdc7d5;font-size:14px;line-height:1.6}
.place-breadcrumb a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}
.place-breadcrumb a:hover{text-decoration:underline}
.place-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:24px}
#behandelingen{scroll-margin-top:115px}
.package-fallback{display:flex;flex-wrap:wrap;gap:12px;padding:20px 0}
.package-fallback p{flex-basis:100%}.package-fallback a{display:inline-flex;align-items:center;min-height:48px;padding:10px 16px;border:1px solid #64748b;border-radius:5px}
@media(max-width:800px){.place-breadcrumb{padding-top:14px;font-size:14px}.place-actions{align-items:stretch;flex-direction:column}.place-actions .button{width:100%}.place-actions .quietlink{justify-content:center}.casebuttons{display:flex;flex-wrap:wrap;gap:8px}.casebuttons button{min-height:44px;padding:10px 14px}.local-links{display:flex;flex-wrap:wrap;gap:10px 16px}.local-links p{width:100%}.local-links a{display:inline-flex;align-items:center;min-height:44px}}
