/* SEO Gravity v3 — Responsive polish (overrides only; desktop hero layout is retained). */
:root{--tap-target:44px}
html{scroll-padding-top:95px;max-width:100%;overflow-x:clip}
body{min-width:0;max-width:100%;overflow-x:clip}
.container, .header-row, .hero-grid, .hero-copy, .form-wrap, .lead-card,
.service-grid, .service-card, .two-column, .rich-copy, .cta-panel,
.footer-grid, .contact-items, .article-layout, .blog-grid,
.testimonial-viewport, .testimonial-carousel{min-width:0}
img, video, iframe, svg{max-width:100%}
iframe{display:block}
input, select, textarea{max-width:100%}
:where(h1,h2,h3,p,li,span,a){overflow-wrap:break-word}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid #8dbf33;outline-offset:3px}
button, a, input, textarea, select{-webkit-tap-highlight-color:transparent}
.menu-button{min-width:44px;min-height:44px;align-items:center;justify-content:center;z-index:5;position:relative}
.site-nav-scrim{display:none}
.services-toggle{display:none}
.hero h1, .page-banner h1, .article-head h1{text-wrap:balance}
.hero-lead, .section-heading p{max-width:68ch}
.rich-copy, .article-body, .legal-copy{overflow-wrap:anywhere}
.btn, .nav-cta, .review-control, .site-back-top{touch-action:manipulation}
.footer-grid>div, .contact-items>*{min-width:0}
.footer-newsletter form{max-width:100%}
.footer-newsletter input{min-width:0}
.service-card p{-webkit-line-clamp:unset;line-clamp:unset;display:block;overflow:visible}
.service-card{padding-bottom:65px}
@media(max-width:1200px){
 .hero-grid{gap:clamp(28px,4vw,68px)}
 .two-column{gap:clamp(28px,5vw,75px)}
 .article-layout{gap:clamp(24px,4vw,55px)}
 .contact-items{grid-template-columns:repeat(2,minmax(0,1fr))}
 .contact-items>*:last-child{grid-column:1/-1}
}
@media(max-width:1024px){
 .section{padding:clamp(60px,7vw,87px) 0}
 .hero-grid{min-height:auto}
 .service-grid{gap:16px}
 .cta-panel{gap:22px}
}
@media(max-width:950px){
 .site-header{z-index:102}
 .header-row{position:relative}
 .site-nav-scrim:not([hidden]){display:block;position:fixed;inset:0;background:rgba(9,16,30,.56);border:0;z-index:1;cursor:pointer}
 .main-nav{left:0;right:0;top:100%;z-index:4;max-height:calc(100dvh - 70px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:16px max(18px,env(safe-area-inset-right)) 25px;border-radius:0 0 16px 16px}
 .site-nav-open{overflow:hidden}
 .site-nav-open .site-header{backdrop-filter:none}
 .brand{position:relative;z-index:5}
 .main-nav a:not(.nav-cta){white-space:normal;line-height:1.45}
 .main-nav>a:not(.nav-cta),.nav-dropdown>a{min-height:44px;display:flex;align-items:center}
 .nav-dropdown{position:relative;padding:0 51px 0 0}
 .services-toggle{display:grid;place-items:center;position:absolute;right:2px;top:2px;width:44px;height:44px;background:#f2f6ea;color:#355919;border:1px solid #e5eedb;border-radius:9px;font-size:23px;line-height:1;cursor:pointer}
 .services-toggle[aria-expanded="true"]{transform:rotate(180deg)}
 .nav-dropdown:not(.services-open) .dropdown-panel{display:none}
 .nav-dropdown .dropdown-panel{margin:2px -51px 10px 8px;max-width:none;padding:5px 10px;border-radius:10px}
 .nav-dropdown.services-open .dropdown-panel{display:grid}
 .dropdown-panel a{min-height:44px;display:flex;align-items:center;padding:10px 12px}
 .nav-cta{min-height:48px;margin-top:8px}
 .hero-grid{padding:clamp(45px,7vw,70px) 0}
 .hero-copy,.form-wrap{width:100%}
 .lead-card{max-width:680px;margin-inline:auto}
 .hero-actions .btn{min-height:48px}
 .two-column{grid-template-columns:1fr;gap:19px}
 .two-column .content-heading h2{max-width:680px}
 .article-layout{grid-template-columns:1fr;gap:32px}
 .article-sidebar{position:static}
 .contact-items{grid-template-columns:1fr}
 .contact-items>*:last-child{grid-column:auto}
 .cta-panel{flex-direction:column;align-items:flex-start}
 .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 .container{width:calc(100% - 36px)}
 .header-row{gap:12px}
 .site-header .brand-logo{max-width:min(56vw,194px);max-height:52px}
 .hero-grid{gap:30px}
 .hero h1{font-size:clamp(34px,8.2vw,51px);line-height:1.14;letter-spacing:-1.55px}
 .hero-lead{font-size:clamp(14px,3.5vw,16px);line-height:1.78}
 .hero-trust{flex-wrap:wrap}
 .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
 .hero-actions .btn{width:100%}
 .lead-card{padding:clamp(18px,5.2vw,28px);border-radius:18px}
 .lead-card .form-row{grid-template-columns:1fr}
 .lead-card input:not([type=checkbox]),.lead-card select,.lead-card textarea,
 .footer-newsletter input{font-size:16px;min-height:46px}
 .lead-card .consent{font-size:12px;line-height:1.6}
 .lead-card .consent input{flex:0 0 18px;height:18px;width:18px}
 .lead-card .btn-submit{min-height:48px}
 .section{padding:clamp(52px,9vw,70px) 0}
 .section-heading h2,.content-heading h2,.faq-intro h2{font-size:clamp(28px,7.8vw,38px)}
 .rich-copy{font-size:15px;line-height:1.83}
 .service-grid,.blog-grid,.testimonial-grid{grid-template-columns:1fr}
 .service-card{min-height:0;padding:24px 24px 65px}
 .service-card h3{font-size:19px}
 .service-card p{font-size:13px}
 .testimonial-toolbar{flex-wrap:wrap}
 .testimonial-toolbar>span{flex:1 1 145px}
 .testimonial-toolbar .review-control{min-width:44px;min-height:44px}
 .testimonial-track>.testimonial-card,.testimonial-group .testimonial-card{width:min(82vw,360px);flex-basis:min(82vw,360px)}
 .cta-panel{padding:clamp(24px,5vw,35px)}
 .cta-panel h2{font-size:clamp(27px,7vw,34px)}
 .cta-panel .btn{width:100%}
 .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 18px}
 .footer-brand,.footer-grid>div:last-child{grid-column:1/-1}
 .footer-grid a,.footer-grid p,.footer-grid .footer-address{overflow-wrap:anywhere}
 .footer-bottom{display:flex;flex-wrap:wrap;gap:10px 20px}
 .article-head h1{font-size:clamp(32px,8vw,43px)}
 .page-banner h1{font-size:clamp(32px,8vw,43px)}
 .contact-items>a,.contact-items>div{padding:18px}
 .whatsapp-float{right:calc(12px + env(safe-area-inset-right));bottom:calc(14px + env(safe-area-inset-bottom))}
 .site-back-top{bottom:calc(16px + env(safe-area-inset-bottom));left:calc(12px + env(safe-area-inset-left))}
}
@media(max-width:380px){
 .container{width:calc(100% - 28px)}
 .brand-mark{width:35px;height:35px}
 .brand-type strong{font-size:20px}
 .brand-type small{font-size:6.5px;letter-spacing:1.1px}
 .hero h1{font-size:clamp(32px,9vw,36px)}
 .hero-eyebrow{font-size:9px;letter-spacing:.8px}
 .lead-card h2{font-size:22px}
 .footer-grid{grid-template-columns:1fr 1fr}
 .footer-grid>div{min-width:0}
 .footer-grid h3{font-size:13px}
 .footer-grid a{font-size:12px}
 .testimonial-toolbar>span{flex-basis:100%}
 .review-control{width:44px;height:44px}
}
@media(hover:none),(pointer:coarse){
 .sg-tilt-on .service-card{transform:none!important;will-change:auto}
 .sg-motion-on.sg-magnetic-on .hero-actions .btn,.sg-motion-on.sg-magnetic-on .cta-panel>.btn{transform:none!important}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important}
 .services-toggle{transition:none!important}
}
