/* HG Sites — Pages (v2) */
.hero{padding: 26px 0 84px;}
.hero-wrap{
border-radius: var(--radius2);
  border:1px solid var(--line);
  overflow:hidden;
  box-shadow: var(--shadow);
}
.hero-media{
  z-index: 0;
  position:relative;
  min-height: 520px;
  background: url("../img/hero-reference.svg") center/cover no-repeat;
}
.hero-overlay{
  z-index: 1;
  position:absolute;inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.00), rgba(0,0,0,.35) 65%, rgba(0,0,0,.55));
}
.hero-content{
  z-index: 2;
  position:absolute;inset:0;
  display:flex;align-items:flex-end;
  padding:38px;
}
.hero-box{
  background: rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.55);
  border-radius: 18px;
  padding:22px;
  max-width: 720px;
  box-shadow: 0 18px 50px rgba(0,0,0,.18);
}
.hero-box h1{font-size:3rem;letter-spacing:-0.03em}
.hero-box p{margin-top:12px;color:rgba(17,24,39,.82);font-size:1.06rem;max-width:70ch}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.hero-strip{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:12px;padding:18px;background:#fff;border-top:1px solid var(--line);
}
.strip-item{
  border:1px solid var(--line);
  border-radius: 14px;
  padding:14px;
  background:#fff;
}
.strip-item b{display:block}
.strip-item span{display:block;margin-top:6px;color:var(--muted);font-size:.95rem}
.feature{
  display:grid;grid-template-columns: 1fr 1fr;gap:20px;align-items:start;
}
.feature-media{
  border-radius: var(--radius2);
  overflow:hidden;border:1px solid var(--line);
  background: #fff;
  box-shadow: var(--shadow2);
}
.feature-media img{width:100%;height:auto}
.feature-panel{
  border-radius: var(--radius2);
  border:1px solid var(--line);
  background: #fff;
  padding:22px;
  box-shadow: var(--shadow2);
}
.feature-panel h2{font-size:2rem;margin-top:10px}
.feature-panel p{margin-top:12px;color:var(--muted);font-size:1.02rem}
.port-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}
@media (max-width: 980px){ .port-grid{grid-template-columns:1fr 1fr} }
@media (max-width: 620px){ .port-grid{grid-template-columns:1fr} }
.thumb{
  height:170px;border-radius:14px;
  border:1px solid var(--line);
  background:#f6f7f9;
  display:grid;place-items:center;
  color:rgba(17,24,39,.70);
  font-weight:700;
}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.filter-btn{
  border-radius:999px;padding:10px 12px;
  border:1px solid rgba(17,24,39,.14);
  background: #fff;
  color:rgba(17,24,39,.86);
  cursor:pointer;
  font-weight:700;
}
.filter-btn[aria-pressed="true"]{
  background: rgba(17,24,39,.06);
  border-color: rgba(17,24,39,.22);
}
.faq{display:grid;gap:12px;margin-top:18px}
.faq details{
  border:1px solid var(--line);
  background: #fff;
  border-radius:14px;
  padding:14px;
  box-shadow: var(--shadow2);
}
.faq summary{cursor:pointer;font-weight:800}
.faq p{color:var(--muted);margin-top:10px}
.form{display:grid;gap:12px;margin-top:14px}
.field{display:grid;gap:6px}
.label{font-weight:800}
.input, .textarea, select{
  border-radius:14px;
  border:1px solid var(--line);
  background: #fff;
  color:var(--text);
  padding:12px 12px;
}
.textarea{min-height:120px;resize:vertical}
.help{color:var(--muted);font-size:.92rem}
.notice{
  border-radius:14px;
  border:1px solid var(--line);
  background: #fff;
  padding:12px;
  color:rgba(17,24,39,.92);
}
.notice.ok{border-color: rgba(34,197,94,.35);background: rgba(34,197,94,.08)}
.notice.err{border-color: rgba(239,68,68,.35);background: rgba(239,68,68,.08)}
@media (max-width: 980px){
  .feature{grid-template-columns:1fr}
  .hero-box h1{font-size:2.2rem}
  .hero-strip{grid-template-columns:1fr}
}

/* v3 hero + sections */
.hero-media{
  background:
    linear-gradient(135deg, rgba(17,24,39,.06), rgba(17,24,39,.00)),
    url("../img/hero-reference.svg") center/cover no-repeat;
}
.hero-box{backdrop-filter: blur(8px)}
.hero-strip{background: rgba(255,255,255,.96)}
/* case studies */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}
.case-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.kpi{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.kpi span{padding:8px 10px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:.86rem;color:rgba(17,24,39,.82);font-weight:700}
@media (max-width: 980px){ .case-grid{grid-template-columns:1fr 1fr} }
@media (max-width: 620px){ .case-grid{grid-template-columns:1fr} }
/* testimonials */
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}
.quote{font-size:1rem;color:rgba(17,24,39,.86)}
.person{margin-top:12px;color:var(--muted);font-size:.95rem}
@media (max-width: 980px){ .test-grid{grid-template-columns:1fr 1fr} }
@media (max-width: 620px){ .test-grid{grid-template-columns:1fr} }


/* ===== HERO CLEAN FULLSCREEN FIX ===== */
.hero-wrap{
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 100px; /* header space */
}

.hero-media{
  height: 100vh;
  border-radius: 0; /* remove rounded corners for full image feel */
}

.hero-content{
  max-width: 720px;
}

.hero-strip,
.stats,
.logo-strip{
  position: relative;
  z-index: 5;
}

/* Prevent next section from appearing under hero */
.hero-wrap + section{
  margin-top: 0 !important;
}

body{
  overflow-x: hidden;
}


/* ===== HERO v5 (fullscreen limpo, sem poluição) ===== */
.hero{padding:0}
.hero-full{
  position:relative;
  min-height: 100vh;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  background:
    linear-gradient(135deg, rgba(17,24,39,.08), rgba(17,24,39,.00)),
    url("../img/hero-reference.svg") center/cover no-repeat;
}
.hero-full::after{
  content:"";
  position:absolute;inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.00), rgba(0,0,0,.28) 55%, rgba(0,0,0,.52));
}
.hero-inner{
  position:relative;
  z-index:2;
  width:100%;
  padding: 120px 0 72px; /* espaço header + respiro */
}
.hero-box{
  max-width: 760px;
  margin-left: 0;
}
/* mantém box “cartão” premium */
.hero-box{
  background: rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.60);
  border-radius: 18px;
  padding: 22px;
  box-shadow: 0 18px 50px rgba(0,0,0,.18);
  backdrop-filter: blur(8px);
}
.hero-actions{margin-top:16px}
/* garantir que NADA da seção seguinte apareça na primeira dobra */
.section-after-hero{padding: 52px 0 84px}
/* remove efeitos do hero antigo se existirem */
.hero-wrap,.hero-media,.hero-overlay,.hero-content,.hero-strip{display:none !important}


/* ===== MOBILE COMPATIBILITY FIXES (sem alterar desktop) ===== */
@media (max-width: 880px){
  .hero-full{min-height:100svh;background-position:center}
  .hero-inner{padding:100px 0 34px}
  .hero-box{
    max-width:none;
    padding:18px;
  }
  .hero-box h1{font-size:clamp(1.9rem, 8vw, 2.45rem)}
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .btn{width:100%}
  .banner > *{width:100%}
  .grid[style*="repeat(4,1fr)"],
  .grid[style*="repeat(3,1fr)"],
  .grid[style*="repeat(2,1fr)"],
  .grid[style*="1.05fr .95fr"]{
    grid-template-columns:1fr !important;
  }
}

@media (max-width: 560px){
  .hero-inner{padding:92px 0 28px}
  .hero-box{padding:16px}
  .hero-box p,.lead{font-size:1rem}
}
