:root{
  --navy:#233246;
  --accent:#8da7c8;
  --accent-light:#b6ccd7;
  --ink:#2b3542;
  --ink-soft:#54626f;
  --bg:#fafbfc;
  --bg-alt:#f2f4f6;
  --line:#e2e6ea;
  --white:#ffffff;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Work Sans',Arial,sans-serif;}
a{color:inherit;text-decoration:none;}
a:hover{opacity:.8;}
img{max-width:100%;display:block;}
.container{max-width:1140px;margin:0 auto;padding:0 24px;}
.eyebrow{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:18px;}
.eyebrow.left{justify-content:flex-start;}
.eyebrow-line{width:36px;height:1.5px;background:var(--navy);}
.eyebrow-text{font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);}
h1,h2{font-family:'Lora',Georgia,serif;font-weight:600;letter-spacing:-0.01em;margin:0;}
.section{padding:96px 24px;}
.section.alt{background:var(--bg-alt);}
.section-head{text-align:center;margin-bottom:56px;}
.section-head h2{font-size:38px;}

/* NAV */
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 24px;background:var(--navy);}
.nav-logo img{height:34px;width:auto;}
.nav-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap;font-size:14px;font-weight:500;color:#eaeef2;}
.nav-toggle{display:none;}
.btn{display:inline-block;padding:15px 30px;border-radius:8px;font-weight:600;font-size:15px;}
.btn-primary{background:var(--navy);color:#fff;}
.btn-outline{background:transparent;border:1.5px solid #c3cad0;color:var(--navy);}
.btn-small{padding:11px 22px;background:var(--accent);color:var(--navy);font-weight:700;font-size:13.5px;letter-spacing:.02em;border-radius:8px;}

/* HERO */
.hero{max-width:1320px;margin:0 auto;padding:96px 24px;position:relative;}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center;position:relative;z-index:1;}
.hero h1{font-size:56px;line-height:1.08;margin-bottom:18px;}
.hero h1 em{font-style:italic;font-weight:500;color:var(--navy);}
.hero p{font-size:17px;line-height:1.75;color:#44515e;max-width:500px;margin:0 0 12px;}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0 30px;}
.credentials{display:flex;border-top:1px solid var(--line);padding-top:22px;}
.credentials div{padding:0 24px;border-right:1px solid var(--line);}
.credentials div:first-child{padding-left:0;}
.credentials div:last-child{border-right:none;}
.credentials strong{display:block;font-family:'Lora',serif;font-weight:600;font-size:14px;}
.credentials span{font-size:14px;color:var(--ink-soft);}
.hero-photo{position:relative;}
.hero-photo::before{content:"";position:absolute;top:-20px;left:-20px;right:20px;bottom:20px;border:1.5px solid var(--accent);border-radius:4px;z-index:0;}
.hero-photo img{position:relative;z-index:1;width:100%;object-fit:cover;aspect-ratio:4/5;box-shadow:0 32px 64px -24px rgba(30,45,65,.4);}
.hero-badge{position:absolute;z-index:2;bottom:-18px;left:-18px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px 20px;box-shadow:0 12px 24px -12px rgba(30,45,65,.3);font-size:13px;font-weight:600;color:var(--navy);}

/* TRUST STRIP */
.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-alt);}
.trust-strip .container{padding:22px 24px;display:flex;justify-content:center;gap:20px;flex-wrap:wrap;align-items:center;font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#4c5966;}
.trust-strip span.dot{color:#c3cad0;}

/* PAIN POINTS */
.pain{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;max-width:1140px;margin:0 auto;}
.pain h2{font-size:34px;line-height:1.2;margin-bottom:22px;}
.pain-list{display:grid;gap:16px;margin-bottom:28px;}
.pain-item{display:flex;gap:12px;align-items:flex-start;}
.pain-item .dot{width:6px;height:6px;border-radius:50%;background:var(--navy);margin-top:9px;flex-shrink:0;}
.pain-item p{font-size:16px;line-height:1.6;color:#44515e;margin:0;}
.pain-note{font-size:16px;line-height:1.7;color:#333f4b;font-weight:500;}
.pain img{aspect-ratio:5/4;width:100%;object-fit:cover;border-radius:6px;box-shadow:0 24px 48px -24px rgba(30,45,65,.35);}

/* CARD GRIDS */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;}
.card{padding:28px;border:1px solid var(--line);border-radius:6px;background:#fff;}
.card h3{font-family:'Lora',serif;font-weight:600;font-size:18px;margin:0 0 8px;}
.card p{font-size:14px;color:var(--ink-soft);line-height:1.6;margin:0;}
.card.accent-top{border-top:3px solid var(--accent);padding:32px;}
.card.accent-top h3{font-size:21px;}
.card.accent-top p{font-size:15px;}

/* DARK DIFERENCIAIS */
.dark{background:var(--navy);color:#f0f2f4;}
.dark h2{color:#fff;}
.diff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;text-align:left;margin-bottom:44px;}
.diff-card{padding:28px;background:rgba(255,255,255,.06);border-radius:8px;border:1px solid rgba(255,255,255,.12);}
.diff-card h3{font-family:'Lora',serif;font-weight:600;font-size:18px;margin:0 0 8px;color:var(--accent-light);}
.diff-card p{font-size:14px;line-height:1.6;opacity:.85;margin:0;}

/* SOBRE + FORMACAO */
.quote{font-family:'Lora',serif;font-style:italic;font-weight:500;font-size:26px;line-height:1.5;text-align:center;max-width:820px;margin:0 auto 56px;color:#333f4b;}
.timeline{position:relative;padding-left:36px;max-width:640px;margin:0 auto;}
.timeline::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:1.5px;background:linear-gradient(#ccd2d8,transparent);}
.tl-item{position:relative;padding-bottom:44px;}
.tl-item:last-child{padding-bottom:0;}
.tl-item::before{content:"";position:absolute;left:-36px;top:2px;width:15px;height:15px;border-radius:50%;background:#fff;border:2.5px solid var(--navy);}
.tl-item:last-child::before{background:var(--navy);}
.tl-year{font-size:12.5px;font-weight:700;letter-spacing:.08em;color:var(--navy);text-transform:uppercase;margin-bottom:6px;}
.tl-item h3{font-family:'Lora',serif;font-weight:600;font-size:19px;margin:0 0 5px;}
.tl-item p{color:var(--ink-soft);font-size:15px;margin:0;}

/* CONTEUDO */
.post-card{background:#fff;border-radius:6px;overflow:hidden;border:1px solid var(--line);}
.post-card img{width:100%;aspect-ratio:1/1;object-fit:cover;}
.post-card .post-title{padding:20px;font-weight:600;font-size:16px;line-height:1.4;font-family:'Lora',serif;}

/* FAQ */
.faq-item{padding:24px 28px;background:#fff;border-radius:6px;border:1px solid var(--line);margin-bottom:14px;}
.faq-item h3{font-size:16px;margin:0 0 8px;font-family:'Work Sans',sans-serif;font-weight:600;}
.faq-item p{font-size:14.5px;color:var(--ink-soft);line-height:1.6;margin:0;}

/* CONTATO */
.contato-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;max-width:1100px;margin:0 auto;}
.contato p{font-size:16px;line-height:1.8;opacity:.85;margin:0 0 4px;}
.map-frame{border-radius:6px;overflow:hidden;border:1px solid rgba(255,255,255,.15);aspect-ratio:4/3;}
.map-frame iframe{width:100%;height:100%;border:0;display:block;}

/* FOOTER */
footer{padding:28px 24px;background:#171f29;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
footer img{height:26px;opacity:.9;}
.footer-meta{color:#9aa4ad;font-size:13px;display:flex;gap:16px;flex-wrap:wrap;}

@media (max-width:900px){
  .hero-grid,.pain,.contato-grid{grid-template-columns:1fr;}
  .hero h1{font-size:42px;}
  .section-head h2{font-size:30px;}
  .section{padding:64px 20px;}
}
@media (max-width:640px){
  .nav{padding:12px 16px;}
  .nav-logo img{height:26px;}
  .nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;background:transparent;border:none;padding:8px;cursor:pointer;}
  .nav-toggle span{width:24px;height:2px;background:#fff;display:block;}
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--navy);flex-direction:column;align-items:flex-start;padding:8px 16px 20px;gap:14px;box-shadow:0 12px 24px -12px rgba(0,0,0,.4);}
  .nav-links.open{display:flex;}
  .nav-links .btn-small{width:100%;text-align:center;}
}
@media (max-width:600px){
  .hero h1{font-size:34px;}
  .credentials{flex-wrap:wrap;}
}
