*{box-sizing:border-box}html{background:#e9e9e9}body{margin:0;color:#333;font:13px Arial,Helvetica,sans-serif;background:#fff url('template-images/page.png') repeat-x top center}a{color:#287ca5;text-decoration:none}a:hover{text-decoration:underline}.site{width:min(100%,1000px);margin:0 auto;background:#fff;min-height:100vh;box-shadow:0 0 8px #bbb}.brand{height:108px;display:flex;align-items:center;padding:8px 25px;background:#fff}.brand img{width:167px;height:90px;object-fit:contain}.nav{background:#e7e7e7 url('template-images/menublock.png') repeat-x;min-height:42px;display:flex;align-items:stretch;padding:0 12px;border-top:1px solid #ddd;border-bottom:1px solid #ccc}.nav a{display:flex;align-items:center;padding:0 20px;color:#444;font-weight:bold;font-size:14px}.nav a.active,.nav a:hover{color:#fff;background:#2789b4;text-decoration:none}.hero{position:relative;width:100%;height:300px;overflow:hidden;background:#ddd}.hero img{width:100%;height:100%;object-fit:cover;display:block}.dots{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:8px}.dots button{border:1px solid #fff;background:#8889;border-radius:50%;width:12px;height:12px;padding:0;cursor:pointer}.dots button[aria-current=true]{background:#1689b9}.content{padding:20px 25px 35px;min-height:270px;line-height:1.55}.content h1{font-size:22px;font-weight:normal;color:#287fa8;margin:0 0 18px;padding-bottom:8px;border-bottom:1px solid #ddd}.content h2{font-size:18px;color:#287fa8}.content p{margin:0 0 14px}.content img{max-width:100%;height:auto}.home-intro{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:18px 0}.home-intro img{max-width:100%;height:auto}.home-tiles{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.home-tiles a{display:block}.home-tiles img{width:100%;max-height:220px;object-fit:cover}.product-grid,.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:18px 0}.product-card,.service-card{border:1px solid #ddd;padding:10px;background:#fafafa;text-align:center}.product-card img,.service-card img{width:100%;height:160px;object-fit:contain}.product-card a,.service-card a{font-size:15px;font-weight:bold}.product-carousel{position:relative;margin:18px 0 30px}.product-carousel h2{margin:0 0 12px}.carousel-track{display:flex;gap:14px;overflow-x:auto;scroll-behavior:smooth;padding:4px 2px 12px}.carousel-track .product-card{flex:0 0 29%;min-width:150px}.arrows{display:flex;justify-content:flex-end;gap:6px;margin:4px}.arrows button{border:1px solid #aaa;background:#eee;color:#444;padding:4px 10px;cursor:pointer}.article-body table{max-width:100%;width:100%!important;border-collapse:collapse}.article-body td{vertical-align:top;padding:5px}.article-body td img{max-width:100%;height:auto}.article-body ul{padding-left:24px}.contact-layout{display:grid;grid-template-columns:2fr 1fr;gap:28px}.more-info{border-left:1px solid #ddd;padding-left:20px}.more-info h2{font-size:17px}.footer{background:#eee;border-top:1px solid #ccc;padding:16px 25px;color:#777;font-size:11px}.footer img{vertical-align:middle}.article-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.article-list article{padding:12px;border:1px solid #ddd}.article-list h2{margin-top:0}.detail-back{margin-top:20px}.missing-note{font-size:11px;color:#777}@media(max-width:700px){.brand{height:auto;min-height:90px;padding:8px 15px}.brand img{width:145px;height:auto}.nav{padding:0;flex-wrap:wrap}.nav a{padding:12px 13px;font-size:13px}.hero{height:220px}.content{padding:16px}.home-intro,.home-tiles,.contact-layout{grid-template-columns:1fr}.product-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-card img,.service-card img{height:120px}.carousel-track .product-card{flex-basis:44%}.article-body table,.article-body tbody,.article-body tr,.article-body td{display:block;width:100%!important}.article-body td{padding:5px 0}.article-list{grid-template-columns:1fr}.more-info{border-left:0;border-top:1px solid #ddd;padding:15px 0 0}.footer{padding:14px 16px}}@media(max-width:400px){.product-grid,.service-grid{grid-template-columns:1fr}.hero{height:180px}.nav a{padding:10px 9px}}

/* Correções de fidelidade: carrosséis observados no vídeo do site original */
.home-content,.products-content{padding-top:18px}
.home-warning{max-width:980px;margin:0 auto 20px;text-align:center}
.home-warning img{display:block;width:100%;height:auto}
.visual-carousel{position:relative;width:100%;max-width:980px;margin:18px auto 28px;padding:0 42px}
.visual-carousel-head h2{margin:0}
.visual-carousel .carousel-viewport{overflow:hidden;width:100%}
.visual-carousel .carousel-track{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;padding:0;scroll-snap-type:x mandatory}
.visual-carousel .carousel-track::-webkit-scrollbar{display:none}
.visual-carousel .product-slide{position:relative;flex:0 0 calc((100% - 20px)/3);min-width:0;padding:0;border:0;background:transparent;scroll-snap-align:start;overflow:hidden}
.visual-carousel .product-slide a{display:block;position:relative;color:#fff;text-decoration:none}
.visual-carousel .product-slide img{display:block;width:100%;height:auto;aspect-ratio: 4 / 3;object-fit:cover}
.visual-carousel .product-slide span{display:block;position:absolute;left:0;right:0;bottom:0;padding:7px 10px;background:rgba(0,0,0,.72);color:#fff;font-weight:bold;text-align:left;font-size:14px;opacity:0;transition:opacity .15s}
.visual-carousel .product-slide a:hover span,.visual-carousel .product-slide a:focus span{opacity:1}
.visual-carousel .carousel-arrow{position:absolute;top:42%;z-index:2;border:0;background:transparent;color:#555;font-size:34px;line-height:1;padding:4px;cursor:pointer}
.visual-carousel .carousel-prev{left:0}.visual-carousel .carousel-next{right:0}
.visual-carousel .carousel-arrow:hover{color:#222}
.home-products .visual-carousel-head,.rcd-products .visual-carousel-head,.basalto-products .visual-carousel-head{display:none}
.home-standard{max-width:920px;margin:12px auto 18px!important;font-family:'Francois One',Arial,sans-serif;font-size:19px;line-height:1.45;font-weight:bold;color:#595959;text-align:justify}
.responsibility-links{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:930px;margin:16px auto 12px}
.responsibility-links a,.sobras-banner{display:block}.responsibility-links img{display:block;width:100%;height:auto}.sobras-banner{max-width:930px;margin:0 auto 24px}.sobras-banner img{display:block;width:100%;height:auto}
.home-article{max-width:930px;margin:20px auto}.home-article h2,.basalto-title{font-size:22px;color:#333;font-family:'Francois One',Arial,sans-serif;margin:12px 0}
.article-float{float:left;width:min(350px,45%);height:auto;margin:0 12px 8px 0}
.basalt-products{margin-top:0}.products-content>p{margin-bottom:14px}
@media(max-width:700px){.visual-carousel{padding:0 28px}.visual-carousel .product-slide{flex-basis:calc((100% - 10px)/2)}.visual-carousel .carousel-arrow{font-size:26px}.responsibility-links{gap:10px}.home-standard{font-size:16px}.article-float{width:45%}}
@media(max-width:430px){.visual-carousel{padding:0 23px}.visual-carousel .product-slide{flex-basis:100%}.responsibility-links{grid-template-columns:1fr}.visual-carousel .product-slide span{opacity:1}}

/* Ajustes solicitados: destaque Sobras na Home e página de contato */
.home-article{display:flow-root;max-width:930px;margin:22px auto 0;padding:0 0 4px}
.home-article h2{margin:0 0 16px;font-size:26px;line-height:1.25;color:#333}
.home-article p{font-size:16px;line-height:1.55}
.home-article .article-float{float:left;width:min(438px,45%);height:auto;margin:0 14px 10px 0}
.contact-content{min-height:360px}
.contact-lead{font-size:16px;margin:0 0 24px!important}
.contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:820px}
.contact-card{border:1px solid #e2e2e2;background:#fafafa;padding:18px 20px;min-width:0}
.contact-card h2{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:#287ca5;font-size:18px}
.contact-card h2 img{width:16px;height:16px;object-fit:contain}
.contact-card p{margin:0;line-height:1.8;font-size:15px;overflow-wrap:anywhere}
.contact-address{grid-column:1/-1}
@media(max-width:700px){
 .home-article .article-float{width:44%;margin-right:10px}
 .home-article p{font-size:14px}
 .contact-cards{grid-template-columns:1fr}
 .contact-address{grid-column:auto}
}
@media(max-width:430px){
 .home-article .article-float{float:none;width:100%;max-width:100%;margin:0 0 12px}
}

/* Banner original "Sobras que valem uma obra" na Home */
.sobras-banner{display:block;width:100%;margin:8px auto 0;line-height:0}
.sobras-banner img{display:block;width:100%;height:auto;border:0}

/* Ajustes responsivos finais — Serviços e Contato */
.services-gallery{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  width:100%;
  margin:12px 0 20px;
}
.services-photo{
  margin:0;
  min-width:0;
  overflow:hidden;
  text-align:center;
}
.services-photo img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
.contact-content{padding-bottom:28px}
.contact-details{max-width:900px}
.contact-cards{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.contact-card{padding:16px 18px;border-radius:2px}
.contact-card p{line-height:1.7}
.contact-address{grid-column:1/-1}
@media(max-width:700px){
  .services-gallery{grid-template-columns:1fr;gap:14px}
  .services-photo img{width:100%;height:auto;max-height:none;object-fit:contain}
  .contact-content{padding:16px 14px 22px}
  .contact-content h1{margin-bottom:14px}
  .contact-lead{font-size:15px;line-height:1.5;margin-bottom:16px!important}
  .contact-cards{grid-template-columns:1fr;gap:12px}
  .contact-address{grid-column:auto}
  .contact-card{padding:14px}
  .contact-card h2{font-size:17px;margin-bottom:8px}
  .contact-card p{font-size:14px;line-height:1.65}
}
@media(max-width:380px){
  .brand{padding:8px 12px}
  .brand img{max-width:100%;width:130px}
  .nav a{flex:1 1 auto;justify-content:center;padding:10px 7px;font-size:12px}
  .content{padding-left:12px;padding-right:12px}
}
