*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Karla',sans-serif;color:#1A1A2E;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{text-decoration:none}

/* ── GLOBAL ── */
.gv-wrap{max-width:1100px;margin:0 auto;padding:0 24px}
h2{font-family:'Outfit',sans-serif;font-size:2rem;color:#1B4965;text-align:center;margin-bottom:16px}
.gv-section-sub{text-align:center;color:#777;margin-bottom:48px}

/* ── DISCLAIMER ── */
.gv-disclaimer{background:#1B4965;color:#fff;font-size:13px;padding:10px 0;text-align:center}

/* ── HEADER ── */
.gv-header{position:sticky;top:0;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.06);z-index:100}
.gv-header-inner{display:flex;justify-content:space-between;align-items:center;height:64px}
.gv-logo{font-family:'Outfit',sans-serif;font-weight:700;font-size:1.3rem;color:#1B4965}
.gv-logo span{color:#BEE9E8}
.gv-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}
.gv-burger span{display:block;width:22px;height:2px;background:#1B4965;border-radius:2px;transition:transform .3s,opacity .3s}
.gv-burger-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.gv-burger-open span:nth-child(2){opacity:0}
.gv-burger-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.gv-nav{display:flex;gap:24px;align-items:center}
.gv-nav a{font-family:'Karla',sans-serif;font-size:.9rem;color:#555;transition:color .2s}
.gv-nav a:hover{color:#1B4965}

/* ── HERO (Type A) ── */
.gv-hero{padding:80px 24px 0;background:#fff;text-align:center}
.gv-hero-inner{max-width:700px;margin:0 auto}
.gv-hero-badge{display:inline-block;background:rgba(190,233,232,.3);border:1px solid #BEE9E8;color:#1B4965;font-size:12px;text-transform:uppercase;padding:6px 16px;border-radius:20px;letter-spacing:1px;margin-bottom:16px}
.gv-hero h1{font-family:'Outfit',sans-serif;font-size:2.6rem;color:#1B4965;line-height:1.2;margin-bottom:16px}
.gv-hero-sub{font-size:1rem;color:#555;margin-bottom:28px;line-height:1.7}
.gv-btn{display:inline-block;background:#1B4965;color:#fff;padding:14px 32px;border-radius:8px;font-family:'Outfit',sans-serif;font-weight:600;transition:filter .2s;border:none;cursor:pointer}
.gv-btn:hover{filter:brightness(1.15)}
.gv-hero-img{margin-top:48px}
.gv-hero-img img{width:100%;border-radius:16px;object-fit:cover;max-height:420px;box-shadow:0 12px 32px rgba(0,0,0,.08)}

/* ── ABOUT ── */
.gv-about{padding:80px 24px;background:#F8FAFA}
.gv-about-inner{display:grid;grid-template-columns:45% 55%;gap:48px;align-items:center}
.gv-about-img img{border-radius:16px;width:100%;object-fit:cover;box-shadow:0 8px 24px rgba(0,0,0,.07)}
.gv-about-text h2{font-family:'Outfit',sans-serif;text-align:left;color:#1B4965}
.gv-about-text p{line-height:1.75;color:#444;margin-bottom:14px}

/* ── CARDS ── */
.gv-cards{padding:80px 24px;background:#fff}
.gv-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1000px;margin:0 auto}
.gv-card{background:#F8FAFA;border-radius:14px;padding:28px;position:relative;border-left:4px solid #BEE9E8;transition:box-shadow .3s,transform .3s}
.gv-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.08);transform:translateY(-3px)}
.gv-card-badge{position:absolute;top:16px;right:16px;background:#BEE9E8;color:#1B4965;font-size:11px;font-weight:700;text-transform:uppercase;padding:3px 10px;border-radius:4px}
.gv-card h3{font-family:'Outfit',sans-serif;font-size:1rem;color:#1B4965;margin-bottom:10px;margin-top:8px}
.gv-card p{font-size:.85rem;color:#555;line-height:1.65}

/* ── STEPS ── */
.gv-steps{padding:80px 24px;background:#1B4965}
.gv-steps h2,.gv-steps .gv-section-sub{color:#fff}
.gv-steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1000px;margin:0 auto}
.gv-step{background:rgba(255,255,255,.08);border-radius:14px;padding:28px;border:1px solid rgba(255,255,255,.1)}
.gv-step-num{font-family:'Outfit',sans-serif;font-size:2.5rem;font-weight:800;color:#BEE9E8;display:block;margin-bottom:12px}
.gv-step h3{font-family:'Outfit',sans-serif;font-size:.95rem;color:#fff;margin-bottom:8px}
.gv-step p{font-size:.85rem;color:rgba(255,255,255,.6);line-height:1.65}

/* ── BLOG ── */
.gv-blog{padding:80px 24px;background:#F8FAFA}
.gv-blog-list{display:flex;flex-direction:column;gap:24px;max-width:900px;margin:0 auto}
.gv-blog-card{display:flex;gap:24px;background:#fff;border-radius:14px;overflow:hidden;color:#333;transition:box-shadow .3s,transform .3s}
.gv-blog-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.08);transform:translateY(-2px)}
.gv-blog-img{flex-shrink:0;width:240px}
.gv-blog-img img{width:100%;height:100%;object-fit:cover}
.gv-blog-body{padding:24px 24px 24px 0;flex:1;display:flex;flex-direction:column;justify-content:center}
.gv-blog-tag{display:inline-block;background:#1B4965;color:#fff;padding:3px 10px;border-radius:4px;font-size:11px;font-weight:700;text-transform:uppercase;margin-bottom:10px;align-self:flex-start}
.gv-blog-card h3{font-family:'Outfit',sans-serif;font-size:1rem;color:#1B4965;margin-bottom:8px;line-height:1.35}
.gv-blog-card p{font-size:.85rem;color:#555;margin-bottom:12px;line-height:1.6}
.gv-blog-link{color:#1B4965;font-size:.85rem;font-weight:600}

/* ── FAQ ── */
.gv-faq{padding:80px 24px;background:#fff}
.gv-faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.gv-faq-item{background:#F8FAFA;border-radius:12px;overflow:hidden;border:1px solid #eee}
.gv-faq-item summary{font-family:'Outfit',sans-serif;font-size:.95rem;color:#1B4965;font-weight:600;padding:20px 24px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.gv-faq-item summary::after{content:'▸';transition:transform .3s}
.gv-faq-item[open] summary::after{transform:rotate(90deg)}
.gv-faq-item summary::-webkit-details-marker{display:none}
.gv-faq-item p{padding:0 24px 20px;font-size:.88rem;color:#555;line-height:1.7}

/* ── CONTACT ── */
.gv-contact{padding:80px 24px;background:#F8FAFA}
.gv-contact-inner{display:grid;grid-template-columns:60% 40%;gap:48px}
.gv-contact-form h2{font-family:'Outfit',sans-serif;color:#1B4965;text-align:left}
.gv-contact-form>p{margin-bottom:24px;color:#555}
.gv-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.gv-field{margin-bottom:16px}
.gv-field label{font-size:13px;font-weight:700;display:block;margin-bottom:6px;color:#333}
.gv-field input,.gv-field textarea{width:100%;padding:12px 16px;border-radius:8px;border:1px solid #ddd;font-family:'Karla',sans-serif;font-size:.9rem;box-sizing:border-box;transition:border-color .2s}
.gv-field input:focus,.gv-field textarea:focus{border-color:#1B4965;outline:none}

/* ── CONTACT INFO ── */
.gv-contact-info{background:#1B4965;color:#fff;border-radius:16px;padding:36px;align-self:start}
.gv-contact-info h3{font-family:'Outfit',sans-serif;font-size:1.1rem;color:#BEE9E8;margin-bottom:20px}
.gv-contact-info ul{list-style:none;padding:0}
.gv-contact-info ul li{margin-bottom:14px;font-size:.9rem;opacity:.85}

/* ── FOOTER ── */
.gv-footer{background:#0E2A3A;color:#fff;padding:60px 24px 0}
.gv-footer-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.gv-footer-col h4{font-family:'Outfit',sans-serif;color:#BEE9E8;font-size:1rem;margin-bottom:16px}
.gv-footer-col p{font-size:.85rem;opacity:.5}
.gv-footer-col ul{list-style:none;padding:0}
.gv-footer-col ul li{margin-bottom:8px}
.gv-footer-col ul a{color:#fff;opacity:.5;font-size:.85rem;transition:color .2s,opacity .2s}
.gv-footer-col ul a:hover{color:#BEE9E8;opacity:1}
.gv-footer-cnpj{margin-top:16px;font-size:12px;opacity:.35}
.gv-footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:40px;padding:20px 0;text-align:center;font-size:12px;opacity:.35}

/* ── RESPONSIVE ── */
@media(max-width:768px){
  .gv-burger{display:flex}
  .gv-nav{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;flex-direction:column;padding:16px 24px;gap:16px;box-shadow:0 4px 12px rgba(0,0,0,.06)}
  .gv-nav-open{display:flex}
  .gv-hero{padding:50px 24px 0}
  .gv-hero h1{font-size:1.9rem}
  .gv-about{padding:50px 24px}
  .gv-about-inner{grid-template-columns:1fr}
  .gv-cards{padding:50px 24px}
  .gv-cards-grid{grid-template-columns:1fr}
  .gv-steps{padding:50px 24px}
  .gv-steps-grid{grid-template-columns:repeat(2,1fr)}
  .gv-blog{padding:50px 24px}
  .gv-blog-card{flex-direction:column}
  .gv-blog-img{width:100%}
  .gv-blog-img img{height:200px}
  .gv-blog-body{padding:24px}
  .gv-faq{padding:50px 24px}
  .gv-contact{padding:50px 24px}
  .gv-contact-inner{grid-template-columns:1fr}
  .gv-row{grid-template-columns:1fr}
  .gv-footer{padding:50px 24px 0}
  .gv-footer-inner{grid-template-columns:1fr}
}
@media(max-width:480px){
  .gv-steps-grid{grid-template-columns:1fr}
}
