*{box-sizing:border-box}html,body,h1,h2,h3,h4,p,ul,ol,li{margin:0;padding:0}

:root{
  --vac-brand:#2D3436;
  --vac-pop:#F4845F;
  --vac-night:#1C1E1F;
  --vac-surface:#F7F6F5;
  --vac-foreground:#2A2C2D;
  --vac-subtle:#6E7274;
  --vac-line:#DDD8D5;
}

html{scroll-behavior:smooth}

body{
  font-family:'Rubik',sans-serif;
  color:var(--vac-foreground);
  line-height:1.7;
  background:#fff;
}

h1,h2,h3,h4{font-family:'Poppins',sans-serif;color:var(--vac-brand)}

a{color:var(--vac-brand);text-decoration:none;transition:color .25s}
a:hover{color:var(--vac-pop)}

img{max-width:100%;display:block;border-radius:12px}

.vac-container{max-width:1200px;margin:0 auto;padding:0 24px}

.vac-btn{
  display:inline-block;
  padding:12px 28px;
  border-radius:6px;
  font-weight:500;
  font-size:.95rem;
  cursor:pointer;
  border:none;
}
.vac-btn-primary{background:var(--vac-pop);color:#fff}
.vac-btn-primary:hover{background:var(--vac-brand);color:#fff}
.vac-btn-cookie{background:var(--vac-pop);color:#fff;padding:8px 20px;font-size:.85rem}

/* Disclaimer */
.vac-disclaimer{background:var(--vac-night);color:#EDEAE8;font-size:.8rem;padding:10px 0}
.vac-disclaimer strong{color:var(--vac-pop)}

/* Header */
.vac-header{position:sticky;top:0;background:#fff;z-index:50;border-bottom:1px solid var(--vac-line)}
.vac-header-inner{display:flex;align-items:center;justify-content:space-between;height:72px}
.vac-brand{font-family:'Poppins',sans-serif;font-weight:700;font-size:1.3rem;color:var(--vac-brand)}
.vac-brand span{color:var(--vac-pop)}
.vac-nav{display:flex;gap:32px}
.vac-nav a{font-weight:500;font-size:.92rem;color:var(--vac-foreground)}
.vac-nav a:hover{color:var(--vac-pop)}
.vac-burger{display:none;flex-direction:column;gap:5px;cursor:pointer}
.vac-burger span{width:26px;height:3px;background:var(--vac-brand);border-radius:2px}

/* Hero */
.vac-hero{position:relative;overflow:hidden;color:#fff;padding:110px 0 90px}
.vac-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;border-radius:0}
.vac-hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(28,30,31,.88),rgba(45,52,54,.72));z-index:1}
.vac-hero-content{position:relative;z-index:2;max-width:640px}
.vac-badge{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);padding:6px 16px;border-radius:20px;font-size:.78rem;margin-bottom:20px;letter-spacing:.03em}
.vac-hero h1{color:#fff;font-size:2.6rem;font-weight:600;margin-bottom:18px;line-height:1.25}
.vac-hero-sub{font-size:1.08rem;color:#E7E4E2;margin-bottom:30px}

/* Section generic */
main section{padding:60px 0}
main section h2{font-size:2rem;margin-bottom:36px;font-weight:600}
.vac-section-lead{color:var(--vac-subtle);max-width:640px;margin-top:-20px;margin-bottom:36px;font-size:1rem}

/* Pilares */
.vac-pilares{background:var(--vac-surface)}
.vac-pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}
.vac-pillar{background:#fff;padding:32px 28px;border-radius:12px;border:1px solid var(--vac-line)}
.vac-pillar-icon{width:42px;height:42px;border-radius:50%;background:var(--vac-brand);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:16px}
.vac-pillar h3{font-size:1.15rem;margin-bottom:10px}
.vac-pillar p{color:var(--vac-subtle);font-size:.95rem}
.vac-pillar a{color:var(--vac-pop);font-weight:500;white-space:nowrap}

/* Destaques / quotes */
.vac-destaques{background:#fff}
.vac-quotes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.vac-quote{border-left:4px solid var(--vac-pop);padding:6px 0 6px 20px;font-size:1.02rem;color:var(--vac-brand);font-style:italic}

/* Sobre */
.vac-sobre{background:var(--vac-surface)}
.vac-sobre-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:48px;align-items:start}
.vac-sobre-text p{margin-bottom:16px;color:var(--vac-foreground)}
.vac-timeline-mini{border-left:2px solid var(--vac-line);padding-left:24px}
.vac-tlm-item{margin-bottom:24px}
.vac-tlm-item span{display:block;font-family:'Poppins',sans-serif;font-weight:700;color:var(--vac-pop);font-size:1.05rem;margin-bottom:4px}
.vac-tlm-item p{color:var(--vac-subtle);font-size:.92rem}

/* Processo / steps - cards com numeros grandes */
.vac-processo{background:#fff}
.vac-steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.vac-step{background:#fff;border:1px solid var(--vac-line);border-radius:12px;padding:28px 22px;text-align:center}
.vac-step-num{display:block;font-family:'Poppins',sans-serif;font-size:2.1rem;font-weight:700;color:var(--vac-pop);margin-bottom:10px}
.vac-step h3{font-size:1.02rem;margin-bottom:8px}
.vac-step p{color:var(--vac-subtle);font-size:.88rem}

/* FAQ */
.vac-faq{background:var(--vac-surface)}
.vac-faq-list{max-width:760px}
.vac-faq-item{border-bottom:1px solid var(--vac-line)}
.vac-faq-q{display:flex;justify-content:space-between;align-items:center;padding:18px 4px;cursor:pointer;font-weight:500;color:var(--vac-brand)}
.vac-faq-icon{font-size:1.3rem;color:var(--vac-pop);transition:transform .25s}
.vac-faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.vac-faq-a p{padding:0 4px 18px;color:var(--vac-subtle);font-size:.95rem}
.vac-faq-toggle:checked ~ .vac-faq-a{max-height:260px}
.vac-faq-toggle:checked ~ .vac-faq-q .vac-faq-icon{transform:rotate(45deg)}

/* Blog */
.vac-blog{background:var(--vac-surface)}
.vac-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.vac-blog-card{border:1px solid var(--vac-line);border-radius:12px;overflow:hidden;display:block}
.vac-blog-card img{border-radius:0;margin-bottom:0}
.vac-blog-card-body{padding:20px}
.vac-blog-card-body h3{font-size:1.02rem;margin-bottom:10px;color:var(--vac-brand)}
.vac-blog-link{color:var(--vac-pop);font-weight:500;font-size:.88rem}
.vac-blog-more{margin-top:30px;text-align:center}
.vac-blog-more a{font-weight:500;color:var(--vac-brand)}

/* Contato */
.vac-contato{background:#fff}
.vac-contato-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:36px}
.vac-contato-card{background:var(--vac-surface);border-radius:12px;padding:20px;text-align:center}
.vac-contato-card strong{display:block;font-size:.8rem;color:var(--vac-subtle);margin-bottom:6px;text-transform:uppercase;letter-spacing:.03em}
.vac-contato-card a,.vac-contato-card span{font-size:.95rem;color:var(--vac-brand);font-weight:500}
.vac-form{max-width:640px;background:var(--vac-surface);padding:32px;border-radius:12px}
.vac-form label{display:block;font-size:.85rem;font-weight:500;margin-bottom:6px;color:var(--vac-brand)}
.vac-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:16px}
.vac-form input,.vac-form textarea{width:100%;padding:11px 15px;border:1px solid var(--vac-line);border-radius:8px;font-family:'Rubik',sans-serif;font-size:.95rem;margin-bottom:16px;background:#fff}
.vac-form input:focus,.vac-form textarea:focus{outline:2px solid var(--vac-pop)}

/* Footer */
.vac-footer{background:var(--vac-night);color:#C7C4C2;padding-top:48px}
.vac-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding-bottom:36px}
.vac-brand-footer{color:#fff}
.vac-footer-col h4{color:#fff;font-size:.95rem;margin-bottom:14px}
.vac-footer-col a{display:block;color:#C7C4C2;font-size:.9rem;margin-bottom:8px}
.vac-footer-col a:hover{color:var(--vac-pop)}
.vac-footer-col p{font-size:.88rem;margin-bottom:6px;color:#C7C4C2}
.vac-footer-bottom{border-top:1px solid #33363780;padding:18px 0;font-size:.8rem}

/* Cookie banner */
.vac-cookie{position:fixed;bottom:0;left:0;right:0;background:var(--vac-night);color:#fff;z-index:100;padding:14px 0;box-shadow:0 -4px 16px rgba(0,0,0,.2)}
.vac-cookie-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.vac-cookie-text p{font-size:.85rem;color:#E7E4E2}
.vac-cookie-actions{display:flex;align-items:center;gap:18px}
.vac-cookie-actions a{color:#C7C4C2;font-size:.82rem;text-decoration:underline}
.vac-cookie-toggle:checked ~ .vac-cookie{display:none}

/* Paginas legais */
.vac-legal{padding:60px 0 80px}
.vac-legal-content{max-width:760px}
.vac-breadcrumb{font-size:.85rem;color:var(--vac-subtle);margin-bottom:20px}
.vac-breadcrumb a{color:var(--vac-subtle)}
.vac-legal-content h1{font-size:2rem;margin-bottom:30px}
.vac-legal-content h2{font-size:1.2rem;margin-top:30px;margin-bottom:10px}
.vac-legal-content p{color:var(--vac-foreground);margin-bottom:8px}

/* Blog listing e artigos */
.vac-bloglist{padding:60px 0 80px}
.vac-bloglist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:30px}
.vac-article{padding:50px 0 80px}
.vac-article-content{max-width:740px;margin:0 auto}
.vac-article-content h1{font-size:2rem;margin-bottom:6px}
.vac-byline{font-size:.85rem;color:var(--vac-subtle);margin-bottom:24px}
.vac-article-content img.vac-article-hero{margin-bottom:28px}
.vac-article-content h2{font-size:1.3rem;margin-top:34px;margin-bottom:12px}
.vac-article-content p{margin-bottom:16px;color:var(--vac-foreground)}
.vac-article-content ul{margin:0 0 16px 20px}
.vac-article-content li{margin-bottom:8px;color:var(--vac-foreground)}
.vac-author-box{display:flex;gap:14px;align-items:center;background:var(--vac-surface);padding:18px 20px;border-radius:8px;margin-top:32px}
.vac-author-avatar{width:48px;height:48px;border-radius:50%;background:var(--vac-line);flex-shrink:0}
.vac-author-box strong{font-size:.9rem;display:block}
.vac-author-box p{font-size:.82rem;color:var(--vac-subtle);margin-top:2px;margin-bottom:0}

/* Mobile */
@media (max-width:768px){
  .vac-nav{position:fixed;top:72px;left:0;right:0;background:#fff;flex-direction:column;padding:20px 24px;gap:16px;transform:translateY(-120%);transition:transform .3s;border-bottom:1px solid var(--vac-line)}
  .vac-nav-toggle:checked ~ .vac-header .vac-nav{transform:translateY(0)}
  .vac-burger{display:flex}
  .vac-hero h1{font-size:1.9rem}
  .vac-pillars-grid,.vac-quotes-grid,.vac-steps-grid,.vac-blog-grid,.vac-bloglist-grid{grid-template-columns:1fr}
  .vac-sobre-grid{grid-template-columns:1fr}
  .vac-form-row{grid-template-columns:1fr}
  .vac-footer-grid{grid-template-columns:1fr 1fr}
  .vac-contato-cards{grid-template-columns:1fr 1fr}
}
