/* Local pages extend the original FRICHE design without changing its identity. */
.hero h1.local-title{font-size:clamp(3rem,5.7vw,5.35rem);line-height:1.02}
.desktop-nav{gap:24px}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 28px;padding-block:28px 8px}
.footer-links a{font-size:.875rem;padding-block:7px;text-underline-offset:5px}
.footer-links a:hover,.page-copy a:not(.button):hover{text-decoration:underline}
.breadcrumb{padding-block:25px 0;color:var(--muted);font-size:.85rem}
.breadcrumb ol{list-style:none;padding:0;margin:0;display:flex;gap:10px;flex-wrap:wrap}
.breadcrumb li+li::before{content:'/';padding-right:10px;color:#6c8581}
.page-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;padding-block:45px 70px}
.page-hero h1{font-size:clamp(2.7rem,5.1vw,4.8rem);line-height:1.08}
.page-hero h1 em{color:#288b86}
.page-hero .hero-intro{max-width:580px}
.page-hero-image{width:100%;height:500px;object-fit:cover;object-position:50% 59%;border-radius:100px 12px 100px 12px}
.page-hero-image.bowl{object-position:50% 61%}
.page-hero-image.room{object-position:50% 66%}
.page-hero .hero-note{margin-top:24px}
.page-section{padding-block:66px}
.page-section h2,.faq-section h2{font-size:clamp(2rem,3.5vw,3.15rem);max-width:850px;line-height:1.16}
.page-section h3{font-size:1.35rem;line-height:1.25;margin-bottom:12px}
.page-copy p,.page-copy li{font-size:1rem;line-height:1.8;color:var(--muted)}
.page-copy p+p{margin-top:18px}
.page-copy h2+p{margin-top:24px}
.page-copy h3+p{margin-top:0}
.page-copy a:not(.button):not(.text-link){text-decoration:underline;text-underline-offset:3px;color:var(--ink)}
.soft-section{background:var(--mint)}
.split-copy{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}
.split-copy>div>h3:not(:first-child){margin-top:30px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:38px}
.service-grid article{border-top:2px solid #80cfc7;padding-top:23px}
.service-grid .step-number{display:inline-block;font-size:.8rem;font-weight:700;color:#287d75;margin-bottom:18px}
.inline-note{font-size:.875rem!important;margin-top:26px!important}
.page-actions{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-top:28px}
.menu-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.menu-jump a{padding:9px 16px;border:1px solid #afcac5;border-radius:25px;font-size:.88rem}
.menu-jump a:hover{background:var(--mint)}
.menu-list{margin-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:0 45px}
.menu-list article{padding-block:23px;border-top:1px solid #b8d4ce}
.menu-list article h3{margin-bottom:10px}
.faq-section{padding-block:70px}
.faq-section h2{margin-bottom:30px}
.faq-section details{border-top:1px solid var(--line);padding-block:19px}
.faq-section details:last-child{border-bottom:1px solid var(--line)}
.faq-section summary{font-size:1.1rem;line-height:1.5;font-weight:600;cursor:pointer;padding-right:20px}
.faq-section summary:focus-visible{outline:3px solid #087a75;outline-offset:6px}
.faq-section details p{max-width:900px;margin-top:15px;line-height:1.8;color:var(--muted)}
.related-links{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:24px}
.local-cta{background:var(--ink);color:var(--paper);padding-block:58px}
.local-cta-inner{display:flex;gap:36px;justify-content:space-between;align-items:center}
.local-cta h2{font-size:clamp(2rem,3.4vw,3rem);line-height:1.2}
.local-cta p{margin-top:18px;color:#d9eae5;line-height:1.8}
.local-cta .button{flex-shrink:0}
.page-404{min-height:62vh;padding-block:70px}
.page-404 h1{font-size:clamp(3rem,7vw,6rem);max-width:900px}
@media(max-width:1050px){.desktop-nav{gap:17px}.header-inner{gap:24px}.desktop-nav a{font-size:.85rem}.page-hero{gap:35px}.page-hero-image{height:460px}.split-copy{gap:35px}}
@media(max-width:960px){.service-grid{gap:25px}.page-hero{grid-template-columns:1fr 1fr}.page-hero h1{font-size:clamp(2.7rem,5.4vw,4rem)}.page-hero-image{height:490px}.local-cta-inner{align-items:flex-start;flex-direction:column}.hero h1.local-title{font-size:clamp(2.8rem,5.8vw,4.1rem)}}
@media(max-width:680px){.hero h1.local-title{font-size:clamp(3rem,12vw,5rem)}.page-hero{grid-template-columns:1fr;gap:35px;padding-block:35px 46px}.page-hero h1{font-size:clamp(2.7rem,10.5vw,4rem)}.page-hero-image{height:370px;border-radius:80px 12px 80px 12px}.page-section,.faq-section{padding-block:48px}.split-copy,.service-grid,.menu-list{grid-template-columns:1fr;gap:28px}.menu-list{gap:0}.service-grid{margin-top:30px}.page-actions{gap:12px}.footer-links{gap:8px 20px;padding-top:22px}.footer-links a{font-size:.85rem}.breadcrumb{font-size:.8rem}.local-cta{padding-block:45px}}
@media print{.breadcrumb,.footer-links,.page-actions,.menu-jump,.local-cta .button{display:none}.page-section,.faq-section{padding-block:20px}.page-hero-image{height:220px}.service-grid,.menu-list{grid-template-columns:1fr 1fr}.local-cta{background:white;color:var(--ink)}.local-cta p{color:var(--ink)}}
