*{margin:0;padding:0;box-sizing:border-box}
:root{
  --ink:#111111;--ink2:#1e1e1e;
  --white:#ffffff;--off:#F8F8F8;--off2:#F2F2F2;
  --muted:#767676;--border:#E8E8E8;--border2:#D0D0D0;
  --yellow:#FFC107;--yl:#FFF8E1;--ym:#FFD54F;
  --r:8px;--r2:14px;
}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;color:var(--ink);background:var(--white);font-size:15px;line-height:1.6;overflow-x:hidden}
h1,h2,h3,h4{font-family:'Sora',sans-serif;line-height:1.1}
a{text-decoration:none;color:inherit}
.pg{display:none}.pg.on{display:block}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;z-index:200;background:var(--white);border-bottom:1px solid var(--border)}
.nav-w{max-width:1160px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:nowrap}
.logo{display:flex;align-items:center;gap:10px;cursor:pointer;flex-shrink:0}
.logo svg{height:30px;width:auto}
.nav-links{display:flex;align-items:center}
.nav-links a{color:var(--muted);font-size:14px;font-weight:500;padding:6px 13px;border-radius:6px;cursor:pointer;transition:color .15s,background .15s;white-space:nowrap}
.nav-links a:hover,.nav-links a.on{color:var(--ink);background:var(--off2)}
.nav-cta,.whatsapp-top{background:var(--ink);color:var(--white);font-family:'Sora',sans-serif;font-weight:700;font-size:13.5px;padding:9px 20px;border-radius:7px;border:none;cursor:pointer;white-space:nowrap;transition:background .15s}
.nav-cta:hover,.whatsapp-top:hover{background:#333}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:250;background:#25D366;color:#081b10;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:27px;box-shadow:0 10px 26px rgba(0,0,0,.25);transition:transform .15s}
.whatsapp-float:hover{transform:translateY(-2px)}

/* ── HERO SLIDESHOW ── */
.hero{padding-top:64px;position:relative;height:92vh;overflow:hidden}

.slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease;z-index:0}
.slide.active{opacity:1;z-index:1}

.slide-img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 8s ease}
.slide.active .slide-img{transform:scale(1.04)}

/* overlay gradients per slide */
.slide-overlay{position:absolute;inset:0}
.slide-overlay.dark{background:linear-gradient(105deg,rgba(0,0,0,0.72) 0%,rgba(0,0,0,0.35) 55%,rgba(0,0,0,0.1) 100%)}
.slide-overlay.mid{background:linear-gradient(105deg,rgba(0,0,0,0.65) 0%,rgba(0,0,0,0.3) 60%,transparent 100%)}

.slide-content{position:absolute;inset:0;display:flex;align-items:center;z-index:2;max-width:1160px;margin:0 auto;padding:0 32px;width:100%}
.slide-inner{max-width:580px}

.slide-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(255,193,7,0.18);border:1px solid rgba(255,193,7,0.4);color:var(--yellow);font-size:11px;font-weight:700;padding:5px 14px;border-radius:20px;letter-spacing:0.13em;text-transform:uppercase;margin-bottom:20px;backdrop-filter:blur(4px)}
.slide-tag i{width:6px;height:6px;background:var(--yellow);border-radius:50%;flex-shrink:0}

.slide-title{font-family:'Sora',sans-serif;font-size:clamp(36px,5vw,62px);font-weight:800;color:var(--white);line-height:1.05;margin-bottom:18px}
.slide-title em{color:var(--yellow);font-style:normal}

.slide-desc{color:rgba(255,255,255,0.6);font-size:16px;font-weight:300;line-height:1.8;margin-bottom:36px}

.slide-btns{display:flex;gap:12px;flex-wrap:wrap}
.btn-y{background:var(--yellow);color:var(--ink);font-family:'Sora',sans-serif;font-weight:700;font-size:14px;padding:12px 28px;border-radius:8px;border:none;cursor:pointer;transition:background .15s}
.btn-y:hover{background:var(--ym)}
.btn-o{background:transparent;color:rgba(255,255,255,0.8);font-family:'Sora',sans-serif;font-weight:600;font-size:14px;padding:11px 28px;border-radius:8px;border:1.5px solid rgba(255,255,255,0.22);cursor:pointer;transition:border-color .15s,color .15s}
.btn-o:hover{border-color:rgba(255,255,255,0.5);color:var(--white)}

/* slide indicators */
.slide-dots{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:10}
.sdot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,0.35);border:none;cursor:pointer;transition:background .2s,transform .2s;padding:0}
.sdot.on{background:var(--yellow);transform:scale(1.2)}

/* slide arrows */
.sarrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:rgba(0,0,0,0.35);border:1px solid rgba(255,255,255,0.15);color:var(--white);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;transition:background .2s;backdrop-filter:blur(4px)}
.sarrow:hover{background:rgba(0,0,0,0.6)}
.sarrow.prev{left:20px}
.sarrow.next{right:20px}

/* slide progress bar */
.slide-progress{position:absolute;bottom:0;left:0;height:3px;background:var(--yellow);z-index:10;transition:none}

/* stats bar below hero */
.stats-bar{background:var(--ink);padding:0 32px}
.stats-w{max-width:1160px;margin:0 auto;display:flex}
.sb-stat{flex:1;padding:22px 16px;border-right:1px solid rgba(255,255,255,0.07);text-align:center}
.sb-stat:last-child{border-right:none}
.sb-n{font-family:'Sora',sans-serif;font-size:28px;font-weight:800;color:var(--white);line-height:1}
.sb-n em{color:var(--yellow);font-style:normal}
.sb-l{font-size:11px;color:rgba(255,255,255,0.35);margin-top:3px}

/* ── GENERIC SECTIONS ── */
.sec{padding:88px 32px}
.sec-w{max-width:1160px;margin:0 auto}
.eyebrow{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:700;color:var(--ink);letter-spacing:0.16em;text-transform:uppercase;margin-bottom:10px}
.eyebrow::before{content:'';width:24px;height:2.5px;background:var(--yellow);flex-shrink:0}
.sec-title{font-family:'Sora',sans-serif;font-size:clamp(26px,4vw,42px);font-weight:800;color:var(--ink);line-height:1.1;margin-bottom:12px}
.sec-sub{color:var(--muted);font-size:15.5px;max-width:520px;line-height:1.75}
.sec-head{margin-bottom:52px}

/* SEGMENTS */
.seg-sec{background:var(--ink);padding:80px 32px}
.seg-w{max-width:1160px;margin:0 auto}
.seg-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:44px;border:1px solid rgba(255,255,255,0.08);border-radius:var(--r2);overflow:hidden}
.scard{padding:32px 24px;border-right:1px solid rgba(255,255,255,0.07);transition:background .2s;position:relative}
.scard:last-child{border-right:none}
.scard:hover{background:rgba(255,255,255,0.04)}
.scard.star{background:rgba(255,193,7,0.06)}
.scard-pill{position:absolute;top:14px;right:14px;font-size:9px;font-weight:700;padding:2px 8px;border-radius:20px;background:rgba(255,193,7,0.15);color:var(--yellow);border:1px solid rgba(255,193,7,0.25);text-transform:uppercase;letter-spacing:0.07em}
.scard-ico{font-size:24px;display:block;margin-bottom:16px}
.scard h3{font-family:'Sora',sans-serif;font-size:17px;font-weight:700;color:var(--white);margin-bottom:9px}
.scard p{font-size:12.5px;color:rgba(255,255,255,0.4);line-height:1.65}

/* SERVICES */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.svc-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r2);padding:30px;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s;position:relative;overflow:hidden}
.svc-card::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:transparent;transition:background .2s}
.svc-card:hover::after,.svc-card.open::after{background:var(--yellow)}
.svc-card:hover{border-color:var(--border2);box-shadow:0 6px 28px rgba(0,0,0,0.07);transform:translateY(-2px)}
.svc-card.open{border-color:#c49900}
.svc-n{position:absolute;top:22px;right:22px;font-family:'Sora',sans-serif;font-size:44px;font-weight:800;color:var(--off2);line-height:1;pointer-events:none}
.svc-ico{width:46px;height:46px;border-radius:10px;background:var(--yl);border:1.5px solid rgba(255,193,7,0.25);display:flex;align-items:center;justify-content:center;font-size:21px;margin-bottom:16px}
.svc-card h3{font-family:'Sora',sans-serif;font-size:20px;font-weight:700;color:var(--ink);margin-bottom:8px}
.svc-card>p{font-size:13.5px;color:var(--muted);line-height:1.7}
.svc-expand{display:none;margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}
.svc-card.open .svc-expand{display:block}
.svc-ul{list-style:none;display:flex;flex-direction:column;gap:7px}
.svc-ul li{display:flex;gap:9px;font-size:13.5px;color:var(--ink);line-height:1.5}
.svc-ul li::before{content:'✓';width:17px;height:17px;background:var(--yellow);border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;margin-top:1px}
.svc-more{margin-top:14px;font-size:12.5px;font-weight:600;color:var(--muted);display:flex;align-items:center;gap:4px}

/* DIFERENCIAIS */
.dif-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.dif-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r2);padding:26px;transition:border-color .2s,box-shadow .2s}
.dif-card:hover{border-color:var(--yellow);box-shadow:0 4px 18px rgba(255,193,7,0.1)}
.dif-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.dif-ico{width:40px;height:40px;background:var(--yl);border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0}
.dif-card h4{font-family:'Sora',sans-serif;font-size:17px;font-weight:700;color:var(--ink)}
.dif-card p{font-size:13.5px;color:var(--muted);line-height:1.7}

/* CTA STRIP */
.cta-strip{background:var(--yellow);padding:52px 32px}
.cta-w{max-width:1160px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}
.cta-strip h3{font-family:'Sora',sans-serif;font-size:28px;font-weight:800;color:var(--ink);line-height:1.2}
.cta-strip p{color:rgba(0,0,0,0.5);font-size:14px;margin-top:4px}
.btn-dark{background:var(--ink);color:var(--white);font-family:'Sora',sans-serif;font-weight:700;font-size:14px;padding:13px 30px;border-radius:8px;border:none;cursor:pointer;transition:background .15s}
.btn-dark:hover{background:#333}

/* CLIENTS */
.cl-grid{display:grid;grid-template-columns:1fr 2fr;gap:48px;align-items:start}
.cl-quote{background:var(--yl);border:1.5px solid rgba(255,193,7,0.35);border-left:4px solid var(--yellow);border-radius:var(--r2);padding:26px;margin-top:24px}
.cl-quote p{font-size:15px;color:var(--ink);line-height:1.75;font-style:italic}
.cl-quote cite{display:block;margin-top:10px;font-size:12.5px;font-weight:600;color:var(--muted);font-style:normal}
.logo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.logo-cell{background:var(--off);border:1.5px solid var(--border);border-radius:var(--r);min-height:68px;display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:700;font-size:12.5px;color:var(--ink2);text-align:center;line-height:1.35;padding:12px;transition:border-color .15s,background .15s}
.logo-cell:hover{border-color:var(--yellow);background:var(--yl)}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:48px}
.metric{background:var(--off);border:1.5px solid var(--border);border-radius:var(--r);padding:20px;text-align:center}
.metric-n{font-family:'Sora',sans-serif;font-size:36px;font-weight:800;color:var(--ink);line-height:1}
.metric-n em{color:var(--yellow);font-style:normal}
.metric-l{font-size:11.5px;color:var(--muted);margin-top:4px}

/* QA */
.qa-wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:start}
.qa-list{display:flex;flex-direction:column;gap:9px}
.qa-item{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r);overflow:hidden;cursor:pointer;transition:border-color .15s}
.qa-item.done{border-left:3px solid #22c55e}
.qa-item.pend{border-left:3px solid var(--yellow)}
.qa-item.active{border-color:#c49900;box-shadow:0 3px 14px rgba(255,193,7,0.12)}
.qa-hd{padding:14px 15px;display:flex;align-items:center;gap:10px;justify-content:space-between}
.qa-q{font-size:13.5px;font-weight:500;color:var(--ink);line-height:1.45;flex:1}
.qa-right{display:flex;align-items:center;gap:7px;flex-shrink:0}
.qa-tag{font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:20px;text-transform:uppercase;letter-spacing:0.05em}
.qa-tag.done{background:#dcfce7;color:#15803d}
.qa-tag.pend{background:var(--yl);color:#7a5000}
.qa-bd{padding:0 15px 14px;display:none;font-size:13.5px;color:var(--muted);line-height:1.7}
.qa-item.active .qa-bd{display:block}
.qa-ans{margin-top:9px;padding:12px 14px;background:var(--off);border-radius:6px;border-left:3px solid var(--yellow);font-size:13.5px;color:var(--ink);line-height:1.7}
.qa-by{font-size:10.5px;font-weight:700;color:var(--ink);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:5px;display:block}
.qa-panel{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r2);padding:28px;position:sticky;top:78px}
.qa-panel h3{font-family:'Sora',sans-serif;font-size:20px;font-weight:700;color:var(--ink);margin-bottom:5px}
.qa-panel>p{color:var(--muted);font-size:13.5px;margin-bottom:20px;line-height:1.6}
.field{margin-bottom:13px}
.field label{display:block;font-size:11.5px;font-weight:600;color:var(--ink);letter-spacing:0.05em;text-transform:uppercase;margin-bottom:5px}
.field input,.field select,.field textarea{width:100%;padding:9px 12px;border:1.5px solid var(--border);border-radius:7px;font-family:'Inter',sans-serif;font-size:14px;color:var(--ink);background:var(--white);outline:none;transition:border-color .15s}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--yellow);box-shadow:0 0 0 3px rgba(255,193,7,0.13)}
.field textarea{resize:vertical;min-height:88px}
.sbtn{width:100%;background:var(--yellow);color:var(--ink);font-family:'Sora',sans-serif;font-weight:700;font-size:14px;padding:11px;border:none;border-radius:8px;cursor:pointer;transition:background .15s}
.sbtn:hover{background:var(--ym)}
.ok{display:none;margin-top:11px;background:#dcfce7;border:1px solid #bbf7d0;border-radius:7px;padding:10px;text-align:center;font-size:13.5px;color:#15803d}

/* CONTACT */
.contact-sec{background:var(--ink);padding:88px 32px}
.contact-w{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.ct-text h2{font-family:'Sora',sans-serif;font-size:clamp(28px,4vw,44px);font-weight:800;color:var(--white);line-height:1.1;margin-bottom:14px}
.ct-text h2 em{color:var(--yellow);font-style:normal}
.ct-text p{color:rgba(255,255,255,0.42);font-size:15px;line-height:1.8;margin-bottom:32px}
.ct-rows{display:flex;flex-direction:column;gap:16px}
.ct-row{display:flex;align-items:flex-start;gap:13px}
.ct-ico{width:40px;height:40px;background:rgba(255,193,7,0.1);border:1px solid rgba(255,193,7,0.2);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0}
.ct-lbl{font-size:10.5px;font-weight:700;color:rgba(255,255,255,0.3);text-transform:uppercase;letter-spacing:0.12em}
.ct-val{font-size:14px;color:rgba(255,255,255,0.7);margin-top:2px}
.ct-form{background:rgba(255,255,255,0.04);border:1.5px solid rgba(255,255,255,0.08);border-radius:var(--r2);padding:30px}
.ct-form h3{font-family:'Sora',sans-serif;font-size:20px;font-weight:700;color:var(--white);margin-bottom:20px}
.ct-form .field label{color:rgba(255,255,255,0.4)}
.ct-form input,.ct-form select,.ct-form textarea{background:rgba(255,255,255,0.05);border-color:rgba(255,255,255,0.1);color:var(--white)}
.ct-form input::placeholder,.ct-form textarea::placeholder{color:rgba(255,255,255,0.18)}
.ct-form select option{background:#1e1e1e}
.ct-form input:focus,.ct-form select:focus,.ct-form textarea:focus{border-color:var(--yellow);box-shadow:0 0 0 3px rgba(255,193,7,0.1)}
.ct-send{width:100%;background:var(--yellow);color:var(--ink);font-family:'Sora',sans-serif;font-weight:700;font-size:14px;padding:12px;border:none;border-radius:8px;cursor:pointer;transition:background .15s}
.ct-send:hover{background:var(--ym)}
.ct-ok{display:none;margin-top:10px;background:rgba(34,197,94,0.1);border:1px solid rgba(34,197,94,0.2);border-radius:7px;padding:10px;text-align:center;font-size:13.5px;color:#4ade80}

/* PAGE HEADER */
.page-hd{background:var(--ink);padding:80px 32px 44px}
.page-hd-w{max-width:1160px;margin:0 auto}
.page-hd h1{font-family:'Sora',sans-serif;font-size:clamp(30px,5vw,50px);font-weight:800;color:var(--white);margin-top:8px}
.page-hd p{color:rgba(255,255,255,0.38);font-size:15.5px;margin-top:10px;max-width:500px;line-height:1.75}

/* FOOTER */
footer{background:#0c0c0c;border-top:1px solid rgba(255,255,255,0.06);padding:26px 32px}
.foot-w{max-width:1160px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}
.foot-copy{font-size:12px;color:rgba(255,255,255,0.22)}
.foot-nav{display:flex;gap:18px;flex-wrap:wrap}
.foot-nav a{font-size:12px;color:rgba(255,255,255,0.22);cursor:pointer;transition:color .15s}
.foot-nav a:hover{color:rgba(255,255,255,0.65)}

@media(max-width:860px){
  .cl-grid,.qa-wrap,.contact-w{grid-template-columns:1fr}
  .seg-grid{grid-template-columns:1fr 1fr}
  .svc-grid,.dif-grid{grid-template-columns:1fr}
  .metrics{grid-template-columns:1fr 1fr}
  .nav-links{display:none}
  .stats-w{flex-wrap:wrap}
  .sb-stat{flex:1 1 45%}
}

@media(max-width:560px){
  .nav-w{padding:0 18px;height:58px}.hero{padding-top:58px;height:84vh}.nav-cta{padding:8px 12px;font-size:12px}
  .slide-content,.sec,.seg-sec,.contact-sec,.page-hd,footer,.stats-bar{padding-left:20px;padding-right:20px}
  .sarrow{display:none}.seg-grid,.metrics{grid-template-columns:1fr}.logo-grid{grid-template-columns:1fr 1fr}.cta-w{align-items:flex-start}
  .cta-strip h3{font-size:23px}.whatsapp-float{right:16px;bottom:16px;width:50px;height:50px}
}


/* ===== CLIENTES - LOGOS ===== */
/* ── CLIENT LOGOS GRID ── */
.clients-logo-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
}

.client-logo-card {
    height: 72px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--off);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 14px;
    transition: border-color .18s, background .18s, transform .18s;
    overflow: hidden;
}

.client-logo-card:hover {
    border-color: var(--yellow);
    background: var(--yl);
    transform: translateY(-2px);
}

.client-logo-card img {
    max-width: 100%;
    max-height: 40px;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
    filter: grayscale(100%);
    opacity: 0.7;
    transition: filter .18s, opacity .18s;
}

.client-logo-card:hover img {
    filter: grayscale(0%);
    opacity: 1;
}

@media (max-width: 900px) {
    .clients-logo-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 8px;
    }
}

@media (max-width: 600px) {
    .clients-logo-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 7px;
    }
    .client-logo-card {
        height: 58px;
        padding: 8px 10px;
    }
    .client-logo-card img {
        max-height: 32px;
    }
}



/* ── MOBILE HAMBURGER MENU ── */
.menu-btn {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 44px;
  height: 44px;
  background: none;
  border: 1.5px solid #E8E8E8;
  cursor: pointer;
  border-radius: 8px;
  flex-shrink: 0;
  padding: 8px;
  -webkit-appearance: none;
}
.menu-btn span {
  display: block;
  width: 20px;
  height: 2px;
  background: #111111;
  border-radius: 2px;
  transition: all .25s;
}
.menu-btn.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.menu-btn.open span:nth-child(2) { opacity: 0; }
.menu-btn.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.mobile-menu {
  display: none;
  position: fixed;
  top: 64px;
  left: 0;
  right: 0;
  background: #ffffff;
  border-bottom: 3px solid #FFC107;
  z-index: 9999;
  flex-direction: column;
  padding: 8px 20px 20px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.15);
}
.mobile-menu.open {
  display: flex;
}
.mobile-menu a {
  display: block;
  color: #111111;
  font-size: 16px;
  font-weight: 500;
  padding: 14px 16px;
  border-radius: 8px;
  cursor: pointer;
  border-bottom: 1px solid #E8E8E8;
  text-decoration: none;
}
.mobile-menu a:last-of-type { border-bottom: none; }
.mobile-menu a:active { background: #F2F2F2; }
.mobile-menu .mob-cta {
  margin-top: 12px;
  background: #FFC107;
  color: #111111;
  font-family: 'Sora', sans-serif;
  font-weight: 700;
  font-size: 15px;
  padding: 14px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  width: 100%;
  display: block;
}

@media screen and (max-width: 860px) {
  .menu-btn { display: flex; }
  .nav-links { display: none; }
  .nav-cta { display: none; }
}
