@font-face{font-family:'Delius';src:url('/Delius-Regular.woff2') format('woff2');font-display:swap;}
@font-face{font-family:'CascadiaMono';src:url('/CascadiaMono-subset.woff2') format('woff2');font-display:swap;}
:root{
  /* Sponte-inspired palette */
  --blue:#1A56DB;--blue-dk:#1344B8;--blue-lt:#EBF0FD;--blue-mid:#2563EB;
  --green:#06B77B;--green-dk:#059669;--green-lt:#ECFDF5;--green-bd:rgba(6,183,123,0.2);
  --red:#DC2626;--red-lt:#FEF2F2;
  --teal:#00BCD4;--teal-lt:rgba(0,188,212,0.1);--teal-bd:rgba(0,188,212,0.25);
  /* Light theme */
  --bg:#FFFFFF;--bg2:#F8FAFC;--bg3:#F1F5F9;--bg4:#E2E8F0;--bg5:#CBD5E1;
  --text:#0F172A;--texts:#334155;--textm:#64748B;--textl:#94A3B8;
  --border:#E2E8F0;--border-md:#CBD5E1;
  --shadow:0 1px 3px rgba(0,0,0,.08),0 4px 16px rgba(0,0,0,.05);
  --shadow-md:0 4px 12px rgba(0,0,0,.08),0 8px 32px rgba(0,0,0,.06);
  --shadow-lg:0 8px 24px rgba(0,0,0,.1),0 16px 48px rgba(0,0,0,.08);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:72px;}
body{background:var(--bg);color:var(--text);font-family:'Nunito Sans',system-ui,sans-serif;font-weight:400;overflow-x:hidden;line-height:1.6;}
::-webkit-scrollbar{width:4px;}::-webkit-scrollbar-track{background:var(--bg3);}::-webkit-scrollbar-thumb{background:var(--blue);border-radius:4px;}

/* ── NAV ── */
nav{position:fixed;top:0;width:100%;z-index:200;padding:0 5vw;height:72px;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,0.96);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);box-shadow:0 1px 8px rgba(0,0,0,.06);transition:height .3s,box-shadow .3s;}
.nlogo img{height:38px;width:auto;display:block;}
.nlinks{display:flex;gap:1.35rem;list-style:none;align-items:center;}
.nlinks a{white-space:nowrap;}
.nsep{width:1px;height:20px;background:var(--border-md);}
.nlinks a{text-decoration:none;color:var(--textm);font-size:.82rem;letter-spacing:.02em;font-weight:600;transition:color .2s;font-family:'Nunito',sans-serif;}
.nlinks a:hover,.nlinks a:focus{color:var(--blue);}
.npill{padding:.5rem 1.3rem;background:var(--blue)!important;color:#fff!important;border-radius:8px;font-weight:700!important;box-shadow:0 2px 8px rgba(26,86,219,0.3);}
.npill:hover{background:var(--blue-dk)!important;transform:translateY(-1px);}
.ntl{color:var(--green)!important;}
.hbtn{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px;}
.hbtn span{width:22px;height:2px;background:var(--text);display:block;border-radius:2px;}
.mmenu{display:none;position:fixed;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid var(--border);padding:1.5rem 5vw;flex-direction:column;gap:0;z-index:199;box-shadow:0 8px 24px rgba(0,0,0,.1);}
.mmenu.open{display:flex;}
.mmenu a{text-decoration:none;color:var(--textm);font-size:.9rem;font-weight:600;transition:color .2s;padding:.8rem 0;border-bottom:1px solid var(--border);display:block;font-family:'Nunito',sans-serif;}
.mmenu a:hover{color:var(--blue);}
.mmenu-t{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--textl);padding:1rem 0 .2rem;font-family:'Nunito',sans-serif;}
.mmenu-t:first-child{padding-top:0;}
.mmenu{max-height:calc(100vh - 72px);overflow-y:auto;z-index:4100;}

/* ── BUTTONS ── */
.btn-r{padding:.8rem 1.8rem;background:var(--blue);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:700;letter-spacing:.02em;cursor:pointer;text-decoration:none;transition:background .2s,transform .2s,box-shadow .2s;display:inline-block;box-shadow:0 2px 8px rgba(26,86,219,0.3);font-family:'Nunito',sans-serif;}
.btn-r:hover{background:var(--blue-dk);transform:translateY(-2px);box-shadow:0 4px 16px rgba(26,86,219,0.4);}
.btn-o{padding:.8rem 1.8rem;background:transparent;color:var(--blue);border:2px solid var(--blue);border-radius:8px;font-size:.82rem;font-weight:700;letter-spacing:.02em;cursor:pointer;text-decoration:none;transition:all .2s;display:inline-block;font-family:'Nunito',sans-serif;}
.btn-o:hover{background:var(--blue-lt);transform:translateY(-2px);}
.btn-t{padding:.8rem 1.8rem;background:var(--green);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:700;letter-spacing:.02em;cursor:pointer;text-decoration:none;transition:background .2s,transform .2s,box-shadow .2s;display:inline-block;box-shadow:0 2px 8px rgba(6,183,123,0.3);font-family:'Nunito',sans-serif;}
.btn-t:hover{background:var(--green-dk);transform:translateY(-2px);box-shadow:0 4px 16px rgba(6,183,123,0.4);}
.btn-tw{padding:.9rem 2rem;background:var(--green);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:700;letter-spacing:.02em;cursor:pointer;text-decoration:none;transition:background .2s,box-shadow .2s;display:block;text-align:center;box-shadow:0 2px 8px rgba(6,183,123,0.3);font-family:'Nunito',sans-serif;}
.btn-tw:hover{background:var(--green-dk);box-shadow:0 4px 16px rgba(6,183,123,0.4);}

/* ── HERO ── */
#hero{min-height:100vh;padding:72px 5vw 5rem;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:4vw;position:relative;overflow:hidden;background:linear-gradient(135deg,#F8FAFF 0%,#EBF0FD 40%,#F0FDF9 100%);}
.hbg{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 50% 60% at 80% 40%,rgba(26,86,219,0.08),transparent 70%),radial-gradient(ellipse 30% 40% at 10% 80%,rgba(6,183,123,0.06),transparent 65%);}
.hgrid{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(rgba(26,86,219,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(26,86,219,0.04) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black,transparent);}
.hcon{position:relative;z-index:1;}
.hey{display:flex;align-items:center;gap:.7rem;margin-bottom:1.8rem;}
.heyl{width:28px;height:2px;background:var(--blue);border-radius:2px;}
.heyt{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);font-weight:700;font-family:'Nunito',sans-serif;}
.hh1{font-size:clamp(2.4rem,4.8vw,4.4rem);font-weight:900;line-height:1.05;color:var(--text);text-transform:uppercase;margin-bottom:1.5rem;font-family:'Nunito',sans-serif;}
.hh1 .acc{color:var(--blue);}
.hh1 .sub{display:block;font-size:40%;font-weight:500;color:var(--textm);letter-spacing:.02em;text-transform:none;margin-top:.7rem;line-height:1.6;font-family:'Nunito Sans',sans-serif;}
.hdesc{font-size:.95rem;color:var(--texts);max-width:500px;line-height:1.85;margin-bottom:2.2rem;}
.hact{display:flex;gap:.9rem;flex-wrap:wrap;}
.hpil{display:flex;gap:1.6rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border);flex-wrap:wrap;}
.pil{display:flex;align-items:center;gap:.5rem;}
.pild{width:6px;height:6px;background:var(--blue);border-radius:50%;}
.pilt{font-size:.72rem;letter-spacing:.06em;color:var(--textm);font-weight:600;font-family:'Nunito',sans-serif;}
.hvis{position:relative;z-index:1;}

/* ── HERO CARDS ── */
.hcard{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.6rem;position:relative;overflow:hidden;box-shadow:var(--shadow);}
.hcard::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--blue);border-radius:2px 0 0 2px;}
.hcard.tc::before{background:var(--green);}
.hcard+.hcard{margin-top:.75rem;}
.hcard.tc{border-color:var(--green-bd);}
.hcl{font-size:.63rem;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:.5rem;font-weight:700;font-family:'Nunito',sans-serif;}
.hcl.tc{color:var(--green);}
.hct{font-size:.96rem;font-weight:800;color:var(--text);margin-bottom:.4rem;font-family:'Nunito',sans-serif;}
.hcb{font-size:.79rem;color:var(--textm);line-height:1.65;}
.htags{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.8rem;}
.htag{font-size:.63rem;padding:.2rem .55rem;background:var(--blue-lt);border-radius:20px;color:var(--blue);font-weight:600;font-family:'Nunito',sans-serif;}
.htag.tc{background:var(--green-lt);color:var(--green-dk);}
.hprodgrid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;}
.pcard{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1rem;display:flex;flex-direction:column;justify-content:flex-start;gap:.7rem;position:relative;overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transition:transform .2s,box-shadow .2s;}
.pcard:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.pcard::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--pc,var(--blue));}
.pcl{font-size:.55rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--pc,var(--blue));font-family:'Nunito',sans-serif;line-height:1.3;}
.pcico{font-size:1.6rem;line-height:1;margin-bottom:.4rem;display:flex;align-items:center;gap:.3rem;min-height:30px;}
.pcico img{height:28px;width:auto;display:block;}
.pcn{font-size:.86rem;font-weight:800;color:var(--text);font-family:'Nunito',sans-serif;line-height:1.15;margin-bottom:.5rem;}
.pctags{display:flex;gap:.3rem;flex-wrap:wrap;}
.pctag{font-size:.54rem;padding:.15rem .45rem;border-radius:20px;background:var(--bg3);color:var(--textm);font-weight:600;font-family:'Nunito',sans-serif;}
.pcard-all{align-items:center;justify-content:center;text-align:center;background:linear-gradient(135deg,var(--blue-lt),#F0FDF9);border-style:dashed;border-color:var(--border-md);}
.pcard-all .pcn{color:var(--blue);margin:0;}
.hst{display:flex;gap:.65rem;margin-top:.75rem;}
.hs{flex:1;text-align:center;padding:.8rem .4rem;background:var(--bg3);border-radius:8px;}
.hsn{font-size:1.6rem;font-weight:900;color:var(--blue);line-height:1;font-family:'Nunito',sans-serif;}
.hsl{font-size:.62rem;color:var(--textm);letter-spacing:.04em;margin-top:.22rem;font-weight:600;}

/* ── SECTIONS ── */
.sec{padding:5.5rem 5vw;}
.bg1{background:var(--bg);}
.bg2{background:var(--bg2);}
.ey{display:flex;align-items:center;gap:.7rem;margin-bottom:.85rem;}
.eyc{justify-content:center;}
.eyl{width:22px;height:2px;background:var(--blue);border-radius:2px;}
.eyt{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);font-weight:700;font-family:'Nunito',sans-serif;}
.eyl.tl{background:var(--green);}.eyt.tl{color:var(--green-dk);}
h2{font-size:clamp(1.8rem,3.2vw,2.6rem);font-weight:900;color:var(--text);line-height:1.1;letter-spacing:-.01em;font-family:'Nunito',sans-serif;}
h2 [style*="Delius"]{text-transform:none !important;}
h2 em{font-style:normal;color:var(--blue);}
h2 em.tl{color:var(--green);}
.sdesc{font-size:.9rem;color:var(--textm);line-height:1.82;margin-top:.7rem;font-weight:400;}
.shc{text-align:center;margin-bottom:3rem;}
.shc .ey{justify-content:center;}
.shc .sdesc{max-width:540px;margin:.7rem auto 0;}

/* ── PILLARS ── */
#pillars{padding:3.5rem 5vw;background:var(--bg);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.pg{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;}
.gb{display:grid;}
.gbt{display:grid;border-radius:12px;overflow:hidden;border:1px solid var(--green-bd);}
.pc{background:#fff;border:1px solid var(--border);border-radius:12px;padding:2rem 1.8rem;display:flex;align-items:flex-start;gap:1.2rem;transition:all .3s;position:relative;overflow:hidden;box-shadow:var(--shadow);}
.pc::after{content:'';position:absolute;bottom:0;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--green));transition:width .4s;border-radius:2px;}
.pc:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}.pc:hover::after{width:100%;}
.pct{font-size:.9rem;font-weight:800;color:var(--text);margin-bottom:.4rem;letter-spacing:.02em;font-family:'Nunito',sans-serif;}
.pcx{font-size:.8rem;color:var(--textm);line-height:1.72;}

/* ── SERVICES ── */
.sg{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;}
.svc{background:#fff;border:1px solid var(--border);border-radius:12px;padding:2rem 1.6rem;position:relative;overflow:hidden;transition:all .3s;box-shadow:var(--shadow);}
.svc:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.svc::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--green));border-radius:12px 12px 0 0;opacity:0;transition:opacity .3s;}
.svc:hover::after{opacity:1;}
.sn{font-size:4rem;font-weight:900;color:rgba(26,86,219,0.05);position:absolute;top:.4rem;right:.8rem;line-height:1;pointer-events:none;transition:color .3s;font-family:'Nunito',sans-serif;}
.svc:hover .sn{color:rgba(26,86,219,0.1);}
.sic{font-size:1.6rem;margin-bottom:.85rem;}
.sti{font-size:.92rem;font-weight:800;color:var(--text);margin-bottom:.55rem;letter-spacing:.02em;font-family:'Nunito',sans-serif;}
.stx{font-size:.8rem;color:var(--textm);line-height:1.75;}
.stags{display:flex;flex-wrap:wrap;gap:.32rem;margin-top:.85rem;}
.stag{font-size:.63rem;padding:.2rem .55rem;background:var(--blue-lt);border-radius:20px;color:var(--blue);font-weight:600;font-family:'Nunito',sans-serif;}

/* ── EDUCARE ── */
#educare{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:start;}
.ep{background:#fff;border:1px solid var(--green-bd);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md);}
.eptb{background:linear-gradient(135deg,var(--green-lt),#fff);padding:1rem 1.5rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;}
.dots{display:flex;gap:.4rem;}.dots span{width:10px;height:10px;border-radius:50%;}
.dr{background:#EF4444;}.dy{background:#F59E0B;}.dg{background:#10B981;}
.epurl{font-family:'CascadiaMono',monospace;font-size:.7rem;color:var(--textm);background:var(--bg3);padding:.28rem .75rem;border-radius:6px;}
.ephed{padding:1.4rem 1.6rem 1.1rem;background:linear-gradient(135deg,var(--green-lt) 0%,#fff 60%);border-bottom:1px solid var(--border);}
.ephed img{height:34px;width:auto;}
.epbody{padding:1.4rem;}
.ekr{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-bottom:1.1rem;}
.ek{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:.85rem .7rem;text-align:center;}
.ekv{font-size:1.4rem;font-weight:900;color:var(--green);line-height:1;font-family:'Nunito',sans-serif;}
.ekl{font-size:.6rem;color:var(--textm);margin-top:.28rem;letter-spacing:.04em;font-weight:600;}
.erow{display:flex;align-items:center;justify-content:space-between;padding:.7rem 0;border-bottom:1px solid var(--border);font-size:.8rem;}
.erow:last-child{border-bottom:none;}
.erl{display:flex;align-items:center;gap:.55rem;color:var(--texts);}
.err{color:var(--text);font-weight:600;}
.epill{background:var(--green-lt);border:1px solid var(--green-bd);border-radius:20px;padding:.14rem .6rem;font-size:.62rem;color:var(--green-dk);letter-spacing:.04em;font-weight:700;}
.epcta{padding:1.1rem 1.4rem;border-top:1px solid var(--border);}
.epubs{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-top:1.6rem;}
.epb{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:.9rem .7rem;text-align:center;transition:all .3s;}
.epb:hover{border-color:var(--green);background:var(--green-lt);transform:translateY(-2px);}
.epbi{font-size:1.2rem;margin-bottom:.35rem;}
.epbt{font-size:.7rem;font-weight:700;color:var(--text);font-family:'Nunito',sans-serif;}
.efl{margin-top:1.3rem;display:flex;flex-direction:column;gap:.65rem;}
.ef{display:flex;gap:.9rem;align-items:flex-start;padding:.95rem 1.05rem;border:1px solid var(--border);border-left:3px solid transparent;border-radius:8px;background:var(--bg3);transition:all .3s;}
.ef:hover{border-left-color:var(--green);background:var(--green-lt);}
.efi{font-size:.95rem;flex-shrink:0;margin-top:.1rem;}
.eft{font-size:.84rem;font-weight:700;color:var(--text);margin-bottom:.2rem;font-family:'Nunito',sans-serif;}
.efx{font-size:.78rem;color:var(--textm);line-height:1.65;}

/* ── DORES ── */
#dores{background:var(--bg2);}
.dores-grid{display:grid;grid-template-columns:repeat(2,1fr);}
.dor{background:#fff;padding:2.2rem 2rem;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:center;transition:background .3s;border:1px solid var(--border);border-radius:12px;margin:.4rem;}
.dor:hover{box-shadow:var(--shadow-md);transform:translateY(-1px);}
.dbadge{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:.7rem;background:var(--red-lt);display:inline-block;padding:.2rem .6rem;border-radius:20px;}
.dtitle{font-size:.92rem;font-weight:800;color:var(--text);margin-bottom:.55rem;line-height:1.3;font-family:'Nunito',sans-serif;}
.ddesc{font-size:.78rem;color:var(--textm);line-height:1.72;}
.dsol{background:var(--green-lt);border:1px solid var(--green-bd);border-radius:10px;padding:1.2rem;position:relative;overflow:hidden;}
.dsol::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--green),#10B981);}
.dslabel{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--green-dk);font-weight:700;margin-bottom:.6rem;display:flex;align-items:center;gap:.4rem;}
.dstext{font-size:.8rem;color:var(--texts);line-height:1.7;}
.dcta{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:12px;border:1px solid var(--green-bd);}
.dctaL{background:linear-gradient(135deg,var(--blue-lt),#EBF0FD);padding:2.5rem;}
.dctaR{background:#fff;padding:2.5rem;display:flex;flex-direction:column;gap:.9rem;justify-content:center;}
.cfeat{display:flex;align-items:center;gap:1rem;padding:.9rem 1.1rem;background:var(--bg3);border:1px solid var(--border);border-radius:8px;transition:all .3s;}
.cfeat:hover{border-color:var(--blue);background:var(--blue-lt);}
.cfeati{font-size:1.1rem;flex-shrink:0;}
.cfeatt{font-size:.79rem;font-weight:700;color:var(--text);font-family:'Nunito',sans-serif;}
.cfeats{font-size:.71rem;color:var(--textm);margin-top:.1rem;}

/* ── IA-CTA (used in dores) ── */
.iam-cta{display:grid;grid-template-columns:1fr 1fr;border-radius:16px;overflow:hidden;border:1px solid rgba(37,211,102,0.25);box-shadow:var(--shadow-md);}
.iam-cta-left{background:linear-gradient(135deg,#1A56DB,#1E40AF);padding:2.5rem;color:#fff;}
.iam-cta-left h3{font-size:1.3rem;font-weight:900;margin-bottom:.75rem;font-family:'Nunito',sans-serif;line-height:1.2;}
.iam-cta-left p{font-size:.85rem;opacity:.85;line-height:1.75;}
.iam-cta-right{background:#fff;padding:2.5rem;display:flex;flex-direction:column;gap:.9rem;justify-content:center;}
.iam-cta-feat{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem;background:var(--bg3);border-radius:8px;transition:all .3s;}
.iam-cta-feat:hover{background:var(--blue-lt);transform:translateX(3px);}
.iam-cta-feat-icon{font-size:1.1rem;flex-shrink:0;}
.iam-cta-feat-text{font-size:.79rem;font-weight:700;color:var(--text);font-family:'Nunito',sans-serif;}
.iam-cta-feat-sub{font-size:.71rem;color:var(--textm);}

/* ── IAM extras (dores section) ── */
.iam-vantagens{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-bottom:2.5rem;}
.iam-vant{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.6rem;box-shadow:var(--shadow);transition:all .3s;}
.iam-vant:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--blue);}
.iam-vant-icon{font-size:1.8rem;margin-bottom:.75rem;}
.iam-vant-title{font-size:.88rem;font-weight:800;color:var(--text);margin-bottom:.4rem;font-family:'Nunito',sans-serif;}
.iam-vant-desc{font-size:.78rem;color:var(--textm);line-height:1.7;}
.iam-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:2.5rem 0 3rem;}
.iam-step{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.5rem 1.2rem;text-align:center;position:relative;box-shadow:var(--shadow);transition:all .3s;}
.iam-step:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--blue);}
.iam-step::after{content:'›';position:absolute;right:-14px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--blue);font-weight:900;z-index:2;}
.iam-step:last-child::after{display:none;}
.iam-step-num{width:32px;height:32px;background:var(--blue);color:#fff;border-radius:50%;font-size:.8rem;font-weight:900;display:flex;align-items:center;justify-content:center;margin:0 auto .75rem;font-family:'Nunito',sans-serif;}
.iam-step-icon{font-size:1.6rem;margin-bottom:.6rem;}
.iam-step-title{font-size:.82rem;font-weight:800;color:var(--text);margin-bottom:.4rem;font-family:'Nunito',sans-serif;}
.iam-step-desc{font-size:.74rem;color:var(--textm);line-height:1.65;}
.iam-publicos{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:3rem;}
.iam-pub{background:#fff;border:1px solid var(--border);border-radius:14px;padding:2rem;box-shadow:var(--shadow);transition:all .3s;overflow:hidden;position:relative;}
.iam-pub::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;}
.iam-pub.visitantes::before{background:linear-gradient(90deg,#25D366,#06B77B);}
.iam-pub.cidadaos::before{background:linear-gradient(90deg,#1A56DB,#6366F1);}
.iam-pub:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.iam-pub-header{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem;}
.iam-pub-icon{font-size:1.8rem;}
.iam-pub-title{font-size:1rem;font-weight:900;color:var(--text);font-family:'Nunito',sans-serif;line-height:1.2;}
.iam-pub-sub{font-size:.72rem;color:var(--textm);font-weight:500;margin-top:.1rem;}
.iam-pub-list{list-style:none;display:flex;flex-direction:column;gap:.45rem;}
.iam-pub-list li{font-size:.8rem;color:var(--texts);display:flex;align-items:flex-start;gap:.5rem;padding:.35rem 0;border-bottom:1px solid var(--bg3);}
.iam-pub-list li:last-child{border-bottom:none;}
.iam-pub-list li::before{content:'✓';color:var(--green);font-weight:800;flex-shrink:0;font-size:.85rem;}
.iam-infographic{display:grid;grid-template-columns:1fr 1.3fr;gap:3rem;align-items:start;margin-top:3rem;}
.iam-infographic-img{border-radius:16px;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--border);}
.iam-infographic-img img{width:100%;display:block;}

/* ── PUBLICOS ── */
#publicos{background:var(--bg);}
.pubg{display:grid;grid-template-columns:repeat(5,1fr);gap:1.1rem;}
.pcol{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.8rem 1.3rem;transition:all .3s;box-shadow:var(--shadow);}
.pcol:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--blue);}
.pcoli{font-size:1.8rem;margin-bottom:.8rem;}
.pcolt{font-size:.85rem;font-weight:800;color:var(--text);margin-bottom:.75rem;font-family:'Nunito',sans-serif;}
.pcoll{list-style:none;}
.pcoll li{font-size:.73rem;color:var(--textm);line-height:1.72;display:flex;align-items:flex-start;gap:.35rem;padding:.15rem 0;}
.pcoll li::before{content:'›';color:var(--blue);flex-shrink:0;font-weight:700;}

/* ── TECH ── */
#tech{background:var(--bg2);}
.tg{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem;}
.tc2{background:#fff;border:1px solid var(--border);border-radius:12px;padding:2rem 1.8rem;position:relative;overflow:hidden;transition:all .3s;box-shadow:var(--shadow);}
.tc2:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.tc2::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--green),var(--blue));opacity:0;transition:opacity .3s;border-radius:12px 12px 0 0;}
.tc2:hover::after{opacity:1;}
.tci{font-size:1.7rem;margin-bottom:.9rem;}
.tct{font-size:.92rem;font-weight:800;color:var(--text);margin-bottom:.45rem;font-family:'Nunito',sans-serif;}
.tcx{font-size:.8rem;color:var(--textm);line-height:1.75;}
.bncc{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .9rem;background:var(--green-lt);border:1px solid var(--green-bd);border-radius:20px;margin-top:.75rem;font-size:.7rem;color:var(--green-dk);font-weight:600;}

/* ── PROCESS ── */
#process{background:var(--bg);}
.prw{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;}
.pr{background:#fff;border:1px solid var(--border);border-radius:12px;padding:2rem 1.6rem;position:relative;overflow:hidden;transition:all .3s;box-shadow:var(--shadow);}
.pr:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--blue);}
.prn{font-size:4rem;font-weight:900;color:rgba(26,86,219,0.06);position:absolute;top:.4rem;right:.8rem;line-height:1;font-family:'Nunito',sans-serif;}
.pri{font-size:1.3rem;margin-bottom:.95rem;}
.prt{font-size:.88rem;font-weight:800;color:var(--text);margin-bottom:.45rem;font-family:'Nunito',sans-serif;}
.prx{font-size:.78rem;color:var(--textm);line-height:1.72;}

/* ── ABOUT ── */
#about{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;}
.anum{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:1.8rem;}
.an{background:#fff;border:1px solid var(--border);padding:1.5rem 1.4rem;border-radius:12px;box-shadow:var(--shadow);transition:all .3s;}
.an:hover{border-color:var(--blue);transform:translateY(-2px);}
.anv{font-size:2.2rem;font-weight:900;color:var(--blue);line-height:1;font-family:'Nunito',sans-serif;}
.anl{font-size:.72rem;color:var(--textm);margin-top:.32rem;letter-spacing:.03em;font-weight:600;}
.abody{font-size:.88rem;color:var(--textm);line-height:1.88;}
.aqt{font-size:.98rem;font-weight:400;font-style:italic;color:var(--texts);line-height:1.65;border-left:3px solid var(--blue);padding:.65rem 0 .65rem 1.2rem;margin:1.5rem 0;background:var(--blue-lt);border-radius:0 8px 8px 0;}
.acerts{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:1.6rem;}
.cert{font-size:.66rem;letter-spacing:.06em;padding:.3rem .75rem;background:var(--blue-lt);border-radius:20px;color:var(--blue);font-weight:700;font-family:'Nunito',sans-serif;}
.aimg{background:var(--bg3);border:1px solid var(--border);border-radius:16px;overflow:hidden;position:relative;box-shadow:var(--shadow-md);}
.aimg img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover;}
.aov{position:absolute;bottom:1.1rem;left:1.1rem;background:rgba(255,255,255,0.95);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:8px;padding:.65rem 1rem;box-shadow:var(--shadow);}
.aovt{font-size:.78rem;font-weight:700;color:var(--text);margin-bottom:.12rem;font-family:'Nunito',sans-serif;}
.aovs{font-size:.68rem;color:var(--textm);}
.wl{margin-top:1.2rem;display:flex;flex-direction:column;gap:.6rem;}
.wi{display:flex;gap:.85rem;align-items:flex-start;padding:.95rem 1.05rem;border:1px solid var(--border);border-radius:8px;background:#fff;transition:all .3s;box-shadow:var(--shadow);}
.wi:hover{border-color:var(--blue);box-shadow:var(--shadow-md);}
.wii{font-size:.95rem;flex-shrink:0;}
.wit{font-size:.84rem;font-weight:700;color:var(--text);margin-bottom:.18rem;font-family:'Nunito',sans-serif;}
.wix{font-size:.76rem;color:var(--textm);line-height:1.6;}

/* ── CONTACT ── */
.contact-items{margin-top:1.6rem;display:flex;flex-direction:column;gap:.7rem;}
.contact-item{display:flex;align-items:center;gap:.9rem;padding:.9rem 1.1rem;border:1px solid var(--border);border-radius:10px;background:#fff;transition:all .25s;text-decoration:none;color:var(--text);box-shadow:var(--shadow);}
.contact-item:hover{border-color:var(--blue);box-shadow:var(--shadow-md);transform:translateX(3px);}
.ci-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;}
.ci-teal{background:var(--blue-lt);}
.ci-green{background:rgba(37,211,102,0.12);}
.ci-yellow{background:rgba(245,158,11,0.12);}
.ci-text small{display:block;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--textm);margin-bottom:.1rem;font-weight:600;}
.ci-text strong{font-size:.85rem;color:var(--text);font-weight:700;}

/* ── CONTACT FORM ── */
.contact-form{background:#fff;border:1px solid var(--border);border-radius:16px;padding:2.2rem;position:relative;overflow:hidden;box-shadow:var(--shadow-md);}
.contact-form::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--blue),var(--green));}
.form-title{font-size:1.1rem;font-weight:800;color:var(--text);margin-bottom:1.3rem;font-family:'Nunito',sans-serif;}
.calendly-link{text-align:center;margin-bottom:1.3rem;font-size:.88rem;color:var(--textm);padding:.8rem 1rem;border:1px dashed var(--green-bd);border-radius:8px;background:var(--green-lt);}
.calendly-link a{color:var(--green-dk);font-weight:700;text-decoration:none;}
.calendly-link a:hover{text-decoration:underline;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;}
@media(max-width:500px){.form-row{grid-template-columns:1fr;}}
.form-group{margin-bottom:1rem;}
.form-group label{display:block;font-size:.7rem;font-weight:700;color:var(--textm);margin-bottom:.38rem;letter-spacing:.06em;text-transform:uppercase;font-family:'Nunito',sans-serif;}
.form-group input,.form-group select,.form-group textarea{width:100%;background:var(--bg3);border:1.5px solid var(--border);border-radius:8px;padding:.78rem .9rem;color:var(--text);font-family:inherit;font-size:.85rem;outline:none;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,86,219,0.1);background:#fff;}
.form-group input:disabled{background:var(--bg4);color:var(--textm);cursor:not-allowed;}
.form-group select option{background:#fff;color:var(--text);}
.form-group textarea{min-height:88px;resize:vertical;}
.form-submit{width:100%;padding:.92rem;border-radius:8px;border:none;background:linear-gradient(135deg,var(--blue),var(--blue-mid));color:#fff;font-weight:800;font-size:.9rem;letter-spacing:.04em;cursor:pointer;transition:all .2s;margin-top:.2rem;box-shadow:0 2px 8px rgba(26,86,219,0.3);font-family:'Nunito',sans-serif;}
.form-submit:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(26,86,219,0.4);}
.form-submit:disabled{background:var(--bg4);color:var(--textm);cursor:not-allowed;transform:none;box-shadow:none;}

/* ── AUTOCOMPLETE ── */
.autocomplete-container{position:relative;}
.autocomplete-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1.5px solid var(--border);border-top:none;border-radius:0 0 8px 8px;max-height:180px;overflow-y:auto;z-index:200;box-shadow:var(--shadow-md);}
.autocomplete-results.hidden{display:none;}
.autocomplete-item{padding:.6rem .9rem;cursor:pointer;font-size:.85rem;color:var(--texts);}
.autocomplete-item:hover{background:var(--blue-lt);color:var(--blue);}

/* ── FEEDBACK MODAL ── */
.fb-modal-overlay{position:fixed;inset:0;z-index:9999;background:rgba(15,23,42,0.6);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;}
.fb-modal-overlay.hidden{display:none;}
.fb-modal-box{background:#fff;border:1px solid var(--border);border-radius:20px;padding:2.2rem;max-width:380px;width:92%;text-align:center;box-shadow:var(--shadow-lg);}
.fb-modal-box h4{font-size:1.2rem;font-weight:800;margin-bottom:.75rem;color:var(--text);font-family:'Nunito',sans-serif;}
.fb-modal-box p{font-size:.9rem;color:var(--textm);margin-bottom:1.4rem;line-height:1.6;}
.fb-modal-box button{background:var(--blue);color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-weight:800;cursor:pointer;font-size:.9rem;transition:all .2s;font-family:'Nunito',sans-serif;}
.fb-modal-box button:hover{background:var(--blue-dk);transform:translateY(-1px);}
.fb-success h4{color:var(--green);}
.fb-error h4{color:var(--red);}

/* ── WHATSAPP ── */
.whatsapp-float{position:fixed;width:58px;height:58px;top:12%;right:18px;transform:translateY(-50%);background:#25d366;border-radius:50%;box-shadow:0 4px 16px rgba(37,211,102,0.4);z-index:4000;display:flex;align-items:center;justify-content:center;transition:transform .3s,box-shadow .3s;cursor:grab;text-decoration:none;}
.whatsapp-float:hover{transform:translateY(-50%) scale(1.1);box-shadow:0 6px 24px rgba(37,211,102,0.5);}
.whatsapp-float:active{cursor:grabbing;}
.whatsapp-float svg{width:32px;height:32px;fill:#fff;}

/* ── FOOTER ── */
footer{background:var(--text);border-top:1px solid rgba(255,255,255,0.08);padding:4rem 5vw 2rem;}
.fg4{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,0.1);margin-bottom:1.5rem;}
.fb img{height:34px;width:auto;margin-bottom:1rem;display:block;filter:brightness(0) invert(1);}
.fbt{font-size:.8rem;color:rgba(255,255,255,0.6);line-height:1.75;max-width:255px;}
.fcolt{font-size:.63rem;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:.9rem;font-weight:700;font-family:'Nunito',sans-serif;}
.flinks{display:flex;flex-direction:column;gap:.6rem;list-style:none;}
.flinks a{text-decoration:none;font-size:.8rem;color:rgba(255,255,255,0.55);transition:color .2s;font-family:'Nunito Sans',sans-serif;}
.flinks a:hover{color:#fff;}
.fbot{display:flex;justify-content:space-between;align-items:center;font-size:.74rem;color:rgba(255,255,255,0.4);flex-wrap:wrap;gap:.8rem;}

/* ── REVEAL ANIMATION ── */
.js .rev{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease;}
.js .rev.vis{opacity:1;transform:translateY(0);}
.d1{transition-delay:.08s;}.d2{transition-delay:.16s;}.d3{transition-delay:.24s;}.d4{transition-delay:.32s;}

/* ══════════════════════════════════
   ACCORDION PRODUTOS
══════════════════════════════════ */
#produtos{padding:5.5rem 5vw;background:var(--bg);}
.produtos-intro{text-align:center;margin-bottom:3rem;}
.produtos-intro .ey{justify-content:center;}

/* Accordion item */
.acc-list{display:flex;flex-direction:column;gap:.75rem;max-width:1100px;margin:0 auto;}
.acc-item{border:1.5px solid var(--border);border-radius:16px;overflow:hidden;background:#fff;box-shadow:var(--shadow);transition:box-shadow .3s,border-color .3s;}
.acc-item.open{box-shadow:var(--shadow-lg);}

/* Header (always visible — the "slider") */
.acc-head{display:flex;align-items:center;gap:1.4rem;padding:1.5rem 2rem;cursor:pointer;user-select:none;transition:background .2s;position:relative;}
.acc-head:hover{background:var(--bg3);}
.acc-item.open .acc-head{background:var(--bg3);border-bottom:1.5px solid var(--border);}
.acc-icon{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;}
.acc-meta{flex:1;min-width:0;}
.acc-label{font-size:.63rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;margin-bottom:.2rem;font-family:'Nunito',sans-serif;}
.acc-name{font-size:1.05rem;font-weight:900;color:var(--text);font-family:'Nunito',sans-serif;line-height:1.2;}
.acc-tagline{font-size:.8rem;color:var(--textm);margin-top:.25rem;}
.acc-tags{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.55rem;}
.acc-tag{font-size:.62rem;padding:.18rem .55rem;border-radius:20px;font-weight:600;font-family:'Nunito',sans-serif;}
.acc-chevron{margin-left:auto;flex-shrink:0;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;transition:transform .35s,background .2s,border-color .2s;}
.acc-item.open .acc-chevron{transform:rotate(180deg);}
.acc-chevron svg{width:14px;height:14px;fill:none;stroke:var(--textm);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;}

/* Body (expandable) */
.acc-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1);}
.acc-item.open .acc-body{grid-template-rows:1fr;}
.acc-inner{overflow:hidden;}
.acc-content{padding:2.5rem 2rem 2rem;}

/* ── Layouts within acc-content ── */
/* Portrait image + video side-by-side */
.prod-layout-portrait{display:grid;grid-template-columns:minmax(0,280px) 1fr;gap:2.5rem;align-items:start;}
.prod-portrait-img{border-radius:14px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border);flex-shrink:0;}
.prod-portrait-img img{width:100%;display:block;}
.prod-right{display:flex;flex-direction:column;gap:1.5rem;}

/* Landscape / wide content */
.prod-layout-wide{display:flex;flex-direction:column;gap:2rem;}

/* Info header within expanded */
.prod-desc{font-size:.88rem;color:var(--texts);line-height:1.88;margin-bottom:.5rem;}
.prod-highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.7rem;}
.prod-hl{background:var(--bg3);border-radius:10px;padding:.85rem 1rem;display:flex;align-items:flex-start;gap:.6rem;}
.prod-hl-icon{font-size:1.1rem;flex-shrink:0;}
.prod-hl-text{font-size:.77rem;font-weight:700;color:var(--text);font-family:'Nunito',sans-serif;line-height:1.3;}
.prod-hl-sub{font-size:.7rem;color:var(--textm);margin-top:.1rem;}

/* Audiences grid */
.prod-audiences{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.65rem;margin-top:.5rem;}
.prod-aud{background:var(--bg3);border:1px solid var(--border);border-radius:10px;padding:.85rem .7rem;text-align:center;transition:all .25s;}
.prod-aud:hover{border-color:var(--blue);background:var(--blue-lt);}
.prod-aud-icon{font-size:1.4rem;margin-bottom:.3rem;}
.prod-aud-name{font-size:.75rem;font-weight:800;color:var(--text);font-family:'Nunito',sans-serif;}
.prod-aud-desc{font-size:.66rem;color:var(--textm);margin-top:.2rem;line-height:1.4;}

/* Feature list */
.prod-features{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;}
.prod-feat{display:flex;align-items:flex-start;gap:.55rem;padding:.6rem .8rem;background:var(--bg3);border-radius:8px;font-size:.79rem;color:var(--texts);}
.prod-feat::before{content:'✓';color:var(--green);font-weight:800;flex-shrink:0;}

/* Flow steps compact */
.prod-flow{display:flex;gap:0;margin:.5rem 0;}
.prod-flow-step{flex:1;padding:.9rem .7rem;background:var(--bg3);border-radius:0;text-align:center;font-size:.74rem;position:relative;}
.prod-flow-step:first-child{border-radius:10px 0 0 10px;}
.prod-flow-step:last-child{border-radius:0 10px 10px 0;}
.prod-flow-step+.prod-flow-step::before{content:'›';position:absolute;left:-8px;top:50%;transform:translateY(-50%);font-size:1rem;color:var(--blue);font-weight:900;}
.prod-flow-icon{font-size:1.1rem;margin-bottom:.3rem;}
.prod-flow-title{font-size:.7rem;font-weight:800;color:var(--text);font-family:'Nunito',sans-serif;}

/* Inline video (portrait layout — beside image) */
.prod-video-wrap{position:relative;border-radius:14px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border);background:#000;}
.prod-video-wrap video{width:100%;display:block;aspect-ratio:16/9;object-fit:cover;}
.prod-video-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:opacity .3s;z-index:5;}
.prod-video-overlay.hidden{opacity:0;pointer-events:none;}
.prod-play-btn{width:60px;height:60px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.25);transition:transform .2s,box-shadow .2s;margin-bottom:.6rem;}
.prod-video-overlay:hover .prod-play-btn{transform:scale(1.1);box-shadow:0 8px 28px rgba(0,0,0,.35);}
.prod-play-btn svg{width:22px;height:22px;margin-left:3px;}
.prod-video-caption{font-size:.78rem;font-weight:700;color:#fff;font-family:'Nunito',sans-serif;text-shadow:0 1px 4px rgba(0,0,0,.4);}
.prod-video-caption small{display:block;font-size:.68rem;font-weight:400;opacity:.8;margin-top:.15rem;}
.prod-video-pills{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.65rem;}
.prod-video-pill{font-size:.66rem;font-weight:600;padding:.22rem .6rem;border-radius:20px;font-family:'Nunito',sans-serif;}

/* Quem usa a plataforma (bloco educare360) */
.prod-users-t{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--textm);margin-bottom:.6rem;font-family:'Nunito',sans-serif;}
.prod-users-list{list-style:none;display:flex;flex-direction:column;gap:.45rem;}
.prod-users-list li{display:flex;gap:.65rem;align-items:flex-start;padding:.6rem .75rem;background:var(--bg3);border-radius:8px;font-size:.74rem;color:var(--textm);line-height:1.45;}
.prod-users-list strong{display:block;font-size:.8rem;color:var(--text);font-weight:800;font-family:'Nunito',sans-serif;}
.pu-ico{font-size:1.05rem;line-height:1.2;flex-shrink:0;}

/* Vertical video (formato celular) */
.prod-vlabel{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--textm);margin-bottom:.5rem;font-family:'Nunito',sans-serif;}
.prod-video-vertical{max-width:280px;margin:0 auto;}
.prod-video-vertical video{aspect-ratio:9/20;object-fit:cover;}

/* CTA row inside accordion */
.prod-cta-row{display:flex;gap:.75rem;flex-wrap:wrap;padding-top:1.2rem;border-top:1px solid var(--border);margin-top:.5rem;}

/* ══════════════════════════════════
   SERVIÇOS SECTION (separado dos produtos)
══════════════════════════════════ */
#services{padding:5.5rem 5vw;background:var(--bg2);}
.srv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-top:2.5rem;}
.srv-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.8rem 1.5rem;transition:all .3s;box-shadow:var(--shadow);position:relative;overflow:hidden;}
.srv-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.srv-card::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--green));opacity:0;transition:opacity .3s;}
.srv-card:hover::after{opacity:1;}
.srv-num{font-size:3.5rem;font-weight:900;color:rgba(26,86,219,0.05);position:absolute;top:.3rem;right:.7rem;font-family:'Nunito',sans-serif;line-height:1;}
.srv-icon{font-size:1.5rem;margin-bottom:.75rem;}
.srv-title{font-size:.88rem;font-weight:800;color:var(--text);margin-bottom:.4rem;font-family:'Nunito',sans-serif;}
.srv-desc{font-size:.78rem;color:var(--textm);line-height:1.72;}
.srv-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.75rem;}
.srv-tag{font-size:.62rem;padding:.18rem .5rem;background:var(--blue-lt);border-radius:20px;color:var(--blue);font-weight:600;font-family:'Nunito',sans-serif;}

/* Clickable hero cards */
.hcard[onclick]{transition:transform .2s,box-shadow .2s;}
.hcard[onclick]:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}

/* ── NOVIDADES educare360 ── */
.acc-tag-new{background:#FDE7F3!important;color:#BE185D!important;}
.e360-news{margin-top:.5rem;padding:1.5rem;border:1px solid var(--green-bd);border-radius:12px;background:linear-gradient(135deg,#fff,var(--green-lt));scroll-margin-top:90px;}
.e360-news-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;}
.e360-news-title{font-size:1rem;font-weight:900;color:var(--text);font-family:'Nunito',sans-serif;}
.e360-news-eyebrow{font-size:.63rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--green-dk);font-family:'Nunito',sans-serif;margin-bottom:.2rem;}
.e360-news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.7rem;}
.e360-new{background:#fff;border:1px solid var(--border);border-radius:10px;padding:.95rem 1rem;}
.e360-new-t{font-size:.8rem;font-weight:800;color:var(--text);font-family:'Nunito',sans-serif;line-height:1.3;margin-bottom:.3rem;}
.e360-new-x{font-size:.72rem;color:var(--textm);line-height:1.6;}
.e360-new-who{display:inline-block;margin-top:.5rem;font-size:.6rem;font-weight:700;padding:.12rem .5rem;border-radius:20px;background:var(--green-lt);color:var(--green-dk);font-family:'Nunito',sans-serif;}
.e360-new-badge{display:inline-block;font-size:.58rem;font-weight:800;padding:.1rem .45rem;border-radius:20px;background:#FDE7F3;color:#BE185D;margin-left:.3rem;vertical-align:middle;white-space:nowrap;}

/* ── MARCA educare360 ── */
.e360{display:inline-flex;align-items:center;gap:.3em;line-height:1;text-transform:none;vertical-align:middle;letter-spacing:normal;}
.e360 img{height:1.4em;width:auto;display:block;margin:0;}
.e360-t{display:inline-flex;align-items:baseline;gap:.05em;transform:translateY(-1px);}
.e360-a{font-family:'Delius',cursive;color:var(--green-dk);text-transform:none;}
.e360-b{font-family:'CascadiaMono',monospace;color:var(--teal);}
.e360 .e360-b{font-size:.88em;}
.e360-w .e360-a,.e360-w .e360-b{color:#fff;}
.e360-lg .e360-t{font-size:1.7em;}

/* ── BASE / ACESSIBILIDADE ── */
img{max-width:100%;height:auto;}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;}
[role="button"]:focus-visible{outline-offset:2px;}
#fb-msg{white-space:pre-line;}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .js .rev{opacity:1;transform:none;}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;}
}

/* ── RESPONSIVE ── */
@media(max-width:1200px){.fg4{grid-template-columns:1fr 1fr;}.fg4 .fb{grid-column:1/-1;}}
@media(max-width:1000px){.srv-grid{grid-template-columns:repeat(2,1fr)!important;}}
@media(max-width:860px){#hero{grid-template-columns:1fr;}.hvis{display:none;}#about{grid-template-columns:1fr!important;}.aimg{order:-1;}#ci{grid-template-columns:1fr!important;}.prod-layout-portrait{grid-template-columns:1fr!important;}.prod-features{grid-template-columns:1fr!important;}.prod-flow{flex-wrap:wrap;}.prod-flow-step{flex:1 1 45%;}.dores-grid{grid-template-columns:1fr!important;}.dor{grid-template-columns:1fr!important;}.dcta{grid-template-columns:1fr!important;}.pubg{grid-template-columns:repeat(3,1fr)!important;}.tg{grid-template-columns:1fr!important;}.prw{grid-template-columns:repeat(2,1fr)!important;}.iam-cta{grid-template-columns:1fr!important;}}
@media(max-width:1240px){.nlinks{display:none;}.hbtn{display:flex;}}
@media(max-width:650px){.srv-grid{grid-template-columns:1fr!important;}.prw{grid-template-columns:1fr!important;}.pubg{grid-template-columns:repeat(2,1fr)!important;}.form-row{grid-template-columns:1fr;}.sec{padding:4rem 5vw;}#hero{padding:80px 5vw 4rem;}.acc-head{padding:1.2rem 1.4rem;gap:1rem;}.acc-content{padding:1.5rem 1.2rem 1.2rem;}.prod-audiences{grid-template-columns:repeat(2,1fr)!important;}}
@media(max-width:420px){.hact{flex-direction:column;}.btn-r,.btn-o,.btn-t{width:100%;text-align:center;}.anum{grid-template-columns:1fr 1fr;}.pubg{grid-template-columns:1fr!important;}.acc-icon{width:40px;height:40px;font-size:1.1rem;}.prod-flow-step{flex:1 1 100%;}}

/* ══════════════════════════════════
   PÁGINAS DE PRODUTO E CARDS (site com uma página por produto)
══════════════════════════════════ */
.wrap{max-width:1100px;margin:0 auto;}
.nlinks a[aria-current="page"],.mmenu a[aria-current="page"]{color:var(--blue);}
.nlinks a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--blue);padding-bottom:3px;}
.hsub{font-size:1.05rem;font-weight:500;color:var(--textm);line-height:1.6;margin:-.6rem 0 1.2rem;max-width:520px;}
a.pcard{text-decoration:none;color:inherit;}
.hprodgrid .pcard{gap:.35rem;}
.hprodgrid .pcard:last-child:nth-child(odd){grid-column:1/-1;}

/* Cabeçalho da página de produto */
.phero{position:relative;overflow:hidden;padding:112px 5vw 3.5rem;background:linear-gradient(135deg,#F8FAFF 0%,#EBF0FD 45%,#F0FDF9 100%);border-bottom:1px solid var(--border);}
.phero-in{position:relative;z-index:1;max-width:1100px;margin:0 auto;}
.phero-2{display:grid;grid-template-columns:1.15fr .85fr;gap:3.5rem;align-items:center;}
.bc{display:flex;gap:.45rem;align-items:center;font-size:.74rem;color:var(--textm);margin-bottom:1.1rem;font-family:'Nunito',sans-serif;font-weight:600;}
.bc a{color:var(--textm);text-decoration:none;}
.bc a:hover{color:var(--blue);}
.plabel{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;margin-bottom:.7rem;font-family:'Nunito',sans-serif;}
.ph1{font-size:clamp(1.9rem,3.6vw,2.9rem);font-weight:900;line-height:1.12;color:var(--text);margin-bottom:1rem;font-family:'Nunito',sans-serif;letter-spacing:-.01em;}
.plead{font-size:1rem;color:var(--texts);line-height:1.8;max-width:620px;margin-bottom:1.2rem;}
.phero-tags{margin:0 0 1.6rem;}
.phero .hact{gap:.75rem;}

/* Cards de produto na página inicial */
.pgrid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.2rem;}
.pgrid .pc2{flex:0 1 calc((100% - 2.4rem) / 3);}
.pc2{background:#fff;border:1px solid var(--border);border-top:4px solid var(--pc);border-radius:14px;padding:1.6rem 1.5rem 1.4rem;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s;}
.pc2:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.pc2-h{display:flex;gap:.85rem;align-items:center;margin-bottom:.9rem;}
.pc2-ico{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;}
.pc2-ico img{height:30px;width:auto;}
.pc2-l{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;font-family:'Nunito',sans-serif;}
.pc2-n{font-size:1.08rem;font-weight:900;color:var(--text);line-height:1.2;font-family:'Nunito',sans-serif;}
.pc2-r{font-size:.82rem;color:var(--texts);line-height:1.7;margin-bottom:.9rem;}
.pc2-i{list-style:none;display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.2rem;}
.pc2-i li{font-size:.77rem;color:var(--textm);line-height:1.5;display:flex;gap:.45rem;}
.pc2-i li::before{content:'✓';color:var(--pc);font-weight:900;flex-shrink:0;}
.pc2-b{margin-top:auto;font-size:.82rem;font-weight:800;text-decoration:none;font-family:'Nunito',sans-serif;padding-top:.9rem;border-top:1px solid var(--border);}
.pc2-b:hover{text-decoration:underline;}

/* Perguntas frequentes */
.faq{display:flex;flex-direction:column;gap:.6rem;max-width:820px;margin:0 auto;}
.faq-i{background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);}
.faq-i summary{cursor:pointer;list-style:none;padding:1rem 1.2rem;font-weight:800;font-size:.9rem;color:var(--text);font-family:'Nunito',sans-serif;display:flex;justify-content:space-between;gap:1rem;}
.faq-i summary::-webkit-details-marker{display:none;}
.faq-i summary::after{content:'+';color:var(--blue);font-size:1.2rem;line-height:1;}
.faq-i[open] summary::after{content:'−';}
.faq-i p{padding:0 1.2rem 1.1rem;font-size:.85rem;color:var(--texts);line-height:1.75;}

/* Faixa de chamada */
.ctab{display:grid;grid-template-columns:1.4fr 1fr;gap:2rem;align-items:center;background:linear-gradient(135deg,var(--blue),#1E40AF);color:#fff;border-radius:18px;padding:2.4rem;box-shadow:var(--shadow-lg);}
.ctab h2{color:#fff;font-size:clamp(1.4rem,2.4vw,1.9rem);margin-bottom:.5rem;}
.ctab h2 .e360-a,.ctab h2 .e360-b{color:#fff;}
.ctab p{color:rgba(255,255,255,.85);font-size:.9rem;line-height:1.7;}
.ctab-act{display:flex;flex-direction:column;gap:.7rem;}
.btn-ow{padding:.9rem 2rem;border:2px solid #fff;color:#fff;border-radius:8px;font-size:.82rem;font-weight:700;text-decoration:none;text-align:center;font-family:'Nunito',sans-serif;transition:background .2s;}
.btn-ow:hover{background:rgba(255,255,255,.12);}

/* Duas colunas e avisos */
.two{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;}
.two-c{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.6rem;box-shadow:var(--shadow);}
.two-t{font-size:1rem;font-weight:900;color:var(--text);margin-bottom:.4rem;font-family:'Nunito',sans-serif;}
.two-c p{font-size:.82rem;color:var(--textm);margin-bottom:.9rem;line-height:1.6;}
.hx-falta{margin-top:1.4rem;background:#FFFBEB;border:1px solid #FDE68A;border-left:4px solid #F59E0B;border-radius:10px;padding:1.1rem 1.3rem;}
.hx-falta strong{font-size:.88rem;color:#92400E;font-family:'Nunito',sans-serif;}
.hx-falta p{font-size:.82rem;color:#78350F;line-height:1.7;margin-top:.3rem;}
.prw5{grid-template-columns:repeat(5,1fr);}
.prw5 .prn{font-size:3rem;}

/* Grade ilustrativa do Horário Escolar */
.hx{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:1rem;}
.hx-top{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;margin-bottom:.7rem;font-family:'Nunito',sans-serif;}
.hx-top span{font-size:.62rem;font-weight:800;color:#0E7490;background:#E0F7FA;padding:.18rem .55rem;border-radius:20px;}
.hx-t{width:100%;border-collapse:separate;border-spacing:4px;font-size:.66rem;font-family:'Nunito',sans-serif;}
.hx-t th{color:var(--textm);font-weight:700;font-size:.62rem;}
.hx-t td{border-radius:6px;padding:.45rem .2rem;text-align:center;font-weight:700;}
.hx-int td{background:var(--bg3);color:var(--textl);font-size:.58rem;padding:.2rem;}
.c1{background:#DBEAFE;color:#1E40AF;}.c2{background:#DCFCE7;color:#166534;}.c3{background:#FEF3C7;color:#92400E;}.c4{background:#E0F2FE;color:#075985;}
.c5{background:#FCE7F3;color:#9D174D;}.c6{background:#EDE9FE;color:#5B21B6;}.c7{background:#FFE4E6;color:#9F1239;}.c8{background:#ECFCCB;color:#3F6212;}
.hx-note{font-size:.62rem;color:var(--textl);text-align:center;margin-top:.6rem;}

/* Simulação de chat do Assistente IA */
.chat{max-width:320px;margin:0 auto;width:100%;}
.chat-tg{display:flex;justify-content:center;gap:.5rem;margin-bottom:.8rem;}
.chat-tg button{border:2px solid var(--border-md);background:#fff;color:var(--textm);border-radius:20px;padding:.3rem .9rem;font-weight:800;font-size:.75rem;cursor:pointer;font-family:'Nunito',sans-serif;}
.chat-tg button.on{background:#128C7E;border-color:#128C7E;color:#fff;}
.chat-ph{border:8px solid #1E293B;border-radius:2rem;overflow:hidden;background:#fff;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;height:470px;}
.chat-hd{background:#128C7E;color:#fff;display:flex;gap:.6rem;align-items:center;padding:.8rem 1rem;}
.chat-hd strong{display:block;font-size:.85rem;}
.chat-hd small{font-size:.65rem;opacity:.85;}
.chat-av{width:34px;height:34px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;}
.chat-box{flex:1;overflow-y:auto;padding:.8rem;display:flex;flex-direction:column;gap:.5rem;background:#E5DDD5;background-image:radial-gradient(rgba(0,0,0,.05) 1px,transparent 1px);background-size:14px 14px;}
.cm{max-width:85%;padding:.5rem .7rem;border-radius:10px;font-size:.74rem;line-height:1.45;white-space:pre-line;box-shadow:0 1px 1px rgba(0,0,0,.08);animation:cmIn .35s ease;flex-shrink:0;}
.cm-bot{background:#fff;color:#1E293B;align-self:flex-start;border-top-left-radius:2px;}
.cm-user{background:#DCF8C6;color:#1E293B;align-self:flex-end;border-top-right-radius:2px;}
.cm-note{align-self:center;background:#FEF9C3;color:#854D0E;font-size:.66rem;font-style:italic;}
@keyframes cmIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
.chat-ft{background:#F0F0F0;padding:.6rem 1rem;font-size:.72rem;color:#94A3B8;}

@media(max-width:1000px){.pgrid .pc2{flex-basis:calc((100% - 1.2rem) / 2);}.prw5{grid-template-columns:repeat(3,1fr)!important;}}
@media(max-width:860px){.phero-2{grid-template-columns:1fr;gap:2rem;}.ctab{grid-template-columns:1fr;}.two{grid-template-columns:1fr;}}
@media(max-width:650px){.pgrid .pc2{flex-basis:100%;}.prw5{grid-template-columns:1fr!important;}.phero{padding:96px 5vw 2.5rem;}.ctab{padding:1.6rem;}}

/* Ilustração da trilha de formação */
.fx{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:1.1rem;font-family:'Nunito',sans-serif;}
.fx-top{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.8rem;}
.fx-tag{align-self:flex-start;font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#4338CA;background:#EEF2FF;padding:.12rem .5rem;border-radius:20px;}
.fx-top strong{font-size:.95rem;color:var(--text);}
.fx-top small{font-size:.7rem;color:var(--textm);}
.fx-next{display:flex;gap:.6rem;align-items:center;background:var(--bg3);border-radius:10px;padding:.6rem .7rem;margin-bottom:.8rem;font-size:.72rem;}
.fx-next strong{display:block;color:var(--text);font-size:.74rem;}
.fx-next small{color:var(--textm);}
.fx-next div{flex:1;}
.fx-btn{background:#4F46E5;color:#fff;font-weight:800;font-size:.66rem;padding:.3rem .7rem;border-radius:6px;}
.fx-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin-bottom:.5rem;}
.fx-kpis div{text-align:center;background:#EEF2FF;border-radius:8px;padding:.5rem .2rem;}
.fx-kpis b{display:block;font-size:1rem;color:#4338CA;}
.fx-kpis small{font-size:.58rem;color:var(--textm);}
.fx-bar{height:6px;background:var(--bg3);border-radius:4px;overflow:hidden;margin-bottom:.7rem;}
.fx-bar i{display:block;height:100%;background:linear-gradient(90deg,#4F46E5,#06B77B);}
.fx-list{display:flex;flex-direction:column;gap:.3rem;font-size:.72rem;color:var(--texts);}
.fx-ok,.fx-pend{display:inline-block;width:1.2rem;font-weight:900;}
.fx-ok{color:var(--green);}.fx-pend{color:var(--textl);}
