/* Taste Skill adaptation: variance 4, motion 3 (existing narrative 5), density 4.
   Brand-led local service, existing static architecture and approved blue/yellow kept.
   Layers: content 0, contact dock 40, skip link 100. */
:root{--surface:#f8f9f7;--surface-muted:#edf0ef;--radius-control:4px}
body{background:var(--surface)}
.header{min-height:80px;padding:8px 40px;gap:25px}.brand{flex-basis:170px}.brand img{width:170px;height:64px}.header nav{gap:23px}.header .button{font-size:15px;min-height:48px;padding:12px 18px;white-space:nowrap}
.page-intro{display:block;padding-block:52px 40px}.page-intro h1{max-width:850px;font-size:clamp(1.65rem,4vw,3.25rem);margin-bottom:22px}.page-intro .lead{max-width:65ch;margin:0;font-size:18px}
.section-head,.comparison-section .section-head{display:block}.section-head h2{max-width:760px;margin-bottom:20px}.section-head>p{max-width:65ch;margin:0;padding:0;font-size:18px}
.hero-inner{min-height:0;padding-block:40px 48px;gap:50px}.hero h1{font-size:clamp(2.5rem,4.4vw,4rem);line-height:1.1;max-width:650px}.hero-art{height:400px}.hero-art figcaption{position:static;background:none;color:#d6e1e8;padding:10px 0;font-size:13px}.hero-intro{font-size:19px;line-height:1.6;max-width:46ch}.hero-actions .button{font-size:16px;padding:14px 20px;gap:16px}
.help-section,.comparison-section,.visit-invitation{background:var(--surface-muted)}.visit-invitation{border-color:var(--line)}.finder-result{background:var(--surface-muted)}
.button,input,select,textarea,.contact-dock,.contact-dock a{border-radius:var(--radius-control)}.button{transition:background .18s,transform .18s}.button:active{transform:translateY(1px)}.button:focus-visible{outline:3px solid #1680d5;outline-offset:4px}
.expand-body figure{overflow:visible;background:none}.expand-body figcaption{position:static;background:none;color:var(--muted);padding:9px 0;font-size:12px}.expand-body img{border-radius:3px}
.service-index-nav a[aria-current="true"]{color:var(--navy);font-weight:750;border-left:3px solid var(--yellow);padding-left:12px;background:#e9eeef}
.service-index-nav a{transition:background .18s}.service-index-nav a:hover{background:#e9eeef;color:var(--navy)}
.trust-grid{grid-template-columns:1fr;gap:0}.trust-grid details{padding:22px 0;border-top:1px solid var(--line)}.trust-grid summary{font-size:21px}.trust-grid p{max-width:65ch}.trust-grid .text-link{font-size:16px}
@media(min-width:1024px){.button{white-space:nowrap}.hero-art{max-height:52vh}.hero-inner{grid-template-columns:1.1fr .9fr}}
@media(max-width:1023px){.header{padding-inline:24px}.header nav{gap:16px}.header nav a{font-size:15px}}
@media(max-width:767px){.header{min-height:76px;padding:6px 20px}.brand img{height:62px;width:160px}.brand{flex-basis:160px}.page-intro{padding-block:36px 28px}.page-intro h1{font-size:clamp(1.65rem,7vw,2.5rem)}.page-intro .lead{font-size:17px}.hero-inner{grid-template-columns:1fr;padding-block:32px;gap:25px}.hero h1{font-size:clamp(2.25rem,9vw,3.5rem)}.hero-art{height:310px}.hero-intro{font-size:18px}.section-head>p{font-size:17px}.trust-grid summary{font-size:19px}.button{white-space:normal}.contact-dock{border-radius:0}.contact-dock .dock-visit{font-size:12px}}
@media(prefers-reduced-motion:reduce){.button,.service-index-nav a{transition:none}.button:active{transform:none}}
.journey-progress span{width:100%;transform:scaleX(.2)}
a,button,summary{touch-action:manipulation;-webkit-tap-highlight-color:#ffd12855}
input,select,textarea,button,a,summary{scroll-margin-block:120px}
select{background-color:#fff;color:var(--ink)}
.field-error{display:block;color:#9b2424;font-size:16px;font-weight:600;margin-top:6px}
.field-error[hidden]{display:none}
[aria-invalid="true"]{border-color:#9b2424;outline:1px solid #9b2424}
.no-motion .button,.no-motion .service-index-nav a{transition:none}
/* Service page: three distinct editorial chapters, with task-specific copy. */
.service-opening{padding-block:70px 46px}.chapter-label{font-size:14px;font-weight:700;letter-spacing:.04em;margin:0 0 20px;color:var(--muted)}
.service-opening h1{font-size:clamp(2.2rem,5.5vw,5rem);line-height:1.07;letter-spacing:-.045em;max-width:980px;margin:0 0 34px}
.opening-bottom{display:flex;justify-content:space-between;gap:50px;align-items:end}.opening-bottom>p{font-size:20px;max-width:650px;margin:0;line-height:1.65}.opening-bottom>a{flex-shrink:0;font-size:15px}.opening-bottom strong{display:block;font-size:23px;margin-top:10px}
.service-chapters{display:flex;gap:36px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:20px}.service-chapters a{font-weight:650;font-size:16px;display:flex;gap:25px;align-items:center;min-height:44px}.service-chapters a:hover{color:#735700}
.clearing-feature{padding-block:74px 90px;scroll-margin-top:120px}.feature-heading{max-width:680px;margin-bottom:36px}.feature-heading h2,.sorting-copy h2,.additional-heading h2,.closing-columns h2{font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.14;letter-spacing:-.025em;margin:0 0 26px}
.feature-columns{display:grid;grid-template-columns:.85fr 1.15fr;gap:66px;align-items:start}.feature-copy p,.sorting-copy>p,.additional-heading>p,.closing-columns p{line-height:1.75}.feature-lead{font-size:22px;line-height:1.55!important}.feature-copy>.button{margin:12px 0 32px}.room-pair{margin:0;background:#e8e9e5;padding:12px}.room-pair img{width:100%;height:auto;display:block}.room-pair figcaption,.sorting-columns figcaption{font-size:12px;line-height:1.5;padding:12px 0 0;color:var(--muted)}
.sorting-feature{background:#e9eeec;padding-block:80px;scroll-margin-top:110px}.sorting-columns{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:75px}.sorting-columns figure{margin:0}.sorting-columns img{display:block;width:100%;height:auto}.sorting-copy .button{margin-top:25px}
.editorial-detail{border-top:1px solid #bcc9cb;scroll-margin-top:120px}.editorial-detail summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;cursor:pointer;font-size:19px;font-weight:650;line-height:1.45;padding:23px 0}.editorial-detail summary::-webkit-details-marker{display:none}.editorial-detail summary>span{font-size:28px;flex:0 0 24px;font-weight:400;transition:transform .2s}.editorial-detail[open] summary>span{transform:rotate(45deg)}.editorial-detail>div{padding:0 0 25px}.editorial-detail p{margin-top:0;line-height:1.75;max-width:60ch}.editorial-detail[open]>div{animation:service-reveal .25s ease-out}.editorial-detail .text-link{font-size:16px}
.additional-services{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;padding-block:90px}.additional-heading>p{max-width:32ch}.additional-list{border-bottom:1px solid #bcc9cb}.additional-list summary{font-size:22px;padding-block:26px}
.service-closing{background:var(--navy);color:white;padding-block:64px}.service-closing .chapter-label{color:#c5d4df}.closing-columns{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:center}.closing-columns p{max-width:55ch;margin-bottom:0}.closing-columns>div:last-child{display:flex;flex-direction:column;align-items:start;gap:24px}.service-closing .button.navy{background:var(--yellow);color:var(--navy)}.service-closing .text-link{color:white;font-size:16px}
@keyframes service-reveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.opening-bottom{display:block}.opening-bottom>a{display:inline-block;margin-top:24px}.feature-columns,.sorting-columns,.additional-services{gap:34px}.service-chapters{gap:22px;flex-wrap:wrap}.service-chapters a{gap:12px}}
@media(max-width:700px){.service-opening{padding-block:38px 26px}.service-opening h1{font-size:clamp(2.2rem,9vw,3.5rem);letter-spacing:-.03em}.opening-bottom>p{font-size:18px}.service-chapters{gap:6px 20px;padding-block:10px}.service-chapters a{font-size:15px}.feature-columns,.sorting-columns,.additional-services,.closing-columns{grid-template-columns:1fr}.clearing-feature,.additional-services{padding-block:44px}.sorting-feature{padding-block:44px}.feature-heading{margin-bottom:12px}.feature-lead{font-size:20px}.sorting-columns figure{order:2}.additional-services{gap:20px}.closing-columns{gap:30px}.service-closing{padding-block:42px}.chapter-label{margin-bottom:14px}.additional-list summary{font-size:20px}.feature-copy>.button{margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){.editorial-detail[open]>div{animation:none}.editorial-detail summary>span{transition:none}}
.no-motion .editorial-detail[open]>div{animation:none}.no-motion .editorial-detail summary>span{transition:none}
/* Compact photographic opening with text over a navy image fade. */
[data-page="index"] .hero{position:relative;isolation:isolate;overflow:hidden;background:#09263f}
[data-page="index"] .hero-inner{position:relative;display:flex;align-items:center;min-height:540px;padding-block:64px;gap:0}
[data-page="index"] .hero-copy{position:relative;z-index:2;width:52%;max-width:620px;padding:0}
[data-page="index"] .hero h1{font-size:clamp(2.6rem,4.4vw,4rem);line-height:1.08;letter-spacing:-.035em;font-weight:800;max-width:590px;text-wrap:balance;margin-bottom:24px}
[data-page="index"] .hero-intro{color:#f0f3f6;max-width:43ch;font-size:19px;line-height:1.65;margin-bottom:28px}
[data-page="index"] .hero-art{position:absolute;z-index:0;inset:0 -80px 0 24%;width:auto;height:100%;max-height:none;min-height:0;border-radius:0;margin:0;overflow:hidden}
[data-page="index"] .hero-art img{width:100%;height:100%;object-fit:cover;object-position:65% top;border-radius:0}
[data-page="index"] .hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#09263f 0%,rgba(9,38,63,.94) 12%,rgba(9,38,63,.52) 33%,rgba(9,38,63,.05) 65%,rgba(9,38,63,.18) 87%,#09263f 100%),linear-gradient(0deg,rgba(9,38,63,.65),transparent 35%);pointer-events:none}
[data-page="index"] .hero-art figcaption{position:absolute;z-index:1;bottom:15px;right:90px;left:auto;background:none;box-shadow:none;padding:0;color:#fff;font-size:12px}
[data-page="index"] .hero-actions{flex-wrap:wrap}
@media(min-width:1700px){[data-page="index"] .hero-art{right:-170px}}
@media(max-width:800px){[data-page="index"] .hero-inner{min-height:570px;padding-block:50px;align-items:end}[data-page="index"] .hero-copy{width:100%;max-width:530px}[data-page="index"] .hero h1{font-size:clamp(2.2rem,7vw,3.2rem);max-width:490px}[data-page="index"] .hero-intro{font-size:18px;max-width:42ch}[data-page="index"] .hero-art{inset:0 -20px;width:auto}[data-page="index"] .hero-art img{object-position:65% 30%}[data-page="index"] .hero-art:after{background:linear-gradient(0deg,#09263f 0%,rgba(9,38,63,.96) 26%,rgba(9,38,63,.75) 52%,rgba(9,38,63,.15) 100%)}[data-page="index"] .hero-art figcaption{right:20px;bottom:10px;font-size:11px}}
@media(max-width:480px){[data-page="index"] .hero-inner{min-height:620px;padding-top:230px;padding-bottom:45px}[data-page="index"] .hero-intro{font-size:17px}[data-page="index"] .hero h1{font-size:2.25rem}[data-page="index"] .hero-art img{object-position:67% top}[data-page="index"] .hero-actions{gap:18px}}
.personal-plan{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding-block:80px;scroll-margin-top:120px}.plan-intro h2{font-size:clamp(1.8rem,3.3vw,3rem);line-height:1.15}.plan-intro>p{max-width:40ch}.plan-note{border-left:4px solid var(--yellow);padding-left:18px;font-size:16px}.plan-workspace{background:#edf0ef;padding:32px;min-width:0}.plan-workspace fieldset{border:0;padding:0;margin:0 0 28px}.plan-workspace legend{font-size:21px;font-weight:700;margin-bottom:18px}.plan-options{display:flex;flex-wrap:wrap;gap:10px}.plan-options label{display:flex;align-items:center;gap:10px;background:white;border:1px solid #afbec5;padding:12px 15px;cursor:pointer;margin:0;min-height:48px;font-size:16px}.plan-options label:has(:checked){background:var(--navy);color:white;border-color:var(--navy)}.plan-options input,.plan-remember input{width:20px;height:20px;flex:0 0 20px;accent-color:#806100;margin:0}.plan-advice{border-top:1px solid #bac7cc;padding-top:24px}.plan-advice h3{font-size:19px}.plan-advice p,.plan-advice li{font-size:16px;line-height:1.65}.plan-advice summary{cursor:pointer;font-size:16px;font-weight:650;padding-block:12px}.plan-advice details{margin-bottom:22px}.plan-remember{display:flex;gap:12px;align-items:center;font-size:16px;margin:20px 0 12px}.plan-actions{display:flex;flex-wrap:wrap;align-items:center;gap:15px 22px}.plan-actions .button{font-size:16px}.plan-actions button{font-size:15px;min-height:44px}.plan-workspace #plan-status{font-size:15px;min-height:24px}.plan-workspace .fine-print{font-size:13px}
@media(max-width:800px){.personal-plan{grid-template-columns:1fr;gap:22px;padding-block:45px}.plan-intro>p{max-width:60ch}.plan-workspace{padding:22px 18px}.plan-actions{align-items:stretch;flex-direction:column}.plan-options label{font-size:15px}.plan-actions .button{white-space:normal}.plan-actions button{text-align:left}}

/* Consistent task routes on the homepage and service directory. */
.service-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:24px 0 44px;border-top:1px solid #c9d2d8;border-bottom:1px solid #c9d2d8}
.service-routes>a{display:flex;flex-direction:column;align-items:flex-start;padding:28px 24px;color:#09263f;text-decoration:none;min-width:0}
.service-routes>a+a{border-left:1px solid #c9d2d8}
.service-routes>a:hover{background:#fff7d7}
.service-routes>a:focus-visible{outline:3px solid #09263f;outline-offset:3px}
.service-routes .route-number{font-size:.8rem;font-weight:750;color:#536676;margin-bottom:14px}
.service-routes strong{font-size:1.2rem;line-height:1.35}
.service-routes p{font-size:1rem;line-height:1.65;margin:12px 0 22px}
.service-routes .route-link{margin-top:auto;font-weight:700;font-size:.9rem;border-bottom:2px solid #f5c400;padding-bottom:5px}
@media(max-width:700px){.service-routes{grid-template-columns:1fr}.service-routes>a{padding:22px 16px}.service-routes>a+a{border-left:0;border-top:1px solid #c9d2d8}.service-routes p{margin-bottom:14px}}
.reference-prices{background:#f3f5f6}.price-examples{border-top:1px solid #c9d2d8}.price-example{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;padding:28px 0;border-bottom:1px solid #c9d2d8}.price-example h3{margin:0;font-size:1.2rem}.price-example p{margin:10px 0 0;line-height:1.6}.price-example dl{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0;align-items:center}.price-example dt{font-size:.85rem;color:#526574}.price-example dd{margin:8px 0 0;font-size:1.18rem;font-weight:750;color:#09263f}.price-explanation{max-width:850px;line-height:1.7;margin:28px 0}.clear-process{margin-top:32px}.clear-process article{display:grid;grid-template-columns:100px 1fr;gap:32px;border-top:1px solid #c9d2d8;padding:32px 0}.process-number{font-size:3.4rem;font-weight:800;color:#a67a00;line-height:1}.clear-process h3{font-size:1.5rem;margin:0 0 14px}.clear-process p{max-width:740px;line-height:1.7}.clear-process .process-note{border-left:3px solid #f5c400;padding-left:16px;color:#526574}.preparation-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px}.preparation-section p{line-height:1.7}.working-agreements>.text-link{display:inline-block;margin-top:24px}@media(max-width:700px){.price-example{grid-template-columns:1fr;gap:20px}.preparation-section{grid-template-columns:1fr;gap:24px}.clear-process article{grid-template-columns:50px 1fr;gap:18px}.process-number{font-size:2.4rem}.price-example dl{gap:16px}.price-example dd{font-size:1.05rem}}

/* Warmer editorial direction: a few bold, angled accents, calm body copy. */
:root{--surface:#fffaf0;--surface-muted:#f5eddc;--radius-control:9px}
body{background:var(--surface)}
main h1,main h2{font-weight:850;letter-spacing:-.035em}
.sun-mark{background:linear-gradient(transparent 16%,#ffcf26 16%,#ffcf26 92%,transparent 92%);color:#09263f;padding:.03em .14em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.section-head h2 .sun-mark,.feature-heading h2 .sun-mark{display:inline-block;transform:rotate(-1.5deg);max-width:100%}
.service-opening h1 .sun-mark,.page-intro h1 .sun-mark{display:inline-block;transform:rotate(-1deg)}
.service-routes{border:0;gap:18px;align-items:stretch}
.service-routes>a{background:#f5ead3;border:0!important;border-radius:18px;padding:28px;transition:background .2s,transform .2s}
.service-routes>a:nth-child(2){background:#fff0b3}.service-routes>a:nth-child(3){background:#e7eedf}
.service-routes>a:hover{background:#ffe38b;transform:translateY(-3px)}
.service-routes .route-number{background:#09263f;color:white;border-radius:50%;width:32px;height:32px;display:grid;place-items:center}
.service-routes strong{font-size:1.25rem}.service-routes .route-link{border-bottom:0}
.reference-prices{background:#f6efdf}.sorting-feature{background:#f0eadb}
.room-pair{background:white;padding:10px;border-radius:14px;box-shadow:0 8px 24px #59451b0d}.room-pair img,.sorting-columns img,.help-grid img{border-radius:10px}
.price-example{border-color:#d9cdb5}.process-number{color:#09263f;background:#ffcf26;align-self:start;border-radius:9px;transform:rotate(-4deg);padding:10px;font-size:2.5rem}
.chapter-label{color:#79582d}.expand-number{color:#79582d}
@media(max-width:700px){.service-routes{gap:12px}.service-routes>a{padding:22px}.process-number{font-size:1.6rem;padding:7px}.sun-mark{padding-inline:.07em}.section-head h2 .sun-mark,.feature-heading h2 .sun-mark{transform:rotate(-.8deg)}}
@media(prefers-reduced-motion:reduce){.service-routes>a{transition:none}.service-routes>a:hover{transform:none}}
/* Campaign accents: expressive typography and two purposeful visual breaks. */
[data-page="index"] .hero h1.campaign-heading {font-family:Impact,"Arial Narrow","Segoe UI",sans-serif;font-style:italic;font-weight:900;text-transform:uppercase;font-size:clamp(2.8rem,5.2vw,4.8rem);line-height:1.06;letter-spacing:-.015em;max-width:660px;transform:rotate(-1deg);}
[data-page="index"] .campaign-heading em {display:block;color:#ffd21c;font-style:inherit;}
[data-page="index"] .hero-intro {max-width:410px;}
.campaign-break {margin-block:42px 64px;}
.campaign-break>a {display:block;background:#062642;border-radius:12px;overflow:hidden;text-decoration:none;box-shadow:0 12px 30px #09263f14;}
.campaign-break img {display:block;width:100%;height:auto;}
.campaign-link {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;color:#fff7e6;font-weight:700;}
.campaign-link>span {display:grid;place-items:center;width:32px;height:32px;background:#ffd21c;color:#062642;border-radius:50%;}
.campaign-break a:hover .campaign-link,.campaign-break a:focus-visible .campaign-link {color:#ffdc44;}
@media(max-width:600px){[data-page="index"] .hero h1.campaign-heading{font-size:clamp(2.5rem,10vw,3.5rem);max-width:100%;}.campaign-break{margin-block:28px 42px;}.campaign-link{font-size:14px;padding:12px 16px;}}
/* Bolder campaign hero, including mobile. */
[data-page="index"] .hero h1.campaign-heading {font-weight:700;-webkit-text-stroke:1.2px #082740;paint-order:stroke fill;text-shadow:3px 4px 0 #082740,5px 6px 0 #ffffff65;transform:rotate(-2deg);}
[data-page="index"] .campaign-heading em {position:relative;isolation:isolate;margin-top:.1em;-webkit-text-stroke:1.8px #082740;paint-order:stroke fill;text-shadow:3px 4px 0 #082740,5px 6px 0 #fff8dc;}
[data-page="index"] .campaign-heading em::after {content:"";position:absolute;z-index:-1;left:0;bottom:-.16em;width:88%;height:.075em;background:#ffd21c;transform:rotate(-1deg);clip-path:polygon(0 25%,98% 0,95% 45%,100% 62%,40% 100%,2% 88%,5% 60%);}
[data-page="index"] .hero-actions .button {box-shadow:4px 5px 0 #041a2d;border:2px solid #ffe570;transform:rotate(-1deg);}
[data-page="index"] .hero-actions {margin-top:32px;}
@media(max-width:600px){[data-page="index"] .hero h1.campaign-heading{font-size:clamp(2.5rem,10.6vw,3.6rem);text-shadow:2px 3px 0 #082740,3px 4px 0 #ffffff65;}[data-page="index"] .campaign-heading em{-webkit-text-stroke:1px #082740;text-shadow:2px 3px 0 #082740,3px 4px 0 #fff8dc;} .campaign-break {width:100%;max-width:none;} .campaign-break>a{border-radius:0;} .campaign-link {border-bottom:4px solid #ffd21c;}}
.room-photo{position:relative;aspect-ratio:1;overflow:hidden;background:#15374b;}
.room-photo>img{display:block;width:300%;max-width:none;height:100%;object-fit:fill;transition:transform .7s cubic-bezier(.22,.7,.3,1);}
.room-photo-label{position:absolute;bottom:18px;left:18px;color:#062642;background:#ffd21c;padding:8px 16px;font-weight:800;transform:rotate(-2deg);}
.journey-visual{border-radius:14px;border-color:#426074;}
.journey-progress span{width:100%;}
@media(prefers-reduced-motion:reduce){.room-photo>img{transition:none;}}
.no-motion .room-photo>img{transition:none;}
[data-page="index"] .hero h1.campaign-heading {letter-spacing:.025em;word-spacing:.025em;}
.journey{overflow:hidden;}
.journey-visual{overflow:visible;background:transparent;border:0;}
.room-photo{max-height:450px;aspect-ratio:1;max-width:450px;margin-left:auto;border-radius:14px;}
.transport-lane{height:270px;width:100%;overflow:visible;background:transparent;margin-top:-45px;pointer-events:none;z-index:2;}
.journey-truck{width:440px;height:auto;aspect-ratio:3/2;bottom:0;}
.lane-line{bottom:32px;background:#ffffff28;}
@media(max-width:700px){.room-photo{max-width:100%;max-height:none;}.transport-lane{height:200px;margin-top:-15px;}.journey-truck{width:310px;height:auto;bottom:0;}.lane-line{bottom:24px;}[data-page="index"] .hero h1.campaign-heading{font-size:clamp(2.3rem,9.8vw,3.4rem);}}
/* Photo-led sequence: image beside heading, immediately visible on mobile. */
.journey-layout{grid-template-columns:1fr 1fr;gap:20px 55px;align-items:start;}
.journey-layout>.section-head{grid-column:1;grid-row:1;margin-bottom:4px;}
.journey-text{grid-column:1;grid-row:2;}
.journey-visual{grid-column:2;grid-row:1 / span 2;align-self:start;}
.room-photo{max-width:none;max-height:none;}
.journey-text>.eyebrow{margin-bottom:12px;}
.journey-text>p{min-height:0;}
.journey-controls{margin:16px 0;}
.transport-lane{margin-top:-12px;}
.compare-image{background-image:url('assets/vergleich-wohnung-modern.webp');}
.contact-dock .dock-whatsapp,.whatsapp-button,#whatsapp-summary,a[href^="https://wa.me/"]{background:#138543;color:#fff;border-color:#138543;}
.contact-dock .dock-whatsapp:hover,.whatsapp-button:hover,#whatsapp-summary:hover,a[href^="https://wa.me/"]:hover{background:#0c6933;color:#fff;}
@media(max-width:700px){.journey-layout{display:flex;flex-direction:column;gap:24px;}.journey-layout>.section-head{order:0;margin-bottom:0;}.journey-visual{order:1;width:100%;}.journey-text{order:2;width:100%;}.journey .section-head>p{margin-bottom:0;}.journey-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;}.journey-controls button{font-size:13px;padding:10px 7px;border:1px solid #ffffff30;border-radius:6px;}.journey-controls button[aria-pressed=true]{border:1px solid #ffd21c;}.transport-lane{margin-top:8px;}.contact-dock .dock-whatsapp{background:#138543;border-radius:7px;}}
.quick-contact{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-block:45px 65px;padding:32px 38px;background:#fff0e8;border:2px solid #b8382d;border-left:8px solid #b8382d;border-radius:12px;}
.quick-contact h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:10px 0;}
.quick-contact p{max-width:640px;margin:0;}
.quick-kicker{display:inline-flex;align-items:center;gap:10px;color:#9c2c24;font-weight:800;font-size:14px;}
.quick-kicker i{width:10px;height:10px;background:#b8382d;border-radius:50%;}
.quick-contact .quick-call{background:#b8382d;color:#fff;flex-shrink:0;}
.quick-contact .quick-call:hover{background:#92281f;}
.quick-seen .quick-kicker i{animation:quick-pulse 1.8s ease-out 2;}
@keyframes quick-pulse{0%{box-shadow:0 0 0 0 #b8382d60;}80%,100%{box-shadow:0 0 0 11px #b8382d00;}}
.back-to-top{position:fixed;right:20px;bottom:105px;z-index:55;display:grid;place-items:center;width:46px;height:46px;border:2px solid #09263f;border-radius:50%;background:#ffd21c;color:#09263f;font-size:26px;cursor:pointer;box-shadow:0 3px 12px #09263f24;}
.back-to-top[hidden]{display:none;}
.back-to-top:focus-visible{outline:3px solid #138543;outline-offset:4px;}
@media(max-width:700px){.quick-contact{flex-direction:column;align-items:stretch;padding:25px 20px;margin-block:30px 45px;gap:20px;}.quick-contact .quick-call{font-size:14px;}.back-to-top{right:12px;bottom:88px;width:44px;height:44px;}}
@media(prefers-reduced-motion:reduce){.quick-seen .quick-kicker i{animation:none;}}
.no-motion .quick-seen .quick-kicker i{animation:none;}
/* Keep all three frames visible while normal scrolling advances the sequence. */
.journey-visual{position:relative;}
.journey-visual .room-photo{height:min(48vh,430px);aspect-ratio:1;width:min(48vh,430px);margin-left:auto;}
.journey-visual .transport-lane{width:calc(200% + 55px);left:calc(-100% - 55px);height:220px;margin-top:0;}
.journey-visual .journey-truck{width:360px;}
@media(max-width:700px){.journey-visual .room-photo{width:100%;height:auto;max-height:43vh;aspect-ratio:1;}.journey-visual .transport-lane{width:100%;left:0;height:150px;margin-top:0;}.journey-visual .journey-truck{width:260px;}.journey-visual{order:1;}}
/* Calm layout: no pinning, no sliding text or photo strip. */
.room-photo>img{transition:none;}
.journey-text>h3,.journey-text>p{transform:none;animation:none;transition:none;}
/* Clear mobile choices in the remaining start-page sections. */
.comparison-section .section-head h2{font-family:Impact,"Arial Narrow","Segoe UI",sans-serif;font-style:italic;letter-spacing:.02em;text-transform:uppercase;}
.compare-view{border:3px solid #09263f;border-radius:12px;}
.compare-handle b{background:#ffd21c;color:#09263f;box-shadow:0 0 0 5px #ffffff80;}
.finder-section{background:#f6edda;padding:40px;border-radius:16px;}
.service-finder fieldset label{border:1px solid #c9c3b5;background:#fffaf0;border-radius:9px;padding:15px;min-height:52px;cursor:pointer;}
.service-finder fieldset label:has(input:checked){border:2px solid #09263f;background:#ffdc44;padding:14px;}
.service-finder input{accent-color:#09263f;}
.plan-options label{border-radius:9px;min-height:50px;}
.plan-options label:has(input:checked){background:#ffdc44;border-color:#09263f;color:#09263f;}
.plan-options input{accent-color:#09263f;}
@media(max-width:700px){.finder-section{padding:25px 20px;border-radius:0;}.comparison-section .section-head h2{font-size:2.2rem;}.service-finder fieldset label{font-size:16px;}.plan-actions{gap:14px;}.plan-actions>.button{width:100%;justify-content:center;}}
.service-transport-photo{display:block;width:100%;height:auto;border-radius:10px;margin:8px 0 22px;}
/* Readable legal pages within the existing brand. */
.legal-page{max-width:850px;padding-top:70px;padding-bottom:90px;overflow-wrap:anywhere;}
.legal-page h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.12;margin-bottom:22px;}
.legal-page h2{font-size:clamp(1.2rem,2vw,1.6rem);margin:36px 0 14px;}
.legal-page p{line-height:1.75;margin:0 0 18px;}
.legal-page a{text-decoration:underline;text-underline-offset:3px;}
.legal-page code{font-size:.9em;}
.legal-draft{padding:20px;border-left:4px solid #f5c400;background:#fff4ca;}
.legal-date{font-size:.9rem;}
@media(max-width:600px){.legal-page{padding-top:38px;padding-bottom:65px;}.legal-page .button{white-space:normal;min-height:48px;}}
.legal-page h1,.legal-page h2,.legal-page p,.legal-page code,.legal-page a{overflow-wrap:anywhere;white-space:normal;}

/* Hero: clearer separation and stronger introductory line. */
@media(min-width:801px){[data-page="index"] .hero-intro{margin-top:42px;font-size:22px;font-weight:700;line-height:1.55;max-width:430px;}}
.price-check{padding-block:45px;border-bottom:1px solid #d3d2c8}.price-check>p{max-width:65ch}.price-check h2{font-size:clamp(1.8rem,4vw,2.8rem)}#price-check-app{max-width:850px;margin-top:28px}.price-check fieldset{border:0;padding:0;margin:0}.price-check legend{font-size:1.4rem;font-weight:800;margin-bottom:20px}.price-check-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.price-check-options label{display:flex;gap:12px;align-items:center;background:white;border:2px solid #d4d8dc;border-radius:12px;padding:18px;cursor:pointer}.price-check-options label:has(input:checked){background:#ffdf56;border-color:#09263f}.price-check-options label:focus-within{outline:3px solid #1680d5;outline-offset:2px}.price-check-options input{accent-color:#09263f;width:20px;height:20px;flex-shrink:0}.price-check-options strong,.price-check-options small{display:block}.price-check-options small{font-size:.85rem;margin-top:5px;line-height:1.4}.price-check-actions{display:flex;gap:20px;align-items:center;margin-top:22px}.price-check-total{font-size:clamp(2rem,7vw,3.5rem);font-weight:800;color:#09263f}.price-check .whatsapp-button{white-space:normal;margin-block:15px}.price-check .text-link{display:block;margin-block:16px}@media(max-width:600px){.price-check-options{gap:8px}.price-check-options label{padding:12px;gap:8px;align-items:flex-start}.price-check-options strong{font-size:15px}.price-check-options small{font-size:13px}.price-check-options input{width:16px;height:16px}.price-check legend{font-size:1.2rem}.price-check-actions .button{flex:1;justify-content:center}}
.team-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.team-values article{border-top:3px solid #f5c400;padding-top:22px}.team-values h2{font-size:1.6rem;margin-top:15px}.team-value-number{font-weight:800;color:#586979}.team-values p{font-size:17px}.owner-intro{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:35px 0 65px}.owner-intro h2{font-size:clamp(1.8rem,4vw,2.8rem)}.owner-role{font-weight:700}.owner-intro>div:last-child{align-self:center}@media(max-width:800px){.team-values{grid-template-columns:1fr 1fr;gap:25px 18px}.owner-intro{grid-template-columns:1fr;gap:12px;padding-bottom:40px}}@media(max-width:420px){.team-values{grid-template-columns:1fr}}
/* Anschlussleistungen mit der Hausmeister-Marke */
.hausmeister-bridge{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1.7fr);gap:clamp(24px,5vw,70px);align-items:center;margin-top:70px;margin-bottom:70px;padding:clamp(24px,4vw,56px);background:#fff5d9;border:2px solid #09263f;border-radius:28px;box-shadow:8px 8px 0 #ffcb05}
.hausmeister-art{text-align:center;align-self:center}.hausmeister-art span{display:inline-block;background:#ffcb05;color:#09263f;padding:9px 16px;font-size:19px;font-weight:850;transform:rotate(-5deg);margin-bottom:20px}.hausmeister-art img{display:block;width:100%;max-width:245px;height:auto;margin:auto}.hausmeister-copy h2{font-size:clamp(30px,4vw,54px);line-height:1.08;margin:12px 0 22px}.hausmeister-copy h2 em{color:#09263f;text-decoration:underline;text-decoration-color:#ffc800;text-decoration-thickness:6px;text-underline-offset:5px}.hausmeister-services{list-style:none;padding:0;margin:24px 0}.hausmeister-services li{padding:14px 0;border-top:1px solid #d6c99f}.hausmeister-services h3{margin:0 0 6px;font-size:21px}.hausmeister-services p{margin:0;line-height:1.6}.hausmeister-scope{font-size:14px;line-height:1.6}.hausmeister-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:24px}.hausmeister-actions a{min-height:44px;display:inline-flex;align-items:center}.hausmeister-copy{min-width:0}
@media(max-width:650px){.hausmeister-bridge{grid-template-columns:1fr;position:relative;gap:12px;margin-top:42px;margin-bottom:42px;box-shadow:4px 5px 0 #ffcb05}.hausmeister-art{display:flex;align-items:center;justify-content:space-between;gap:15px}.hausmeister-art img{width:85px;margin:0;height:auto}.hausmeister-art span{font-size:17px}.hausmeister-copy h2{font-size:35px}.hausmeister-actions .button{width:100%;justify-content:center;font-size:14px}.hausmeister-copy p{overflow-wrap:break-word}}
.hausmeister-showcase{display:block;padding:clamp(20px,4vw,50px);background:#fff5d9}.hausmeister-showcase>header{max-width:800px}.hausmeister-scenes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}.hausmeister-scene{min-width:0;background:#fffdf7;border-radius:18px;overflow:hidden;border:1px solid #dece9b}.hausmeister-scene-image{position:relative;aspect-ratio:1;overflow:hidden}.hausmeister-scene-image img{width:100%;height:100%;object-fit:cover}.scene-reinigung{object-position:0% center}.scene-montage{object-position:50% center}.scene-instandsetzung{object-position:100% center}.hausmeister-scene-image span{position:absolute;bottom:12px;left:16px;background:#ffcb05;padding:5px 14px;color:#09263f;font-weight:900;font-size:26px;transform:rotate(-5deg)}.hausmeister-scene-copy{padding:24px}.hausmeister-scene-copy .eyebrow{font-size:11px;letter-spacing:.05em}.hausmeister-scene-copy h3{font-size:clamp(24px,2.4vw,34px);line-height:1.12;margin:12px 0 18px;color:#09263f;font-weight:900;font-style:italic}.hausmeister-scene-copy p{line-height:1.65}.hausmeister-finish{margin-top:28px;border-top:1px solid #d6c99f;padding-top:20px}.hausmeister-image-note{font-size:12px;margin:24px 0 0;color:#455766}
@media(max-width:800px){.hausmeister-scenes{grid-template-columns:1fr}.hausmeister-scene{display:grid;grid-template-columns:38% 1fr}.hausmeister-scene-image{height:100%;aspect-ratio:auto;min-height:270px}.hausmeister-scene-copy{padding:20px}}
@media(max-width:500px){.hausmeister-scene{display:block}.hausmeister-scene-image{aspect-ratio:1.15;min-height:0;height:auto}.hausmeister-scene-copy h3{font-size:28px}.hausmeister-scenes{gap:24px}.hausmeister-showcase>header h2{font-size:34px}}
@media(max-width:500px){.hausmeister-scene-image{aspect-ratio:1}}

/* Inhaber und gestaltetes Vor-Ort-Motiv */
.owner-intro{grid-template-columns:minmax(280px,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(28px,5vw,72px)}
.owner-photo{margin:0;position:relative;overflow:hidden;border-radius:18px;border:3px solid #09263f;box-shadow:9px 9px 0 #ffcb05;background:#09263f}
.owner-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.owner-photo figcaption{position:absolute;left:16px;bottom:14px;padding:8px 13px;background:#ffcb05;color:#09263f;font-weight:850;transform:rotate(-2deg)}
.owner-copy{align-self:center}.owner-copy>small{display:block;margin-top:24px;color:#526575;font-size:12px}
.matthias-field{position:relative;margin-block:70px;min-height:430px;overflow:hidden;border:3px solid #09263f;border-radius:24px;box-shadow:10px 10px 0 #ffcb05;background:#09263f}
.matthias-field>img{display:block;width:100%;height:100%;min-height:430px;object-fit:cover}
.matthias-field-copy{position:absolute;inset:0 auto 0 0;display:flex;flex-direction:column;justify-content:center;width:min(48%,650px);padding:clamp(28px,5vw,64px);background:linear-gradient(90deg,#fff8e9 70%,#fff8e900);color:#09263f}
.matthias-field-copy h2{margin:10px 0 18px;font-size:clamp(2.2rem,5vw,4.7rem);line-height:.98;text-transform:uppercase;transform:rotate(-1deg)}
.matthias-field-copy h2 em{color:#cb3428;font-style:normal}.matthias-field-copy p:not(.eyebrow){max-width:39ch;line-height:1.65}
.matthias-field-copy .button{align-self:flex-start;margin-top:14px}.matthias-field-copy small{margin-top:18px;color:#536472;font-size:11px}

/* Servicegebiet ohne externen Kartendienst */
.service-area{position:relative;overflow:hidden;background:#09263f;color:#fff8e9;padding-block:clamp(56px,8vw,100px)}
.service-area-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;gap:clamp(35px,7vw,100px)}
.service-area .eyebrow{color:#ffcb05}.service-area h2{margin:12px 0 22px;color:#fff8e9;font-size:clamp(2.4rem,5vw,5.4rem);line-height:.98;text-transform:uppercase;transform:rotate(-1deg)}
.service-area h2 em{color:#ffcb05;font-style:normal}.service-area-copy>p:not(.eyebrow){max-width:60ch;font-size:18px;line-height:1.7}
.service-area-places{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:26px 0 30px}
.service-area-places li{padding:9px 14px;border:1px solid #fff8e980;border-radius:999px;background:#ffffff0b;font-weight:750}
.service-area-mark{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:450px;width:100%;margin:auto}
.service-area-mark strong{z-index:2;color:#09263f;background:#ffcb05;padding:22px 26px;font-size:clamp(1.8rem,4vw,3.5rem);line-height:.9;text-align:center;transform:rotate(-5deg);box-shadow:6px 6px 0 #fff8e9}
.area-ring{position:absolute;border:2px solid #ffcb05;border-radius:50%}.area-ring-one{inset:8%}.area-ring-two{inset:22%;border-color:#fff8e999}.area-ring-three{inset:35%;border-color:#ffcb05aa}
.area-pin{position:absolute;right:9%;top:15%;color:#e84838;font-size:40px;text-shadow:0 0 0 8px #fff8e9}
.service-area-question{max-width:var(--wrap,1200px);margin:38px auto 0;padding-inline:var(--page-pad,24px);font-size:clamp(1.2rem,2vw,1.6rem);font-weight:800;text-align:center}
.service-area-question a{color:#ffcb05;text-decoration-thickness:3px;text-underline-offset:5px}
@media(max-width:800px){.owner-intro{grid-template-columns:1fr;gap:28px}.owner-photo{box-shadow:5px 5px 0 #ffcb05}.matthias-field{margin-block:44px;min-height:0;border-radius:16px;box-shadow:5px 6px 0 #ffcb05}.matthias-field>img{min-height:0;aspect-ratio:4/3;object-position:68% center}.matthias-field-copy{position:relative;width:auto;padding:28px;background:#fff8e9}.matthias-field-copy h2{font-size:clamp(2.2rem,10vw,3.5rem)}.service-area-layout{grid-template-columns:1fr}.service-area-mark{max-width:320px;order:-1}.service-area h2{font-size:clamp(2.35rem,11vw,4rem)}.service-area-places{gap:8px}.service-area-places li{font-size:14px}.service-area .button{width:100%;justify-content:center}.service-area-question{padding-inline:20px}}
