/* Reset e variáveis */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --primary:#0d6efd;
  --accent:#0b5ed7;
  --bg:#f6f9fc;
  --card:#ffffff;
  --muted:#6c757d;
  --dark:#222;
  --container:1100px;
  --radius:10px;
}
html,body{height:100%}
body{font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, Arial;line-height:1.6;color:var(--dark);background:var(--bg);-webkit-font-smoothing:antialiased}
.container{max-width:var(--container);margin:0 auto;padding:2rem}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{display:inline-block;align-items:center;gap:.75rem;text-decoration:none;color:var(--dark);font-weight:800;font-size:1.4rem;letter-spacing:0.6px;text-transform:uppercase}
.brand .logo{display:none}
.brand-small{font-size:0.95rem}
.site-header{position:sticky;top:0;background:rgba(255,255,255,0.96);backdrop-filter:blur(4px);box-shadow:0 2px 6px rgba(16,24,40,0.03);z-index:50;border-bottom:1px solid rgba(0,0,0,0.05)}
.main-nav a{margin-left:1.2rem;text-decoration:none;color:var(--dark);font-weight:600}
.nav-toggle{display:none;background:none;border:0;font-size:1.5rem}
/* HERO */
.hero{padding:4rem 0;background:linear-gradient(180deg,#ffffff 0%, #f0f6ff 100%)}
/* layout adaptativo: por padrão uma coluna; em telas grandes mostrará 2 colunas somente se necessário */
.hero-inner{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center}
@media (min-width:1000px){ .hero-inner{grid-template-columns:1fr 360px} }
.hero h1{font-size:2.25rem;line-height:1.05;margin-bottom:.6rem}
.lead{color:var(--muted);margin-bottom:1rem}
.hero-ctas .btn{margin-right:.6rem}
.card{background:var(--card);padding:1.2rem;border-radius:var(--radius);box-shadow:0 6px 18px rgba(16,24,40,0.06)}
.highlight{border-left:4px solid var(--primary)}
.btn{display:inline-block;padding:.7rem 1rem;border-radius:8px;border:0;cursor:pointer}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--accent)}
.btn-secondary{background:#fff;border:1px solid rgba(13,110,253,0.12);color:var(--dark)}
.btn-outline{background:transparent;border:1px solid rgba(0,0,0,0.08);color:var(--dark)}

/* SOBRE - tipografia e cards */
/* SOBRE - tipografia, cards e seções */
.about-grid{display:grid;grid-template-columns:1fr;gap:1.2rem;align-items:start}
@media (min-width:900px){ .about-grid{grid-template-columns:2fr 1fr;gap:2rem} }
.about-intro h2{font-size:1.9rem;letter-spacing:0.2px;margin-bottom:.6rem}
.about-intro .lead{font-size:1rem;color:var(--muted);margin-bottom:1rem}
.about-card{padding:1rem}
.differentials{margin-top:.6rem}
.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0.8rem;margin-top:1rem}
.stat{background:linear-gradient(180deg,#fff,#fbfdff);border-radius:8px;padding:1rem;text-align:center;box-shadow:0 6px 18px rgba(16,24,40,0.03)}
.stat-num{font-size:1.4rem;font-weight:800;color:var(--primary)}
.stat-label{color:var(--muted);font-size:0.9rem;margin-top:0.4rem}

/* SERVICES PAGE */
.services-hero{padding:1.2rem 0 0.8rem}
.services-hero h1{font-size:2rem;margin-bottom:0.4rem}
.services-hero .lead{color:var(--muted)}

.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-top:1rem}
.service-card{padding:1rem;display:flex;flex-direction:column;gap:0.6rem;border-radius:10px}
.service-card .icon{width:56px;height:56px;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.3rem}
.service-card h3{margin-top:0.4rem}
.service-card p.muted{color:var(--muted);font-size:0.95rem}
.service-card ul{margin-top:0.6rem;padding-left:1.1rem;color:var(--muted)}
.service-card:hover{transform:translateY(-6px);box-shadow:0 12px 30px rgba(16,24,40,0.08)}

.services-details{margin-top:1.4rem}
.services-details details{margin-top:0.8rem}

.services-faq{margin-top:1.4rem}
.services-faq details{background:var(--card);padding:0.9rem;border-radius:8px;margin-bottom:.6rem}
.services-faq summary{font-weight:700;cursor:pointer}

/* HERO ABOUT */
.about-hero{padding:2.2rem 0}
.about-hero-inner{display:grid;grid-template-columns:1fr;gap:1.2rem;align-items:center}
@media (min-width:900px){ .about-hero-inner{grid-template-columns:1fr 320px} }
.about-copy h1{font-size:2rem;margin-bottom:0.5rem}
.about-copy .lead{font-size:1.05rem;color:var(--muted)}
.about-copy .intro-cta{margin-top:1rem}
.about-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0.8rem}
.about-stats .stat{padding:1.2rem;border-radius:10px;text-align:left}
.about-stats .stat-num{font-size:1.6rem}

/* MISSION & VALUES */
.mission-values .card{padding:1.2rem}
.mission-values h2{margin-bottom:.6rem}

/* TIMELINE */
.timeline{margin-top:1.2rem}
.timeline ol{list-style:none;padding-left:0;border-left:3px solid rgba(13,110,253,0.12);margin-left:0}
.timeline ol li{position:relative;padding:1rem 1rem 1rem 1.2rem;margin-bottom:1rem}
.timeline ol li strong{display:block;color:var(--primary);font-weight:800}
.timeline ol li::before{content:"";position:absolute;left:-9px;top:1.05rem;width:12px;height:12px;border-radius:50%;background:var(--card);border:3px solid var(--primary)}

/* TEAM */
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:1rem}
.member{padding:1rem;text-align:center}
.member .avatar{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 0.6rem;font-weight:800}
.member h4{margin-bottom:0.2rem}
.member p{color:var(--muted);font-size:0.95rem}

/* CERTIFICATES */
.certs-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0.6rem;margin-top:0.8rem}
.certs-list li{background:var(--card);padding:0.8rem;border-radius:8px}

/* CTA */
.cta .card{display:flex;flex-direction:column;gap:0.6rem;align-items:flex-start}
.cta .cta-actions .btn{margin-right:0.6rem}


/* SECTIONS */
.container h2{margin-bottom:1rem}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:1rem}
.two-col{grid-template-columns:1fr 1fr}
.card h3{margin-bottom:.6rem}
.benefits, .differentials{margin-top:.8rem;list-style:disc;padding-left:1.2rem;color:var(--muted)}
.process .steps{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.step{background:var(--card);padding:1rem;border-radius:8px;text-align:center;box-shadow:0 6px 18px rgba(16,24,40,0.03)}
.testimonials blockquote{padding:1rem;border-left:4px solid var(--primary);background:linear-gradient(180deg,#fff,#fbfdff);border-radius:8px}
.text-right{text-align:right}
/* FORMULÁRIO */
.orcamento .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.orcamento label{display:block;margin-top:1rem;font-weight:600;color:var(--dark)}
.orcamento input[type="text"], .orcamento input[type="email"], .orcamento input[type="tel"], .orcamento input[type="number"], .orcamento select, .orcamento textarea{width:100%;padding:.7rem;border:1px solid rgba(16,24,40,0.08);border-radius:8px;margin-top:.4rem;background:#fff}
.file-input input[type="file"]{margin-top:.5rem}
.checkbox{margin-top:1rem}
.form-actions{display:flex;gap:1rem;margin-top:1rem}
.form-status{margin-top:.5rem;color:var(--muted)}

/* CONTACT INFO */
.contact-info{margin-top:1.2rem}
.contact-grid{display:grid;grid-template-columns:1fr 280px;gap:1rem}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}
.contact-card{background:var(--card);padding:1rem;border-radius:10px;box-shadow:0 8px 20px rgba(16,24,40,0.04)}
.contact-card h3{margin-bottom:.4rem}
.contact-card p{margin:0.35rem 0;color:var(--muted)}
.contact-card a{color:var(--primary);text-decoration:none}

/* MODAL */
.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(2,6,23,0.5);z-index:60}
.modal[aria-hidden="false"]{display:flex}
.modal-content{background:#fff;padding:1.2rem;border-radius:10px;max-width:640px;width:100%;box-shadow:0 10px 30px rgba(2,6,23,0.2)}
.modal-actions{display:flex;justify-content:flex-end;margin-top:1rem}
/* RODAPÉ */
.site-footer{background:transparent;border-top:1px solid rgba(0,0,0,0.06);padding:1.5rem 0;margin-top:2rem}
.footer-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.footer-left,.footer-center,.footer-right{flex:0 0 auto}
.footer-left{max-width:420px}
.footer-center{display:flex;align-items:center}
.footer-center .footer-nav{display:flex;flex-direction:column;gap:0.4rem}
.footer-right{display:flex;align-items:center;justify-content:flex-end}
.footer-contact p{margin:0.15rem 0;color:var(--muted);font-size:0.95rem}
.footer-contact a{color:var(--dark);text-decoration:none}
.brand-small{font-weight:700;margin-bottom:0.3rem}
.footer-nav a{margin-left:0;text-decoration:none;color:var(--muted)}
.copyright{color:var(--muted);font-size:0.95rem}
@media (max-width:900px){
  .footer-inner{flex-direction:column;align-items:flex-start}
  .footer-center .footer-nav{flex-direction:row;gap:1rem;margin-top:0.6rem}
  .footer-right{margin-top:0.6rem;width:100%}
  .footer-right{justify-content:flex-start}
}
/* Responsivo */
@media (max-width:1000px){.hero-inner{grid-template-columns:1fr}} 
@media (max-width:800px){
  .main-nav{display:none}
  .nav-toggle{display:block}
  .site-header .container{gap:1rem}
  .footer-inner{flex-direction:column;align-items:flex-start}
}

