.local-page .subhero{padding:38px 0}.local-page .subhero h1{font-size:clamp(1.9rem,3.6vw,3rem);max-width:none;text-wrap:balance;margin-bottom:18px}.local-page .subhero p{max-width:none;line-height:1.75;margin:0 0 24px;text-align:justify;hyphens:auto}.local-page .subpage article{max-width:none;width:100%;padding:32px 38px}.local-page .subpage{padding:40px 0}.local-page .local-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:42px;align-items:start}.local-page article h2{font-size:1.45rem;letter-spacing:-.02em;line-height:1.35;margin:0 0 16px}.local-page article h3{font-size:1.16rem;line-height:1.5;letter-spacing:0}.local-body section+section{margin-top:32px;padding-top:28px;border-top:1px solid #dde4ea}.local-side{padding:24px;background:#f3f5f7;border-radius:10px}.local-page .local-side p,.local-page .local-side li{font-size:14px;line-height:1.7}.local-side ul{padding-left:20px}.local-side a{display:block;margin-top:14px;overflow-wrap:anywhere}.local-related{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:24px}.local-related a{min-height:44px;display:inline-flex;align-items:center}.local-added{margin:32px 0;padding-top:30px;border-top:1px solid #dde4ea}.local-directory{padding:42px 0;background:#fff}.directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.directory-group{border:1px solid #dce3e9;padding:24px;border-radius:10px;min-width:0}.directory-group h2{font-size:21px;line-height:1.4;margin:0 0 15px}.directory-group ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 20px}.directory-group li a{display:block;padding:10px 0;text-decoration:underline;text-underline-offset:4px}.directory-group p{line-height:1.75;font-size:14px;text-align:justify;hyphens:auto}.local-directory [hidden]{display:none!important}.directory-search{margin:0 0 26px}.directory-search input{display:block;margin-top:8px;border:1px solid #81909d;border-radius:6px;min-height:48px;width:100%;padding:12px;font:inherit}.directory-status{font-size:14px;margin:10px 0}.area-teaser{padding:38px 0;background:#fff}.area-teaser .wrap{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.area-teaser h2{font-size:28px;line-height:1.25;margin:0 0 12px}.area-teaser p{line-height:1.75;text-align:justify;hyphens:auto}.area-teaser a{display:inline-block;padding:13px 20px;border-radius:6px;background:#142638;color:#ffffff;text-decoration:none}.local-page .breadcrumbs{margin-bottom:24px}.local-directory-intro{margin-bottom:25px;line-height:1.75;text-align:justify;hyphens:auto}.local-side .local-cost{border-top:1px solid #dce3e9;padding-top:16px}.local-page .subhero .primary{font-size:15px}.footer-area{display:block;padding:20px 0;text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.local-page .local-layout{grid-template-columns:1fr}.local-side{width:100%}.directory-grid{grid-template-columns:1fr}.area-teaser .wrap{grid-template-columns:1fr;gap:10px}}
@media(max-width:560px){.local-page .subpage article{padding:23px 18px}.local-page .subhero h1{text-align:center;font-size:clamp(1.65rem,7vw,2.2rem)}.local-page .subhero .primary{display:table;margin:auto}.local-page .local-layout{gap:28px}.directory-group{padding:20px 16px}.directory-group ul{grid-template-columns:1fr}.local-page article h2{font-size:1.3rem;text-wrap:balance}.local-directory{padding:28px 0}}

.area-subplaces{display:block;font-size:12px;line-height:1.5;margin:-3px 0 10px}.directory-group li{min-width:0}
.local-contents{margin:0 0 32px;padding:20px 0;border-bottom:1px solid #dde4ea;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 28px}.local-contents span{grid-column:1/-1;font-size:14px;margin-bottom:4px}.local-contents a{font-size:14px;line-height:1.5;padding:8px 0;text-underline-offset:3px}.local-detail{scroll-margin-top:24px}.local-detail p{line-height:1.8;text-align:justify;hyphens:auto}.local-added .local-detail{margin-top:26px}.local-added .local-detail h3{font-size:21px;line-height:1.4;margin-bottom:12px}.local-checklist{padding-left:22px;line-height:1.75}.local-checklist li{margin:8px 0;font-weight:400}.local-body section{scroll-margin-top:24px}
@media(max-width:560px){.local-contents{grid-template-columns:1fr;gap:2px;padding-top:4px}.local-contents a{padding:10px 0}.local-added .local-detail h3{font-size:19px}.local-detail{scroll-margin-top:24px}}
.local-page .subpage article{padding:0;border:0;background:transparent;border-radius:0}.local-page .local-layout{grid-template-columns:minmax(0,1fr) 280px}.local-page .local-side li{text-align:left}
.local-outline{border-top:1px solid #dde4ea;border-bottom:1px solid #dde4ea;margin-bottom:32px}.local-outline summary{cursor:pointer;padding:17px 0;min-height:48px;font-size:15px;line-height:1.6;font-weight:400}.local-outline summary:focus-visible{outline:2px solid #142638;outline-offset:4px}.local-outline .local-contents{margin:0;padding:0 0 18px;border-bottom:0}
@media(max-width:900px){.local-page .local-layout{grid-template-columns:1fr}}
@media(max-width:900px){.local-page .local-side{grid-row:1}.local-page .local-side ul{columns:2;column-gap:24px}.local-page .local-side{padding:20px}.local-page .local-side a{display:inline-flex;align-items:center;min-height:44px;margin:8px 20px 0 0}.local-page .local-side .local-cost{margin-bottom:8px}}

@media(max-width:420px){.local-page .local-side ul{columns:1}}

/* User photographs: complete frames, equal panels, readable captions. */
.work-gallery{margin-block:2rem;padding-block:1.5rem;border-top:1px solid #dce1e6;border-bottom:1px solid #dce1e6}
.work-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}
.work-gallery-grid figure{margin:0;min-width:0;display:flex;flex-direction:column}
.work-gallery-grid a{display:flex;align-items:center;justify-content:center;background:#f2f4f6;border-radius:12px;overflow:hidden;height:300px}
.work-gallery-grid img{width:100%;height:100%;object-fit:contain;display:block}
.work-gallery-grid figcaption{font-size:14px;line-height:1.6;padding-top:12px;text-align:left;font-weight:400}
.work-gallery-grid a:focus-visible{outline:3px solid #18354b;outline-offset:4px}
@media(max-width:600px){.work-gallery-grid{grid-template-columns:1fr;gap:24px}.work-gallery-grid a{height:320px}}
.local-page .local-body .work-gallery-grid a img{width:100%;height:100%;max-height:100%;object-fit:contain;margin:0;border-radius:0}
