
/* Portal Vidros · Identidade areia, 22/10/2026
   A referência da cliente orienta a abertura e a rede de pontos e linhas.
   Protegemos o catálogo e o editor existentes; estes estilos atuam na vitrine. */
:root{--pv-areia:#f5f2eb;--pv-marfim:#fffcf7;--pv-grafite:#25272a;--pv-muted:#596061;--pv-wine:#8b2634;--pv-hairline:#ded8cf}
html{scroll-padding-top:90px}
body{color:var(--pv-grafite);background-color:var(--pv-areia);background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22880%22%20height%3D%22540%22%20viewBox%3D%220%200%20880%20540%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23867c74%22%20stroke-width%3D%22.75%22%20stroke-opacity%3D%22.27%22%3E%3Cpath%20d%3D%22M-15%20112%2062%2042%20135%2090%20201%2022%20292%2066%20340%207M62%2042%20111%20165%20198%20126%20244%20218%20330%20176%20392%20251M135%2090%20198%20126%20292%2066%20330%20176%20423%2097%20485%20147M-20%20387%2058%20326%20132%20380%20190%20295%20262%20373%20341%20312%20407%20388M58%20326%2083%20444%20190%20295%20207%20461%20262%20373%20351%20482M485%20147%20570%2079%20661%20134%20752%2041%20853%2084%20910%20170M570%2079%20611%20226%20720%20205%20780%20285%20865%20228%20910%20320M407%20388%20482%20332%20558%20415%20635%20339%20720%20440%20802%20374%20890%20458M485%20147%20540%20254%20611%20226%20635%20339%20720%20205M330%20176%20392%20251%20482%20332%20540%20254%20611%20226%22%2F%3E%3Cpath%20d%3D%22M-15%20112%20135%2090%20111%20165%20244%20218M190%20295%20132%20380%20207%20461M661%20134%20720%20205%20853%2084M635%20339%20720%20440%20865%20228%22%2F%3E%3C%2Fg%3E%3Cg%20fill%3D%22%2374695f%22%20fill-opacity%3D%22.39%22%3E%3Ccircle%20cx%3D%2262%22%20cy%3D%2242%22%20r%3D%222.3%22%2F%3E%3Ccircle%20cx%3D%22135%22%20cy%3D%2290%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22201%22%20cy%3D%2222%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22292%22%20cy%3D%2266%22%20r%3D%222.3%22%2F%3E%3Ccircle%20cx%3D%22111%22%20cy%3D%22165%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22198%22%20cy%3D%22126%22%20r%3D%221.8%22%2F%3E%3Ccircle%20cx%3D%22244%22%20cy%3D%22218%22%20r%3D%222.4%22%2F%3E%3Ccircle%20cx%3D%22330%22%20cy%3D%22176%22%20r%3D%222.1%22%2F%3E%3Ccircle%20cx%3D%22392%22%20cy%3D%22251%22%20r%3D%221.9%22%2F%3E%3Ccircle%20cx%3D%22423%22%20cy%3D%2297%22%20r%3D%222.5%22%2F%3E%3Ccircle%20cx%3D%22485%22%20cy%3D%22147%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%2258%22%20cy%3D%22326%22%20r%3D%222.3%22%2F%3E%3Ccircle%20cx%3D%22132%22%20cy%3D%22380%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22190%22%20cy%3D%22295%22%20r%3D%222.2%22%2F%3E%3Ccircle%20cx%3D%22262%22%20cy%3D%22373%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22341%22%20cy%3D%22312%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22407%22%20cy%3D%22388%22%20r%3D%222.5%22%2F%3E%3Ccircle%20cx%3D%22482%22%20cy%3D%22332%22%20r%3D%222.2%22%2F%3E%3Ccircle%20cx%3D%22558%22%20cy%3D%22415%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22635%22%20cy%3D%22339%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22720%22%20cy%3D%22440%22%20r%3D%222.3%22%2F%3E%3Ccircle%20cx%3D%22802%22%20cy%3D%22374%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22570%22%20cy%3D%2279%22%20r%3D%222.2%22%2F%3E%3Ccircle%20cx%3D%22661%22%20cy%3D%22134%22%20r%3D%222.4%22%2F%3E%3Ccircle%20cx%3D%22752%22%20cy%3D%2241%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22853%22%20cy%3D%2284%22%20r%3D%222.3%22%2F%3E%3Ccircle%20cx%3D%22611%22%20cy%3D%22226%22%20r%3D%222.2%22%2F%3E%3Ccircle%20cx%3D%22720%22%20cy%3D%22205%22%20r%3D%222.5%22%2F%3E%3Ccircle%20cx%3D%22780%22%20cy%3D%22285%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%22865%22%20cy%3D%22228%22%20r%3D%222.2%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");background-repeat:repeat;background-position:center top;background-size:880px 540px;background-attachment:fixed}
body::selection,::selection{background:#8b263433;color:#25272a}
:is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #8b2634;outline-offset:3px}
nav,nav.scrolled{height:86px;padding:12px clamp(20px,5vw,76px);background:rgba(255,252,247,.96)!important;border-bottom:1px solid var(--pv-hairline);box-shadow:none!important}
.nav-links{gap:clamp(12px,2vw,28px)}.nav-links a{color:var(--pv-grafite)}
.nav-links .nav-cta,.btn-primary{background:var(--pv-wine);border-color:var(--pv-wine);color:white}
.nav-links .nav-cta:hover,.btn-primary:hover{background:#6f1723}
.mobile-menu{top:86px;background:var(--pv-marfim)}
.hero{margin:86px auto 0!important;max-width:none!important;min-height:min(710px,calc(100svh - 86px))!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:0!important;text-align:center!important;padding:clamp(58px,7vw,92px) 24px 88px!important;background:transparent!important;color:var(--pv-grafite)!important;overflow:hidden;isolation:isolate}
.hero::before,.hero::after{display:none!important}
.hero .hero-photo{display:none!important}
.hero-brand{position:relative;z-index:2;width:min(100%,640px);display:flex;align-items:center;justify-content:center;margin:0 auto 28px}
.hero-brand img{display:block;width:clamp(250px,39vw,540px);height:auto;max-height:165px;object-fit:contain;object-position:center}
.hero .hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;flex:0 1 auto!important;width:min(100%,820px)!important;max-width:820px!important;padding:0!important;margin:0 auto!important;text-align:center!important;background:transparent!important}
.hero .hero-badge{display:none!important}
.hero h1{color:var(--pv-grafite)!important;font-family:Montserrat,Arial,sans-serif!important;font-size:clamp(30px,3.4vw,52px)!important;font-weight:500;line-height:1.17!important;letter-spacing:-.035em!important;max-width:20ch!important;margin:0 auto 20px!important;text-wrap:balance}
.hero #heroText{color:#464d4e!important;font-size:clamp(15px,1.18vw,17px)!important;line-height:1.75!important;max-width:62ch!important;margin:0 auto 28px!important;white-space:normal!important}
.hero .hero-buttons{display:flex!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:12px!important}
.hero .hero-buttons a{font-size:14px!important;padding:15px 23px!important;min-height:48px}
.hero .btn-primary::after{display:none!important}
.hero-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 23px;border:1px solid #998a7f;border-radius:4px;color:var(--pv-grafite);background:rgba(255,255,255,.7);font:600 13px Montserrat,Arial,sans-serif;text-decoration:none;transition:background .2s}
.hero-secondary:hover{background:#fff}
.about,#sobre{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,5vw,78px);max-width:1330px;margin:0 auto;padding:95px clamp(24px,6vw,88px)!important;background:rgba(255,252,247,.91)!important}
#sobre>.about-img{display:block!important;position:relative!important;min-width:0;max-width:none!important}
#sobre>.about-img img{display:block!important;width:100%;height:auto!important;aspect-ratio:1.26;object-fit:cover!important;object-position:center;filter:none}
#sobre .about-content{max-width:none!important;min-width:0;text-align:left}
#sobre .about-content h3{font-size:clamp(30px,3vw,44px);line-height:1.2;color:var(--pv-grafite)}
#sobre .about-content p{color:var(--pv-muted);line-height:1.76}
#sobre .about-badge{display:none}
#sobre .about-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.about-feature{min-width:0}
.about-feature p{line-height:1.65}
.products,.extra-services{background:rgba(255,252,247,.84)!important}
.products{padding-top:86px!important;padding-bottom:92px!important}
.products .section-header{max-width:780px;margin:0 auto 38px}
.products .section-header h2{color:var(--pv-grafite)}
.products .section-header p{color:#586061}
.segment,.product-card{background:#fff}
.showroom{padding:90px max(5%,calc((100% - 1240px)/2));background:rgba(244,240,233,.91);color:var(--pv-grafite)}
.showroom-copy{max-width:720px;margin:0 auto 36px;text-align:center}
.showroom h2{font:500 clamp(30px,3.4vw,48px)/1.2 Montserrat,Arial,sans-serif;letter-spacing:-.032em;margin:0 0 18px}
.showroom h2 span{color:var(--pv-wine)}
.showroom p{font-size:15px;line-height:1.8;color:#565d5e}
.showroom-photos{display:grid;grid-template-columns:1.32fr 1fr 1fr;grid-auto-flow:row;grid-auto-rows:minmax(190px,245px);gap:14px}
.showroom-photos figure{position:relative;overflow:hidden;background:#d9d0c5;border-radius:12px;cursor:pointer;margin:0}
.showroom-photos figure:first-child{grid-row:span 2}
.showroom-photos img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.showroom-photos figure:hover img{transform:scale(1.045)}
.showroom-photos figcaption{position:absolute;inset:auto 0 0;color:white;padding:31px 17px 17px;font-size:13px;font-weight:600;background:linear-gradient(transparent,rgba(0,0,0,.65))}
.showroom-photos figure:focus-visible{outline:3px solid var(--pv-wine);outline-offset:4px}
.showroom-actions{text-align:center;margin:32px auto 0;display:flex;justify-content:center;gap:16px;align-items:center;flex-wrap:wrap}
.showroom-actions a:not(.btn-primary){color:#64202b;text-underline-offset:5px;font-weight:600}
.showroom #blogGrid{display:none!important}
.owners{background:rgba(255,252,247,.94)!important;color:var(--pv-grafite)!important}
.owners h2{color:var(--pv-grafite)!important}.owners p{color:var(--pv-muted)!important}
.contact-intro,.map-info,footer{background:rgba(255,252,247,.94)!important;color:var(--pv-grafite)!important}
.contact-intro h2,.map-info h4{color:var(--pv-grafite)!important}
.contact-intro p,.map-info p{color:var(--pv-muted)!important}
.pv-map-section{padding:40px 6% 85px;background:rgba(255,252,247,.94)}
.pv-map-inner{max-width:1160px;margin:auto;display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);gap:28px;align-items:center}
.pv-map-copy h2{font-size:clamp(24px,2.4vw,34px);font-weight:600;letter-spacing:-.025em;margin-bottom:10px}
.pv-map-copy p{line-height:1.7;color:#596061;margin-bottom:22px}
.pv-map-copy a{color:#8b2634;font-weight:600;text-underline-offset:5px}
#portalVidrosMap{display:block;width:100%;height:335px;border:0;border-radius:12px;background:#e8e3da;box-shadow:0 14px 34px #312d2712}
#contato{background:rgba(255,252,247,.94)}
#contato .map-info{gap:30px}
.footer-bottom{border-color:var(--pv-hairline)}
@media(max-width:1020px){#sobre,.about{gap:32px}#sobre .about-features{grid-template-columns:1fr 1fr}.showroom-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.showroom-photos figure:first-child{grid-row:span 2}}
@media(max-width:760px){
 body{background-size:620px 380px;background-attachment:scroll}
 nav,nav.scrolled{height:74px;padding:12px 5%}.nav-logo img{width:168px;max-width:168px}
 .mobile-menu{top:74px}
 .hero{margin-top:74px!important;min-height:0!important;padding:70px 6% 78px!important}
 .hero-brand{margin-bottom:22px}.hero-brand img{width:min(76vw,390px);max-height:125px}
 .hero h1{font-size:clamp(28px,7vw,38px)!important;max-width:18ch!important;letter-spacing:-.03em!important}
 .hero #heroText{font-size:15px!important;max-width:34ch!important}
 .hero .hero-buttons{flex-direction:column!important;width:100%;max-width:360px}
 .hero .hero-buttons a{width:100%;font-size:13px!important}
 #sobre,.about{grid-template-columns:1fr!important;padding:62px 6%!important;gap:26px!important}
 #sobre>.about-img img{aspect-ratio:1.3}
 #sobre .about-content h3{font-size:30px}
 #sobre .about-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .products{padding:65px 5%!important}
 .showroom{padding:66px 5%}
 .showroom-photos{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:170px;gap:10px}
 .showroom-photos figure:first-child{grid-column:span 2;grid-row:auto}
 .showroom-photos figcaption{font-size:12px}
 .pv-map-section{padding:32px 5% 64px}.pv-map-inner{grid-template-columns:1fr}#portalVidrosMap{height:285px}
}
@media(max-width:380px){#sobre .about-features{grid-template-columns:1fr}.showroom-photos{grid-auto-rows:150px}.showroom-actions{flex-direction:column}.hero{padding-top:52px!important}}
@media(prefers-reduced-motion:reduce){.showroom-photos img{transition:none!important}}


/* Portal Vidros • refinamento de rolagem e crédito FS Brasil | 22/10/2026 */
/* A rede de conexões acompanha a página inteira. As camadas anteriores estavam
   ocultando praticamente todo o padrão, especialmente entre as seções. */
:root{--pv-section-wash:rgba(255,252,247,.21);--pv-section-wash-soft:rgba(255,252,247,.13)}
html{background-color:var(--pv-areia)}
body{background-color:var(--pv-areia);background-attachment:fixed}
#sobre,.about,
.products,.extra-services,
.showroom,.owners,.contact-intro,
.pv-map-section,#contato,#contato .map-info,footer{
  background-color:var(--pv-section-wash)!important;
  background-image:none!important;
}
.showroom,.pv-map-section{background-color:var(--pv-section-wash-soft)!important}
#sobre,.about,.products,.showroom,.owners,.contact-intro,.pv-map-section,#contato,footer{position:relative}
#sobre .about-content,.showroom-copy,.products .section-header,.owners>div,.contact-intro>div,.pv-map-copy{position:relative;z-index:1}

/* Transições guiadas pela entrada no campo de visão; sem ocultar conteúdo caso
   scripts ou recursos externos falhem. Uma passagem por seção, sem repetição. */
.pv-scroll-pending{
  opacity:.88;
  transform:translate3d(0,20px,0);
  transition:transform .78s cubic-bezier(.16,1,.3,1),opacity .68s ease-out;
  transition-delay:var(--pv-enter-delay,0ms);
}
.pv-scroll-pending.pv-scroll-visible{opacity:1;transform:translate3d(0,0,0)}
.pv-photo-pending{
  opacity:.92;
  transform:translate3d(0,18px,0) scale(.989);
  clip-path:inset(0 0 6% 0 round 14px);
  transition:transform .85s cubic-bezier(.16,1,.3,1),opacity .78s ease-out,clip-path .85s cubic-bezier(.16,1,.3,1);
}
.pv-photo-pending.pv-scroll-visible{
  opacity:1;transform:translate3d(0,0,0) scale(1);
  clip-path:inset(0 0 0 0 round 14px);
}
.pv-scroll-pending:focus-within,.pv-photo-pending:focus-within{
  opacity:1;transform:none;clip-path:none;
}
/* Assinatura discreta: legível, proporcional e subordinada à marca da cliente. */
.footer-bottom .developer-credit{
  gap:4px!important;
  margin:16px auto 0!important;
  padding:0 10px 4px!important;
}
.footer-bottom .developer-credit img{
  display:block!important;
  width:clamp(92px,7.2vw,110px)!important;
  max-width:110px!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
}
.footer-bottom .developer-credit p:last-child{
  margin:0!important;
  font-size:11px!important;
  font-weight:400!important;
  line-height:1.5!important;
  opacity:.74!important;
  letter-spacing:0!important;
}
@media(max-width:760px){
 body{background-attachment:scroll}
 .footer-bottom .developer-credit img{width:94px!important;max-width:94px!important}
 .pv-scroll-pending{transform:translate3d(0,12px,0);transition-duration:.62s}
 .pv-photo-pending{transform:translate3d(0,12px,0) scale(.995);transition-duration:.64s}
}
@media(prefers-reduced-motion:reduce){
 .pv-scroll-pending,.pv-photo-pending{
  opacity:1!important;transform:none!important;clip-path:none!important;
  transition:none!important;
 }
}
