/* ══════════════════════════════════════════════
   PROFOX NETWORK — Stylesheet Principal
   Separado do HTML, sem inline
   ══════════════════════════════════════════════ */

/* ── RESET & VARS ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
:root{
  --bg:#ffffff;--surface:#0d1520;--surface2:#e2e8f0;
  --white:#ffffff;--black:#000000;
  --primary:#ff6b35;--secondary:#4ecdc4;--accent:#ffd23f;
  --blue:#2563eb;--cyan:#06b6d4;
  --success:#10b981;--warning:#f59e0b;--danger:#ef4444;
  --text:#1e293b;--text-light:#64748b;--muted:#94a3b8;--muted2:#64748b;
  --border:#e2e8f0;--sobre-bg:#dbd9d9;
  --glow:0 0 40px rgba(255,107,53,.2);
  --fh:'Bebas Neue',sans-serif;--fb:'Barlow',sans-serif;--fm:'JetBrains Mono',monospace;
  --tr:.3s cubic-bezier(.4,0,.2,1);--r:12px;--rl:20px;
  --gradient-brand-start:334.6,99.2%,49%;--gradient-brand-end:326.2,100%,51%;
  --gradient-start:#ff7300;--gradient-mid:#ff0073;--gradient-end:#ff6fe8;
}
.bg-section-gradient{background:linear-gradient(155deg,var(--gradient-start),var(--gradient-mid),var(--gradient-end))}
body{background:var(--bg);color:var(--text);font-family:var(--fb);line-height:1.6;overflow-x:hidden}
::selection{background:var(--primary);color:#fff}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{cursor:pointer;border:none;background:none;font-family:inherit}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--surface)}
::-webkit-scrollbar-thumb{background:var(--blue);border-radius:3px}

/* ── LAYOUT ── */
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.section{padding:96px 0}
.section--alt{background:var(--surface)}

/* ── LABEL ── */
.label{font-family:var(--fm);font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);display:inline-flex;align-items:center;gap:8px;margin-bottom:14px}
.label::before{content:'';width:18px;height:2px;background:var(--cyan);border-radius:1px;display:block}

/* ── HEADINGS ── */
.h-xl{font-family:var(--fh);font-size:clamp(3.5rem,10vw,9rem);line-height:.92;letter-spacing:.02em}
.h-lg{font-family:var(--fh);font-size:clamp(2rem,5vw,4rem);line-height:1;letter-spacing:.04em}
.h-md{font-family:var(--fh);font-size:clamp(1.5rem,3vw,2.4rem);line-height:1;letter-spacing:.04em}
.c-cyan{color:var(--cyan)}.c-blue{color:var(--blue)}.c-muted{color:#262f3c}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:6px 10px;border-radius:var(--r);font-family:var(--fb);font-weight:600;font-size:.75rem;transition:var(--tr);white-space:nowrap}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 0 20px rgba(26,106,255,.3);padding:5px 8px}
.btn-primary:hover{background:#2a7aff;box-shadow:0 0 35px rgba(26,106,255,.55);transform:translateY(-2px)}
.btn-outline{border:1.5px solid var(--border);color:var(--white);backdrop-filter:blur(8px)}
.btn-outline:hover{border-color:var(--blue);color:var(--cyan);transform:translateY(-2px)}
.btn-wa{background:#22c55e;color:#fff;box-shadow:0 0 20px rgba(34,197,94,.3);padding:5px 8px}
.btn-wa:hover{background:#16a34a;transform:translateY(-2px)}
.btn-ghost{color:var(--cyan);font-weight:600;padding:13px 0}
.btn-ghost:hover{text-decoration:underline}

@media(max-width:768px){
  .btn{padding:4px 6px;font-size:.65rem;gap:2px}
  .btn-primary,.btn-wa{padding:4px 6px}
}

/* ── CARD ── */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rl);padding:30px;transition:var(--tr);position:relative;overflow:hidden}
.card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,106,255,.05),transparent 60%);opacity:0;transition:var(--tr)}
.card:hover::before{opacity:1}
.card:hover{border-color:rgba(26,106,255,.38);transform:translateY(-4px);box-shadow:var(--glow)}

/* ── REVEAL ── */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}

/* ══════════════════════════════
   HEADER
   ══════════════════════════════ */
#hdr{position:fixed;top:0;left:0;right:0;z-index:1000;transition:var(--tr)}
#hdr.scrolled{background:rgba(4,6,8,.93);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}
.hdr-inner{display:flex;align-items:center;justify-content:space-between;height:56px}

/* Logo */
.logo{display:flex;align-items:center;padding:4px 0}
.logo-img{height:32px;width:auto;object-fit:contain}
.logo-text-main{font-size:1.5rem;letter-spacing:.08em;color:var(--white)}
.logo-fox{color:var(--blue)}
.logo-sub{font-size:.5em;color:var(--blue);letter-spacing:.25em;margin-top:3px}
.nav{display:flex;gap:0px}
.nav a{padding:3px 6px;font-size:.65rem;font-weight:500;color:var(--muted);border-radius:4px;transition:var(--tr)}
.nav a:hover,.nav a.active{color:var(--white);background:rgba(255,255,255,.06)}
.hdr-cta{display:flex;gap:1px;align-items:center}
.hero-actions-header{display:flex;gap:1px;flex-direction:row}
.hamburger{display:none;flex-direction:column;gap:2px;padding:2px}
.hamburger span{display:block;width:18px;height:1.5px;background:var(--white);border-radius:1px;transition:var(--tr)}
.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.mob-nav{display:none;position:fixed;inset:70px 0 0 0;background:rgba(4,6,8,.97);backdrop-filter:blur(20px);padding:28px 20px;z-index:999;flex-direction:column;gap:6px;transform:translateX(100%);transition:transform .35s ease}
.mob-nav.open{transform:translateX(0)}
.mob-nav a{display:block;padding:13px 15px;font-size:1.05rem;font-weight:500;color:var(--white);border-radius:var(--r);transition:var(--tr);border:1px solid transparent}
.mob-nav a:hover{color:var(--cyan);background:var(--surface);border-color:var(--border)}

/* ══════════════════════════════
   HERO
   ══════════════════════════════ */
#hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;padding-top:70px}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 70% 40%,rgba(26,106,255,.18),transparent 60%),radial-gradient(ellipse 50% 40% at 15% 70%,rgba(0,200,245,.1),transparent 55%),#040608}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.hero-overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(4,6,8,.72) 0%,rgba(4,6,8,.55) 40%,rgba(4,6,8,.65) 70%,rgba(4,6,8,.88) 100%)}
.hero-scan{position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.25;animation:scan 9s linear infinite;z-index:3}
@keyframes scan{0%{top:0}100%{top:100%}}
.hero-content{position:relative;z-index:10;padding:52px 0 36px}
.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.chip{font-family:var(--fm);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:5px 13px;border-radius:100px;border:1px solid}
.chip-cyan{border-color:var(--cyan);color:#002c33;background:rgb(0, 200, 245)}
.chip-blue{border-color:var(--blue);color:#091226;background:rgb(26, 106, 255)}
.chip-muted{border-color:var(--muted2);color:#060709;background:rgb(90, 112, 153)}
.hero-title{font-family:var(--fh);font-size:clamp(4rem,11vw,9.5rem);line-height:.93;letter-spacing:.02em;margin-bottom:6px;color:var(--white)}
.hero-title .stroke{color:transparent;-webkit-text-stroke:2px var(--blue);display:block}
.hero-title .accent{color:var(--cyan)}
.hero-tag{position:relative;z-index:10;font-size:clamp(.95rem,2vw,1.2rem);color:var(--muted);max-width:500px;margin:22px auto 34px;line-height:1.75;text-align:center}
.hero-tag strong{color:var(--white);font-weight:600}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:52px}
.hero-stats{display:flex;border:1px solid var(--border);border-radius:var(--rl);overflow:hidden;background:rgba(13,21,32,.65);backdrop-filter:blur(12px);width:fit-content}
.hstat{padding:18px 30px;text-align:center;position:relative}
.hstat+.hstat::before{content:'';position:absolute;left:0;top:20%;bottom:20%;width:1px;background:var(--border)}
.hstat-n{font-family:var(--fh);font-size:1.9rem;letter-spacing:.04em;color:var(--cyan);display:block}
.hstat-l{font-family:var(--fm);font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ticker-wrap{position:absolute;bottom:0;left:0;right:0;background:rgba(26,106,255,.1);border-top:1px solid rgba(26,106,255,.18);overflow:hidden;padding:9px 0;z-index:10}
.ticker{display:flex;animation:tick 28s linear infinite;white-space:nowrap}
.ticker:hover{animation-play-state:paused}
.ti{font-family:var(--fm);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);padding:0 28px;opacity:.7}
.ti::after{content:'◈';margin-left:28px;opacity:.4}
@keyframes tick{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ══════════════════════════════
   SOBRE
   ══════════════════════════════ */
.sobre-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.sobre-img-wrap{position:relative}
.sobre-img{width:100%;aspect-ratio:4/5;border-radius:var(--rl);overflow:hidden;background:var(--surface2);border:1px solid var(--border);position:relative}
.sobre-img img{width:100%;height:100%;object-fit:cover}
.sobre-img::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,106,255,.12),rgba(0,200,245,.06));z-index:1;pointer-events:none}
.sf{position:absolute;background:rgba(13,21,32,.9);border:1px solid var(--border);border-radius:var(--r);padding:14px 18px;backdrop-filter:blur(12px);box-shadow:0 20px 60px rgba(0,0,0,.5);z-index:2}
.sf-tr{top:-16px;right:-16px;text-align:center}
.sf-bl{bottom:24px;left:-24px;display:flex;align-items:center;gap:10px}
.sf-num{font-family:var(--fh);font-size:1.7rem;letter-spacing:.04em;color:var(--cyan);line-height:1;display:block}
.sf-lbl{font-size:.7rem;color:var(--muted);font-family:var(--fm);text-transform:uppercase;letter-spacing:.08em}
.checklist{margin-top:28px;display:flex;flex-direction:column;gap:11px}
.chk{display:flex;align-items:flex-start;gap:11px;font-size:.93rem;color:var(--white)}
.chk-ico{width:21px;height:21px;border-radius:50%;background:rgba(0,200,245,.1);border:1px solid rgba(0,200,245,.28);display:flex;align-items:center;justify-content:center;font-size:.68rem;color:var(--cyan);flex-shrink:0;margin-top:2px}
.chk strong{color:#130f0f}

/* ══════════════════════════════
   SERVIÇOS
   ══════════════════════════════ */
.servs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:18px;margin-top:44px}
.sv-card{position:relative}
.sv-card .sv-num{position:absolute;top:0;right:0;z-index:2;background:linear-gradient(135deg,#2B6DB8,#FF478B);color:#fff;font-family:var(--fh);font-size:clamp(1.2rem,3vw,1.8rem);letter-spacing:.04em;padding:8px 18px;border-radius:0 0 0 16px;line-height:1}
.sv-card h3{font-family:var(--fh);font-size:1.35rem;letter-spacing:.04em;margin-bottom:7px}
.sv-card p{font-size:.86rem;color:var(--muted);line-height:1.6}
.sv-card.feat{background:linear-gradient(135deg,rgba(26,106,255,.13),rgba(0,200,245,.06));border-color:rgba(26,106,255,.32)}

/* ══════════════════════════════
   CASES
   ══════════════════════════════ */
.cases-hdr{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:36px;flex-wrap:wrap;gap:18px}
.filters{display:flex;gap:7px;flex-wrap:wrap}
.fbtn{padding:7px 16px;border-radius:100px;font-size:.8rem;font-weight:600;font-family:var(--fm);letter-spacing:.06em;border:1px solid var(--border);color:var(--muted);transition:var(--tr)}
.fbtn:hover,.fbtn.on{background:var(--blue);border-color:var(--blue);color:#fff}
.masonry{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:175px;gap:11px}
.ci{background:var(--surface2);border-radius:var(--r);overflow:hidden;position:relative;cursor:pointer;border:1px solid var(--border);transition:var(--tr)}
.ci:hover{transform:scale(1.02);box-shadow:var(--glow);border-color:rgba(26,106,255,.38)}
.ci:nth-child(1){grid-column:span 5;grid-row:span 2}
.ci:nth-child(2){grid-column:span 4}
.ci:nth-child(3){grid-column:span 3}
.ci:nth-child(4){grid-column:span 4}
.ci:nth-child(5){grid-column:span 3}
.ci:nth-child(6){grid-column:span 4;grid-row:span 2}
.ci:nth-child(7){grid-column:span 4}
.ci:nth-child(8){grid-column:span 4}
.ci-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.2rem;position:relative;overflow:hidden}
.ci-ph img{width:100%;height:100%;object-fit:cover}
.ci-ph::after{content:'';position:absolute;inset:0;background:rgba(4,6,8,.35);transition:var(--tr)}
.ci:hover .ci-ph::after{background:rgba(4,6,8,.15)}
.ci:nth-child(1) .ci-ph{background:linear-gradient(135deg,rgba(26,106,255,.28),rgba(0,200,245,.1))}
.ci:nth-child(2) .ci-ph{background:linear-gradient(135deg,rgba(0,200,245,.2),rgba(26,106,255,.1))}
.ci:nth-child(3) .ci-ph{background:linear-gradient(135deg,rgba(26,106,255,.15),rgba(90,112,153,.1))}
.ci:nth-child(4) .ci-ph{background:linear-gradient(135deg,rgba(0,200,245,.15),rgba(26,106,255,.08))}
.ci:nth-child(5) .ci-ph{background:linear-gradient(135deg,rgba(90,112,153,.2),rgba(26,106,255,.1))}
.ci:nth-child(6) .ci-ph{background:linear-gradient(135deg,rgba(26,106,255,.2),rgba(0,200,245,.08))}
.ci:nth-child(7) .ci-ph{background:linear-gradient(135deg,rgba(0,200,245,.12),rgba(90,112,153,.1))}
.ci:nth-child(8) .ci-ph{background:linear-gradient(135deg,rgba(26,106,255,.18),rgba(0,200,245,.12))}
.ci-ov{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(4,6,8,.9));display:flex;align-items:flex-end;padding:14px;opacity:0;transition:var(--tr)}
.ci:hover .ci-ov{opacity:1}
.ci-tag{font-family:var(--fm);font-size:.6rem;color:var(--cyan);letter-spacing:.1em;text-transform:uppercase}
.ci-title{font-family:var(--fh);font-size:1.05rem;letter-spacing:.05em;color:#fff}

/* LIGHTBOX */
.lb{position:fixed;inset:0;background:rgba(4,6,8,.96);backdrop-filter:blur(20px);z-index:2000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s}
.lb.open{opacity:1;pointer-events:all}
.lb-box{max-width:780px;width:90%;background:var(--surface);border:1px solid var(--border);border-radius:var(--rl);overflow:hidden;position:relative}
.lb-media{max-height:300px;overflow:hidden;background:var(--surface2);display:flex;align-items:center;justify-content:center}
.lb-media img,.lb-media video{width:100%;height:100%;object-fit:cover;display:block}
.lb .c-muted{color:#fff}
.lb-emo{height:260px;display:flex;align-items:center;justify-content:center;font-size:4rem;background:var(--surface2);overflow:hidden}
.lb-emo img{width:100%;height:100%;object-fit:cover}
.lb-body{padding:36px}
.lb-close{position:absolute;top:20px;right:20px;width:42px;height:42px;border-radius:50%;background:var(--surface2);border:1px solid var(--border);color:var(--white);font-size:1.1rem;display:flex;align-items:center;justify-content:center;transition:var(--tr)}
.lb-close:hover{background:var(--blue);border-color:var(--blue)}

/* ══════════════════════════════
   CLIENTES
   ══════════════════════════════ */
.cl-track{overflow:hidden;margin-top:44px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.cl-list{display:flex;animation:clscroll 22s linear infinite}
.cl-list:hover{animation-play-state:paused}
.cl-item{min-width:170px;height:70px;padding:0 28px;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--border);font-family:var(--fh);font-size:.95rem;letter-spacing:.1em;color:var(--muted);white-space:nowrap;transition:var(--tr)}
.cl-item:hover{color:var(--white)}
@keyframes clscroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ══════════════════════════════
   CLIENTES / MARCAS
   ══════════════════════════════ */
.marcas{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:48px;padding:20px 0}
.marcas .mi{flex-shrink:0}
.marcas .mi img{height:64px;width:auto;object-fit:contain;opacity:.6;transition:opacity .3s}
.marcas .mi img:hover{opacity:1}

/* ══════════════════════════════
/* Camera area */
.camera-area{border:1px solid var(--border);border-radius:var(--r);overflow:hidden;background:var(--bg)}
.camera-placeholder{text-align:center;padding:28px 20px}
.camera-placeholder-ico{font-size:2.4rem;margin-bottom:8px}
.camera-placeholder-title{font-weight:600;font-size:.95rem;margin-bottom:4px}
.camera-placeholder-desc{font-size:.8rem;color:var(--muted)}
.camera-live{position:relative;background:#000;display:flex;flex-direction:column;align-items:center;padding:12px}
.camera-live video{width:100%;max-width:340px;border-radius:var(--r);background:#000;transform:scaleX(-1)}
.camera-live canvas{display:none}
.camera-preview{text-align:center;padding:20px;display:flex;flex-direction:column;align-items:center;gap:12px}
.camera-preview img{width:180px;height:180px;object-fit:cover;border-radius:50%;border:3px solid var(--cyan)}
.camera-controls{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;padding:8px 0 14px}

   PARCERIAS
   ══════════════════════════════ */
.parc-intro{max-width:540px;margin-bottom:24px}
.parc-grid{display:grid;grid-template-columns:1fr;gap:22px}

/* Botões de toggle entre intro e cards */
.parc-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px}

/* Accordion — começa COLAPSADO */
.ac-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rl);overflow:hidden;transition:border-color .3s,box-shadow .3s;min-width:0}
.ac-card.open{border-color:rgba(26,106,255,.4)}
.ac-card:not(.open) .ac-body{display:none}
.ac-hdr{display:flex;align-items:center;justify-content:space-between;padding:28px 28px;user-select:none;gap:12px}
.ac-left{display:flex;align-items:center;gap:14px}
.ac-ico{width:50px;height:50px;border-radius:13px;background:rgba(26,106,255,.1);border:1px solid rgba(26,106,255,.2);display:flex;align-items:center;justify-content:center;font-size:1.35rem;flex-shrink:0;transition:var(--tr)}
.ac-card.open .ac-ico{background:rgba(26,106,255,.22);border-color:var(--blue);box-shadow:0 0 20px rgba(26,106,255,.3)}
.ac-title{font-family:var(--fh);font-size:1.45rem;letter-spacing:.04em}
.ac-sub{font-size:.8rem;color:var(--muted);font-family:var(--fm)}
.ac-btn{width:34px;height:34px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:1.1rem;transition:var(--tr);flex-shrink:0;line-height:1}
.ac-card.open .ac-btn{background:var(--blue);border-color:var(--blue);color:#fff;transform:rotate(45deg)}
.ac-inner{padding:0 28px 28px}

/* ══════════════════════════════
   FORM STYLES
   ══════════════════════════════ */
.fg{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fg3{grid-template-columns:1fr 1fr 1fr}
.fgrp{display:flex;flex-direction:column;gap:5px}
.fgrp.full{grid-column:1/-1}
.flbl{font-family:var(--fm);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.flbl .req{color:var(--cyan);margin-left:2px}
.fi,.fs,.fta{background:var(--bg);border:1px solid var(--border);border-radius:var(--r);color:var(--text);font-family:var(--fb);font-size:.9rem;padding:11px 13px;transition:var(--tr);outline:none;width:100%}
.fi:focus,.fs:focus,.fta:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,106,255,.12)}
.fi::placeholder{color:var(--muted2)}
.fi.err{border-color:#ef4444}
.fs{appearance:none;cursor:pointer}
.fs option{background:#ffffff;color:var(--text)}
.fta{resize:vertical;min-height:78px}
.fsec{font-family:var(--fm);font-size:.63rem;letter-spacing:.15em;text-transform:uppercase;color:var(--blue);border-bottom:1px solid rgba(26,106,255,.18);padding-bottom:7px;margin:4px 0 2px;grid-column:1/-1}
.fsec-sub{font-family:var(--fm);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);opacity:.7;border-bottom:1px dashed rgba(26,106,255,.15);padding-bottom:5px;margin:10px 0 2px;grid-column:1/-1}
.ffile{border:2px dashed var(--border);border-radius:var(--r);padding:22px;text-align:center;cursor:pointer;transition:var(--tr);background:var(--bg)}
.ffile:hover{border-color:var(--blue);background:rgba(26,106,255,.04)}
.ffile input{display:none}
.ffile-ico{font-size:1.7rem;margin-bottom:6px}
.ffile p{font-size:.8rem;color:var(--muted)}

/* Camera area */
.fsubmit{width:100%;padding:13px;border-radius:var(--r);background:var(--blue);color:#fff;font-weight:600;font-size:.97rem;font-family:var(--fb);transition:var(--tr);display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:none}
.fsubmit:hover{background:#2a7aff;box-shadow:var(--glow)}
.fsubmit:disabled{opacity:.55;cursor:not-allowed}
.fmsg{padding:11px 14px;border-radius:var(--r);font-size:.86rem;display:none;grid-column:1/-1;margin-top:4px}
.fmsg.ok{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.28);color:#4ade80;display:block}
.fmsg.er{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.28);color:#f87171;display:block}

/* ══════════════════════════════
   FOOTER
   ══════════════════════════════ */
footer{background:var(--surface);border-top:1px solid var(--border);padding:60px 0 28px}
.ft-grid{display:grid;grid-template-columns:2fr 1fr;gap:44px;margin-bottom:44px}
.ft-brand p{font-size:.88rem;color:var(--muted);line-height:1.75;margin-top:14px;max-width:270px}
.ft-soc{display:flex;gap:9px;margin-top:18px}
.soc-btn{width:36px;height:36px;border-radius:9px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.88rem;color:var(--muted);transition:var(--tr)}
.soc-btn:hover{border-color:var(--blue);color:var(--cyan);background:rgba(26,106,255,.08)}
.ft-col h4{font-family:var(--fm);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--white);margin-bottom:18px}
.ft-col ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.ft-col ul li a{font-size:.86rem;color:var(--muted);transition:var(--tr)}
.ft-col ul li a:hover{color:var(--white)}
.ft-ci{display:flex;align-items:center;gap:9px;font-size:.86rem;color:var(--muted);margin-bottom:11px}
.ft-bot{display:flex;align-items:center;justify-content:space-between;padding-top:22px;border-top:1px solid var(--border);flex-wrap:wrap;gap:10px}
.ft-copy{font-size:.76rem;color:var(--muted2);font-family:var(--fm)}
.ft-leg{display:flex;gap:18px}
.ft-leg a{font-size:.76rem;color:var(--muted2);font-family:var(--fm);transition:var(--tr)}
.ft-leg a:hover{color:var(--muted)}
.ft-leg{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.ft-dev{font-size:.7rem;color:var(--muted2);font-family:var(--fm)}

/* TOAST */
.toast{position:fixed;bottom:22px;right:22px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:13px 18px;font-size:.88rem;color:var(--white);box-shadow:0 20px 60px rgba(0,0,0,.5);z-index:9000;display:flex;align-items:center;gap:9px;transform:translateY(80px);opacity:0;transition:var(--tr);max-width:330px}
.toast.show{transform:translateY(0);opacity:1}
.toast.ok{border-color:rgba(34,197,94,.3)}
.toast.er{border-color:rgba(239,68,68,.3)}

/* ══════════════════════════════
   RESPONSIVE
   ══════════════════════════════ */
@media(max-width:1024px){
  .sobre-grid{grid-template-columns:1fr;gap:44px}
  .sobre-img{aspect-ratio:16/9}
  .ft-grid{grid-template-columns:1fr 1fr}
  .masonry{grid-template-columns:repeat(6,1fr);grid-auto-rows:140px}
  .ci:nth-child(1){grid-column:span 6;grid-row:span 2}
  .ci:nth-child(2){grid-column:span 3}
  .ci:nth-child(3){grid-column:span 3}
  .ci:nth-child(4){grid-column:span 3}
  .ci:nth-child(5){grid-column:span 3}
  .ci:nth-child(6){grid-column:span 3;grid-row:span 2}
  .ci:nth-child(7){grid-column:span 3}
  .ci:nth-child(8){grid-column:span 3}
}
@media(max-width:768px){
  .section{padding:68px 0}
  .nav,.hdr-cta .btn-outline{display:none}
  .hamburger{display:flex}
  .mob-nav{display:flex}
  .mob-nav a{padding:10px 12px;font-size:.95rem}
  .logo-img{height:38px}
  .hero-stats{flex-direction:column;width:100%}
  .hstat+.hstat::before{display:none}
  .hstat{border-top:1px solid var(--border)}
  .fg{grid-template-columns:1fr}
  .fg3{grid-template-columns:1fr}
  .ac-hdr{padding:20px 18px}
  .ac-inner{padding:0 18px 20px}
  .ac-ico{width:40px;height:40px;font-size:1.1rem}
  .ac-title{font-size:1.2rem}
  .fsubmit{font-size:.85rem}
  .ft-grid{grid-template-columns:1fr;gap:28px}
  .ft-bot{flex-direction:column;text-align:center}
  .sf-tr,.sf-bl{display:none}
  .masonry{grid-template-columns:1fr 1fr;grid-auto-rows:120px}
  .ci{grid-column:span 1!important;grid-row:span 1!important}
  .servs-grid{grid-template-columns:1fr}
  .hdr-cta{gap:2px}
  .hero-actions-header{gap:2px}
}
@media(max-width:480px){
  .servs-grid,.hero-actions{flex-direction:column}
  .masonry{grid-template-columns:1fr}
}

/* ══════════════════════════════
   REDES SOCIAIS
   ══════════════════════════════ */
#redes-sociais{
  padding:96px 0;
  position:relative;
  overflow:hidden;
  text-align:center;
  color:var(--white);
  background:linear-gradient(155deg,var(--gradient-start),var(--gradient-mid),var(--gradient-end))
}
#redes-sociais::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(4,6,8,.55) 0%,rgba(4,6,8,.35) 50%,rgba(4,6,8,.65) 100%);
  z-index:1
}
#redes-sociais .container{position:relative;z-index:2}
.rs-grid{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:48px;
  margin-top:44px
}
/* Phone mockup */
.phone{
  width:280px;
  background:#111;
  border-radius:44px;
  padding:14px;
  box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 40px rgba(6,182,212,.15);
  border:1.5px solid rgba(255,255,255,.08);
  position:relative;
  transition:var(--tr)
}
.phone:hover{transform:translateY(-4px);box-shadow:0 40px 100px rgba(0,0,0,.7),0 0 60px rgba(6,182,212,.2)}
.phone-notch{
  width:110px;
  height:22px;
  background:#111;
  border-radius:0 0 18px 18px;
  margin:-14px auto 0;
  position:relative;
  z-index:2
}
.phone-screen{
  border-radius:30px;
  overflow:hidden;
  aspect-ratio:9/19;
  background:#000;
  margin-top:-2px
}
.phone-screen img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block
}
.phone-info{
  margin-top:16px;
  text-align:center
}
.phone-info h3{
  font-family:var(--fh);
  font-size:1.3rem;
  letter-spacing:.04em;
  color:var(--white)
}
.phone-info p{
  font-size:.82rem;
  color:var(--muted);
  margin-top:4px
}
.rs-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:14px;
  padding:10px 24px;
  border-radius:100px;
  background:linear-gradient(135deg,#f58529,#dd2a7b,#8134af);
  color:#fff;
  font-weight:600;
  font-size:.9rem;
  transition:var(--tr)
}
.rs-link:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(221,42,123,.35)}
/* Responsive */
@media(max-width:768px){
  #redes-sociais{padding:68px 0}
  .phone{width:240px;padding:12px;border-radius:36px}
  .phone-screen{border-radius:24px}
  .phone-notch{width:90px;height:18px;border-radius:0 0 14px 14px;margin:-12px auto 0}
  .phone-info h3{font-size:1.1rem}
}

/* ══════════════════════════════
   FORÇAR CONTRASTE WCAG AA EM SEÇÕES ESCURAS
   ══════════════════════════════ */
.section--alt, footer {
  color: var(--white) !important;
}
.section--alt .flbl,
.section--alt .sv-card p,
.section--alt .ac-sub,
footer .ft-col ul li a,
footer .ft-ci,
footer .ft-copy,
footer .ft-leg a {
  color: var(--white) !important;
}

/* Fallback para .stroke em browsers sem -webkit-text-stroke */
.hero-title .stroke {
  color: var(--blue);
  -webkit-text-stroke: 2px var(--blue);
  text-stroke: 2px var(--blue);
}

/* ── STATS SECTION GRID ── */
.grid {
  display: grid;
}
.grid-cols-2 {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 1024px) {
  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
.relative {
  position: relative;
}
.overflow-hidden {
  overflow: hidden;
}
.flex {
  display: flex;
}
.flex-col {
  flex-direction: column;
}
.items-center {
  align-items: center;
}
.justify-center {
  justify-content: center;
}
.text-center {
  text-align: center;
}
.select-none {
  user-select: none;
}
.select-none {
  pointer-events: none;
}
.text-white {
  color: #ffffff;
}
.text-gray-900 {
  color: #111827;
}
.text-\[6vw\]{font-size:clamp(2.5rem,12vw,8rem)}
.z-10 {
  z-index: 10;
}
.z-0 {
  z-index: 0;
}
.left-0 {
  left: 0;
}
.top-0 {
  top: 0;
}
.absolute {
  position: absolute;
}
.inset-0 {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.opacity-\[0\.07\] {
  opacity: 0.07;
}
.drop-shadow-lg {
  filter: drop-shadow(0 10px 8px rgba(0, 0, 0, 0.04)) drop-shadow(0 4px 3px rgba(0, 0, 0, 0.1));
}
.drop-shadow-md {
  filter: drop-shadow(0 4px 3px rgba(0, 0, 0, 0.07));
}
.font-black {
  font-weight: 900;
}
.tracking-tighter {
  letter-spacing: -0.05em;
}
.tracking-wider {
  letter-spacing: 0.05em;
}
.uppercase {
  text-transform: uppercase;
}
.leading-tight {
  line-height: 1.25;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-4 {
  margin-bottom: 1rem;
}
.sm\:min-h-\[180px\] {
  min-height: 180px;
}
@media (min-width: 640px) {
  .sm\:min-h-\[180px\] {
    min-height: 180px;
  }
}
.sm\:min-h-\[250px\] {
  min-height: 250px;
}
@media (min-width: 640px) {
  .sm\:min-h-\[250px\] {
    min-height: 250px;
  }
}
.md\:min-h-\[350px\] {
  min-height: 350px;
}
@media (min-width: 768px) {
  .md\:min-h-\[350px\] {
    min-height: 350px;
  }
}
.lg\:min-h-\[400px\] {
  min-height: 400px;
}
@media (min-width: 1024px) {
  .lg\:min-h-\[400px\] {
    min-height: 400px;
  }
}
.p-4 {
  padding: 1rem;
}
@media (min-width: 640px) {
  .sm\:p-8 {
    padding: 2rem;
  }
}
@media (min-width: 768px) {
  .md\:p-12 {
    padding: 3rem;
  }
}
@media (min-width: 1024px) {
  .lg\:p-20 {
    padding: 5rem;
  }
}
.text-\[12vw\] {
  font-size: 12vw;
}
.sm\:text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}
@media (min-width: 640px) {
  .sm\:text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}
.sm\:text-3xl {
  font-size: 1.875rem;
  line-height: 2.25rem;
}
@media (min-width: 640px) {
  .sm\:text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}
.md\:text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}
@media (min-width: 768px) {
  .md\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
.lg\:text-5xl {
  font-size: 3rem;
  line-height: 1;
}
@media (min-width: 1024px) {
  .lg\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }
}
.xl\:text-7xl {
  font-size: 4.5rem;
  line-height: 1;
}
.sm\:text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}
@media (min-width: 640px) {
  .sm\:text-xs {
    font-size: 0.75rem;
    line-height: 1rem;
  }
}
.sm\:text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
@media (min-width: 640px) {
  .sm\:text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
}
.md\:text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
@media (min-width: 768px) {
  .md\:text-base {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}
.lg\:text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
@media (min-width: 1024px) {
  .lg\:text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}
