
:root{--blue:#003f9b;--deep:#023084;--green:#28a745;--yellow:#f4b63c;--txt:#222934;--light:#f7f8fa;--line:#ebedf0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Poppins,Arial,sans-serif;color:var(--txt);line-height:1.7;background:#fff}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.container{width:min(1160px,calc(100% - 40px));margin:auto}.container-fluid{width:min(1380px,calc(100% - 36px));margin:auto}.skip{position:absolute;top:-60px;left:10px;background:white;padding:10px;z-index:99}.skip:focus{top:10px}.header{background:#fff;position:sticky;top:0;z-index:30;box-shadow:0 2px 18px #132c4b12}.nav{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{width:112px;height:82px;object-fit:contain}.main-menu{display:flex;align-items:center;gap:26px}.main-menu>a:not(.btn){font-weight:600;font-size:14px;transition:color .2s}.main-menu>a:not(.btn):hover{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:14px;font-weight:700;text-align:center;min-height:49px;padding:12px 22px;border-radius:5px;border:2px solid transparent;transition:transform .2s,box-shadow .2s;background:#fff;cursor:pointer}.btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #0002}.btn-green{background:#25a94e;color:white}.btn-yellow{background:#f1b62d;color:#20242a}.btn-outline{background:transparent;color:var(--blue);border-color:#cdd6e5}.nav-cta{font-size:13px}.menu-toggle{display:none;border:0;background:none;padding:8px;cursor:pointer}.menu-toggle span{display:block;width:25px;height:3px;background:var(--deep);margin:5px 0}.hero{min-height:630px;background:center/cover url('../images/hero-caminhao-areia.webp');position:relative;display:flex;align-items:center;text-align:center;color:#fff}.hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,32,77,.78),rgba(2,35,88,.58))}.hero-inner{position:relative;z-index:1;padding:68px 0 80px;max-width:950px}.hero-logo{width:190px;height:130px;object-fit:contain;margin:0 auto 20px;filter:drop-shadow(0 4px 12px #0005)}.hero h1{font-size:clamp(32px,4.6vw,56px);line-height:1.2;margin:0 0 23px;letter-spacing:-1.2px;color:white}.hero p{max-width:770px;margin:0 auto 26px;font-size:clamp(16px,1.8vw,20px);line-height:1.8}.hero-actions,.about-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:13px}.section{padding:92px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:58px}.about-photo img{width:100%;height:440px;object-fit:cover;border-radius:5px}.about-text h2,.center-title{font-size:clamp(28px,3.3vw,42px);font-weight:800;line-height:1.22;letter-spacing:-.7px}.about-text h2{margin:0 0 25px}.about-text p{font-size:15px;margin:0 0 20px}.about-actions{justify-content:flex-start;margin-top:30px}.center-title{text-align:center;margin:0 0 17px}.section-lead{text-align:center;font-size:15px;max-width:760px;margin:0 auto 38px;color:#646b78}.products{background:#f7f8fa}.products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product-card{background:white;display:flex;flex-direction:column;box-shadow:0 3px 17px #162a4010;overflow:hidden;border-radius:3px}.product-card>img{width:100%;height:225px;object-fit:cover}.product-content{padding:24px 24px 26px;flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.product-content h3{font-size:21px;line-height:1.3;margin:0 0 12px;text-align:center}.product-content p{font-size:14px;color:#5b6470;margin:0 0 24px;flex:1;width:100%;text-align:center}.btn-card{background:var(--blue);color:white;border-radius:3px;width:100%;font-size:14px;justify-content:center;text-align:center}.gallery{padding-bottom:75px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery-item{background:#f5f5f5;padding:0;border:0;cursor:pointer;overflow:hidden;aspect-ratio:4/3}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery-item:hover img{transform:scale(1.06)}.gallery-note{font-size:12px;color:#737c8c;text-align:center;margin:24px auto 0}.quote{position:relative;padding:85px 0;background:linear-gradient(#f6f7f8ec,#f6f7f8ec),center/cover url('../images/cta-materiais.webp')}.quote-grid{position:relative;display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:55px}.quote-art img{width:100%;height:330px;object-fit:cover;border-radius:5px}.quote-copy{text-align:center}.quote-copy h2{font-size:clamp(27px,3vw,40px);line-height:1.25;margin:0 0 20px}.quote-copy p{font-size:15px;margin:0 0 15px}.quote-copy .btn{margin-top:20px}.contact-features{padding:72px 0}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.info-card{padding:32px 28px;background:#f7f8fa;min-height:215px}.info-icon{font-size:32px;color:var(--blue);font-weight:800;line-height:1.1}.info-card h3{font-size:22px;margin:18px 0 7px}.info-card p{font-size:14px;margin:0 0 8px;overflow-wrap:anywhere}.info-card a{color:var(--blue)}.map-section{padding-top:42px}.map-section iframe{height:400px;width:100%;border:0;display:block}.footer{background:#f3f4f6;padding:60px 0 23px}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.footer-logo{width:140px;height:125px;object-fit:contain}.footer h3{font-size:15px;margin:0 0 15px}.footer p,.footer a{font-size:13px;line-height:2;overflow-wrap:anywhere}.footer-grid>div:last-child>a{display:block}.footer a:hover{color:var(--blue)}.footer-bottom{text-align:center;border-top:1px solid #d9dde4;padding-top:20px;margin-top:42px;font-size:12px;color:#586170}.footer-bottom a{font-weight:700;color:var(--blue)}.lightbox{border:0;border-radius:8px;padding:12px;max-width:min(900px,95vw);max-height:92vh;box-shadow:0 18px 90px #0006}.lightbox::backdrop{background:#081e33de}.lightbox img{max-height:75vh;max-width:100%;object-fit:contain}.lightbox p{text-align:center;margin:10px}.lightbox-close{position:absolute;right:8px;top:8px;background:#fff;border:0;border-radius:50%;width:35px;height:35px;font-size:27px;cursor:pointer}
@media(max-width:980px){.main-menu{gap:14px}.nav{min-height:88px}.brand img{width:90px;height:72px}.main-menu>a:not(.btn){font-size:12px}.nav-cta{font-size:11px;padding:10px}.about-grid{gap:30px}.products-grid{gap:17px}.product-content{padding:19px}.gallery-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){html{scroll-padding-top:80px}.container{width:calc(100% - 28px)}.container-fluid{width:calc(100% - 28px)}.header{position:sticky}.nav{min-height:78px}.brand img{width:82px;height:66px}.menu-toggle{display:block}.main-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:20px 14px 25px;box-shadow:0 13px 18px #0002;flex-direction:column;align-items:stretch;gap:0}.main-menu.is-open{display:flex}.main-menu>a:not(.btn){display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px}.main-menu>.btn{margin-top:16px}.hero{min-height:580px}.hero-inner{padding:55px 0}.hero-logo{width:148px;height:112px}.hero h1{font-size:32px;letter-spacing:-.5px}.hero p{font-size:15px}.hero-actions .btn{min-width:185px}.section{padding:60px 0}.about-grid,.quote-grid{grid-template-columns:1fr;gap:27px}.about-photo img{height:270px}.about-text h2{text-align:center}.about-text p{font-size:14px}.about-actions{justify-content:center}.products-grid{grid-template-columns:repeat(2,1fr);gap:13px}.product-card>img{height:160px}.product-content{padding:14px}.product-content h3{font-size:17px}.product-content p{font-size:12px}.btn-card{font-size:11px;min-height:46px;padding:9px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:9px}.quote{padding:50px 0}.quote-art img{height:230px}.quote-copy h2{font-size:28px}.info-grid{grid-template-columns:1fr;gap:14px}.info-card{min-height:unset;padding:24px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:24px}.map-section iframe{height:315px}}
@media(max-width:410px){.products-grid{grid-template-columns:1fr}.product-card>img{height:220px}.product-content{padding:20px}.product-content h3{font-size:20px}.product-content p{font-size:14px}.btn-card{font-size:14px}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.footer-grid{grid-template-columns:1fr}.footer-logo{margin:auto}}

/* Seções recuperadas do site original, adaptadas ao layout reformulado v3.0 */
.original-highlights{padding-top:76px;padding-bottom:76px;background:#fff}
.original-highlights-fleet{background:#f6f7f9}
.original-highlights .center-title{max-width:1000px;margin-left:auto;margin-right:auto;line-height:1.25;text-align:center}
.original-showcase{margin:29px auto 0;display:flex;align-items:center;justify-content:center}
.original-showcase img{display:block;max-width:100%;height:auto;object-fit:contain}
.original-showcase-wide{max-width:1200px}
.original-showcase-fleet{max-width:750px}
@media(max-width:760px){.original-highlights{padding-top:54px;padding-bottom:54px}.original-highlights .center-title{font-size:clamp(24px,6vw,30px)}.original-showcase{margin-top:22px}}


/* v3.2 — Texto centralizado e leitura confortável em telas pequenas */
.intro-section{background:#fff;padding:72px 0 65px}
.intro-wrap{max-width:900px;text-align:center}
.intro-title{font-size:clamp(24px,3.1vw,38px);line-height:1.28;color:var(--deep);font-weight:800;margin:0 auto 23px;text-align:center}
.intro-wrap p{max-width:800px;margin:0 auto 21px;font-size:clamp(15px,1.5vw,18px);line-height:1.75;color:var(--deep);font-weight:600;text-align:center;text-wrap:pretty}
.intro-wrap strong{font-weight:800}
.intro-wrap .intro-end{margin-top:28px;margin-bottom:0}
.section-lead{text-wrap:pretty}
.original-highlights .center-title{text-wrap:balance}
@media(max-width:760px){
  body{text-size-adjust:100%;-webkit-text-size-adjust:100%}
  .hero,.hero-inner,.hero h1,.hero p,.intro-section,.intro-wrap,.intro-title,.intro-wrap p,
  .about-text,.about-text h2,.about-text p,.products,.products .section-lead,
  .product-card,.product-content,.product-content h3,.product-content p,
  .original-highlights,.original-highlights .center-title,.original-highlights .section-lead,
  .gallery,.gallery .section-lead,.quote-copy,.quote-copy h2,.quote-copy p,
  .info-card,.info-card h3,.info-card p,.map-section,.map-section .section-lead,
  .footer,.footer-grid,.footer-grid p,.footer-grid h3,.footer-grid a{text-align:center}
  .intro-section{padding:54px 0}
  .intro-wrap{width:calc(100% - 28px)}
  .intro-title{font-size:clamp(23px,6vw,30px);letter-spacing:-.3px}
  .intro-wrap p{font-size:clamp(15px,3.9vw,17px);line-height:1.7;max-width:590px}
  .intro-wrap .intro-end{margin-top:27px}
  .about-text p,.quote-copy p,.section-lead{line-height:1.75;max-width:620px;margin-left:auto;margin-right:auto}
  .about-actions,.hero-actions{justify-content:center}
  .product-content{align-items:center}
  .product-content p{width:100%}
  .btn-card{justify-content:center;gap:9px}
  .info-card{display:flex;flex-direction:column;align-items:center}
  .footer-grid>div{display:flex;flex-direction:column;align-items:center}
  .footer-grid>div p{margin-left:auto;margin-right:auto}
  .footer-logo{margin:0 auto}
  .main-menu>a:not(.btn){text-align:center}
  .original-showcase img{max-width:100%;height:auto}
}
@media(max-width:410px){
  .intro-wrap p{font-size:15px}
  .about-text p,.product-content p{font-size:14px}
  .info-card p{font-size:14px}
  .footer-grid{grid-template-columns:1fr}
}

/* v3.2.2 — Ajustes visuais de destaque e uniformidade */
@media(min-width:761px){
  .products-grid{align-items:stretch}
  .product-card{height:100%}
  .product-content h3{min-height:56px;display:flex;align-items:center;justify-content:center;width:100%}
  .product-content p{min-height:96px;display:block}
}
.original-highlights,
.original-highlights.original-highlights-fleet{
  background:linear-gradient(180deg,#5aaac7 0%, #2b8aae 52%, #176d92 100%);
  color:#fff;
}
.original-highlights .center-title,
.original-highlights-fleet .center-title{
  color:#fff;
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:18px;
  text-wrap:balance;
}
.original-highlights .center-title::before,
.original-highlights .center-title::after{
  content:"";
  display:block;
  width:min(330px,34vw);
  height:3px;
  background:rgba(255,255,255,.92);
  margin-left:auto;
  margin-right:auto;
}
.original-highlights .center-title::before{margin-bottom:22px}
.original-highlights .center-title::after{margin-top:22px}
.original-highlights .section-lead,
.original-highlights-fleet .section-lead{
  color:rgba(255,255,255,.92);
  max-width:780px;
  margin-bottom:34px;
}
.original-showcase-wide,
.original-showcase-fleet{max-width:1000px}
.original-showcase img{
  border:2px solid rgba(255,255,255,.7);
  box-shadow:0 12px 30px rgba(0,0,0,.12);
}
@media(max-width:760px){
  .original-highlights,
  .original-highlights.original-highlights-fleet{padding-top:50px;padding-bottom:50px}
  .original-highlights .center-title{font-size:clamp(24px,7vw,34px)}
  .original-highlights .center-title::before,
  .original-highlights .center-title::after{width:min(170px,48vw);height:2px}
  .original-highlights .section-lead{font-size:14px;max-width:92%}
  .original-showcase-wide,
  .original-showcase-fleet{max-width:100%}
}

/* v3.2.3 — Exibe somente as duas fotografias da arte original, sem o fundo preto incorporado.
   Os elementos IMG preservam os pixels e os atributos ALT do arquivo original. */
.original-materials-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,4vw,48px);max-width:1010px;margin:34px auto 0;align-items:center}
.original-material-photo{width:100%;aspect-ratio:434/288;position:relative;overflow:hidden;border:2px solid rgba(255,255,255,.86);box-shadow:0 9px 28px rgba(5,39,70,.16)}
.original-material-photo img{position:absolute;display:block;width:276.5%;max-width:none;height:auto;top:-27.8%;object-fit:unset;border:0;box-shadow:none}
.original-material-photo-sand img{left:-19.35%}
.original-material-photo-stone img{left:-156.7%}
@media(max-width:620px){.original-materials-grid{grid-template-columns:1fr;max-width:490px;gap:20px;margin-top:26px}}

/* v3.2.4 — Alinhamento centralizado na seção Nossa Empresa, em todas as telas */
.about-text,
.about-text h2,
.about-text p {
  text-align: center;
}
.about-text p {
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
}
.about-actions {
  justify-content: center;
}

/* v3.2.5 — Produtos e galeria em coluna única no celular */
@media (max-width: 760px) {
  .products-grid,
  .gallery-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .product-card,
  .gallery-item {
    width: 100%;
    min-width: 0;
  }
  .product-card > img {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }
  .gallery-item {
    aspect-ratio: 4 / 3;
  }
  .gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .product-content {
    align-items: center;
    text-align: center;
  }
  .product-content h3,
  .product-content p {
    text-align: center;
  }
  .btn-card {
    justify-content: center;
  }
}


/* v3.2.6 — Correção definitiva: uma coluna em Produtos e Galeria
   até 1024px, abrangendo smartphones com viewport ampliado. */
@media screen and (max-width: 1024px) {
  #produtos .products-grid,
  #galeria .gallery-grid,
  .products .products-grid,
  .gallery .gallery-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-flow: row;
    width: 100%;
  }
  #produtos .products-grid > *,
  #galeria .gallery-grid > *,
  .products-grid > .product-card,
  .gallery-grid > .gallery-item {
    grid-column: 1 / -1;
    min-width: 0;
    width: 100%;
    max-width: 100%;
  }
  .products-grid .product-card > img {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }
  .gallery-grid .gallery-item { aspect-ratio: 4 / 3; }
  .gallery-grid .gallery-item img {width:100%;height:100%;object-fit:cover}
}
