/* Responsive refinement: consistent controls and iconography */
html,body{max-width:100%;overflow-x:clip}
img,video,iframe{max-width:100%;height:auto}
.wrap,.nav,.hero-layout,.hero-reimagined-grid,.about-layout,.contact-layout,.story-intro,.story-photo-layout,.footer-cols{min-width:0}
:where(.btn,.nav-cta,.under-link,.service-text .arrow,.hero-image-sticker,.quote-bubble,.image-stamp){font-variant-emoji:text}
.btn,.nav-cta,.under-link{white-space:normal;line-height:1.35;text-align:center}
.btn span,.nav-cta span,.service-text .arrow{font-family:Arial,sans-serif;font-style:normal;font-weight:700;line-height:1;display:inline-block;font-size:1.1em;flex-shrink:0}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.footer-cols{gap:28px}.hero-reimagined-left{padding-right:26px}.hero-reimagined-right{margin-right:-24px}.service-photo{height:190px}}
@media(max-width:820px){
 .wrap{width:calc(100% - 36px)}
 .site-header .nav{height:70px;gap:10px}
 .site-header nav{top:70px;max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain}
 .site-header nav.is-open{z-index:150;padding:20px 24px;gap:18px}
 .site-header .sub-menu{width:100%;position:static;display:grid;box-shadow:none}
 .site-header .sub-menu a{padding:10px 12px}
 .nav-cta{white-space:nowrap}
 .hero-reimagined-grid{min-height:0}
 .hero-reimagined-left{padding:32px 0 28px}
 .hero-reimagined-right{height:250px;min-height:250px;margin:0 -18px}
 .hero-reimagined-right img{object-fit:cover;object-position:50% 52%;height:100%}
 .hero-reimagined h1{font-size:clamp(43px,8vw,63px)}
 .hero-quote-wide{max-width:none}
 .section-header,.feedback-head,.about-layout,.footer-cta-inner{display:block}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .how-layout,.story-photo-layout,.story-intro,.contact-layout,.contact-hero-row,.inner-layout{grid-template-columns:1fr;gap:32px}
 .how-image img,.story-photo-layout img{height:350px;object-fit:cover}
 .image-stamp{right:12px}
 .promo-box{padding:42px}
 .footer-cta .btn{margin-top:22px}
 .footer-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 24px}
 .contact-form-panel{width:100%}
 .contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .contact-form-grid>p,.quote-grid>p{display:contents}
 .testimonials-grid,.care-grid,.value-grid,.feedback-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .inner-hero{padding:70px 0}
}
@media(max-width:580px){
 .announcement{line-height:1.35;padding:9px 8px}
 .brand{gap:7px}
 .brand-icon{width:42px;height:42px}
 .nav-cta{font-size:10px;padding:10px 9px;gap:4px}
 .menu-toggle{padding:8px;min-width:36px}
 .hero-reimagined-left{padding-top:25px}
 .hero-reimagined h1{font-size:clamp(42px,11vw,55px)}
 .hero-reimagined .hero-intro{font-size:14px}
 .hero-reimagined-right{height:210px;min-height:210px}
 .hero-reimagined-right img{object-position:50% 55%}
 .hero-quote-wide{padding:16px}
 .hero-quote-wide h2{font-size:20px}
 .hero-quote-wide .quote-grid{grid-template-columns:1fr}
 .hero-quote-wide .quote-grid>p{display:contents}
 .hero-quote-wide .wpcf7 form label{font-size:12px}
 .hero-quote-wide .wpcf7 form label input,.hero-quote-wide .wpcf7 form label select{min-height:42px;font-size:16px;margin:5px 0 10px}
 .hero-quote-wide .wpcf7 form label textarea{height:90px;min-height:90px;font-size:16px}
 .hero-quote-wide .wpcf7 input[type=submit]{min-height:46px;font-size:14px}
 .quote-grid,.contact-form-grid{grid-template-columns:1fr}
 .quote-grid>p,.contact-form-grid>p{display:contents}
 .wpcf7 form input,.wpcf7 form select,.wpcf7 form textarea{max-width:100%}
 .section{padding:62px 0}
 .section-header h2,.how-content h2,.about-layout h2,.care-heading h2{font-size:clamp(34px,9vw,45px)}
 .service-grid,.testimonials-grid,.care-grid,.value-grid,.feedback-grid{grid-template-columns:1fr}
 .service-photo{height:235px}
 .service-photo img{height:100%;object-fit:cover}
 .service-text .arrow{font-size:20px}
 .how-image img,.story-photo-layout img{height:260px}
 .how-section,.story-picture{padding:60px 0}
 .deal-refined-layout{grid-template-columns:1fr}
 .deal-refined-photo{height:210px;min-height:210px}
 .deal-refined-copy{padding:30px 24px}
 .promo-box{padding:34px 24px}
 .promo-box h2,.deal-refined-copy h2{font-size:clamp(33px,8vw,44px)}
 .story-hero{min-height:400px}
 .story-hero-copy{padding:50px 0}
 .story-hero h1,.contact-hero h1{font-size:clamp(42px,10vw,54px)}
 .contact-hero img{height:210px}
 .contact-form-panel{padding:22px}
 .contact-form-panel h2{font-size:34px}
 .contact-detail-card{padding:15px}
 .contact-detail-card strong{overflow-wrap:anywhere}
 .inner-hero{padding:56px 0}
 .inner-hero h1{font-size:clamp(40px,10vw,54px);overflow-wrap:anywhere}
 .prose h2{font-size:35px}
 .embedded-form{padding:18px}
 .footer-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}
 .footer-cols>div:first-child{grid-column:1 / -1}
 .footer-bottom{display:block}
 .footer-bottom span{display:block;margin-bottom:12px}
 .btn,.nav-cta{align-items:center}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
