/* Base seguro: nenhuma seção cria rolagem horizontal ou estoura a viewport. */
html,body{max-width:100%;overflow-x:hidden}body{min-width:320px}img{max-width:100%;height:auto}.topbar,.hero,.section,.how,footer{max-width:100%}.hero-copy,.hero-visual,.catalog-intro,.section-heading,.why>div,.faq>div{min-width:0}.marquee{max-width:100vw}

/* Desktop amplo */
@media(min-width:1200px){.hero{min-height:620px}.section{padding-left:max(36px,8vw);padding-right:max(36px,8vw)}.gallery-grid{grid-template-rows:250px 250px}.product-card img{height:245px}}

/* Tablets */
@media (min-width:601px) and (max-width:1024px){.topbar{padding-left:34px;padding-right:34px}.hero{padding:58px 42px;gap:28px;min-height:auto}.hero h1{font-size:clamp(45px,6vw,63px)}.hero-visual.real-showcase{height:370px}.showcase-main{height:78%;width:62%;left:18%;top:11%}.showcase-small{width:32%;height:35%}.section{padding:76px 42px}.service-grid,.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:200px 200px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-card,.work-card img{min-height:280px}.work-card.feature,.work-card.feature img{min-height:280px}.why,.faq,.how{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px}footer{padding:42px;grid-template-columns:1.3fr 1fr 1fr;gap:24px}}

/* Celulares */
@media(max-width:600px){.topbar{height:70px;padding:7px 16px;gap:10px}.brand img{width:52px;height:52px}.topbar nav{display:none}.header-cta{font-size:12px;padding:11px 14px;white-space:nowrap}.hero{display:block;padding:48px 21px 35px;min-height:0}.hero h1{font-size:clamp(42px,13vw,56px);letter-spacing:-1px;line-height:1}.hero .lead{font-size:16px;margin:20px 0}.actions{gap:13px;flex-wrap:wrap}.trust{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:12px;margin-top:25px}.hero-visual.real-showcase{height:300px;margin-top:30px}.real-showcase:before{inset:25px 28px;border-radius:28px}.showcase-main{width:63%;height:77%;left:19%;top:10%;border-width:5px;border-radius:18px}.showcase-small{width:31%;height:32%;border-width:4px}.showcase-one{right:1%;top:11%}.showcase-two{left:1%;bottom:8%}.showcase-label{font-size:11px;right:2%;bottom:4%;padding:9px 10px}.hero:after{font-size:30px;line-height:2.4;letter-spacing:8px;word-spacing:7px;inset:8px!important}.marquee{min-height:53px}.marquee div{font-size:13px;padding-left:40%}.section{padding:60px 21px}.section-heading h2,.how h2,.why h2,.testimonials h2,.faq h2{font-size:clamp(36px,10vw,46px)}.catalog-intro{display:block}.catalog-intro>p{margin-top:18px}.service-grid,.product-grid,.quote-grid,.work-grid{grid-template-columns:1fr}.service-grid{margin-top:30px}.service-grid article{min-height:auto}.product-grid{margin-top:28px}.product-card img{height:260px;object-fit:cover}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:165px 165px;gap:9px;margin-top:30px}.gallery-grid .tall{grid-row:span 2}.gallery-grid .wide{grid-column:span 1}.gallery-grid img{min-width:0}.work-grid{margin-top:30px}.work-card,.work-card img,.work-card.feature,.work-card.feature img{min-height:255px}.work-card span{font-size:18px}.why,.faq,.how{grid-template-columns:1fr;gap:32px;padding:60px 21px}.why-image{max-width:100%}.why-image:after{right:7px;bottom:-10px}.reasons p{font-size:14px}.quote-grid{gap:12px;margin-top:27px}.quote-grid blockquote{font-size:17px;padding:21px}.faq details{padding:15px}.how{padding-top:58px;padding-bottom:58px}.how ol{gap:16px}.how li{gap:12px}.how li strong{font-size:28px}footer{grid-template-columns:1fr;padding:38px 21px;gap:28px}.footer-brand img{width:60px;height:60px}.footer-brand p{font-size:15px}.footer-contact a,.footer-social a{font-size:14px;overflow-wrap:anywhere}.image-modal{padding:65px 15px 26px}.image-modal img{max-width:100%;max-height:76vh}.image-modal-close{top:13px;right:14px}.image-modal p{font-size:13px}}

/* Evita animações e rolagens desnecessárias para quem prefere menos movimento. */
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
