/* Modern visual refresh */
:root{--paper:#f3f5f8;--navy:#101d33;--red:#b82f30}
html{scroll-behavior:smooth;scroll-padding-top:110px}
header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);box-shadow:0 5px 24px #101d3309;gap:20px}
nav{gap:20px}nav a{padding:8px 0}nav a[aria-current]{border-bottom:2px solid var(--red)}
.button{border-radius:9px;box-shadow:0 6px 16px #a8262415;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}
.hero{margin:24px auto 0;width:94%;border-radius:24px;overflow:hidden;background:linear-gradient(135deg,#f4f6fa,#e9edf4);min-height:580px}
.hero-copy{padding:65px 8%}.hero-image{background:#101d33}.hero-image>img{border-radius:14px}
.service-grid{border:0;gap:24px}
.service-card{display:flex;flex-direction:column;padding:0 26px 27px;border:1px solid #e2e7ed;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 26px #101d3307;transition:transform .2s,box-shadow .2s}
.service-card:hover{transform:translateY(-5px);box-shadow:0 16px 32px #101d3312;background:#fff}
.service-visual{margin:0 -26px 22px;position:relative;overflow:hidden}
.service-visual img{width:100%;height:230px;object-fit:cover;transition:transform .35s}
.service-card:hover .service-visual img{transform:scale(1.035)}
.service-visual small{position:absolute;bottom:10px;left:12px;padding:4px 8px;border-radius:5px;background:#101d33df;color:#fff;font-size:10px;letter-spacing:.2px}
.service-card h3{margin:12px 0}.service-card .arrow{margin-top:auto;padding-top:12px;color:var(--red)}
.service-card p{min-height:44px}
.service-banner{margin:32px auto 0;width:88%;max-width:1320px}
.service-banner img{width:100%;height:440px;object-fit:cover;border-radius:22px}
.service-banner figcaption{font-size:11px;color:var(--muted);margin-top:8px}
.intro{background:linear-gradient(120deg,#f1f4f9,#fff);border-bottom:1px solid #e7ecf2}
.split aside{border-radius:18px;border:1px solid #e2e7ed}
.gallery-grid figure{border-radius:16px;overflow:hidden;box-shadow:0 6px 20px #101d3307}
.process{background:linear-gradient(125deg,#101d33,#263965)}
details{padding:24px 0}.closing{background:linear-gradient(120deg,#283967,#152641)}
@media(max-width:1050px){nav{gap:16px}.hero-copy{padding:45px 7%}.service-visual img{height:190px}}
@media(max-width:700px){header{gap:8px}nav a[aria-current]{border-bottom:0;background:#f3f5f8;border-radius:6px}.hero{width:100%;margin:0;border-radius:0}.hero-copy{padding:42px 6%}.service-grid{grid-template-columns:1fr;gap:22px}.service-card{padding:0 24px 25px}.service-visual{margin:0 -24px 22px}.service-visual img{height:240px}.service-card h3{font-size:23px}.service-card p{font-size:15px;min-height:0}.service-banner img{height:270px;border-radius:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.google-reviews{scroll-margin-top:110px}.google-review-panel{display:grid;grid-template-columns:1.3fr 1fr;gap:55px;background:linear-gradient(120deg,#f3f6fb,#fff);border:1px solid #e0e6ee;border-radius:24px;padding:48px}.google-review-panel h2{max-width:600px}.google-review-panel .button{margin-top:12px}.review-invite{padding:30px;border-radius:16px;background:#fff;border:1px solid #e1e7ef;align-self:center}.review-invite p{font-size:15px}@media(max-width:700px){.google-review-panel{grid-template-columns:1fr;padding:26px;gap:25px}.review-invite{padding:22px}.google-review-panel .button{font-size:12px;gap:10px}}
@media(min-width:701px){nav{gap:14px;font-size:12px}header{gap:16px}}@media(min-width:701px) and (max-width:1150px){.header-call{display:none}}
