/* Calegari Representações — CSS consolidado
   Arquivo único do front-end. Admin mantém seu CSS próprio por segurança do CMS. */
.site-header{position:relative;z-index:40;width:100%;background:rgba(4,49,69,.16);border-bottom:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px)}
.site-header-inner{width:min(1180px,calc(100% - 40px));min-height:88px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.site-logo{display:inline-flex;align-items:center;flex:0 0 auto}.site-logo img{width:205px;height:auto;display:block}
.site-nav{display:flex;align-items:center;gap:24px;color:#fff;font-size:13px;font-weight:760}.site-nav>a{position:relative;opacity:.88;transition:.2s}.site-nav>a:hover{opacity:1}.site-nav>a:not(.site-client):not(.site-exit):after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;border-radius:99px;background:#fff;transition:.2s}.site-nav>a:not(.site-client):not(.site-exit):hover:after{right:0}
.site-client,.site-exit{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border-radius:14px!important;border:1px solid rgba(255,255,255,.38);background:rgba(255,255,255,.09);opacity:1!important}.site-client.active{background:#fff;color:#063d56;border-color:#fff}.site-exit{background:rgba(255,255,255,.92);color:#063d56;border-color:transparent}
.site-footer{background:linear-gradient(135deg,#052f40 0%,#063b4f 100%);color:#b8d0d8;padding:44px 24px 22px;border-top:1px solid rgba(255,255,255,.08)}.site-footer-inner{width:min(1180px,calc(100% - 8px));margin:0 auto}.site-footer-top{display:grid;grid-template-columns:minmax(280px,430px) 1fr;align-items:center;justify-content:space-between;gap:64px}.site-footer-brand img{width:185px;height:auto;display:block}.site-footer-text{font-size:13px;line-height:1.7;margin-top:14px;max-width:430px;color:#9dbbc5}.site-footer-links{display:flex;justify-content:flex-end;align-items:center;gap:12px 28px;flex-wrap:wrap;font-size:13px;font-weight:750;color:#e2f0f4}.site-footer-links a{padding:8px 0;transition:opacity .2s ease,color .2s ease}.site-footer-links a:hover{color:#fff;opacity:1}.site-footer-copy{border-top:1px solid rgba(255,255,255,.10);margin-top:32px;padding-top:18px;font-size:11px;line-height:1.5;color:#82a9b6;display:flex;align-items:center;justify-content:space-between;gap:20px}
@media(max-width:900px){.site-nav>a:not(.site-client):not(.site-exit){display:none}.site-header-inner{min-height:76px}.site-logo img{width:170px}.site-nav{gap:8px}}
@media(max-width:760px){.site-footer{padding:36px 20px 20px}.site-footer-top{grid-template-columns:1fr;gap:26px}.site-footer-links{justify-content:flex-start;gap:8px 22px}.site-footer-copy{flex-direction:column;align-items:flex-start;gap:7px;margin-top:26px}.site-footer-brand img{width:170px}}@media(max-width:600px){.site-header-inner{width:min(100% - 24px,1180px);min-height:70px}.site-logo img{width:148px}.site-client{display:none!important}.site-exit{min-height:38px;padding:0 12px;font-size:11px}.site-footer{padding:32px 16px 18px}.site-footer-inner{width:min(100% - 8px,1180px)}.site-footer-links{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:4px 18px}.site-footer-links a{padding:7px 0}.site-footer-text{font-size:12px}.site-footer-copy{font-size:10.5px}}

/* Home */

:root{
  --blue:#00578B;
  --blue-dark:#063D56;
  --blue-mid:#0D678E;
  --blue-light:#97BCC7;
  --blue-pale:#EAF3F6;
  --white:#fff;
  --text:#17313C;
  --muted:#687B83;
  --line:#D8E4E8;
  --shadow:0 24px 60px rgba(6,61,86,.14);
  --max:1180px;
}

.page-home *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-home{
  margin:0;
  font-family:Inter,Arial,sans-serif;
  color:var(--text);
  background:#fff;
  overflow-x:hidden;
}
.page-home a{text-decoration:none;color:inherit}
.page-home .container{width:min(var(--max),calc(100% - 42px));margin:auto}

.page-home .hero{
  height:100vh;
  min-height:560px;
  max-height:900px;
  position:relative;
  overflow:hidden;
  color:white;
  background:
    linear-gradient(180deg,rgba(3,43,61,.45),rgba(3,43,61,.68)),
    linear-gradient(110deg,#063D56 0%,#075B80 48%,#0D759F 100%);
}

/* Background visual amplo, no estilo da referência */
.page-home .hero-scene{
  position:absolute;
  inset:0;
  opacity:.46;
  pointer-events:none;
}
.page-home .hero-scene svg{width:100%;height:100%;display:block}

.page-home .hero:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;
  height:42px;
  background:#fff;
  clip-path:polygon(0 100%, 24% 62%, 50% 100%, 76% 70%, 100% 100%, 100% 100%, 0 100%);
}

.page-home header{
  position:absolute;
  top:0;left:0;right:0;
  z-index:20;
  background:transparent;
  border:0;
  transition:.3s ease;
}
.page-home .nav{
  min-height:88px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}
.page-home .logo-wrap{
  display:inline-flex;
  align-items:center;
  padding:0;
}
.page-home .logo-wrap img{
  width:205px;
  display:block;
}
.page-home nav{
  display:flex;
  align-items:center;
  gap:28px;
  color:#fff;
  font-size:14px;
  font-weight:700;
}
.page-home nav a{opacity:.84;transition:.2s}
.page-home nav a:hover{opacity:1}
.page-home .btn{
  display:inline-flex;
  min-height:40px;
  padding:0 16px;
  border-radius:14px;
  align-items:center;
  justify-content:center;
  font-weight:800;
  transition:.25s ease;
  border:1px solid transparent;
}
.page-home .btn-white{background:rgba(255,255,255,.92);color:var(--blue-dark)}
.page-home .btn-white:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,0,0,.15)}
.page-home .btn-ghost{border-color:rgba(255,255,255,.4);color:#fff;background:rgba(255,255,255,.08)}
.page-home .btn-ghost:hover{background:rgba(255,255,255,.16)}
.page-home .btn-blue{background:var(--blue);color:#fff}
.page-home .btn-blue:hover{background:var(--blue-dark);transform:translateY(-2px)}

.page-home .hero-content{
  position:relative;
  z-index:5;
  height:100vh;
  min-height:560px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:78px 20px 20px;
}
.page-home .hero-inner{max-width:900px}
.page-home .eyebrow{
  display:inline-block;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  border:1px solid rgba(255,255,255,.32);
  background:rgba(255,255,255,.08);
  padding:7px 12px;
  border-radius:999px;
  backdrop-filter:blur(6px);
}
.page-home .hero h1{
  margin:14px auto 10px;
  font-family:Montserrat,Arial,sans-serif;
  font-size:clamp(30px,3.8vw,50px);
  line-height:1.02;
  letter-spacing:-.05em;
  max-width:680px;
  text-shadow:0 12px 35px rgba(0,0,0,.16);
}
.page-home .hero h1 span{color:#C9E0E6}
.page-home .hero p{
  max-width:520px;
  margin:0 auto;
  color:#E2EEF2;
  font-size:14px;
  line-height:1.55;
}
.page-home .hero-actions{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:14px;
}
.page-home .hero-mini{
  margin-top:22px;
  display:flex;
  justify-content:center;
  gap:38px;
  flex-wrap:wrap;
  color:#D3E5EA;
  font-size:12px;
}
.page-home .hero-mini b{
  display:block;
  color:#fff;
  font-family:Montserrat;
  font-size:15px;
  margin-bottom:3px;
}

.page-home .scroll-cue{
  position:absolute;
  z-index:7;
  bottom:82px;
  left:50%;
  transform:translateX(-50%);
  width:28px;height:44px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:20px;
}
.page-home .scroll-cue:after{
  content:"";
  position:absolute;
  width:4px;height:8px;
  background:#fff;
  border-radius:4px;
  left:50%;top:8px;
  transform:translateX(-50%);
  animation:scrollDot 1.8s infinite;
}
@keyframes scrollDot{
  0%{opacity:0;transform:translate(-50%,0)}
  30%{opacity:1}
  100%{opacity:0;transform:translate(-50%,15px)}
}

.page-home section{padding:72px 0}
.page-home .section-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:40px;
  margin-bottom:30px;
}
.page-home .kicker{
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--blue);
}
.page-home h2,.page-home h3{font-family:Montserrat,Arial,sans-serif}
.page-home .section-head h2,.page-home .copy h2{
  margin:10px 0 0;
  font-size:clamp(28px,3.2vw,40px);
  line-height:1.08;
  letter-spacing:-.04em;
}
.page-home .section-head p{max-width:450px;color:var(--muted);line-height:1.75}

.page-home .intro{
  padding-top:78px;
}
.page-home .intro-grid{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:70px;
  align-items:center;
}
.page-home .intro-visual{
  min-height:520px;
  border-radius:30px;
  overflow:hidden;
  background:#EAF3F6;
  position:relative;
  box-shadow:var(--shadow);
}
.page-home .intro-visual img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.page-home .floating-card{
  position:absolute;
  left:28px;
  bottom:28px;
  background:rgba(255,255,255,.96);
  border-radius:22px;
  padding:18px 22px;
  box-shadow:0 18px 38px rgba(6,61,86,.16);
  max-width:370px;
}
.page-home .floating-card b{display:block;color:var(--blue);font-family:Montserrat}
.page-home .floating-card span{font-size:12px;color:var(--muted)}

.page-home .copy p{
  color:var(--muted);
  line-height:1.8;
  font-size:14px;
}
.page-home .points{display:grid;gap:13px;margin-top:26px}
.page-home .point{
  display:flex;
  gap:13px;
  align-items:center;
  padding:16px 18px;
  border-radius:18px;
  background:#DDE8ED;
}
.page-home .point i{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:none;
  border-radius:0;
}
.page-home .point i::before{
  content:"";
  width:28px;
  height:28px;
  display:block;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='%231AB45F'/%3E%3Cpath d='M6.8 12.3l3.1 3.2 7.4-7.5' fill='none' stroke='white' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.page-home .point i img{
  display:none;
}
.page-home .point b{display:block;font-size:14px;line-height:1.2}
.page-home .point span{display:block;margin-top:2px;color:var(--muted);font-size:12px;line-height:1.35}

.page-home .segments{background:#F5F8F9}
.page-home .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.page-home .card{
  background:white;
  border:1px solid var(--line);
  border-radius:22px;
  overflow:hidden;
  transition:.35s ease;
}
.page-home .card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:transparent}
.page-home .card-visual{height:150px;overflow:hidden}
.page-home .card-visual svg{width:100%;height:100%;transition:.45s ease}
.page-home .card:hover svg{transform:scale(1.055)}
.page-home .card-body{padding:23px}
.page-home .card-body h3{font-size:16px;margin:0 0 8px}
.page-home .card-body p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}

.page-home .client{
  background:linear-gradient(145deg,var(--blue-dark),var(--blue));
  color:#fff;
  position:relative;
  overflow:hidden;
}
.page-home .client:before{
  content:"";
  position:absolute;
  width:560px;height:560px;
  right:-190px;top:-270px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.1);
}
.page-home .client-grid{
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:65px;
  align-items:center;
  position:relative;
  z-index:2;
}
.page-home .client h2{
  font-size:clamp(28px,3.3vw,42px);
  margin:10px 0 18px;
  letter-spacing:-.04em;
}
.page-home .client p{color:#D5E6EB;line-height:1.8}
.page-home .client .kicker{color:#B8D5DD}
.page-home .portal{
  background:#fff;
  border-radius:26px;
  padding:22px;
  box-shadow:0 28px 70px rgba(0,0,0,.24);
  transform:rotate(2deg);
  transition:.35s;
}
.page-home .portal:hover{transform:rotate(0deg) translateY(-4px)}
.page-home .portal-top{height:46px;background:#EDF3F5;border-radius:13px;margin-bottom:15px}
.page-home .portal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.page-home .portal-card{height:110px;border-radius:14px;background:#DCECF1}
.page-home .portal-card:nth-child(2){background:#97BCC7}
.page-home .portal-card:nth-child(3){background:#00578B}
.page-home .portal-card:nth-child(4){background:#EAF3F6}

.page-home .contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:26px}
.page-home .contact-info,.page-home .form-card{
  border-radius:24px;
  border:1px solid var(--line);
  padding:32px;
}
.page-home .contact-info{
  background:linear-gradient(160deg,var(--blue-dark),var(--blue));
  color:white;
}
.page-home .contact-info p{color:#CEE1E6}
.page-home .contact-line{border-top:1px solid rgba(255,255,255,.14);padding:15px 0}
.page-home .contact-line b{display:block;font-size:11px;letter-spacing:.1em;color:#AFCED7}
.page-home .contact-line span{font-size:15px}
.page-home form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.page-home .field{display:flex;flex-direction:column;gap:6px}
.page-home .field.full{grid-column:1/-1}
.page-home label{font-size:11px;font-weight:800;color:#52656D}
.page-home input,.page-home textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:12px;
  background:#F8FAFB;
  padding:14px;
  font:inherit;
  outline:none;
}
.page-home input:focus,.page-home textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,87,139,.08)}
.page-home textarea{min-height:126px;resize:vertical}
.page-home form .btn{grid-column:1/-1}

.page-home footer{
  background:linear-gradient(115deg,#063D56,#075B80 58%,#0D759F);
  color:#C9DDE3;
  padding:36px 0 22px;
}
.page-home .footer-grid{display:flex;justify-content:space-between;gap:45px}
.page-home .footer-logo img{width:210px}
.page-home .footer-text{max-width:470px;font-size:13px;line-height:1.7;color:#A7C1CA;margin-top:14px}
.page-home .footer-links{display:flex;gap:25px;font-size:13px}
.page-home .copyr{margin-top:34px;padding-top:20px;border-top:1px solid rgba(255,255,255,.09);font-size:12px;color:#8BA9B4}

.page-home .whatsapp{
  position:fixed;right:22px;bottom:22px;
  width:60px;height:60px;border-radius:18px;
  background:#25D366;color:#fff;
  display:grid;place-items:center;
  font-size:28px;font-weight:900;
  box-shadow:0 16px 34px rgba(0,0,0,.2);
  z-index:90;
}

.page-home .reveal{opacity:0;transform:translateY(32px);transition:.8s cubic-bezier(.2,.65,.2,1)}
.page-home .reveal.show{opacity:1;transform:none}
.page-home .reveal-left{opacity:0;transform:translateX(-42px);transition:.8s cubic-bezier(.2,.65,.2,1)}
.page-home .reveal-right{opacity:0;transform:translateX(42px);transition:.8s cubic-bezier(.2,.65,.2,1)}
.page-home .reveal-left.show,.page-home .reveal-right.show{opacity:1;transform:none}

@media(max-width:920px){
  .page-home nav a:not(.btn){display:none}
  .page-home .hero,.page-home .hero-content{min-height:720px}
  .page-home .intro-grid,.page-home .client-grid,.page-home .contact-grid{grid-template-columns:1fr}
  .page-home .cards{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .page-home .container{width:min(var(--max),calc(100% - 26px))}
  .page-home .nav{min-height:82px}
  .page-home .logo-wrap img{width:160px}
  .page-home nav .btn{font-size:11px;min-height:42px;padding:0 13px}
  .page-home .hero h1{font-size:43px}
  .page-home .hero p{font-size:16px}
  .page-home .hero-mini{gap:18px}
  .page-home section{padding:70px 0}
  .page-home .section-head{flex-direction:column;align-items:start}
  .page-home .cards{grid-template-columns:1fr}
  .page-home .intro-visual{min-height:390px}
  .page-home form{grid-template-columns:1fr}
  .page-home .field.full,.page-home form .btn{grid-column:auto}
  .page-home .footer-grid{flex-direction:column}
  .page-home .footer-links{flex-wrap:wrap}
}

.page-home header .container.nav{
  border-bottom:1px solid rgba(255,255,255,.12);
}
.page-home header nav{
  gap:30px;
}
.page-home header nav > a:not(.btn){
  position:relative;
  padding:33px 0 29px;
}
.page-home header nav > a:not(.btn)::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:22px;
  height:2px;
  background:#97BCC7;
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .25s ease;
}
.page-home header nav > a:not(.btn):hover::after{
  transform:scaleX(1);
}


.page-home .hero-scene{
  opacity:.34;
}
.page-home .hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 72% 38%,rgba(151,188,199,.20),transparent 27%),
    radial-gradient(circle at 18% 68%,rgba(255,255,255,.08),transparent 24%),
    linear-gradient(90deg,rgba(3,43,61,.22),transparent 42%,rgba(13,117,159,.08));
}
.page-home .hero-content,.page-home header{
  position:relative;
  z-index:5;
}


/* PRIMEIRA DOBRA: tudo visível sem rolagem */
.page-home .hero-content{
  align-items:center;
  justify-content:center;
}
.page-home .hero-inner{
  max-height:calc(100vh - 105px);
}
@media (min-width:921px) and (max-height:800px){
  .page-home .nav{min-height:72px}
  .page-home .logo-wrap img{width:180px}
  .page-home .hero-content{padding:76px 20px 24px}
  .page-home .hero h1{font-size:clamp(32px,4vw,50px);margin:14px auto 10px}
  .page-home .hero p{font-size:14px;line-height:1.55}
  .page-home .eyebrow{font-size:9px;padding:6px 10px}
  .page-home .hero-actions{margin-top:16px}
  .page-home .hero-actions .btn{min-height:40px;padding:0 16px;font-size:13px}
}
@media (max-width:920px){
  .page-home .hero,.page-home .hero-content{height:100svh;min-height:560px}
}


/* Correção de enquadramento da primeira dobra */
.page-home .hero-inner{
  width:min(100%, 760px);
}
@media (min-width: 921px){
  .page-home .hero-content{
    align-items:flex-start;
  }
  .page-home .hero-inner{
    margin-top:90px;
  }
}
@media (min-width: 921px) and (max-height: 860px){
  .page-home .hero-inner{
    margin-top:70px;
  }
  .page-home .hero h1{
    font-size:clamp(28px,3.4vw,44px);
  }
  .page-home .hero p{
    font-size:13px;
  }
  .page-home .hero-actions .btn{
    min-height:38px;
    font-size:13px;
  }
}
@media (max-width: 920px){
  .page-home .hero-content{
    padding:88px 18px 18px;
  }
  .page-home .hero-inner{
    padding:20px 18px 20px;
  }
}


/* Área exclusiva do cliente centralizada */
.page-home .client{
  text-align:center;
}
.page-home .client-grid{
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:430px;
}
.page-home .client-grid > div{
  width:min(760px,100%);
  margin:0 auto;
}
.page-home .client .kicker{
  display:block;
  text-align:center;
}
.page-home .client h2{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.page-home .client p{
  max-width:620px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.page-home .client .btn{
  margin-left:auto;
  margin-right:auto;
}


/* Botões mais modernos */
.page-home .btn{
  position:relative;
  overflow:hidden;
  min-height:46px;
  padding:0 18px 0 20px;
  border-radius:14px;
  gap:12px;
  font-size:13px;
  letter-spacing:.01em;
  box-shadow:0 10px 24px rgba(4,45,64,.10);
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease;
}

.page-home .btn::after{
  content:"→";
  width:28px;
  height:28px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
  line-height:1;
  transition:transform .25s ease, background .25s ease;
}

.page-home .btn::before{
  content:"";
  position:absolute;
  top:-120%;
  left:-35%;
  width:28%;
  height:340%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.32),transparent);
  transform:rotate(18deg);
  transition:left .55s ease;
  pointer-events:none;
}

.page-home .btn:hover::before{
  left:115%;
}

.page-home .btn:hover{
  transform:translateY(-2px);
  box-shadow:0 15px 32px rgba(4,45,64,.18);
}

.page-home .btn:hover::after{
  transform:translateX(2px);
}

.page-home .btn-white{
  background:rgba(255,255,255,.96);
  color:var(--blue-dark);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 12px 28px rgba(0,0,0,.12);
}
.page-home .btn-white::after{
  background:var(--blue-pale);
  color:var(--blue);
}
.page-home .btn-white:hover{
  background:#fff;
}

.page-home .btn-ghost{
  background:rgba(255,255,255,.07);
  color:#fff;
  border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(8px);
  box-shadow:none;
}
.page-home .btn-ghost::after{
  background:rgba(255,255,255,.12);
  color:#fff;
}
.page-home .btn-ghost:hover{
  background:rgba(255,255,255,.13);
  border-color:rgba(255,255,255,.48);
}

.page-home .btn-blue{
  background:linear-gradient(135deg,#00578B,#0A6EA2);
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 12px 28px rgba(0,87,139,.22);
}
.page-home .btn-blue::after{
  background:rgba(255,255,255,.14);
  color:#fff;
}
.page-home .btn-blue:hover{
  background:linear-gradient(135deg,#064C71,#00578B);
}

/* Destaque elegante no botão da Área do Cliente */
.page-home .client .btn-white{
  min-height:50px;
  padding-left:22px;
  padding-right:14px;
  border-radius:16px;
  box-shadow:0 14px 34px rgba(0,0,0,.14);
}


/* Hero mais limpo, alto e centralizado */
.page-home .hero-content{
  align-items:flex-start !important;
  justify-content:center !important;
  padding-top:118px !important;
  padding-bottom:28px !important;
}

.page-home .hero-inner{
  width:min(100%, 760px);
  margin:0 auto !important;
  text-align:center;
}

.page-home .hero h1{
  margin-top:0 !important;
}

@media (min-width:921px) and (max-height:860px){
  .page-home .hero-content{
    padding-top:96px !important;
  }
}

@media (max-width:920px){
  .page-home .hero-content{
    align-items:flex-start !important;
    padding-top:105px !important;
  }
}


/* Fundo do hero adaptado para artigos de festa */
.page-home .hero-scene{
  opacity:.92;
}
.page-home .hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 42%, rgba(6,61,86,.10), transparent 26%),
    linear-gradient(180deg, rgba(2,27,40,.10), rgba(2,27,40,.22));
}
.page-home .hero-content,.page-home header{
  position:relative;
  z-index:5;
}


/* Nova seção Quem Somos */
.page-home .quem-somos{
  background:#F7FAFB;
  padding:88px 0;
}
.page-home .quem-somos-grid{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:70px;
  align-items:center;
}
.page-home .quem-somos-copy h2{
  margin:10px 0 20px;
  font-size:clamp(30px,3.5vw,46px);
  line-height:1.08;
  letter-spacing:-.04em;
  font-family:Montserrat,Arial,sans-serif;
  color:var(--text);
}
.page-home .quem-somos-copy p{
  max-width:680px;
  margin:0 0 14px;
  color:var(--muted);
  font-size:15px;
  line-height:1.75;
}
.page-home .quem-somos-destaques{
  display:grid;
  gap:12px;
  margin-top:28px;
}
.page-home .qs-item{
  display:flex;
  align-items:center;
  gap:15px;
  padding:14px 16px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:0 8px 24px rgba(6,61,86,.05);
}
.page-home .qs-number{
  width:42px;
  height:42px;
  border-radius:12px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  background:var(--blue);
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
}
.page-home .qs-item b{
  display:block;
  font-size:14px;
  color:var(--text);
}
.page-home .qs-item small{
  display:block;
  margin-top:2px;
  font-size:12px;
  color:var(--muted);
}
.page-home .quem-somos-visual{
  min-height:430px;
  border-radius:28px;
  overflow:hidden;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  padding:40px;
  color:#fff;
  background:
    radial-gradient(circle at 78% 22%,rgba(151,188,199,.22),transparent 28%),
    linear-gradient(145deg,#063D56,#00578B 58%,#0D759F);
  box-shadow:var(--shadow);
}
.page-home .quem-somos-visual:before,.page-home .quem-somos-visual:after{
  content:"";
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.10);
}
.page-home .quem-somos-visual:before{
  width:320px;height:320px;
  right:-110px;top:-120px;
}
.page-home .quem-somos-visual:after{
  width:240px;height:240px;
  left:-90px;bottom:-100px;
}
.page-home .qs-logo-mark{
  width:110px;
  height:110px;
  border-radius:28px;
  display:grid;
  place-items:center;
  flex:0 0 110px;
  background:rgba(255,255,255,.95);
  color:var(--blue);
  font:800 34px Montserrat,Arial,sans-serif;
  box-shadow:0 18px 44px rgba(0,0,0,.15);
  position:relative;
  z-index:2;
}
.page-home .qs-visual-copy{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  line-height:1.05;
}
.page-home .qs-visual-copy strong{
  font:800 32px Montserrat,Arial,sans-serif;
}
.page-home .qs-visual-copy span{
  margin-top:5px;
  font-size:16px;
  color:#D8EAF0;
}
.page-home .qs-visual-copy small{
  margin-top:18px;
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#AFCED7;
}

@media(max-width:920px){
  .page-home .quem-somos-grid{
    grid-template-columns:1fr;
    gap:34px;
  }
  .page-home .quem-somos-visual{
    min-height:320px;
  }
}
@media(max-width:620px){
  .page-home .quem-somos{
    padding:68px 0;
  }
  .page-home .quem-somos-copy h2{
    font-size:32px;
  }
  .page-home .quem-somos-visual{
    min-height:280px;
    padding:28px;
  }
  .page-home .qs-logo-mark{
    width:86px;height:86px;flex-basis:86px;font-size:28px;
  }
  .page-home .qs-visual-copy strong{
    font-size:24px;
  }
}


/* Seção tipos de produtos */
.page-home .produtos{
  background:#F5F8F9;
  padding:84px 0;
}
.page-home .produtos-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.page-home .produto-card{
  background:#A7C3CE;
  border:1px solid rgba(0,87,139,.08);
  border-radius:32px;
  padding:24px 24px 26px;
  text-align:center;
  box-shadow:0 10px 30px rgba(6,61,86,.06);
  transition:transform .28s ease, box-shadow .28s ease;
}
.page-home .produto-card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 34px rgba(6,61,86,.12);
}
.page-home .produto-card h3{
  margin:18px 0 0;
  font-family:Montserrat,Arial,sans-serif;
  font-size:clamp(20px,2vw,28px);
  line-height:1.1;
  letter-spacing:-.02em;
  color:#fff;
}
.page-home .produto-visual{
  height:225px;
  border-radius:24px;
  overflow:hidden;
  position:relative;
  background:#D7E7ED;
}

/* Embalagens */
.page-home .produto-visual.embalagem{background:#F5D800;}
.page-home .embalagem .shape{
  position:absolute;
  bottom:30px;
  background:#CDAA70;
  border-radius:8px;
}
.page-home .embalagem .bag{
  left:138px;width:80px;height:88px;background:#CEB07A;border-radius:8px 8px 14px 14px;
}
.page-home .embalagem .bag:before{
  content:"";position:absolute;left:22px;top:-26px;width:34px;height:28px;border:4px solid #D7BE90;border-bottom:none;border-radius:18px 18px 0 0;
}
.page-home .embalagem .box{left:58px;width:120px;height:58px;background:#DCC296;box-shadow:72px -10px 0 0 #D9BE8F, 165px 0 0 0 #B88F58;}
.page-home .embalagem .cup{right:48px;width:44px;height:68px;background:#D1B487;border-radius:0 0 12px 12px;box-shadow:-66px 6px 0 0 #D6BB90,-112px -6px 0 0 #E1C79E;}

/* Artigos de Festa */
.page-home .produto-visual.festa{
  background:linear-gradient(135deg,#514481,#74CAD2 55%,#BDE4E8);
}
.page-home .festa .balloon{
  position:absolute;border-radius:50%;
  opacity:.95;
}
.page-home .festa .b1{width:90px;height:110px;left:36px;top:48px;background:#9157D8;}
.page-home .festa .b2{width:108px;height:126px;left:132px;top:30px;background:#5AD5DA;}
.page-home .festa .b3{width:98px;height:118px;right:56px;top:54px;background:#D15ACC;}
.page-home .festa .hat{
  position:absolute;left:180px;top:56px;width:0;height:0;
  border-left:26px solid transparent;border-right:26px solid transparent;border-bottom:54px solid #F6A4D7;
}

/* Doces */
.page-home .produto-visual.doces{
  background:linear-gradient(180deg,#8FB0BC,#6EA1B1);
}
.page-home .doces .sweet{
  position:absolute;border-radius:14px;box-shadow:0 10px 18px rgba(0,0,0,.08);
}
.page-home .doces .chocolate{left:54px;top:82px;width:92px;height:68px;background:#4C2D17;transform:rotate(-8deg);}
.page-home .doces .candy{left:160px;top:92px;width:94px;height:60px;background:#D7264A;transform:rotate(4deg);}
.page-home .doces .pack{right:52px;top:78px;width:92px;height:72px;background:#E53969;transform:rotate(-5deg);}

/* Descartáveis */
.page-home .produto-visual.descartaveis{
  background:linear-gradient(145deg,#B99D8B,#DAC7BA);
}
.page-home .descartaveis .tray{
  position:absolute;left:42px;top:54px;width:280px;height:128px;background:#F5EDE7;border-radius:26px;box-shadow:0 10px 18px rgba(0,0,0,.08);
}
.page-home .descartaveis .lid{
  position:absolute;left:34px;top:34px;width:296px;height:46px;background:rgba(255,255,255,.35);border-radius:20px;
}
.page-home .descartaveis .compartment{
  position:absolute;left:66px;top:82px;width:230px;height:72px;border:3px solid #D7C0B1;border-radius:18px;
}
.page-home .descartaveis .compartment:before,.page-home .descartaveis .compartment:after{
  content:"";position:absolute;top:0;bottom:0;width:3px;background:#D7C0B1;
}
.page-home .descartaveis .compartment:before{left:72px}
.page-home .descartaveis .compartment:after{left:152px}

/* Brinquedos */
.page-home .produto-visual.brinquedos{
  background:linear-gradient(180deg,#7D64D6,#2C78E2);
}
.page-home .brinquedos .popit-row{
  position:absolute;left:38px;right:38px;height:44px;border-radius:14px;
}
.page-home .brinquedos .r1{top:56px;background:#8E63E6}
.page-home .brinquedos .r2{top:100px;background:#20C8C0}
.page-home .brinquedos .r3{top:144px;background:#F1C334}
.page-home .brinquedos .popit-row:before{
  content:"";position:absolute;inset:7px 10px;background:
  radial-gradient(circle,#5AA4D5 0 11px, transparent 12px) 0 0/46px 30px repeat-x;
}

/* Papelaria */
.page-home .produto-visual.papelaria{background:linear-gradient(180deg,#CFE0E8,#DDEBF0);}
.page-home .papelaria .shelf{position:absolute;left:0;right:0;bottom:42px;height:10px;background:#C7D6DE}
.page-home .papelaria .book{
  position:absolute;bottom:52px;width:30px;border-radius:5px 5px 0 0;
}
.page-home .papelaria .b1{left:70px;height:96px;background:#2680C8}
.page-home .papelaria .b2{left:108px;height:116px;background:#D75158}
.page-home .papelaria .b3{left:146px;height:84px;background:#7BB25E}
.page-home .papelaria .pencil{
  position:absolute;right:60px;top:84px;width:110px;height:12px;background:#E1B34E;border-radius:8px;transform:rotate(-25deg);
}
.page-home .papelaria .pencil:after{content:"";position:absolute;right:-12px;top:0;border-left:14px solid #C96F47;border-top:6px solid transparent;border-bottom:6px solid transparent;}

/* Confeitaria */
.page-home .produto-visual.confeitaria{background:linear-gradient(180deg,#EFE3D6,#D3BBA6);}
.page-home .confeitaria .cake-base{
  position:absolute;left:102px;top:62px;width:150px;height:106px;background:#E9C8D4;border-radius:18px 18px 26px 26px;
}
.page-home .confeitaria .cake-top{
  position:absolute;left:96px;top:52px;width:162px;height:18px;background:#F7DDE5;border-radius:18px;
}
.page-home .confeitaria .drip{
  position:absolute;left:102px;top:62px;width:150px;height:40px;background:#4B232A;
  clip-path:polygon(0 0,100% 0,100% 42%,91% 40%,87% 68%,81% 38%,72% 76%,63% 42%,55% 72%,46% 36%,36% 70%,28% 42%,18% 64%,10% 38%,0 46%);
  border-radius:14px 14px 0 0;
}

/* Panificação */
.page-home .produto-visual.panificacao{background:linear-gradient(180deg,#1E1A18,#6E4A2A);}
.page-home .panificacao .bread{
  position:absolute;background:#F3E3B3;border-radius:50%;
  box-shadow:0 10px 22px rgba(0,0,0,.14);
}
.page-home .panificacao .bread1{left:58px;top:124px;width:96px;height:56px;}
.page-home .panificacao .bread2{left:146px;top:106px;width:104px;height:64px;}
.page-home .panificacao .bread3{left:238px;top:126px;width:90px;height:54px;}
.page-home .panificacao .flour{
  position:absolute;left:172px;top:42px;width:54px;height:76px;background:radial-gradient(circle at 50% 10%, rgba(255,255,255,.95) 0 2px, transparent 3px) 0 0/10px 10px repeat-y;
  transform:rotate(12deg);opacity:.9;
}

/* Decoração */
.page-home .produto-visual.decoracao{
  background:linear-gradient(180deg,#F0D6E9,#DAB6E2);
}
.page-home .decoracao .arch{
  position:absolute;border-radius:150px 150px 0 0;border:14px solid #F9F4F8;border-bottom:none;
}
.page-home .decoracao .a1{left:122px;top:48px;width:122px;height:118px;}
.page-home .decoracao .a2{left:142px;top:68px;width:82px;height:78px;}
.page-home .decoracao .table{
  position:absolute;left:120px;bottom:42px;width:126px;height:16px;background:#fff;border-radius:20px;
  box-shadow:0 -36px 0 14px #fff;
}
.page-home .decoracao .mini-balloon{
  position:absolute;width:26px;height:26px;border-radius:50%;
}
.page-home .decoracao .m1{left:84px;top:66px;background:#EAB4D6}
.page-home .decoracao .m2{right:78px;top:76px;background:#D7D5F4}
.page-home .decoracao .m3{right:106px;top:104px;background:#BAC7EC}

@media(max-width:980px){
  .page-home .produtos-grid{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:620px){
  .page-home .produtos{
    padding:68px 0;
  }
  .page-home .produtos-grid{
    grid-template-columns:1fr;
  }
  .page-home .produto-card{
    padding:18px 18px 20px;
    border-radius:24px;
  }
  .page-home .produto-visual{
    height:190px;
    border-radius:18px;
  }
  .page-home .produto-card h3{
    font-size:22px;
  }
}


/* Ajuste da seção unificada Quem Somos */
.page-home .intro .copy h2{
  max-width:760px;
}
.page-home .intro .copy p{
  max-width:690px;
}


/* Modal de contato + WhatsApp */
body.page-home.wa-modal-open{
  overflow:hidden;
}
.page-home .wa-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px;
  opacity:0;
  visibility:hidden;
  transition:opacity .24s ease, visibility .24s ease;
}
.page-home .wa-modal.open{
  opacity:1;
  visibility:visible;
}
.page-home .wa-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(3,32,46,.66);
  backdrop-filter:blur(9px);
}
.page-home .wa-modal-card{
  position:relative;
  z-index:2;
  width:min(680px,100%);
  max-height:calc(100vh - 44px);
  overflow:auto;
  background:#fff;
  border:1px solid rgba(0,87,139,.10);
  border-radius:26px;
  padding:30px;
  box-shadow:0 28px 90px rgba(2,33,47,.30);
  transform:translateY(18px) scale(.985);
  transition:transform .28s cubic-bezier(.2,.7,.2,1);
}
.page-home .wa-modal.open .wa-modal-card{
  transform:none;
}
.page-home .wa-modal-close{
  position:absolute;
  top:16px;
  right:16px;
  width:38px;
  height:38px;
  border:0;
  border-radius:12px;
  background:#EEF5F7;
  color:var(--blue-dark);
  font-size:25px;
  line-height:1;
  cursor:pointer;
  transition:.2s ease;
}
.page-home .wa-modal-close:hover{
  background:#DCEBF0;
  transform:rotate(4deg);
}
.page-home .wa-modal-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:15px;
  background:linear-gradient(135deg,#00578B,#0A77A8);
  color:#fff;
  font-weight:900;
  font-size:22px;
  box-shadow:0 12px 28px rgba(0,87,139,.20);
  margin-bottom:17px;
}
.page-home .wa-modal-kicker{
  display:block;
  color:var(--blue);
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.page-home .wa-modal-card h2{
  margin:7px 46px 8px 0;
  font:800 clamp(26px,4vw,38px)/1.08 Montserrat,Arial,sans-serif;
  letter-spacing:-.035em;
  color:var(--text);
}
.page-home .wa-modal-intro{
  margin:0 0 22px;
  max-width:560px;
  color:var(--muted);
  font-size:14px;
  line-height:1.6;
}
.page-home #waQuickForm{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px;
}
.page-home .wa-field{
  display:flex;
  flex-direction:column;
  gap:7px;
}
.page-home .wa-field.wa-full{
  grid-column:1/-1;
}
.page-home .wa-field label{
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  color:#52666E;
}
.page-home .wa-field input,.page-home .wa-field select,.page-home .wa-field textarea{
  width:100%;
  min-height:46px;
  border:1px solid #D8E4E8;
  border-radius:12px;
  background:#F8FAFB;
  padding:12px 13px;
  color:var(--text);
  font:inherit;
  outline:none;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.page-home .wa-field textarea{
  min-height:96px;
  resize:vertical;
}
.page-home .wa-field input:focus,.page-home .wa-field select:focus,.page-home .wa-field textarea:focus{
  background:#fff;
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(0,87,139,.09);
}
.page-home .wa-submit{
  grid-column:1/-1;
  min-height:52px;
  border:0;
  border-radius:15px;
  padding:0 14px 0 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:linear-gradient(135deg,#00578B,#0A73A6);
  color:#fff;
  font:800 14px Inter,Arial,sans-serif;
  cursor:pointer;
  box-shadow:0 13px 30px rgba(0,87,139,.22);
  transition:transform .22s ease, box-shadow .22s ease;
}
.page-home .wa-submit:hover{
  transform:translateY(-2px);
  box-shadow:0 17px 34px rgba(0,87,139,.28);
}
.page-home .wa-submit-arrow{
  width:32px;
  height:32px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.16);
  font-size:18px;
}
.page-home .wa-privacy{
  grid-column:1/-1;
  text-align:center;
  color:#819198;
  font-size:10px;
  line-height:1.4;
}
@media(max-width:620px){
  .page-home .wa-modal{
    padding:12px;
  }
  .page-home .wa-modal-card{
    padding:24px 18px 20px;
    border-radius:20px;
  }
  .page-home #waQuickForm{
    grid-template-columns:1fr;
  }
  .page-home .wa-field.wa-full,.page-home .wa-submit,.page-home .wa-privacy{
    grid-column:auto;
  }
}


/* Seção de processos / atendimento */
.page-home .processos{
  background:#F5F8F9;
  padding:84px 0;
}
.page-home .processos-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px 18px;
  margin-top:10px;
}
.page-home .processo-card{
  position:relative;
  padding:54px 22px 24px;
  text-align:center;
  border-radius:26px;
  background:#A7C3CE;
  border:1px solid rgba(0,87,139,.08);
  box-shadow:0 10px 28px rgba(6,61,86,.06);
  transition:transform .28s ease, box-shadow .28s ease;
}
.page-home .processo-card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 36px rgba(6,61,86,.12);
}
.page-home .processo-icon{
  position:absolute;
  left:50%;
  top:-30px;
  transform:translateX(-50%);
  width:88px;
  height:88px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#0C6C84,#0A748C);
  color:#fff;
  font-size:38px;
  box-shadow:0 14px 28px rgba(6,61,86,.16);
}
.page-home .processo-card h3{
  margin:26px 0 10px;
  font-family:Montserrat,Arial,sans-serif;
  font-size:clamp(18px,2vw,22px);
  line-height:1.1;
  color:#071C73;
  letter-spacing:-.02em;
}
.page-home .processo-card p{
  margin:0 auto;
  max-width:240px;
  color:#40598A;
  font-size:14px;
  line-height:1.45;
}
@media(max-width:1100px){
  .page-home .processos-grid{
    grid-template-columns:repeat(3,1fr);
  }
}
@media(max-width:860px){
  .page-home .processos-grid{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:620px){
  .page-home .processos{
    padding:68px 0;
  }
  .page-home .processos-grid{
    grid-template-columns:1fr;
    gap:42px;
  }
  .page-home .processo-card{
    padding:50px 18px 22px;
    border-radius:22px;
  }
  .page-home .processo-icon{
    width:78px;
    height:78px;
    top:-24px;
    font-size:32px;
  }
}


/* Header compacto no topo e maior ao rolar */
.page-home header{
  position:fixed !important;
  top:0 !important;
  left:0;
  right:0;
  z-index:200;
  transform:translateY(0);
  background:rgba(6,61,86,.10) !important;
  backdrop-filter:blur(8px);
  transition:
    background .28s ease,
    box-shadow .28s ease,
    backdrop-filter .28s ease;
}

.page-home header .container.nav{
  min-height:64px !important;
  border-bottom:1px solid rgba(255,255,255,.08);
  transition:min-height .28s ease, border-color .28s ease;
}

.page-home header .logo-wrap img{
  width:165px !important;
  transition:width .28s ease, transform .28s ease;
}

.page-home header nav{
  gap:22px !important;
  transition:gap .28s ease;
}

.page-home header nav > a:not(.btn){
  padding:21px 0 19px !important;
  font-size:12px;
  transition:font-size .28s ease, padding .28s ease, opacity .2s ease;
}

.page-home header .btn{
  min-height:38px !important;
  padding:0 13px 0 15px !important;
  font-size:11px !important;
  border-radius:12px !important;
  transition:min-height .28s ease, padding .28s ease, font-size .28s ease, transform .22s ease;
}

/* Ao descer a página, o header ganha presença */
.page-home header.scrolled{
  background:rgba(6,61,86,.96) !important;
  backdrop-filter:blur(14px);
  box-shadow:0 12px 34px rgba(3,37,52,.18);
}

.page-home header.scrolled .container.nav{
  min-height:82px !important;
  border-bottom-color:rgba(255,255,255,.12);
}

.page-home header.scrolled .logo-wrap img{
  width:195px !important;
}

.page-home header.scrolled nav{
  gap:28px !important;
}

.page-home header.scrolled nav > a:not(.btn){
  padding:30px 0 26px !important;
  font-size:13px;
}

.page-home header.scrolled .btn{
  min-height:44px !important;
  padding:0 16px 0 18px !important;
  font-size:12px !important;
}

/* Mantém o conteúdo da primeira tela bem posicionado com o header menor */
.page-home .hero-content{
  padding-top:84px !important;
}

@media(max-width:920px){
  .page-home header .container.nav{
    min-height:58px !important;
  }
  .page-home header .logo-wrap img{
    width:145px !important;
  }
  .page-home header.scrolled .container.nav{
    min-height:70px !important;
  }
  .page-home header.scrolled .logo-wrap img{
    width:165px !important;
  }
  .page-home .hero-content{
    padding-top:76px !important;
  }
}


/* Logo integrada ao fundo do header e footer */
.page-home .logo-wrap,.page-home .footer-logo{
  background:transparent !important;
  box-shadow:none !important;
}

.page-home .logo-wrap img,.page-home .footer-logo img{
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  mix-blend-mode:normal;
  object-fit:contain;
}

/* Header: logo branca diretamente sobre o fundo */
.page-home header .logo-wrap{
  padding:0 !important;
}

/* Footer: mesma lógica — sem bloco azul atrás da marca */
.page-home footer .footer-logo{
  padding:0 !important;
}


/* Header mais alto */
.page-home header .container.nav{
  min-height:78px !important;
}

.page-home header .logo-wrap img{
  width:185px !important;
}

/* Ao rolar, aumenta um pouco mais */
.page-home header.scrolled .container.nav{
  min-height:96px !important;
}

.page-home header.scrolled .logo-wrap img{
  width:210px !important;
}

/* Ajuste do hero para compensar o header mais alto */
.page-home .hero-content{
  padding-top:98px !important;
}

@media(max-width:920px){
  .page-home header .container.nav{
    min-height:68px !important;
  }

  .page-home header .logo-wrap img{
    width:160px !important;
  }

  .page-home header.scrolled .container.nav{
    min-height:82px !important;
  }

  .page-home header.scrolled .logo-wrap img{
    width:180px !important;
  }

  .page-home .hero-content{
    padding-top:88px !important;
  }
}


/* Header bem mais alto */
.page-home header .container.nav{
  min-height:96px !important;
}

.page-home header .logo-wrap img{
  width:210px !important;
}

.page-home header nav{
  gap:28px !important;
}

.page-home header nav > a:not(.btn){
  padding:30px 0 26px !important;
  font-size:13px !important;
}

.page-home header .btn{
  min-height:46px !important;
  padding:0 16px 0 18px !important;
  font-size:12px !important;
  border-radius:14px !important;
}

/* Ao rolar, aumenta ainda mais */
.page-home header.scrolled .container.nav{
  min-height:122px !important;
}

.page-home header.scrolled .logo-wrap img{
  width:245px !important;
}

.page-home header.scrolled nav{
  gap:34px !important;
}

.page-home header.scrolled nav > a:not(.btn){
  padding:42px 0 36px !important;
  font-size:14px !important;
}

.page-home header.scrolled .btn{
  min-height:52px !important;
  padding:0 18px 0 20px !important;
  font-size:13px !important;
}

/* Ajuste do hero para compensar o header mais alto */
.page-home .hero-content{
  padding-top:118px !important;
}

@media(max-width:920px){
  .page-home header .container.nav{
    min-height:80px !important;
  }

  .page-home header .logo-wrap img{
    width:175px !important;
  }

  .page-home header nav > a:not(.btn){
    padding:24px 0 20px !important;
    font-size:12px !important;
  }

  .page-home header .btn{
    min-height:42px !important;
    font-size:11px !important;
  }

  .page-home header.scrolled .container.nav{
    min-height:98px !important;
  }

  .page-home header.scrolled .logo-wrap img{
    width:200px !important;
  }

  .page-home header.scrolled nav > a:not(.btn){
    padding:32px 0 28px !important;
    font-size:13px !important;
  }

  .page-home header.scrolled .btn{
    min-height:46px !important;
    font-size:12px !important;
  }

  .page-home .hero-content{
    padding-top:102px !important;
  }
}


/* Canais clicáveis na seção de contato */
.page-home .contact-info .contact-line span a{
  color:#fff;
  text-decoration:none;
}
.page-home .contact-info .contact-line span a:hover{
  text-decoration:underline;
}
.page-home .contact-socials{
  display:grid;
  gap:12px;
  margin-top:24px;
}
.page-home .contact-social{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  text-decoration:none;
  transition:transform .22s ease, background .22s ease, border-color .22s ease;
}
.page-home .contact-social:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.18);
}
.page-home .contact-social-icon{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.12);
  color:#fff;
  flex:0 0 42px;
}
.page-home .contact-social-icon svg{
  width:22px;
  height:22px;
  display:block;
}
.page-home .contact-social span:last-child{
  font-weight:700;
  letter-spacing:.01em;
}


/* Botão flutuante do WhatsApp com ícone e animação pulsante */
.page-home .whatsapp{
  position:fixed;
  right:20px;
  bottom:20px;
  width:62px;
  height:62px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#25D366,#1FC75B);
  color:#fff;
  text-decoration:none;
  z-index:220;
  box-shadow:0 16px 36px rgba(37,211,102,.32);
  animation:whatsPulse 1.8s ease-in-out infinite;
  transition:transform .25s ease, box-shadow .25s ease;
}
.page-home .whatsapp::before{
  content:"";
  position:absolute;
  inset:-8px;
  border-radius:24px;
  border:2px solid rgba(37,211,102,.34);
  animation:whatsRing 1.8s ease-out infinite;
}
.page-home .whatsapp svg{
  width:30px;
  height:30px;
  display:block;
}
.page-home .whatsapp:hover{
  transform:translateY(-3px) scale(1.04);
  box-shadow:0 20px 42px rgba(37,211,102,.38);
}
@keyframes whatsPulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.08)}
}
@keyframes whatsRing{
  0%{transform:scale(.9);opacity:.75}
  70%{transform:scale(1.22);opacity:0}
  100%{transform:scale(1.22);opacity:0}
}
@media(max-width:620px){
  .page-home .whatsapp{
    right:14px;
    bottom:14px;
    width:56px;
    height:56px;
    border-radius:16px;
  }
  .page-home .whatsapp svg{
    width:28px;
    height:28px;
  }
}


/* Seção tipos de produtos com imagens reais */
.page-home .produtos{
  background:#F5F8F9;
  padding:84px 0;
}
.page-home .produtos-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.page-home .produto-card{
  background:#A7C3CE;
  border:1px solid rgba(0,87,139,.08);
  border-radius:32px;
  padding:18px 18px 24px;
  text-align:center;
  box-shadow:0 10px 30px rgba(6,61,86,.06);
  transition:transform .28s ease, box-shadow .28s ease;
}
.page-home .produto-card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 34px rgba(6,61,86,.12);
}
.page-home .produto-foto{
  border-radius:24px;
  overflow:hidden;
  background:#fff;
}
.page-home .produto-foto img{
  width:100%;
  display:block;
  height:auto;
}
.page-home .produto-card h3{
  margin:16px 0 0;
  font-family:Montserrat,Arial,sans-serif;
  font-size:clamp(18px,1.8vw,24px);
  line-height:1.1;
  letter-spacing:-.02em;
  color:#fff;
}
@media(max-width:980px){
  .page-home .produtos-grid{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:620px){
  .page-home .produtos{
    padding:68px 0;
  }
  .page-home .produtos-grid{
    grid-template-columns:1fr;
  }
  .page-home .produto-card{
    padding:14px 14px 18px;
    border-radius:24px;
  }
  .page-home .produto-foto{
    border-radius:18px;
  }
  .page-home .produto-card h3{
    font-size:22px;
  }
}


/* Botão do WhatsApp usando o símbolo enviado */
.page-home .whatsapp{
  position:fixed;
  right:20px;
  bottom:20px;
  width:64px;
  height:64px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent !important;
  text-decoration:none;
  z-index:220;
  animation:whatsPulse 1.8s ease-in-out infinite;
  transition:transform .25s ease, filter .25s ease;
  box-shadow:none !important;
}
.page-home .whatsapp::before{
  content:"";
  position:absolute;
  inset:-8px;
  border-radius:24px;
  border:2px solid rgba(37,211,102,.28);
  animation:whatsRing 1.8s ease-out infinite;
}
.page-home .whatsapp img{
  width:64px;
  height:64px;
  display:block;
  border-radius:16px;
}
.page-home .whatsapp:hover{
  transform:translateY(-3px) scale(1.04);
  filter:brightness(1.04);
}
@media(max-width:620px){
  .page-home .whatsapp{
    right:14px;
    bottom:14px;
    width:58px;
    height:58px;
  }
  .page-home .whatsapp img{
    width:58px;
    height:58px;
  }
}


/* Correção: os títulos já fazem parte das imagens, então não duplicar */
.page-home .produto-card{
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.page-home .produto-card h3{
  
}
.page-home .produto-foto{
  border-radius:0 !important;
  overflow:visible !important;
  background:transparent !important;
}
.page-home .produto-foto img{
  width:100%;
  height:auto;
  display:block;
}
.page-home .produto-card:hover{
  transform:translateY(-5px);
  box-shadow:none !important;
}


/* Produtos — versão mais profissional */
.page-home .produtos{
  background:#F6F9FA;
  padding:88px 0;
}
.page-home .produtos-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
  align-items:stretch;
}
.page-home .produto-card{
  background:#A8C5D0;
  border:1px solid rgba(0,87,139,.08);
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 16px 38px rgba(6,61,86,.07);
  transition:transform .28s ease, box-shadow .28s ease;
}
.page-home .produto-card:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 48px rgba(6,61,86,.14);
}
.page-home .produto-foto{
  padding:18px 18px 0;
}
.page-home .produto-foto img{
  width:100%;
  aspect-ratio: 16 / 10;
  object-fit:cover;
  display:block;
  border-radius:22px;
  background:#fff;
}
.page-home .produto-content{
  padding:18px 18px 22px;
  text-align:center;
}
.page-home .produto-content h3{
  margin:0;
  color:#fff;
  font-family:Montserrat,Arial,sans-serif;
  font-weight:800;
  font-size:clamp(20px,1.9vw,29px);
  line-height:1.08;
  letter-spacing:-.02em;
}
@media (max-width: 980px){
  .page-home .produtos-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px){
  .page-home .produtos{
    padding:68px 0;
  }
  .page-home .produtos-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .page-home .produto-card{
    border-radius:22px;
  }
  .page-home .produto-foto{
    padding:14px 14px 0;
  }
  .page-home .produto-foto img{
    border-radius:16px;
  }
  .page-home .produto-content{
    padding:14px 14px 18px;
  }
  .page-home .produto-content h3{
    font-size:22px;
  }
}


/* Produtos — bordas padronizadas + nomes visíveis */
.page-home .produtos{
  background:#F6F9FA;
  padding:88px 0;
}
.page-home .produtos-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
  align-items:stretch;
}
.page-home .produto-card{
  background:#A8C5D0 !important;
  border:1px solid rgba(0,87,139,.08) !important;
  border-radius:28px !important;
  overflow:hidden !important;
  box-shadow:0 16px 38px rgba(6,61,86,.07) !important;
  transition:transform .28s ease, box-shadow .28s ease;
  padding:18px !important;
  display:flex;
  flex-direction:column;
}
.page-home .produto-card:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 48px rgba(6,61,86,.14) !important;
}
.page-home .produto-foto{
  width:100%;
  border-radius:22px !important;
  overflow:hidden !important;
  background:#fff !important;
}
.page-home .produto-foto img{
  width:100%;
  height:220px !important;
  object-fit:cover !important;
  display:block;
  border-radius:22px !important;
}
.page-home .produto-content{
  padding:16px 10px 6px !important;
  text-align:center;
}
.page-home .produto-card h3,.page-home .produto-content h3{
  display:block !important;
  margin:0 !important;
  color:#FFFFFF !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-weight:800 !important;
  font-size:clamp(18px,1.8vw,24px) !important;
  line-height:1.08 !important;
  letter-spacing:-.02em !important;
}
@media (max-width: 980px){
  .page-home .produtos-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px){
  .page-home .produtos{
    padding:68px 0;
  }
  .page-home .produtos-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .page-home .produto-card{
    border-radius:22px !important;
    padding:14px !important;
  }
  .page-home .produto-foto,.page-home .produto-foto img{
    border-radius:16px !important;
  }
  .page-home .produto-foto img{
    height:210px !important;
  }
  .page-home .produto-content{
    padding:14px 8px 4px !important;
  }
  .page-home .produto-card h3,.page-home .produto-content h3{
    font-size:22px !important;
  }
}


/* Produtos — imagens redimensionadas corretamente */
.page-home .produtos{
  background:#F6F9FA;
  padding:88px 0;
}
.page-home .produtos-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
  align-items:stretch;
}
.page-home .produto-card{
  background:#A8C5D0 !important;
  border:1px solid rgba(0,87,139,.08) !important;
  border-radius:28px !important;
  overflow:hidden !important;
  box-shadow:0 16px 38px rgba(6,61,86,.07) !important;
  transition:transform .28s ease, box-shadow .28s ease;
  padding:16px !important;
  display:flex;
  flex-direction:column;
}
.page-home .produto-card:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 48px rgba(6,61,86,.14) !important;
}
.page-home .produto-foto{
  width:100%;
  aspect-ratio: 1.38 / 1;
  border-radius:22px !important;
  overflow:hidden !important;
  background:#fff !important;
}
.page-home .produto-foto img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover !important;
  border-radius:22px !important;
}

/* Ajuste fino por categoria para enquadrar melhor */
.page-home .produto-card.embalagens .produto-foto img{ object-position:center 58%; }
.page-home .produto-card.artigos-festa .produto-foto img{ object-position:center 42%; }
.page-home .produto-card.doces .produto-foto img{ object-position:center 40%; }
.page-home .produto-card.descartaveis .produto-foto img{ object-position:center 43%; }
.page-home .produto-card.brinquedos .produto-foto img{ object-position:center 47%; }
.page-home .produto-card.papelarias .produto-foto img{ object-position:center 36%; }
.page-home .produto-card.confeitaria .produto-foto img{ object-position:center 42%; }
.page-home .produto-card.panificacao .produto-foto img{ object-position:center 44%; }
.page-home .produto-card.decoracao .produto-foto img{ object-position:center 42%; }

.page-home .produto-content{
  padding:16px 10px 8px !important;
  text-align:center;
}
.page-home .produto-content h3{
  margin:0 !important;
  color:#FFFFFF !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-weight:800 !important;
  font-size:clamp(18px,1.8vw,24px) !important;
  line-height:1.08 !important;
  letter-spacing:-.02em !important;
}

@media (max-width: 980px){
  .page-home .produtos-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px){
  .page-home .produtos{
    padding:68px 0;
  }
  .page-home .produtos-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .page-home .produto-card{
    border-radius:22px !important;
    padding:14px !important;
  }
  .page-home .produto-foto,.page-home .produto-foto img{
    border-radius:16px !important;
  }
  .page-home .produto-content{
    padding:14px 8px 4px !important;
  }
  .page-home .produto-content h3{
    font-size:22px !important;
  }
}


/* Ajuste dos cards de produtos: sem moldura branca e sem espaço branco interno */
.page-home .produto-card{
  background:#A8C5D0 !important;
  border:1px solid rgba(0,87,139,.08) !important;
  border-radius:28px !important;
  overflow:hidden !important;
  box-shadow:0 16px 38px rgba(6,61,86,.07) !important;
  transition:transform .28s ease, box-shadow .28s ease;
  padding:16px !important;
  display:flex;
  flex-direction:column;
}

.page-home .produto-foto{
  width:100%;
  aspect-ratio: 1.38 / 1;
  border-radius:20px !important;
  overflow:hidden !important;
  background:transparent !important;
  padding:0 !important;
  margin:0 !important;
  box-shadow:none !important;
}

.page-home .produto-foto img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:20px !important;
  background:transparent !important;
  margin:0 !important;
  padding:0 !important;
  box-shadow:none !important;
  border:0 !important;
}

.page-home .produto-content{
  padding:14px 8px 6px !important;
  text-align:center;
}

@media (max-width: 620px){
  .page-home .produto-card{
    border-radius:22px !important;
    padding:14px !important;
  }
  .page-home .produto-foto,.page-home .produto-foto img{
    border-radius:16px !important;
  }
}


/* Produtos — cards lineares e padronizados */
.page-home .produtos{
  background:#F6F9FA;
  padding:88px 0;
}
.page-home .produtos-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
  align-items:stretch;
}
.page-home .produto-card{
  background:#A8C5D0 !important;
  border:1px solid rgba(0,87,139,.08) !important;
  border-radius:28px !important;
  overflow:hidden !important;
  box-shadow:0 16px 38px rgba(6,61,86,.07) !important;
  transition:transform .28s ease, box-shadow .28s ease;
  padding:18px !important;
  display:flex;
  flex-direction:column;
}
.page-home .produto-card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 48px rgba(6,61,86,.14) !important;
}
.page-home .produto-foto{
  width:100%;
  aspect-ratio: 1.45 / 1;
  border-radius:22px !important;
  overflow:hidden !important;
  background:transparent !important;
  margin:0 !important;
  padding:0 !important;
}
.page-home .produto-foto img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover !important;
  object-position:center center !important;
  border-radius:22px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}
.page-home .produto-content{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:72px;
  padding:16px 8px 4px !important;
  text-align:center;
}
.page-home .produto-content h3{
  margin:0 !important;
  color:#FFFFFF !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-weight:800 !important;
  font-size:clamp(18px,1.7vw,24px) !important;
  line-height:1.08 !important;
  letter-spacing:-.02em !important;
}

/* Pequeno ajuste fino, mantendo o mesmo padrão visual */
.page-home .produto-card.embalagens .produto-foto img{ object-position:center 56% !important; }
.page-home .produto-card.artigos-de-festa .produto-foto img{ object-position:center 44% !important; }
.page-home .produto-card.doces .produto-foto img{ object-position:center 42% !important; }
.page-home .produto-card.descartaveis .produto-foto img{ object-position:center 44% !important; }
.page-home .produto-card.brinquedos .produto-foto img{ object-position:center 50% !important; }
.page-home .produto-card.papelarias .produto-foto img{ object-position:center 38% !important; }
.page-home .produto-card.confeitaria .produto-foto img{ object-position:center 45% !important; }
.page-home .produto-card.panificacao .produto-foto img{ object-position:center 46% !important; }
.page-home .produto-card.decoracao .produto-foto img{ object-position:center 42% !important; }

@media (max-width: 980px){
  .page-home .produtos-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px){
  .page-home .produtos{
    padding:68px 0;
  }
  .page-home .produtos-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .page-home .produto-card{
    border-radius:22px !important;
    padding:14px !important;
  }
  .page-home .produto-foto,.page-home .produto-foto img{
    border-radius:16px !important;
  }
  .page-home .produto-content{
    min-height:60px;
    padding:14px 6px 2px !important;
  }
  .page-home .produto-content h3{
    font-size:22px !important;
  }
}



/* ===== V40 — Segmentos no estilo da referência enviada ===== */
.page-home .produtos{
  background:#FFFFFF !important;
  padding:78px 0 92px !important;
}
.page-home .produtos .section-head{
  margin-bottom:34px !important;
}
.page-home .produtos-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:26px 22px !important;
  align-items:stretch !important;
}
.page-home .produto-card{
  min-width:0 !important;
  background:#A9C6D0 !important;
  border:0 !important;
  border-radius:34px !important;
  padding:20px 20px 28px !important;
  overflow:hidden !important;
  box-shadow:none !important;
  display:flex !important;
  flex-direction:column !important;
  transition:transform .28s ease, box-shadow .28s ease !important;
}
.page-home .produto-card:hover{
  transform:translateY(-5px) !important;
  box-shadow:0 18px 38px rgba(6,61,86,.14) !important;
}
.page-home .produto-foto{
  width:100% !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:25px !important;
  overflow:hidden !important;
  background:#E9F0F2 !important;
}
.page-home .produto-foto img{
  width:100% !important;
  height:258px !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  border-radius:25px !important;
  transform:scale(1.002);
  transition:transform .45s ease !important;
}
.page-home .produto-card:hover .produto-foto img{
  transform:scale(1.035);
}
.page-home .produto-content{
  min-height:72px !important;
  padding:22px 8px 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
.page-home .produto-card h3,.page-home .produto-content h3{
  margin:0 !important;
  color:#FFFFFF !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-size:clamp(20px,1.65vw,27px) !important;
  font-weight:800 !important;
  line-height:1.04 !important;
  letter-spacing:-.025em !important;
  text-transform:uppercase !important;
  text-shadow:0 1px 1px rgba(6,61,86,.08);
}
@media (max-width:980px){
  .page-home .produtos-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .page-home .produto-foto img{height:235px !important;}
}
@media (max-width:620px){
  .page-home .produtos{padding:62px 0 72px !important;}
  .page-home .produtos-grid{grid-template-columns:1fr !important;gap:18px !important;}
  .page-home .produto-card{border-radius:28px !important;padding:16px 16px 22px !important;}
  .page-home .produto-foto,.page-home .produto-foto img{border-radius:21px !important;}
  .page-home .produto-foto img{height:220px !important;}
  .page-home .produto-content{min-height:60px !important;padding-top:17px !important;}
  .page-home .produto-card h3,.page-home .produto-content h3{font-size:22px !important;}
}

/* V44 — remover setas de todos os botões */
.page-home .btn::after{
  content:none !important;
  display:none !important;
}
.page-home .btn{
  gap:0 !important;
  padding-left:20px !important;
  padding-right:20px !important;
}
.page-home .client .btn-white{
  padding-left:22px !important;
  padding-right:22px !important;
}
@media(max-width:920px){
  .page-home header nav .btn{
    justify-content:flex-start !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }
}



/* Linha de Produtos V41 — padrão uniforme, sem cortes agressivos */
.page-home .produtos-v41{
  background:linear-gradient(180deg,#F8FBFC 0%,#F3F8FA 100%) !important;
  padding:86px 0 94px !important;
}
.page-home .produtos-v41-wrap{max-width:1220px !important;}
.page-home .produtos-v41-head{
  text-align:center;
  margin:0 auto 38px;
}
.page-home .produtos-v41-kicker{
  display:inline-block;
  margin-bottom:8px;
  font:800 11px/1 Inter,Arial,sans-serif;
  letter-spacing:.16em;
  color:#0D678E;
}
.page-home .produtos-v41-head h2{
  margin:0 !important;
  font:800 clamp(32px,4vw,52px)/1.02 Montserrat,Arial,sans-serif !important;
  letter-spacing:.06em !important;
  color:#335E6F !important;
}
.page-home .produtos-v41-sub{
  margin:12px auto 0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  max-width:780px;
}
.page-home .produtos-v41-sub span{height:1px;background:#9CB7C2;flex:1;max-width:78px;}
.page-home .produtos-v41-sub p{
  margin:0;
  color:#607D8A;
  font-size:15px;
  line-height:1.4;
  letter-spacing:.04em;
}
.page-home .produtos-grid-v41{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px !important;
}
.page-home .produto-card-v41{
  display:flex !important;
  flex-direction:column !important;
  padding:12px 12px 14px !important;
  margin:0 !important;
  background:#A7C3CE !important;
  border:1px solid rgba(0,87,139,.08) !important;
  border-radius:28px !important;
  overflow:hidden !important;
  box-shadow:0 12px 28px rgba(6,61,86,.10) !important;
  transition:transform .28s ease,box-shadow .28s ease !important;
  min-width:0 !important;
}
.page-home .produto-card-v41:hover{
  transform:translateY(-6px) !important;
  box-shadow:0 20px 42px rgba(6,61,86,.16) !important;
}
.page-home .produto-foto-v41{
  width:100%;
  aspect-ratio:4/2.25;
  border-radius:20px;
  overflow:hidden;
  background:#DDE9ED;
}
.page-home .produto-foto-v41 img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  border-radius:0 !important;
  transform:scale(1.001);
  transition:transform .35s ease !important;
}
.page-home .produto-card-v41:hover .produto-foto-v41 img{transform:scale(1.025);}
.page-home .produto-card-v41 h3{
  margin:13px 8px 1px !important;
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff !important;
  font:800 clamp(17px,1.65vw,23px)/1.05 Montserrat,Arial,sans-serif !important;
  letter-spacing:.025em !important;
  text-shadow:0 1px 1px rgba(6,61,86,.12);
}
@media(max-width:980px){
  .page-home .produtos-grid-v41{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:620px){
  .page-home .produtos-v41{padding:64px 0 70px !important;}
  .page-home .produtos-v41-head{margin-bottom:26px;}
  .page-home .produtos-v41-head h2{font-size:31px !important;letter-spacing:.03em !important;}
  .page-home .produtos-v41-sub{gap:9px;}
  .page-home .produtos-v41-sub span{max-width:28px;}
  .page-home .produtos-v41-sub p{font-size:12px;}
  .page-home .produtos-grid-v41{grid-template-columns:1fr !important;gap:16px !important;}
  .page-home .produto-card-v41{border-radius:23px !important;padding:10px 10px 12px !important;}
  .page-home .produto-foto-v41{border-radius:17px;aspect-ratio:4/2.35;}
  .page-home .produto-card-v41 h3{font-size:21px !important;min-height:30px;margin-top:12px !important;}
}


/* Menu hambúrguer para tablet/celular */
.page-home .mobile-menu-toggle{
  display:none;
  width:46px;
  height:46px;
  flex:0 0 46px;
  padding:0;
  border:1px solid rgba(255,255,255,.26);
  border-radius:14px;
  background:rgba(255,255,255,.10);
  backdrop-filter:blur(8px);
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(3,37,52,.12);
  transition:background .22s ease,border-color .22s ease,transform .22s ease;
}
.page-home .mobile-menu-toggle:hover{background:rgba(255,255,255,.16);}
.page-home .mobile-menu-toggle span{
  display:block;
  width:21px;
  height:2px;
  border-radius:99px;
  background:#fff;
  transition:transform .25s ease,opacity .2s ease;
}

@media(max-width:920px){
  .page-home header .container.nav{
    position:relative !important;
    min-height:76px !important;
  }
  .page-home header.scrolled .container.nav{
    min-height:76px !important;
  }
  .page-home header .logo-wrap img,.page-home header.scrolled .logo-wrap img{
    width:165px !important;
  }
  .page-home .mobile-menu-toggle{
    display:inline-flex;
    position:relative;
    z-index:302;
  }
  .page-home header nav{
    position:absolute !important;
    top:calc(100% + 8px);
    left:0;
    right:0;
    z-index:301;
    display:flex !important;
    flex-direction:column;
    align-items:stretch !important;
    gap:0 !important;
    padding:10px !important;
    background:rgba(6,61,86,.98);
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
    box-shadow:0 22px 55px rgba(2,28,41,.28);
    backdrop-filter:blur(16px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-10px) scale(.985);
    transform-origin:top center;
    transition:opacity .22s ease,visibility .22s ease,transform .22s ease;
  }
  .page-home header.mobile-open nav{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
  }
  .page-home header nav > a,.page-home header nav > a:not(.btn){
    display:flex !important;
    align-items:center;
    justify-content:flex-start;
    width:100%;
    min-height:48px;
    padding:0 14px !important;
    border-radius:11px;
    color:#fff;
    font-size:13px !important;
    font-weight:700;
    opacity:1;
  }
  .page-home header nav > a:not(.btn)::after{display:none !important;}
  .page-home header nav > a:not(.btn):hover{background:rgba(255,255,255,.08);}
  .page-home header nav .btn{
    display:flex !important;
    width:100%;
    min-height:48px !important;
    margin-top:7px;
    padding:0 14px !important;
    justify-content:space-between;
    font-size:13px !important;
  }
  .page-home header.mobile-open .mobile-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .page-home header.mobile-open .mobile-menu-toggle span:nth-child(2){opacity:0;}
  .page-home header.mobile-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .page-home header.mobile-open .mobile-menu-toggle{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.42);}
}

@media(max-width:480px){
  .page-home header .container.nav{min-height:70px !important;}
  .page-home header.scrolled .container.nav{min-height:70px !important;}
  .page-home header .logo-wrap img,.page-home header.scrolled .logo-wrap img{width:148px !important;}
  .page-home .mobile-menu-toggle{width:43px;height:43px;flex-basis:43px;border-radius:12px;}
  .page-home header nav{top:calc(100% + 6px);border-radius:15px;padding:8px !important;}
}


/* V45 — sombras sutis nos botões */
.page-home .btn{
  box-shadow:0 6px 16px rgba(4,45,64,.10) !important;
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease !important;
}
.page-home .btn:hover{
  box-shadow:0 9px 20px rgba(4,45,64,.14) !important;
}
.page-home .btn-white{
  box-shadow:0 6px 16px rgba(0,0,0,.10) !important;
}
.page-home .btn-white:hover{
  box-shadow:0 10px 22px rgba(0,0,0,.14) !important;
}
.page-home .btn-ghost{
  box-shadow:0 6px 16px rgba(4,45,64,.08) !important;
}
.page-home .btn-ghost:hover{
  box-shadow:0 9px 20px rgba(4,45,64,.12) !important;
}
.page-home .btn-blue{
  box-shadow:0 7px 18px rgba(0,87,139,.14) !important;
}
.page-home .btn-blue:hover{
  box-shadow:0 10px 22px rgba(0,87,139,.18) !important;
}
@media(max-width:920px){
  .page-home header nav .btn{
    box-shadow:0 5px 14px rgba(3,37,52,.10) !important;
  }
}


/* V46 — botões principais maiores, com sombra e animação sutil */
.page-home .hero-actions{
  gap:14px !important;
  margin-top:20px !important;
}
.page-home .hero-actions .btn{
  min-height:54px !important;
  padding:0 28px !important;
  border-radius:16px !important;
  font-size:14px !important;
  font-weight:800 !important;
  letter-spacing:.01em !important;
  box-shadow:0 10px 24px rgba(2,36,52,.16) !important;
  transform:translateY(0);
  animation:heroBtnFloat 4.2s ease-in-out infinite;
  will-change:transform,box-shadow;
}
.page-home .hero-actions .btn:nth-child(2){
  animation-delay:.35s;
}
.page-home .hero-actions .btn-white{
  box-shadow:0 12px 28px rgba(0,0,0,.16) !important;
}
.page-home .hero-actions .btn-ghost{
  box-shadow:0 10px 24px rgba(0,0,0,.12), inset 0 0 0 1px rgba(255,255,255,.03) !important;
}
.page-home .hero-actions .btn:hover{
  transform:translateY(-4px) scale(1.015) !important;
  box-shadow:0 18px 34px rgba(2,36,52,.22) !important;
}
.page-home .hero-actions .btn-white:hover{
  box-shadow:0 18px 38px rgba(0,0,0,.20) !important;
}
.page-home .hero-actions .btn-ghost:hover{
  box-shadow:0 16px 32px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.06) !important;
}
@keyframes heroBtnFloat{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-2px);}
}
@media(max-width:620px){
  .page-home .hero-actions{gap:10px !important;}
  .page-home .hero-actions .btn{
    min-height:50px !important;
    padding:0 20px !important;
    font-size:13px !important;
    border-radius:15px !important;
  }
}
@media (prefers-reduced-motion: reduce){
  .page-home .hero-actions .btn{animation:none !important;}
}


/* V47 — brilho permanente nos botões */
.page-home .btn{
  position:relative;
  overflow:hidden;
}
.page-home .btn::before{
  content:"" !important;
  position:absolute;
  top:-120%;
  left:-45%;
  width:26%;
  height:340%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.30),transparent);
  transform:rotate(18deg);
  pointer-events:none;
  animation:btnShineLoop 2.8s linear infinite;
}
.page-home .btn:hover::before{
  left:-45% !important;
}
@keyframes btnShineLoop{
  0%{ left:-45%; opacity:.0; }
  8%{ opacity:.15; }
  18%{ opacity:.30; }
  48%{ left:125%; opacity:.0; }
  100%{ left:125%; opacity:.0; }
}
.page-home .hero-actions .btn::before{
  animation-duration:2.4s;
}
@media (prefers-reduced-motion: reduce){
  .page-home .btn::before{animation:none !important; left:-45%; opacity:.18;}
}


/* V48 — mais flutuação nos botões principais, mantendo elegância */
.page-home .hero-actions .btn{
  animation:heroBtnFloatStrong 3.2s ease-in-out infinite !important;
}
.page-home .hero-actions .btn:nth-child(2){
  animation-delay:.35s !important;
}
@keyframes heroBtnFloatStrong{
  0%,100%{
    transform:translateY(0) scale(1);
    box-shadow:0 10px 24px rgba(2,36,52,.16);
  }
  50%{
    transform:translateY(-6px) scale(1.012);
    box-shadow:0 17px 32px rgba(2,36,52,.22);
  }
}
.page-home .hero-actions .btn-white{
  animation-name:heroBtnFloatWhite !important;
}
@keyframes heroBtnFloatWhite{
  0%,100%{
    transform:translateY(0) scale(1);
    box-shadow:0 12px 28px rgba(0,0,0,.16);
  }
  50%{
    transform:translateY(-6px) scale(1.012);
    box-shadow:0 19px 36px rgba(0,0,0,.22);
  }
}
.page-home .hero-actions .btn-ghost{
  animation-name:heroBtnFloatGhost !important;
}
@keyframes heroBtnFloatGhost{
  0%,100%{
    transform:translateY(0) scale(1);
    box-shadow:0 10px 24px rgba(0,0,0,.12), inset 0 0 0 1px rgba(255,255,255,.03);
  }
  50%{
    transform:translateY(-6px) scale(1.012);
    box-shadow:0 17px 32px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.05);
  }
}
@media(max-width:620px){
  .page-home .hero-actions .btn{
    animation-duration:3.5s !important;
  }
  @keyframes heroBtnFloatStrong{
    0%,100%{transform:translateY(0) scale(1);}
    50%{transform:translateY(-4px) scale(1.008);}
  }
}


/* V49 — cards de atendimento com flutuação e borda pulsante */
.page-home .points{
  gap:14px !important;
}
.page-home .point{
  position:relative;
  overflow:visible;
  border-radius:20px !important;
  box-shadow:0 10px 24px rgba(4,45,64,.10);
  animation:pointFloat 4.2s ease-in-out infinite;
  will-change:transform, box-shadow;
}
.page-home .point::before{
  content:"";
  position:absolute;
  inset:-6px;
  border-radius:24px;
  border:2px solid rgba(26,180,95,.18);
  pointer-events:none;
  animation:pointRing 2.3s ease-out infinite;
}
.page-home .point:nth-child(2){
  animation-delay:.25s;
}
.page-home .point:nth-child(2)::before{
  animation-delay:.35s;
}
.page-home .point:nth-child(3){
  animation-delay:.5s;
}
.page-home .point:nth-child(3)::before{
  animation-delay:.7s;
}
.page-home .point:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 30px rgba(4,45,64,.14);
}
@keyframes pointFloat{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-5px);}
}
@keyframes pointRing{
  0%{transform:scale(.985); opacity:.55;}
  70%{transform:scale(1.03); opacity:0;}
  100%{transform:scale(1.03); opacity:0;}
}
@media (max-width:620px){
  .page-home .point{
    box-shadow:0 8px 18px rgba(4,45,64,.08);
    animation-duration:4.6s;
  }
  .page-home .point::before{
    inset:-5px;
    border-radius:22px;
    border-width:2px;
  }
  @keyframes pointFloat{
    0%,100%{transform:translateY(0);}
    50%{transform:translateY(-3px);}
  }
}
@media (prefers-reduced-motion: reduce){
  .page-home .point{animation:none !important;}
  .page-home .point::before{animation:none !important; opacity:.18;}
}


/* V50 — efeito mais marcante nos cards de atendimento */
.page-home .points{
  gap:18px !important;
}
.page-home .point{
  position:relative;
  overflow:visible;
  border-radius:22px !important;
  background:#DDE8ED !important;
  box-shadow:0 14px 30px rgba(4,45,64,.14) !important;
  animation:pointFloatStrong 3.2s ease-in-out infinite !important;
  will-change:transform, box-shadow;
}
.page-home .point::before{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:28px;
  border:2px solid rgba(26,180,95,.28);
  pointer-events:none;
  animation:pointRingStrong 2s ease-out infinite !important;
}
.page-home .point::after{
  content:"";
  position:absolute;
  inset:-12px;
  border-radius:32px;
  border:2px solid rgba(26,180,95,.12);
  pointer-events:none;
  animation:pointRingStrongOuter 2s ease-out infinite !important;
}
.page-home .point:nth-child(2){animation-delay:.25s !important;}
.page-home .point:nth-child(2)::before{animation-delay:.3s !important;}
.page-home .point:nth-child(2)::after{animation-delay:.5s !important;}
.page-home .point:nth-child(3){animation-delay:.5s !important;}
.page-home .point:nth-child(3)::before{animation-delay:.6s !important;}
.page-home .point:nth-child(3)::after{animation-delay:.8s !important;}
.page-home .point:hover{
  transform:translateY(-7px) scale(1.012) !important;
  box-shadow:0 22px 42px rgba(4,45,64,.18) !important;
}
.page-home .point i::before{
  animation:pointIconPulse 1.9s ease-in-out infinite;
  filter:drop-shadow(0 4px 10px rgba(26,180,95,.25));
}
@keyframes pointFloatStrong{
  0%,100%{transform:translateY(0); box-shadow:0 14px 30px rgba(4,45,64,.14);}
  50%{transform:translateY(-8px); box-shadow:0 22px 42px rgba(4,45,64,.18);}
}
@keyframes pointRingStrong{
  0%{transform:scale(.98); opacity:.72;}
  72%{transform:scale(1.05); opacity:0;}
  100%{transform:scale(1.05); opacity:0;}
}
@keyframes pointRingStrongOuter{
  0%{transform:scale(.96); opacity:.0;}
  28%{opacity:.38;}
  100%{transform:scale(1.08); opacity:0;}
}
@keyframes pointIconPulse{
  0%,100%{transform:scale(1);}
  50%{transform:scale(1.12);}
}
@media (max-width:620px){
  .page-home .point{
    border-radius:20px !important;
    box-shadow:0 12px 24px rgba(4,45,64,.12) !important;
    animation-duration:3.6s !important;
  }
  .page-home .point::before{inset:-6px; border-radius:24px;}
  .page-home .point::after{inset:-9px; border-radius:28px;}
  @keyframes pointFloatStrong{
    0%,100%{transform:translateY(0); box-shadow:0 12px 24px rgba(4,45,64,.12);}
    50%{transform:translateY(-5px); box-shadow:0 18px 32px rgba(4,45,64,.16);}
  }
}
@media (prefers-reduced-motion: reduce){
  .page-home .point,.page-home .point i::before{animation:none !important;}
  .page-home .point::before,.page-home .point::after{animation:none !important; opacity:.22;}
}

/* Área do cliente */

:root{--d:#063d56;--m:#075f7b;--b:#0d8ec1;--ink:#103b52;--mut:#5f7b8a;--bg:#edf5f8}.page-area *{box-sizing:border-box}html{scroll-behavior:smooth}body.page-area{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink)}.page-area a{text-decoration:none;color:inherit}.page-area .hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 10% 0%,rgba(255,255,255,.08) 0 115px,transparent 116px),radial-gradient(circle at 94% 8%,rgba(255,255,255,.10) 0 145px,transparent 146px),linear-gradient(120deg,#05364b,#07536d 52%,#0b7d9e)}.page-area .hero-inner{max-width:1240px;margin:auto;padding:62px 24px 78px;text-align:center}.page-area .tag{display:inline-block;padding:7px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.06);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.page-area .hero h1{font-size:clamp(42px,6vw,68px);letter-spacing:-.055em;line-height:.98;margin:16px 0 14px}.page-area .hero h1 span{color:#d7edf4}.page-area .hero p{font-size:16px;color:#dceef4;margin:0 auto;max-width:720px;line-height:1.65}.page-area .section{padding:46px 22px 60px}.page-area .wrap{max-width:1240px;margin:auto}.page-area .head{text-align:center;margin-bottom:30px}.page-area .head h2{font-size:40px;letter-spacing:-.04em;margin:0 0 8px}.page-area .head p{color:var(--mut);margin:0}.page-area .grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}.page-area .card{height:238px;background:#fff;border:1px solid #e3edf1;border-radius:26px;padding:18px 14px;text-align:center;box-shadow:0 16px 34px rgba(8,61,86,.08);transition:.25s;display:flex;flex-direction:column;align-items:center}.page-area .card:hover{transform:translateY(-6px);box-shadow:0 24px 44px rgba(8,61,86,.14)}.page-area .logo{width:118px;height:118px;border-radius:28px;margin:0 auto 12px;background:#fff;display:flex;align-items:center;justify-content:center;border:1px solid #e7eff2;box-shadow:0 10px 22px rgba(8,61,86,.08);padding:8px;overflow:hidden}.page-area .logo img{width:100%;height:100%;object-fit:contain;border-radius:20px;transition:transform .4s ease}.page-area .card:hover .logo img{transform:scale(1.05)}.page-area .name{font-size:13px;font-weight:900;text-transform:uppercase;line-height:1.25;min-height:32px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.page-area .open{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;padding:9px 14px;border-radius:14px;background:linear-gradient(135deg,#e8f6fb,#d8f0f8);color:#0b7196;font-size:11px;font-weight:900;transition:.2s}.page-area .card:hover .open{background:linear-gradient(135deg,#0a6b91,#12a8dd);color:#fff}.page-area .all-catalogs{padding:8px 22px 70px}.page-area .catalog-shell{max-width:1240px;margin:auto;background:rgba(255,255,255,.52);border:1px solid rgba(255,255,255,.75);border-radius:30px;padding:24px;box-shadow:0 22px 46px rgba(7,44,66,.10)}.page-area .filters{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:0 0 24px}.page-area .filter-btn{appearance:none;border:1px solid #cfe3ed;background:#fff;color:#20566e;padding:10px 16px;border-radius:999px;font:800 12px/1 Inter,system-ui;cursor:pointer;box-shadow:0 7px 16px rgba(8,61,86,.06);transition:.2s}.page-area .filter-btn:hover{transform:translateY(-2px);border-color:#9ed9ee}.page-area .filter-btn.active{color:#fff;border-color:transparent;background:linear-gradient(135deg,#0a6b91,#12a8dd);box-shadow:0 10px 20px rgba(10,130,178,.22)}.page-area .catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.page-area .catalog-card{height:344px;background:#fff;border:1px solid #e6eef3;border-radius:26px;padding:18px 16px;text-align:center;box-shadow:0 16px 32px rgba(7,56,85,.08);transition:transform .26s ease,box-shadow .26s ease,opacity .22s ease;display:flex;flex-direction:column;align-items:center}.page-area .catalog-card:hover{transform:translateY(-6px);box-shadow:0 24px 42px rgba(7,56,85,.14)}.page-area .catalog-card.is-hidden{display:none}.page-area .catalog-pic{width:148px;height:148px;border-radius:28px;margin:0 auto 12px;background:#f8fbfd;display:flex;align-items:center;justify-content:center;padding:8px;border:1px solid #edf3f6;overflow:hidden;box-shadow:0 9px 20px rgba(8,61,86,.06);flex:0 0 148px}.page-area .catalog-pic img{width:100%;height:100%;object-fit:cover;border-radius:21px;display:block}.page-area .catalog-company{font-size:10px;font-weight:900;color:#0b8ec0;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.page-area .catalog-title{font-size:14px;font-weight:900;text-transform:uppercase;line-height:1.25;min-height:36px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.page-area .catalog-desc{color:#6a8390;font-size:12px;line-height:1.4;margin-top:5px;min-height:34px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.page-area .catalog-open{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;min-width:148px;padding:11px 16px;border-radius:15px;background:linear-gradient(135deg,#075b79,#0b84ad 55%,#16a8d5);color:#fff;font-size:12px;font-weight:900;box-shadow:0 11px 22px rgba(10,121,159,.22)}.page-area .empty{grid-column:1/-1;background:#fff;border-radius:24px;padding:35px;text-align:center;color:var(--mut)}.page-area .reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.page-area .reveal.show{opacity:1;transform:none}.page-area .hero-enter{opacity:0;transform:translateY(15px);animation:in .7s ease forwards}.page-area .d2{animation-delay:.12s}.page-area .d3{animation-delay:.24s}@keyframes in{to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.page-area *,.page-area *:before,.page-area *:after{animation:none!important;transition:none!important}.page-area .reveal{opacity:1;transform:none}}@media(max-width:1100px){.page-area .catalog-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:1000px){.page-area .grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:760px){.page-area .grid{grid-template-columns:repeat(3,1fr)}.page-area .catalog-grid{grid-template-columns:repeat(2,1fr)}.page-area .catalog-shell{padding:16px}}@media(max-width:520px){.page-area .grid{grid-template-columns:repeat(2,1fr)}.page-area .catalog-grid{grid-template-columns:1fr}.page-area .hero-inner{padding:48px 18px 62px}.page-area .head h2{font-size:32px}.page-area .logo{width:104px;height:104px}.page-area .card{height:224px}.page-area .catalog-card{height:336px}}

/* Catálogos da representada */


:root{--ink:#0c3650;--mut:#59768a;--paper:#edf5f9;--deep:#075977;--hero-title:58px;--hero-sub:22px}.page-catalogos *{box-sizing:border-box}html{scroll-behavior:smooth}body.page-catalogos{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:linear-gradient(#dfeaf1,#edf5f9);color:var(--ink)}.page-catalogos a{text-decoration:none;color:inherit}
.page-catalogos .hero{color:#fff;background:radial-gradient(circle at 7% 8%,rgba(255,255,255,.08) 0 90px,transparent 91px),radial-gradient(circle at 92% 10%,rgba(255,255,255,.10) 0 145px,transparent 146px),linear-gradient(120deg,#042e43,#075874 52%,#0b8ab0)}
.page-catalogos .hero-inner{max-width:1280px;margin:auto;padding:30px 24px 34px}.page-catalogos .hero-card{display:grid;grid-template-columns:1.06fr .94fr;height:460px;gap:24px;align-items:stretch}.page-catalogos .copy{height:460px;padding:24px 28px 24px 0;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.page-catalogos .back{display:inline-flex;align-items:center;align-self:flex-start;padding:12px 20px;border-radius:18px;border:1px solid rgba(79,205,255,.72);background:rgba(12,86,115,.28);font-weight:800;margin-bottom:18px;transition:.2s}.page-catalogos .back:hover{background:rgba(21,145,190,.38);transform:translateY(-2px)}
.page-catalogos .logo{width:108px;height:108px;border-radius:28px;object-fit:contain;background:#fff;padding:8px;border:5px solid rgba(255,255,255,.76);box-shadow:0 14px 30px rgba(0,0,0,.18);margin:0 auto 12px;overflow:hidden}.page-catalogos .center{text-align:center}.page-catalogos .center h1{font-size:clamp(30px,var(--hero-title),78px);line-height:.98;letter-spacing:-.05em;margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.page-catalogos .center p{font-size:clamp(14px,var(--hero-sub),30px);line-height:1.35;color:#d7edf6;margin:0 auto 20px;max-width:760px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.page-catalogos .features{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.page-catalogos .feature{display:flex;gap:9px;align-items:center;padding:6px 10px;border-left:1px solid rgba(255,255,255,.18);min-width:0}.page-catalogos .feature:first-child{border-left:0}.page-catalogos .ico{width:40px;height:40px;border:1px solid rgba(255,255,255,.32);border-radius:14px;display:grid;place-items:center;flex:0 0 40px}.page-catalogos .ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.page-catalogos .feature strong{font-size:12px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.page-catalogos .visual{position:relative;overflow:hidden;border-radius:34px;height:460px;background:rgba(255,255,255,.06);box-shadow:0 20px 42px rgba(0,0,0,.14)}.page-catalogos .visual img,.page-catalogos .visual video{width:100%;height:100%;object-fit:cover;display:block;border-radius:34px;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.page-catalogos .visual video{background:#041f2d}.page-catalogos .visual:hover img,.page-catalogos .visual:hover video{transform:scale(1.03)}.page-catalogos .visual:after{content:"";position:absolute;inset:0;border-radius:34px;background:linear-gradient(90deg,rgba(7,60,86,.20),rgba(7,60,86,.02) 35%,rgba(7,60,86,.10));pointer-events:none}.page-catalogos .nohero{height:100%;display:grid;place-items:center;text-align:center;padding:30px;color:#d9edf5;line-height:1.65}
.page-catalogos .section{padding:42px 20px 64px}.page-catalogos .wrap{max-width:1240px;margin:auto}.page-catalogos .head{text-align:center;margin-bottom:24px}.page-catalogos .head h2{font-size:clamp(34px,4vw,54px);letter-spacing:-.045em;margin:0;color:#0a4867}.page-catalogos .bar{width:68px;height:6px;border-radius:999px;background:linear-gradient(90deg,#32b4ff,#0a8bd6);margin:12px auto 14px}.page-catalogos .head p{font-size:16px;color:var(--mut);margin:0}
.page-catalogos .filters{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:0 0 24px}.page-catalogos .filter-btn{appearance:none;border:1px solid #cfe3ed;background:#fff;color:#20566e;padding:10px 16px;border-radius:999px;font:800 12px/1 Inter,system-ui;cursor:pointer;box-shadow:0 7px 16px rgba(8,61,86,.06);transition:.2s}.page-catalogos .filter-btn:hover{transform:translateY(-2px);border-color:#9ed9ee}.page-catalogos .filter-btn.active{color:#fff;border-color:transparent;background:linear-gradient(135deg,#0a6b91,#12a8dd);box-shadow:0 10px 20px rgba(10,130,178,.22)}
.page-catalogos .shell{background:rgba(255,255,255,.52);border:1px solid rgba(255,255,255,.62);border-radius:30px;padding:24px;box-shadow:0 22px 46px rgba(7,44,66,.11)}
.page-catalogos .grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}.page-catalogos .card{height:350px;background:#fff;border:1px solid #e6eef3;border-radius:26px;padding:18px 16px;text-align:center;box-shadow:0 16px 32px rgba(7,56,85,.08);transition:transform .26s ease,box-shadow .26s ease,opacity .22s ease;display:flex;flex-direction:column;align-items:center}.page-catalogos .card:hover{transform:translateY(-6px);box-shadow:0 24px 42px rgba(7,56,85,.14)}.page-catalogos .card.is-hidden{display:none}.page-catalogos .pic{width:150px;height:150px;border-radius:28px;margin:0 auto 14px;background:#f8fbfd;display:flex;align-items:center;justify-content:center;padding:8px;border:1px solid #edf3f6;overflow:hidden;box-shadow:0 9px 20px rgba(8,61,86,.06);flex:0 0 150px}.page-catalogos .pic img{width:100%;height:100%;object-fit:cover;border-radius:21px;display:block;transition:transform .42s ease}.page-catalogos .card:hover .pic img{transform:scale(1.05)}.page-catalogos .title{font-size:15px;font-weight:900;text-transform:uppercase;line-height:1.25;min-height:38px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.page-catalogos .desc{color:#6a8390;font-size:12px;line-height:1.45;margin-top:5px;min-height:50px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.page-catalogos .open{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;margin-top:auto;min-width:150px;padding:12px 18px;border-radius:15px;background:linear-gradient(135deg,#075b79 0%,#0b84ad 55%,#16a8d5 100%);color:#fff;font-size:12px;font-weight:900;box-shadow:0 11px 22px rgba(10,121,159,.22);transition:.22s}.page-catalogos .open:before{content:"";position:absolute;top:-50%;left:-40%;width:34%;height:200%;transform:rotate(22deg);background:rgba(255,255,255,.24);transition:left .45s}.page-catalogos .card:hover .open{transform:translateY(-2px);box-shadow:0 15px 26px rgba(10,121,159,.28)}.page-catalogos .card:hover .open:before{left:120%}
.page-catalogos .empty{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:24px;background:#fff;border-radius:28px;padding:28px 34px;box-shadow:0 16px 32px rgba(7,56,85,.08)}.page-catalogos .empty .ico2{width:90px;height:90px;border-radius:26px;background:#ddeffc;display:grid;place-items:center;font-size:42px}.page-catalogos .empty strong{display:block;font-size:21px;margin-bottom:7px}.page-catalogos .empty p{margin:0;color:var(--mut);line-height:1.6}.page-catalogos .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}.page-catalogos .reveal.show{opacity:1;transform:none}.page-catalogos .hero-anim{opacity:0;transform:translateY(14px);animation:heroIn .7s ease forwards}.page-catalogos .hero-anim.d2{animation-delay:.12s}.page-catalogos .hero-anim.d3{animation-delay:.24s}.page-catalogos .hero-anim.d4{animation-delay:.34s}@keyframes heroIn{to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.page-catalogos *,.page-catalogos *:before,.page-catalogos *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.page-catalogos .reveal{opacity:1;transform:none}}
@media(max-width:1100px){.page-catalogos .hero-card{grid-template-columns:1fr;height:auto}.page-catalogos .copy{height:auto;overflow:visible}.page-catalogos .visual{height:330px}.page-catalogos .features{grid-template-columns:repeat(2,1fr)}.page-catalogos .grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.page-catalogos .hero-inner{padding:20px 14px 28px}.page-catalogos .copy{padding:18px 4px}.page-catalogos .features{grid-template-columns:1fr}.page-catalogos .feature{border-left:0}.page-catalogos .grid{grid-template-columns:1fr 1fr}.page-catalogos .shell{padding:16px}.page-catalogos .empty{grid-template-columns:1fr;text-align:center}.page-catalogos .center h1{font-size:min(var(--hero-title),46px)}.page-catalogos .center p{font-size:min(var(--hero-sub),20px)}}@media(max-width:520px){.page-catalogos .grid{grid-template-columns:1fr}.page-catalogos .visual{height:270px;border-radius:26px}.page-catalogos .visual img,.page-catalogos .visual video,.page-catalogos .visual:after{border-radius:26px}.page-catalogos .card{height:340px}}

/* Login */

    .page-login <?=site_components_css()?>
    :root{
      --navy:#063f56;
      --blue:#075d79;
      --blue2:#0d7896;
      --white:#ffffff;
      --ice:#dceff5;
      --text:#163b4b;
      --muted:#6f8790;
      --danger:#b42318;
    }

    .page-login *{
      box-sizing:border-box;
      margin:0;
      padding:0;
    }

    html,body.page-login{
      min-height:100%;
    }

    body.page-login{
      font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
      background:#edf4f6;
      color:#fff;
    }

    .page-login a{
      color:inherit;
      text-decoration:none;
    }

    .page-login .page{
      min-height:100vh;
      display:flex;
      flex-direction:column;
      position:relative;
      overflow:hidden;
      background:
        radial-gradient(circle at 10% 4%, rgba(255,255,255,.10) 0 74px, transparent 75px),
        radial-gradient(circle at 18% 6%, rgba(255,255,255,.06) 0 118px, transparent 119px),
        radial-gradient(circle at 88% 0%, rgba(255,255,255,.12) 0 115px, transparent 116px),
        radial-gradient(circle at 96% 38%, rgba(255,255,255,.07) 0 90px, transparent 91px),
        radial-gradient(circle at 87% 100%, rgba(255,255,255,.10) 0 190px, transparent 191px),
        linear-gradient(118deg, #063d53 0%, #07536d 46%, #0a6f8d 100%);
    }

    .page-login .page::before{
      content:"";
      position:absolute;
      left:-4%;
      right:-4%;
      bottom:108px;
      height:135px;
      border-top:3px solid rgba(151,218,233,.15);
      border-radius:50% 50% 0 0;
      transform:rotate(-1deg);
      pointer-events:none;
    }

    .page-login .page::after{
      content:"";
      position:absolute;
      left:-4%;
      right:-4%;
      bottom:0;
      height:150px;
      background:rgba(2,43,60,.25);
      clip-path:polygon(0 38%, 15% 14%, 32% 44%, 49% 9%, 67% 41%, 82% 14%, 100% 43%, 100% 100%, 0 100%);
      pointer-events:none;
    }

    .page-login .header{
      width:min(1180px, calc(100% - 40px));
      height:92px;
      margin:0 auto;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:24px;
      border-bottom:1px solid rgba(255,255,255,.13);
      position:relative;
      z-index:5;
    }

    .page-login .brand{
      display:flex;
      align-items:center;
      gap:11px;
    }

    .page-login .brand-mark{
      width:46px;
      height:46px;
      border:4px solid #fff;
      border-radius:50%;
      display:grid;
      place-items:center;
      font-weight:900;
      font-size:15px;
      letter-spacing:-.05em;
    }

    .page-login .brand-copy strong{
      display:block;
      font-size:21px;
      line-height:1;
      letter-spacing:-.03em;
    }

    .page-login .brand-copy small{
      display:block;
      font-size:10px;
      opacity:.78;
      margin-top:3px;
    }

    .page-login .back-site{
      padding:12px 18px;
      border-radius:13px;
      background:rgba(255,255,255,.10);
      border:1px solid rgba(255,255,255,.22);
      font-size:13px;
      font-weight:800;
      transition:.2s ease;
    }

    .page-login .back-site:hover{
      background:rgba(255,255,255,.16);
      transform:translateY(-1px);
    }

    .page-login .content{
      flex:1;
      width:min(1180px, calc(100% - 40px));
      margin:0 auto;
      padding:54px 0 70px;
      display:grid;
      grid-template-columns:1.05fr .95fr;
      align-items:center;
      gap:70px;
      position:relative;
      z-index:3;
    }

    .page-login .intro{
      max-width:620px;
    }

    .page-login .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 11px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.23);
      background:rgba(255,255,255,.06);
      font-size:11px;
      font-weight:800;
      letter-spacing:.08em;
      text-transform:uppercase;
      margin-bottom:18px;
    }

    .page-login .intro h1{
      font-size:clamp(42px,5vw,67px);
      line-height:.98;
      letter-spacing:-.05em;
      margin-bottom:18px;
      font-weight:850;
    }

    .page-login .intro h1 span{
      color:#d7edf4;
      font-weight:760;
    }

    .page-login .intro p{
      max-width:560px;
      color:rgba(255,255,255,.82);
      font-size:16px;
      line-height:1.7;
    }

    .page-login .login-wrap{
      display:flex;
      justify-content:flex-end;
    }

    .page-login .login-card{
      width:100%;
      max-width:430px;
      padding:34px;
      background:rgba(255,255,255,.97);
      color:var(--text);
      border-radius:24px;
      box-shadow:0 28px 70px rgba(0,25,35,.25);
      border:1px solid rgba(255,255,255,.48);
    }

    .page-login .login-card h2{
      font-size:28px;
      letter-spacing:-.03em;
      margin-bottom:7px;
    }

    .page-login .login-card .subtitle{
      color:var(--muted);
      font-size:13px;
      line-height:1.55;
      margin-bottom:24px;
    }

    .page-login .field{
      margin-bottom:15px;
    }

    .page-login .field label{
      display:block;
      font-size:12px;
      font-weight:800;
      margin-bottom:7px;
      color:#315563;
    }

    .page-login .field input{
      width:100%;
      height:52px;
      padding:0 15px;
      border:1px solid #d5e2e6;
      border-radius:13px;
      background:#f9fbfc;
      outline:none;
      color:#173a48;
      font-size:15px;
      transition:.2s ease;
    }

    .page-login .field input:focus{
      background:#fff;
      border-color:#0a718f;
      box-shadow:0 0 0 4px rgba(10,113,143,.10);
    }

    .page-login .submit{
      width:100%;
      height:52px;
      margin-top:5px;
      border:0;
      border-radius:13px;
      background:linear-gradient(135deg, #07536d, #0a7896);
      color:#fff;
      font-size:14px;
      font-weight:850;
      cursor:pointer;
      box-shadow:0 10px 24px rgba(7,83,109,.22);
      transition:.2s ease;
    }

    .page-login .submit:hover{
      transform:translateY(-1px);
      box-shadow:0 14px 28px rgba(7,83,109,.27);
    }

    .page-login .error{
      margin-bottom:16px;
      padding:11px 12px;
      border-radius:11px;
      background:#fff1f0;
      color:var(--danger);
      border:1px solid #ffd7d3;
      font-size:12px;
      font-weight:700;
    }

    .page-login .secure-note{
      margin-top:16px;
      text-align:center;
      color:#78909a;
      font-size:11px;
      line-height:1.5;
    }

    .page-login .footer{
      position:absolute;
      z-index:4;
      left:0;
      right:0;
      bottom:0;
      min-height:72px;
      background:rgba(2,36,50,.44);
      border-top:1px solid rgba(255,255,255,.08);
    }

    .page-login .footer-inner{
      width:min(1180px, calc(100% - 40px));
      min-height:72px;
      margin:0 auto;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
      font-size:11px;
      color:rgba(255,255,255,.66);
    }

    .page-login .footer-inner strong{
      color:#fff;
    }

    @media (max-width:900px){
      .page-login .content{
        grid-template-columns:1fr;
        gap:36px;
        padding-top:42px;
      }

      .page-login .intro{
        text-align:center;
        margin:0 auto;
      }

      .page-login .intro p{
        margin:0 auto;
      }

      .page-login .login-wrap{
        justify-content:center;
      }
    }

    @media (max-width:600px){
      .page-login .header{
        height:76px;
      }

      .page-login .brand-copy strong{
        font-size:17px;
      }

      .page-login .brand-copy small{
        display:none;
      }

      .page-login .back-site{
        padding:10px 12px;
        font-size:11px;
      }

      .page-login .content{
        width:min(100% - 28px, 1180px);
        padding:38px 0 125px;
      }

      .page-login .intro h1{
        font-size:38px;
      }

      .page-login .intro p{
        font-size:14px;
      }

      .page-login .login-card{
        padding:25px 20px;
        border-radius:20px;
      }

      .page-login .footer-inner{
        width:min(100% - 28px, 1180px);
        flex-direction:column;
        justify-content:center;
        text-align:center;
        padding:14px 0;
      }
    }
  