/* Interaction layer: editorial structure, purposeful motion, visible contact. */
body{padding-bottom:96px}html{scroll-padding-bottom:110px}.contact-dock{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:40;display:flex;align-items:center;gap:6px;width:max-content;max-width:calc(100% - 32px);padding:8px;background:var(--navy);color:white;border:1px solid #607789;border-radius:9px;box-shadow:0 8px 28px #061b2e30}.contact-dock a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 20px;font-size:15px;font-weight:650;border-radius:4px}.contact-dock a:hover{background:#24465f}.contact-dock .dock-visit{background:var(--yellow);color:var(--navy)}.contact-dock .dock-whatsapp{border:1px solid #739486}.dock-caption{font-size:14px;padding:0 16px;color:#d5dfe6}.contact-dock svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.service-accordion{border-top:2px solid var(--navy)}.service-expand{border-bottom:1px solid #b9c6cd;scroll-margin-top:24px}.service-expand>summary{list-style:none;display:grid;grid-template-columns:45px 1fr 46px;align-items:center;gap:22px;padding:28px 0;cursor:pointer}.service-expand>summary::-webkit-details-marker{display:none}.expand-number{font-size:15px;color:var(--muted);align-self:start;padding-top:6px}.service-expand strong{display:block;font-size:clamp(1.25rem,2.3vw,1.7rem);font-weight:720;line-height:1.3;letter-spacing:-.035em}.service-expand small{display:block;font-size:17px;color:var(--muted);line-height:1.5;margin-top:7px}.expand-toggle{display:grid;place-items:center;width:46px;height:46px;border:1px solid #a8b6c0;border-radius:50%;font-size:25px;transition:transform .25s,background .25s}.service-expand[open] .expand-toggle{background:var(--yellow);border-color:var(--yellow);transform:rotate(45deg)}.service-expand>summary:hover strong{color:#765b00}.expand-body{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding:0 0 35px 67px;align-items:center}.expand-body figure{background:#ebe8df;position:relative;border-radius:3px;overflow:hidden}.expand-body img{width:100%;aspect-ratio:4/3;object-fit:cover;height:auto}.expand-body figcaption{font-size:11px;position:absolute;bottom:0;left:0;padding:6px 10px;background:#09263fe0;color:white}.expand-body p{font-size:18px;color:var(--muted)}.check-list{list-style:none;padding:0;margin:20px 0 26px}.check-list li{padding:11px 0 11px 26px;border-bottom:1px solid var(--line);position:relative;font-size:17px;line-height:1.5}.check-list li:before{content:'✓';position:absolute;left:0;font-weight:800;color:#775c00}.expand-links{display:flex;flex-wrap:wrap;align-items:center;gap:20px}.expand-links .button{font-size:15px;padding:12px 18px}.service-expand[open] .expand-body{animation:detail-in .25s ease-out}@keyframes detail-in{from{opacity:.4;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
.comparison-section{background:#eae7de}.comparison-section .section-head{grid-template-columns:1.25fr 1fr}.comparison-section h2 em{color:#496071}.compare-view{width:100%;aspect-ratio:3/2;max-height:640px;position:relative;overflow:hidden;border-radius:4px;background:#ddd6c9}.compare-image{position:absolute;inset:0;background-image:url('assets/vergleich-wohnung.png');background-repeat:no-repeat;background-size:200% 100%}.compare-after{background-position:right center}.compare-before{background-position:left center;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.compare-label{position:absolute;top:20px;padding:9px 18px;background:#09263feb;color:white;font-size:15px;font-weight:650;pointer-events:none}.before-label{left:20px}.after-label{right:20px;background:var(--yellow);color:var(--navy)}.compare-handle{position:absolute;top:0;bottom:0;left:var(--split);width:3px;background:white;transform:translateX(-50%);box-shadow:0 0 6px #0004;pointer-events:none}.compare-handle b{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;border:3px solid white;background:var(--navy);color:white;border-radius:50%;display:grid;place-items:center;font-size:26px}.compare-range{position:absolute;inset:0;opacity:0;cursor:ew-resize;height:100%;width:100%;padding:0;margin:0;touch-action:pan-y}.compare-view:focus-within{outline:3px solid #1680d5;outline-offset:5px}.compare-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 0}.compare-toolbar button{background:white;border:1px solid #8295a2;border-radius:3px;padding:12px 20px;font-size:15px;min-height:46px;font-weight:650;color:var(--navy)}.compare-toolbar button:hover{background:var(--yellow)}.compare-toolbar span,.comparison figcaption{font-size:14px;color:var(--muted)}.compare-bottom{margin-top:28px;border-top:1px solid #bac3c6;padding-top:26px;display:flex;justify-content:space-between;align-items:center;gap:20px}.compare-bottom p{font-size:22px;font-weight:650;margin:0}
.finder-section{display:grid;grid-template-columns:1fr 1fr;gap:90px}.finder-heading{position:relative}.finder-heading p:not(.eyebrow){max-width:350px;color:var(--muted)}.finder-mark{display:block;font-size:150px;line-height:1;color:#c2cbd0;margin-top:30px;font-weight:300}.service-finder{border-top:3px solid var(--yellow);padding-top:26px}.service-finder fieldset{padding:0;border:0;margin:0 0 28px}.service-finder legend{font-size:17px;font-weight:700;margin:0 0 15px}.service-finder fieldset label{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);padding:13px 0;margin:0;font-weight:400;font-size:17px;cursor:pointer}.service-finder input[type=radio]{accent-color:var(--navy);width:22px;height:22px;min-height:22px;flex-shrink:0;margin:0;padding:0}.finder-result{padding:25px;background:#ede9dc;border-left:4px solid var(--yellow);margin-top:28px}.finder-result .eyebrow{font-size:12px}.finder-result h3{font-size:1.55rem}.finder-result .button{margin-top:22px;display:flex;justify-content:space-between}.finder-result p{font-size:17px}.finder-result .fine-print{margin:18px 0 0;font-size:13px}
.trust-section{padding-top:78px}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.trust-grid details{border-top:2px solid var(--navy);padding-top:20px}.trust-grid summary{cursor:pointer;line-height:1.4;font-weight:700;font-size:21px;list-style:none}.trust-grid summary span{display:block;color:#637886;font-size:14px;margin-bottom:15px}.trust-grid summary:after{content:'＋';display:inline-block;margin-left:10px;color:#927400}.trust-grid details[open] summary:after{content:'−'}.trust-grid p{font-size:17px;color:var(--muted);margin-top:20px}.trust-grid summary::-webkit-details-marker{display:none}
.journey{background:var(--navy);color:white;position:relative}.journey h2 em{color:var(--yellow)}.journey .section-head>p{color:#c9d5de}.journey-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:center}.journey-text>h3{font-size:1.9rem;line-height:1.22;max-width:380px}.journey-text>p{font-size:18px;color:#d1dce3;min-height:94px;max-width:410px}.journey-text>.eyebrow{display:block;color:var(--yellow);margin-bottom:22px}.journey-controls{display:flex;flex-direction:column;gap:0;margin:22px 0}.journey-controls button{color:#c9d7e1;background:transparent;text-align:left;border:0;border-bottom:1px solid #ffffff30;min-height:56px;padding:12px 16px;font-size:17px}.journey-controls button[aria-pressed=true]{border-left:4px solid var(--yellow);background:#183e59;color:white;font-weight:700}.journey-controls button:hover{background:#284d66}.journey .text-link{color:white}.journey-visual{background:#10324d;border:1px solid #547084;border-radius:4px;overflow:hidden;min-width:0}.room-model{height:310px;position:relative}.room-model canvas{width:100%;height:100%;display:block}.room-fallback{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:22px;color:#d3dfe6;padding:35px}.room-fallback span{font-size:15px}.room-fallback b{font-size:30px;line-height:1.3}.model-caption{display:block;text-align:center;color:#c6d5df;font-size:12px;padding:0 15px 14px}.transport-lane{height:130px;position:relative;overflow:hidden;background:#0a2338}.lane-line{height:1px;background:#667c8d;position:absolute;bottom:24px;left:0;right:0}.journey-truck{position:absolute;object-fit:contain;width:260px;height:170px;bottom:7px;left:50%;transform:translateX(-50%);max-width:none;will-change:transform}.journey-progress{height:3px;background:#466074;margin-top:38px}.journey-progress span{display:block;width:33.333%;height:100%;background:var(--yellow);transform-origin:left}.journey-hint{font-size:13px;color:#b7c8d4;margin:16px 0 0}.no-motion .journey-hint{display:none}
.cost-accordion{margin-top:32px;border-top:2px solid var(--navy)}.cost-accordion details{border-bottom:1px solid var(--line)}.cost-accordion summary{display:grid;grid-template-columns:34px 1fr 30px;gap:20px;align-items:center;padding:25px 0;list-style:none;cursor:pointer}.cost-accordion summary::-webkit-details-marker{display:none}.cost-accordion summary>span{color:var(--muted);font-size:15px}.cost-accordion summary>span:last-child{font-size:25px;color:var(--ink)}.cost-accordion strong{font-size:1.35rem;font-weight:700}.cost-accordion details[open] summary>span:last-child{transform:rotate(45deg)}.cost-accordion details>div{padding:0 50px 22px 54px;max-width:900px}.cost-accordion h3{font-size:1.2rem}.cost-accordion p{color:var(--muted);font-size:18px}.contact-number{font-size:clamp(1.1rem,2.4vw,1.65rem);display:block;font-weight:750;margin-bottom:24px}.whatsapp-button{background:#dbeee1;border-color:#537e61;color:#133c25;margin-bottom:10px}.fine-print{font-size:13px!important;line-height:1.5!important}.contact-layout aside .fine-print{margin-bottom:35px}.contact-layout #whatsapp-summary{margin:12px 0 18px}.contact-layout .draft-notice{margin-bottom:20px}
.comparison{max-width:960px;margin-inline:auto}.compare-view{max-height:none}.service-expand>summary,.cost-accordion summary{padding-right:10px}
@media(max-width:1000px){.dock-caption{display:none}.expand-body{gap:28px;padding-left:0}.finder-section{gap:40px}.journey-layout{gap:35px}.room-model{height:285px}.trust-grid{gap:24px}.trust-grid summary{font-size:19px}}
@media(max-width:700px){body{padding-bottom:86px}.contact-dock{bottom:0;left:0;transform:none;width:100%;max-width:none;border-radius:0;border-width:1px 0 0;gap:3px;padding:7px 8px calc(7px + env(safe-area-inset-bottom))}.contact-dock a{flex:1;padding:10px 8px;min-height:48px;font-size:14px;gap:6px}.contact-dock .dock-whatsapp{border:0}.contact-dock svg{width:18px;height:18px}.contact-dock .dock-visit{flex:1.2}.service-expand>summary{grid-template-columns:26px 1fr 36px;gap:13px;padding-block:22px}.service-expand strong{font-size:1.3rem}.service-expand small{font-size:15px}.expand-toggle{width:36px;height:36px;font-size:22px}.expand-body{grid-template-columns:1fr;padding:0 0 28px;gap:25px}.expand-body img{aspect-ratio:4/3;max-height:380px}.expand-body p{font-size:17px}.check-list li{font-size:16px}.comparison-section .section-head{grid-template-columns:1fr;gap:22px}.compare-view{aspect-ratio:3/2}.compare-label{font-size:12px;padding:7px 12px;top:12px}.before-label{left:12px}.after-label{right:12px}.compare-handle b{width:44px;height:44px;font-size:23px}.compare-toolbar{gap:12px;flex-wrap:wrap;padding-block:14px}.compare-toolbar span{order:3;width:100%;font-size:12px}.compare-toolbar button{font-size:13px;padding:10px 13px}.comparison figcaption{font-size:12px}.compare-bottom{display:block}.compare-bottom p{font-size:21px;margin-bottom:14px}.finder-section{grid-template-columns:1fr;gap:28px}.finder-mark{display:none}.finder-heading p:not(.eyebrow){max-width:none;margin:0}.service-finder fieldset label{font-size:16px}.trust-grid{grid-template-columns:1fr;gap:24px}.trust-grid summary{font-size:21px}.trust-grid p{font-size:17px}.journey-layout{grid-template-columns:1fr;gap:28px}.journey-text>p{min-height:0;max-width:none}.journey-text>h3{font-size:1.7rem}.journey-text .text-link{font-size:15px}.room-model{height:260px}.transport-lane{height:110px}.journey-truck{height:150px;width:230px;bottom:0}.journey-progress{margin-top:25px}.journey-hint{font-size:12px}.cost-accordion summary{grid-template-columns:26px 1fr 28px;gap:12px}.cost-accordion strong{font-size:1.2rem}.cost-accordion details>div{padding:0 0 20px 38px}.cost-accordion p{font-size:17px}.contact-number{font-size:1.6rem}}
@media(max-width:360px){.contact-dock a{font-size:12px;padding:9px 6px}.contact-dock svg{width:16px}.expand-links .button{font-size:14px}.room-model{height:230px}.service-expand strong{font-size:1.18rem}}
@media(prefers-reduced-motion:reduce){.expand-body{animation:none!important}.journey-hint{display:none}}.no-motion .expand-body{animation:none!important}
.visit-invitation{background:#eee9dc;border-top:1px solid #d4ccba}.visit-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.visit-layout h2 em{color:#536c7c}.visit-layout>div>p:not(.eyebrow){max-width:490px}.visit-layout .button{margin-top:14px}.visit-note{font-size:15px;color:var(--muted);margin-top:18px}.visit-next{border-top:3px solid var(--navy);padding-top:25px}.visit-next h3{font-size:24px}.visit-next ol{list-style:none;counter-reset:visit;padding:0;margin:25px 0}.visit-next li{counter-increment:visit;position:relative;padding:0 0 25px 46px;margin-bottom:22px;border-bottom:1px solid #c9c2b3}.visit-next li:before{content:counter(visit);position:absolute;left:0;top:0;background:var(--yellow);border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font-weight:700}.visit-next strong,.visit-next li span{display:block}.visit-next li span{font-size:17px;color:var(--muted);margin-top:6px}.contact-questions{margin-top:36px}.contact-questions h3{font-size:21px}.contact-questions details{border-bottom:1px solid var(--line);padding:17px 0}.contact-questions summary,.optional-inquiry summary{cursor:pointer;font-size:17px;font-weight:650;line-height:1.5}.contact-questions details p{font-size:16px;margin:14px 0 0}.optional-inquiry{border-block:1px solid var(--line);padding:18px 0;margin:24px 0}.optional-inquiry summary span{font-weight:400}.optional-inquiry[open] summary{margin-bottom:22px}#inquiry-form>h2{font-size:30px}#inquiry-form>p:not(.eyebrow){color:var(--muted)}
@media(max-width:800px){.visit-layout{grid-template-columns:1fr;gap:35px}.visit-next h3{font-size:22px}.visit-layout .button{max-width:100%;white-space:normal;line-height:1.5}.visit-next li{padding-left:42px}.visit-next li span{font-size:16px}}
/* Whole words and natural line wrapping, including narrow screens. */
body,h1,h2,h3,h4,p,a,button,summary,label,li{hyphens:none;word-break:normal;overflow-wrap:normal}
h1,h2,h3{ text-wrap:balance }
@media(max-width:600px){.page-intro h1{font-size:clamp(1.65rem,7.1vw,2.6rem)}.service-expand strong{font-size:clamp(.98rem,4.6vw,1.3rem)}}
/* Editorial refinement: practical hierarchy, quieter branding, fewer repeated motifs. */
.eyebrow{letter-spacing:.035em;font-size:12px}.section-head h2,.finder-heading h2,.visit-layout h2,.help-grid h2{font-size:clamp(1.85rem,3vw,2.75rem);font-weight:700;letter-spacing:-.025em;line-height:1.16}.section-head h2 em,.finder-heading h2 em{font-style:normal}.page-intro{padding-top:65px;padding-bottom:48px}.page-intro h1{font-size:clamp(2rem,4.4vw,3.6rem);max-width:940px;line-height:1.12;letter-spacing:-.035em}.page-intro .lead{max-width:730px;font-size:19px;line-height:1.65}.service-directory{display:grid;grid-template-columns:215px minmax(0,1fr);gap:62px;align-items:start}.service-index-nav{position:sticky;top:25px;display:flex;flex-direction:column;border-top:2px solid var(--navy);padding-top:19px}.service-index-nav p{font-weight:700;font-size:16px;margin-bottom:15px}.service-index-nav a{font-size:15px;line-height:1.4;padding:11px 0;border-bottom:1px solid var(--line)}.service-index-nav a:hover{color:#745700}.service-index-contact{font-weight:700;margin-top:20px}.service-directory .service-expand>summary{grid-template-columns:1fr 36px;gap:16px;padding-block:25px}.service-directory .expand-number{display:none}.service-directory .expand-toggle{width:32px;height:32px;background:none;border:0;border-radius:0;font-size:26px}.service-directory .service-expand strong{font-size:clamp(1.1rem,2vw,1.45rem);letter-spacing:-.02em}.service-directory .expand-body{padding-left:0;gap:30px;grid-template-columns:.9fr 1.1fr;align-items:start}.service-directory .expand-body.text-only{grid-template-columns:1fr;max-width:660px}.service-directory .expand-body img{aspect-ratio:1/1;object-fit:cover}.service-directory .expand-body p{margin-top:0}.service-directory .check-list{margin-top:12px}.service-directory .check-list li{font-size:16px}.service-directory .expand-links{gap:16px}.service-directory .expand-links .button{font-size:14px;gap:10px}.service-combination .help-grid{display:block;max-width:900px}.service-combination{padding-block:60px}.finder-mark{display:none}.trust-grid summary span{display:none}.trust-grid summary{font-size:19px}.contact-dock{box-shadow:0 4px 16px #061b2e20}.visit-next li:before{border-radius:2px}.visit-note{max-width:440px}
@media(max-width:950px){.service-directory{grid-template-columns:1fr;gap:30px}.service-index-nav{position:static;display:flex;flex-direction:row;flex-wrap:wrap;gap:0 20px}.service-index-nav p{width:100%;margin-bottom:4px}.service-index-nav a{font-size:14px;padding:10px 0}.service-index-contact{margin-top:0}.service-directory .expand-body{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.page-intro{padding-top:38px;padding-bottom:30px}.page-intro h1{font-size:clamp(1.6rem,7vw,2.3rem)}.page-intro .lead{font-size:17px}.service-directory .expand-body{grid-template-columns:1fr}.service-directory .expand-body img{aspect-ratio:4/3}.service-directory .service-expand strong{font-size:clamp(.98rem,4.5vw,1.3rem)}.section-head h2,.finder-heading h2,.visit-layout h2,.help-grid h2{font-size:1.8rem}.service-directory .service-expand small{font-size:15px}.section{padding-block:60px}.service-directory{padding-top:12px}}
.service-directory .service-expand[open] .expand-toggle{background:transparent;border:0}
