﻿*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
:root{
  --blue:#1A5CF8;
  --blue-dark:#1248d6;
  --blue-dim:rgba(26,92,248,.07);
  --blue-line:rgba(26,92,248,.2);
  --bg:#FFFFFF;
  --bg-1:#F7F8FA;
  --bg-2:#F0F1F5;
  --surface:rgba(0,0,0,.03);
  --surface-2:rgba(0,0,0,.055);
  --line:rgba(0,0,0,.08);
  --line-hi:rgba(0,0,0,.14);
  --t-1:#0D0D12;
  --t-2:#5A5A72;
  --t-3:#9898AA;
  --font:'Inter',system-ui,sans-serif;
  --ease:cubic-bezier(.4,0,.2,1);
  --ease-out:cubic-bezier(0,0,.2,1);
}
body{font-family:var(--font);background:var(--bg);color:var(--t-2);overflow-x:hidden;line-height:1.6;}
.wrap{width:100%;max-width:1100px;margin:0 auto;padding:0 28px;}
section{padding:100px 0;}
h1,h2,h3,h4{color:var(--t-1);font-weight:600;letter-spacing:-.025em;line-height:1.15;}
p{color:var(--t-2);line-height:1.75;}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:18px 0;transition:padding .3s var(--ease);}
.nav.scrolled{padding:10px 0;}
.nav-bg{position:absolute;inset:0;background:transparent;border-bottom:1px solid transparent;transition:background .4s,border-color .4s,backdrop-filter .4s;}
.nav.scrolled .nav-bg{background:rgba(255,255,255,.92);backdrop-filter:blur(20px);border-color:var(--line);}
.nav-row{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none;}
.logo-mark{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;}
.logo-mark img{width:32px;height:32px;display:block;border-radius:8px;}
.logo-name{font-size:1rem;font-weight:600;color:var(--t-1);letter-spacing:-.02em;}
ul.nav-links{display:flex;align-items:center;gap:2px;list-style:none;}
ul.nav-links a{font-size:.825rem;font-weight:500;color:var(--t-1);text-decoration:none;padding:7px 13px;border-radius:6px;transition:color .2s,background .2s;}
ul.nav-links a:hover{color:var(--t-1);background:var(--surface-2);}
.nav-cta{font-size:.825rem;font-weight:600;color:#fff;background:var(--blue);text-decoration:none;padding:8px 18px;border-radius:6px;transition:background .2s;}
.nav-cta:hover{background:var(--blue-dark);}
.hbg{display:none;width:36px;height:36px;background:var(--surface);border:1px solid var(--line);border-radius:6px;align-items:center;justify-content:center;flex-direction:column;gap:4px;cursor:pointer;}
.hbg span{display:block;width:16px;height:1.5px;background:var(--t-2);border-radius:2px;transition:transform .25s,opacity .25s;}
.hbg.open span:nth-child(1){transform:translateY(5.5px) rotate(45deg);}
.hbg.open span:nth-child(2){opacity:0;}
.hbg.open span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg);}
.mob-menu{display:none;position:fixed;inset:0;z-index:90;background:rgba(255,255,255,.98);backdrop-filter:blur(16px);flex-direction:column;align-items:center;justify-content:center;gap:4px;opacity:0;pointer-events:none;transition:opacity .3s;}
.mob-menu.open{opacity:1;pointer-events:all;}
.mob-menu a{font-size:1.4rem;font-weight:500;color:var(--t-3);text-decoration:none;padding:14px 24px;transition:color .2s;}
.mob-menu a:hover{color:var(--t-1);}
.mob-menu .mob-cta{margin-top:16px;font-size:1rem;font-weight:600;color:#fff;background:var(--blue);padding:14px 36px;border-radius:8px;}

/* HERO */
#hero{min-height:100vh;display:flex;align-items:center;padding-top:80px;background:var(--bg);border-bottom:1px solid var(--line);}
.hero-inner{max-width:680px;padding:80px 0;}
.hero-label{display:inline-flex;align-items:center;gap:8px;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--t-3);margin-bottom:28px;}
.hero-label::before{content:'';width:20px;height:1px;background:var(--blue);}
h1.hero-title{font-size:clamp(2.6rem,5vw,4.8rem);font-weight:700;color:var(--t-1);letter-spacing:-.04em;line-height:1.06;margin-bottom:22px;}
h1.hero-title .hl{color:var(--blue);}
.hero-sub{font-size:1.05rem;color:var(--t-2);line-height:1.75;max-width:500px;margin-bottom:40px;}
.btns{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--blue);color:#fff;font-size:.9rem;font-weight:600;padding:12px 24px;border-radius:7px;text-decoration:none;border:none;transition:background .2s,transform .2s;}
.btn-primary:hover{background:var(--blue-dark);transform:translateY(-1px);}
.btn-primary svg{transition:transform .2s;}
.btn-primary:hover svg{transform:translateX(3px);}
.btn-ghost{display:inline-flex;align-items:center;gap:8px;color:var(--t-2);font-size:.9rem;font-weight:500;text-decoration:none;padding:12px 20px;border-radius:7px;border:1px solid var(--line-hi);background:transparent;transition:color .2s,border-color .2s,background .2s;}
.btn-ghost:hover{color:var(--t-1);background:var(--surface);}
.hero-stats{display:flex;gap:36px;margin-top:52px;border-top:1px solid var(--line);padding-top:32px;flex-wrap:wrap;}
.stat-n{font-size:1.6rem;font-weight:700;color:var(--t-1);letter-spacing:-.04em;display:block;}
.stat-l{font-size:.72rem;color:var(--t-3);margin-top:2px;letter-spacing:.02em;}

/* PRESS */
.press{background:var(--bg-1);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;}
.press-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.press-lbl{font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--t-3);white-space:nowrap;}
.press-sep{width:1px;height:16px;background:var(--line);flex-shrink:0;}
.press-logos{display:flex;gap:28px;flex-wrap:wrap;align-items:center;}
.press-logo{font-size:.78rem;font-weight:500;color:var(--t-3);letter-spacing:.02em;transition:color .2s;}
.press-logo:hover{color:var(--t-2);}

/* SECTION LABELS */
.sec-label{display:inline-flex;align-items:center;gap:6px;font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:14px;}
.sec-label::before{content:'';width:16px;height:1px;background:var(--blue);}
h2.sec-title{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:700;color:var(--t-1);letter-spacing:-.03em;line-height:1.12;margin-bottom:14px;}
.sec-sub{font-size:.93rem;color:var(--t-2);line-height:1.75;max-width:460px;}

/* SOBRE */
#sobre{background:var(--bg-1);}
.sobre-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.logo-card{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:36px;}
.logo-variants{display:flex;flex-direction:column;gap:14px;}
.lv-row{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px;border:1px solid var(--line);border-radius:7px;background:var(--bg-1);}
.lv-label{font-size:.6rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--t-3);}
.lv-primary{display:flex;flex-direction:column;align-items:center;gap:8px;}
.lv-mark-lg{width:52px;height:52px;border-radius:11px;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.lv-mark-lg img{width:52px;height:52px;display:block;border-radius:11px;}

.lv-name-lg{font-size:1.25rem;font-weight:600;color:var(--t-1);letter-spacing:-.03em;}
.lv-horiz{display:flex;align-items:center;gap:7px;}
.lv-mark-sm{width:26px;height:26px;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.lv-mark-sm img{width:26px;height:26px;display:block;border-radius:6px;}

.lv-name-sm{font-size:.9rem;font-weight:600;color:var(--t-1);letter-spacing:-.02em;}
.lv-mono{display:flex;align-items:center;gap:7px;opacity:.35;filter:grayscale(1);}
.lv-mark-mono{width:26px;height:26px;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;filter:grayscale(1);}
.lv-mark-mono img{width:26px;height:26px;display:block;border-radius:6px;}

.lv-name-mono{font-size:.9rem;font-weight:600;color:var(--t-1);letter-spacing:-.02em;}
.sobre-text p{font-size:.95rem;margin-bottom:16px;}
.tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:28px;}
.tag{font-size:.78rem;font-weight:500;color:var(--t-3);background:var(--bg);border:1px solid var(--line);padding:6px 12px;border-radius:4px;transition:color .2s,border-color .2s;}
.tag:hover{color:var(--t-2);border-color:var(--line-hi);}

/* COMO */
#como{background:var(--bg);}
.como-header{max-width:520px;margin-bottom:52px;}
.steps{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:10px;overflow:hidden;}
.step{padding:36px 28px;border-right:1px solid var(--line);transition:background .2s;}
.step:last-child{border-right:none;}
.step:hover{background:var(--bg-1);}
.step-num{font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--t-3);margin-bottom:18px;}
.step-icon{width:38px;height:38px;border-radius:7px;background:var(--surface);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;margin-bottom:18px;transition:border-color .2s,background .2s;}
.step:hover .step-icon{border-color:var(--blue-line);background:var(--blue-dim);}
.step-icon svg{width:17px;height:17px;color:var(--t-3);}
.step:hover .step-icon svg{color:var(--blue);}
.step h3{font-size:.95rem;font-weight:600;color:var(--t-1);margin-bottom:8px;letter-spacing:-.02em;}
.step p{font-size:.83rem;line-height:1.7;color:var(--t-2);}

/* VALORES */
#valores{background:var(--bg-1);}
.valores-header{max-width:520px;margin-bottom:52px;}
.valores-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.valor{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:28px 24px;transition:border-color .2s;}
.valor:hover{border-color:var(--line-hi);}
.valor-icon{width:40px;height:40px;border-radius:8px;background:var(--blue);display:flex;align-items:center;justify-content:center;margin-bottom:18px;flex-shrink:0;}
.valor-icon svg{width:18px;height:18px;color:#fff;}
.valor h4{font-size:.92rem;font-weight:600;color:var(--t-1);margin-bottom:6px;letter-spacing:-.02em;}
.valor p{font-size:.8rem;line-height:1.7;color:var(--t-3);}
.valor.wide{grid-column:span 2;display:flex;align-items:flex-start;gap:20px;}
.valor.wide .valor-text{flex:1;}

/* CTA */
#cta{background:var(--bg);}
.cta-box{border:1px solid var(--line);border-radius:10px;background:var(--bg-1);padding:80px 64px;text-align:center;}
.cta-inner{max-width:540px;margin:0 auto;}
.cta-inner .sec-label{justify-content:center;}
.cta-inner .sec-label::before{display:none;}
.cta-inner h2{font-size:clamp(1.9rem,3.2vw,2.8rem);font-weight:700;color:var(--t-1);letter-spacing:-.04em;line-height:1.1;margin-bottom:14px;}
.cta-inner p{font-size:.95rem;color:var(--t-2);line-height:1.75;margin-bottom:36px;}
.cta-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}

/* FOOTER */
footer{background:var(--bg);border-top:1px solid var(--line);}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding:60px 0 44px;}
.footer-brand .logo{margin-bottom:12px;}
.footer-brand p{font-size:.8rem;color:var(--t-3);line-height:1.7;max-width:240px;}
.socials{display:flex;gap:6px;margin-top:18px;}
.soc{width:30px;height:30px;border-radius:6px;background:var(--surface);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--t-3);text-decoration:none;transition:color .2s,border-color .2s,background .2s;}
.soc:hover{color:var(--t-1);border-color:var(--line-hi);background:var(--surface-2);}
.soc svg{width:12px;height:12px;}
.footer-col h6{font-size:.63rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--t-3);margin-bottom:14px;}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:8px;}
.footer-col ul a{font-size:.8rem;color:var(--t-3);text-decoration:none;transition:color .2s;}
.footer-col ul a:hover{color:var(--t-1);}
.footer-bottom{border-top:1px solid var(--line);padding:18px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;}
.footer-bottom p,.footer-bottom a{font-size:.73rem;color:var(--t-3);}
.footer-bottom a{text-decoration:none;transition:color .2s;}
.footer-bottom a:hover{color:var(--t-2);}

/* ── PROGRESS BAR ── */
#progress-bar{
  position:fixed;top:0;left:0;height:2px;
  background:var(--blue);z-index:200;
  width:0%;transition:width .1s linear;
  transform-origin:left;
}

/* ── HERO ENTRANCE ── stagger handled by JS delay classes */
.hero-inner > *{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .72s cubic-bezier(0,.55,.45,1), transform .72s cubic-bezier(0,.55,.45,1);
}
.hero-inner.loaded > *:nth-child(1){opacity:1;transform:none;transition-delay:.08s;}
.hero-inner.loaded > *:nth-child(2){opacity:1;transform:none;transition-delay:.18s;}
.hero-inner.loaded > *:nth-child(3){opacity:1;transform:none;transition-delay:.28s;}
.hero-inner.loaded > *:nth-child(4){opacity:1;transform:none;transition-delay:.38s;}
.hero-inner.loaded > *:nth-child(5){opacity:1;transform:none;transition-delay:.48s;}

/* ── SCROLL REVEAL ── */
.reveal{
  opacity:0;transform:translateY(28px);
  transition:opacity .8s cubic-bezier(0,.55,.45,1), transform .8s cubic-bezier(0,.55,.45,1);
  will-change:opacity,transform;
}
.reveal.in{opacity:1;transform:none;}

.reveal-l{
  opacity:0;transform:translateX(-28px);
  transition:opacity .8s cubic-bezier(0,.55,.45,1), transform .8s cubic-bezier(0,.55,.45,1);
  will-change:opacity,transform;
}
.reveal-l.in{opacity:1;transform:none;}

.reveal-r{
  opacity:0;transform:translateX(28px);
  transition:opacity .8s cubic-bezier(0,.55,.45,1), transform .8s cubic-bezier(0,.55,.45,1);
  will-change:opacity,transform;
}
.reveal-r.in{opacity:1;transform:none;}

/* Stagger children */
.stagger>*{
  opacity:0;transform:translateY(20px);
  transition:opacity .65s cubic-bezier(0,.55,.45,1), transform .65s cubic-bezier(0,.55,.45,1);
  will-change:opacity,transform;
}
.stagger.in>*:nth-child(1){opacity:1;transform:none;transition-delay:.0s;}
.stagger.in>*:nth-child(2){opacity:1;transform:none;transition-delay:.09s;}
.stagger.in>*:nth-child(3){opacity:1;transform:none;transition-delay:.18s;}
.stagger.in>*:nth-child(4){opacity:1;transform:none;transition-delay:.27s;}
.stagger.in>*:nth-child(5){opacity:1;transform:none;transition-delay:.36s;}

/* ── CARD LIFT — Apple-style hover ── */
.valor, .step, .logo-card, .cta-box{
  transition:
    border-color .3s var(--ease),
    background .3s var(--ease),
    transform .4s cubic-bezier(.34,1.3,.64,1),
    box-shadow .4s cubic-bezier(.34,1.3,.64,1);
  will-change:transform;
}
.valor:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 32px rgba(0,0,0,.07);
  border-color:var(--line-hi);
}
.step:hover{
  transform:translateY(-3px);
  box-shadow:0 8px 24px rgba(0,0,0,.06);
  background:var(--bg-1);
}
.logo-card:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 28px rgba(0,0,0,.07);
}

/* ── BUTTON INTERACTIONS ── */
.btn-primary{
  transition:background .2s, transform .3s cubic-bezier(.34,1.4,.64,1), box-shadow .3s var(--ease);
}
.btn-primary:hover{
  background:var(--blue-dark);
  transform:translateY(-2px);
  box-shadow:0 6px 20px rgba(26,92,248,.28);
}
.btn-primary:active{transform:translateY(0) scale(.98);}

.btn-ghost{
  transition:color .2s, border-color .2s, background .2s, transform .3s cubic-bezier(.34,1.4,.64,1);
}
.btn-ghost:hover{transform:translateY(-2px);}
.btn-ghost:active{transform:translateY(0) scale(.98);}

.nav-cta{
  transition:background .2s, transform .3s cubic-bezier(.34,1.4,.64,1), box-shadow .3s;
}
.nav-cta:hover{
  background:var(--blue-dark);
  transform:translateY(-1px);
  box-shadow:0 4px 14px rgba(26,92,248,.25);
}

/* ── VALOR ICON BOUNCE ── */
.valor-icon{
  transition:transform .4s cubic-bezier(.34,1.5,.64,1);
}
.valor:hover .valor-icon{transform:scale(1.12);}

/* ── STEP ICON ── */
.step-icon{
  transition:border-color .25s, background .25s, transform .4s cubic-bezier(.34,1.5,.64,1);
}
.step:hover .step-icon{
  border-color:var(--blue-line);
  background:var(--blue-dim);
  transform:scale(1.1);
}
.step:hover .step-icon svg{color:var(--blue);}

/* ── LOGO MARK SPIN ON HOVER ── */
.logo:hover .logo-mark{
  transform:rotate(-8deg) scale(1.08);
}
.logo-mark{transition:transform .4s cubic-bezier(.34,1.5,.64,1);}

/* ── SOCIAL ICONS ── */
.soc{
  transition:color .2s, border-color .2s, background .2s, transform .35s cubic-bezier(.34,1.5,.64,1);
}
.soc:hover{
  color:var(--blue);
  border-color:var(--blue-line);
  background:var(--blue-dim);
  transform:translateY(-3px);
}

/* ── STAT ITEMS ── */
.stat-item{
  transition:transform .35s cubic-bezier(.34,1.4,.64,1);
}
.stat-item:hover{transform:translateY(-2px);}
.stat-n{transition:color .2s;}
.stat-item:hover .stat-n{color:var(--blue);}

/* ── TAGS ── */
.tag{
  transition:color .2s, border-color .2s, background .2s, transform .3s cubic-bezier(.34,1.4,.64,1);
}
.tag:hover{
  color:var(--blue);
  border-color:var(--blue-line);
  background:var(--blue-dim);
  transform:translateY(-1px);
}

/* ── PRESS LOGO ── */
.press-logo{transition:color .25s, transform .3s cubic-bezier(.34,1.4,.64,1);}
.press-logo:hover{color:var(--t-1);transform:translateY(-1px);}

/* RESPONSIVE */
@media(max-width:900px){
  .sobre-grid{grid-template-columns:1fr;gap:44px;}
  .steps{grid-template-columns:1fr;}
  .step{border-right:none;border-bottom:1px solid var(--line);}
  .step:last-child{border-bottom:none;}
  .valores-grid{grid-template-columns:1fr 1fr;}
  .valor.wide{grid-column:span 2;flex-direction:column;gap:0;}
  .footer-top{grid-template-columns:1fr 1fr;gap:28px;}
  .cta-box{padding:52px 32px;}
}
@media(max-width:620px){
  ul.nav-links,.nav-cta{display:none;}
  .hbg{display:flex;}
  .mob-menu{display:flex;}
  .hero-stats{gap:20px;}
  .valores-grid{grid-template-columns:1fr;}
  .valor.wide{grid-column:span 1;}
  .footer-top{grid-template-columns:1fr;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .btns,.cta-btns{flex-direction:column;align-items:flex-start;}
  .cta-btns{align-items:center;}
  section{padding:72px 0;}
  .cta-box{padding:40px 20px;}
  .press-logos{gap:16px;}
}
