/* Astra Customizer → Global colours / Typography; Spectra block settings */
:root{--accent:#6B1E24;--accent-d:#581820}
.hero{padding:72px 0 56px}
.hero-g{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.status{margin-bottom:24px;color:var(--graphite)}
.hero h1{margin-bottom:24px}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.rating{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:32px;font-size:15px;color:var(--graphite)}
.rating strong{color:var(--ink)}
.rlink{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:4px}
.hero-img{border-radius:20px;overflow:hidden;aspect-ratio:1/1}
.hero-img img{width:100%;height:100%;object-fit:cover}
.hstrip{display:flex;gap:32px;align-items:center;margin-top:56px;padding:18px 24px;border:1px solid var(--mist);border-radius:var(--r);font-size:15px;color:var(--ink);flex-wrap:wrap}
.hstrip .mono{margin-right:auto}
.svc{background:var(--tint);border-top:1px solid var(--mist);border-bottom:1px solid var(--mist)}
.sec-h{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:48px;flex-wrap:wrap}
.svc-g{display:grid;grid-template-columns:1fr 1.35fr;gap:32px;align-items:start}
.svc-feat{overflow:hidden}
.svc-feat img{aspect-ratio:4/3;object-fit:cover;width:100%}
.sf-t{padding:22px 24px 26px}.sf-t h3{font-size:24px;margin-bottom:6px}
.price-list{list-style:none;background:var(--paper);border:1px solid var(--mist);border-radius:var(--r)}
.price-list li{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 26px;border-bottom:1px solid var(--mist)}
.price-list li:last-child{border-bottom:0}
.price-list h3{font-size:18px;margin-bottom:2px}
.price-list .muted{font-size:14px}
.pl-note{background:var(--tint)}.pl-c{font-family:var(--head);font-weight:600;font-size:16px;color:var(--ink)}
.pr{font-family:var(--head);font-weight:700;font-size:20px;color:var(--ink)}
.why-h{margin-bottom:48px}
.why-g{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.wi{padding:28px 24px}
.wic{width:48px;height:48px;border-radius:12px;background:var(--ink);color:var(--paper);display:grid;place-items:center;margin-bottom:24px}
.wi h3{margin-bottom:8px}.wi p{font-size:15px}
.gal{padding-top:0}
.gal-g{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.g-r{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gal-g figure{border-radius:14px;overflow:hidden}
.gal-g .g1{aspect-ratio:1/1}
.g-r figure{aspect-ratio:1/1}
.gal-g img{width:100%;height:100%;object-fit:cover}
.visit{background:var(--tint);border-top:1px solid var(--mist)}
.visit-g{display:grid;grid-template-columns:1fr 1.4fr;gap:24px}
.hours{padding:32px}
.hours table{width:100%;border-collapse:collapse;margin-bottom:24px}
.hours td{padding:12px 0;border-bottom:1px solid var(--mist);font-size:16px;color:var(--ink)}
.hours td:last-child{text-align:right;font-family:var(--mono);font-size:14px}
.h-cta{display:flex;gap:10px;flex-wrap:wrap}
.map{overflow:hidden;display:flex;flex-direction:column}
.map .mapbox{flex:1}
.map-b{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;border-top:1px solid var(--mist)}
.map-b h3{margin:4px 0 2px}.map-b p{font-size:14px}
.cta-band{background:var(--ink);padding:88px 0}
.cb{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cb h2{color:var(--paper)}.cb .cta{margin-top:0}
@container page (max-width:720px){
 .hero{padding:32px 0 40px}
 .hero-g{grid-template-columns:1fr;gap:32px}
 .cta .btn{flex:1 1 100%}
 .hero-img{aspect-ratio:4/3.4}
 .hstrip{flex-direction:column;align-items:flex-start;gap:6px;margin-top:32px;padding:16px 18px}
 .hstrip .mono{margin:0 0 4px}
 .svc-g{grid-template-columns:1fr}
 .price-list li{padding:16px 18px}
 .why-g{grid-template-columns:1fr 1fr;gap:12px}
 .wi{padding:18px 16px}.wic{margin-bottom:14px;width:40px;height:40px}
 .wi h3{font-size:17px}.wi p{font-size:14px}
 .why-h{margin-bottom:28px}
 .gal-g{grid-template-columns:1fr}
 .visit-g{grid-template-columns:1fr}
 .hours{padding:24px}
 .mapbox{min-height:220px}
 .map-b{flex-direction:column;align-items:stretch}
 .cta-band{padding:64px 0}
 .cb .cta{width:100%}
 .sec-h{margin-bottom:28px}
}
