/* ============================================================
   VOHAUS — CSS Principal
   Cores: #0A0A0A (preto) | #FF3D00 (laranja) | #F5F0EB (branco quente)
============================================================ */

*{margin:0;padding:0;box-sizing:border-box}
:root{
  --black:#0a0a0a;--white:#f5f0eb;--orange:#FF3D00;
  --gray:#1a1a1a;--mid:#2e2e2e;--text:#8a8a8a;
  --font-d:"Bebas Neue",sans-serif;
  --font-ui:"Barlow Condensed",sans-serif;
  --font-b:"Barlow",sans-serif;
}
html{scroll-behavior:smooth}
body{background:var(--black);color:var(--white);font-family:var(--font-b);font-weight:300;overflow-x:hidden;cursor:none}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}

/* CURSOR */
.cur{position:fixed;border-radius:50%;pointer-events:none;z-index:9999;transition:transform .2s ease}
.cur-dot{width:8px;height:8px;background:var(--orange)}
.cur-ring{width:40px;height:40px;border:1px solid rgba(255,61,0,.35);transition:transform .5s cubic-bezier(.23,1,.32,1)}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:200;padding:24px 64px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(to bottom,rgba(10,10,10,.98),rgba(10,10,10,.6) 80%,transparent);transition:backdrop-filter .4s,background .4s}
nav.scrolled{backdrop-filter:blur(24px);background:rgba(10,10,10,.92)}
.nav-logo img{height:90px;filter:invert(1)}
.nav-links{display:flex;gap:40px}
.nav-links a{font-family:var(--font-ui);font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(245,240,235,.45);transition:color .3s}
.nav-links a:hover,.nav-links a.active{color:var(--white)}
.nav-cta{background:var(--orange);color:var(--white);font-family:var(--font-ui);font-weight:600;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;padding:11px 28px;transition:all .3s}
.nav-cta:hover{background:var(--white);color:var(--black)}
.nav-mobile-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px}
.nav-mobile-toggle span{display:block;width:24px;height:1.5px;background:var(--white);transition:all .3s}
.mobile-menu{display:none;position:fixed;inset:0;background:rgba(10,10,10,.98);z-index:190;flex-direction:column;align-items:center;justify-content:center;gap:32px}
.mobile-menu a{font-family:var(--font-d);font-size:2.5rem;color:var(--white);letter-spacing:.05em}
.mobile-menu a:hover{color:var(--orange)}
.mobile-cta{background:var(--orange) !important;padding:16px 48px !important;font-family:var(--font-ui) !important;font-size:.8rem !important;letter-spacing:.2em !important;text-transform:uppercase}
.mobile-menu.open{display:flex}

/* SECTIONS */
section{padding:120px 64px}
.sec-tag{font-family:var(--font-ui);font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--orange);display:flex;align-items:center;gap:14px;margin-bottom:20px}
.sec-tag::before{content:"";width:28px;height:1px;background:var(--orange)}
.sec-h{font-family:var(--font-d);font-size:clamp(3rem,5vw,5.5rem);line-height:.93}
.sec-h em{color:var(--orange);font-style:normal}

/* BUTTONS */
.btn-o{background:var(--orange);color:var(--white);font-family:var(--font-ui);font-weight:600;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;padding:17px 42px;display:inline-block;position:relative;overflow:hidden;transition:all .3s}
.btn-o::after{content:"";position:absolute;inset:0;background:var(--white);transform:translateX(-101%);transition:transform .4s cubic-bezier(.23,1,.32,1)}
.btn-o:hover::after{transform:translateX(0)}
.btn-o span{position:relative;z-index:1;transition:color .4s}
.btn-o:hover span{color:var(--black)}
.btn-ghost{color:rgba(245,240,235,.45);font-family:var(--font-ui);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;display:inline-flex;align-items:center;gap:10px;transition:color .3s}
.btn-ghost:hover{color:var(--white)}
.btn-ghost::after{content:"→";transition:transform .3s}
.btn-ghost:hover::after{transform:translateX(4px)}
.btn-white{background:var(--white);color:var(--black);font-family:var(--font-ui);font-weight:700;font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;padding:18px 48px;display:inline-block;transition:all .3s}
.btn-white:hover{background:var(--black);color:var(--white)}

/* TICKER */
.ticker{background:var(--orange);padding:13px 0;overflow:hidden}
.ticker-track{display:flex;animation:ticker 30s linear infinite;white-space:nowrap}
.ti{font-family:var(--font-ui);font-weight:600;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--white);padding:0 44px;display:flex;align-items:center;gap:20px}
.ti::after{content:"◆";opacity:.4;font-size:.45rem}

/* HERO */
.hero{min-height:100vh;display:grid;grid-template-columns:55% 45%;position:relative;overflow:hidden}
.hero-left{padding:160px 64px 100px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}
.tag-pill{display:inline-block;font-family:var(--font-ui);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);border:1px solid rgba(255,61,0,.3);padding:5px 14px;margin-bottom:24px}
.hero-tag{font-family:var(--font-ui);font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--orange);display:flex;align-items:center;gap:14px;margin-bottom:40px}
.hero-tag::before{content:"";width:28px;height:1px;background:var(--orange)}
.hero-h{font-family:var(--font-d);font-size:clamp(4.5rem,7.5vw,8.5rem);line-height:.92;letter-spacing:.01em;margin-bottom:36px}
.hero-h em,.hero-h span{color:var(--orange)}
.hero-sub{font-size:1rem;line-height:1.85;color:rgba(245,240,235,.58);max-width:480px;margin-bottom:56px}
.btn-row{display:flex;align-items:center;gap:32px;flex-wrap:wrap}
.hero-right{position:relative;overflow:hidden}
.hero-photo{position:absolute;inset:0;background:var(--gray)}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:top center}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(to right,var(--black) 0%,transparent 30%),linear-gradient(to top,var(--black) 0%,transparent 25%)}
.hero-bg-text{position:absolute;bottom:20px;right:-10px;font-family:var(--font-d);font-size:18rem;line-height:1;color:rgba(255,61,0,.05);letter-spacing:-.03em;pointer-events:none;z-index:1}

/* PROBLEM CARDS */
.prob-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--mid)}
.prob-card{background:var(--black);padding:48px 40px;position:relative;overflow:hidden;transition:background .35s;cursor:default}
.prob-card:hover{background:var(--gray)}
.prob-card::before{content:"";position:absolute;top:0;left:0;width:3px;height:0;background:var(--orange);transition:height .4s}
.prob-card:hover::before{height:100%}
.prob-n{font-family:var(--font-d);font-size:4rem;color:rgba(255,61,0,.12);line-height:1;margin-bottom:20px}
.prob-t{font-family:var(--font-ui);font-weight:600;font-size:1rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px}
.prob-p{font-size:.875rem;line-height:1.85;color:var(--text)}

/* PILLARS */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.pill{background:var(--black);padding:56px 44px;position:relative;overflow:hidden;transition:transform .3s}
.pill:hover{transform:translateY(-4px)}
.pill-bg{position:absolute;top:16px;right:24px;font-family:var(--font-d);font-size:8rem;color:rgba(255,61,0,.06);line-height:1;pointer-events:none}
.pill-tag{font-family:var(--font-ui);font-size:.67rem;letter-spacing:.3em;text-transform:uppercase;color:var(--orange);margin-bottom:24px}
.pill-h{font-family:var(--font-d);font-size:3.2rem;line-height:.93;margin-bottom:24px}
.pill-q{font-size:.9rem;color:rgba(245,240,235,.35);font-style:italic;margin-bottom:18px;line-height:1.6}
.pill-p{font-size:.85rem;line-height:1.85;color:var(--text)}
.pill-line{position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--orange);transform:scaleX(0);transition:transform .5s cubic-bezier(.23,1,.32,1)}
.pill:hover .pill-line{transform:scaleX(1)}

/* ESTRATEGISTA */
.estrat{background:var(--black);display:grid;grid-template-columns:1fr 1fr;min-height:90vh}
.estrat-img{position:relative;overflow:hidden;min-height:600px}
.estrat-img img{width:100%;height:100%;object-fit:cover;object-position:top center;filter:grayscale(15%) contrast(1.1)}
.estrat-img::after{content:"";position:absolute;inset:0;background:linear-gradient(to right,transparent 60%,var(--black) 100%),linear-gradient(to top,var(--black) 0%,transparent 30%)}
.estrat-overlay{position:absolute;bottom:48px;left:48px;z-index:2}
.estrat-right{padding:100px 80px;display:flex;flex-direction:column;justify-content:center}
.estrat-name{font-family:var(--font-d);font-size:clamp(3.5rem,5.5vw,6rem);line-height:.9;margin-bottom:36px}
.estrat-name em{color:var(--orange);font-style:normal}
.estrat-bio{font-size:1rem;line-height:1.9;color:rgba(245,240,235,.58);margin-bottom:40px}
.estrat-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:36px 0;border-top:1px solid var(--mid);border-bottom:1px solid var(--mid);margin-bottom:40px}
.stat .n{font-family:var(--font-d);font-size:3.5rem;color:var(--orange);line-height:1}
.stat .l{font-family:var(--font-ui);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text);margin-top:4px}
.estrat-quote{font-size:.95rem;line-height:1.85;color:rgba(245,240,235,.38);font-style:italic;padding-left:24px;border-left:2px solid var(--orange)}

/* STEPS */
.steps{margin-top:72px;display:flex;flex-direction:column}
.step{display:grid;grid-template-columns:100px 1fr;gap:56px;padding:44px 0;border-bottom:1px solid var(--mid);align-items:start;position:relative;cursor:default}
.step::before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:rgba(255,61,0,.03);transition:width .5s}
.step:hover::before{width:100%}
.step-n{font-family:var(--font-d);font-size:5rem;color:rgba(255,61,0,.18);line-height:1;text-align:center;padding-top:4px}
.step-tag{font-family:var(--font-ui);font-size:.67rem;letter-spacing:.28em;text-transform:uppercase;color:var(--orange);margin-bottom:8px}
.step-body h3{font-family:var(--font-ui);font-weight:600;font-size:1.4rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:12px}
.step-body p{font-size:.875rem;line-height:1.85;color:var(--text)}
.step-cta{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-family:var(--font-ui);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);transition:gap .3s}
.step-cta:hover{gap:14px}
.step-cta::after{content:"→"}

/* BLOG CARDS */
.blog-grid-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.blog-card{background:var(--gray);padding:40px;border-bottom:2px solid transparent;transition:border-color .35s,transform .3s;display:flex;flex-direction:column}
.blog-card:hover{border-color:var(--orange);transform:translateY(-3px)}
.blog-cat{font-family:var(--font-ui);font-size:.64rem;letter-spacing:.28em;text-transform:uppercase;color:var(--orange);margin-bottom:14px}
.blog-title-card{font-family:var(--font-ui);font-weight:600;font-size:.95rem;letter-spacing:.04em;text-transform:uppercase;line-height:1.4;margin-bottom:14px;color:var(--white)}
.blog-excerpt{font-size:.82rem;line-height:1.8;color:var(--text);margin-bottom:20px;flex:1}
.blog-meta{font-family:var(--font-ui);font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(138,138,138,.6);margin-bottom:16px}
.read-link{font-family:var(--font-ui);font-size:.67rem;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);display:inline-flex;align-items:center;gap:8px;transition:gap .3s}
.blog-card:hover .read-link{gap:14px}
.read-link::after{content:"→"}

/* CTA FINAL */
.cta-final{background:var(--orange);padding:140px 64px;text-align:center;position:relative;overflow:hidden}
.cta-final::before{content:"";position:absolute;top:-200px;left:50%;transform:translateX(-50%);width:900px;height:900px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 60%);pointer-events:none}
.cta-final h2{font-family:var(--font-d);font-size:clamp(4.5rem,9vw,11rem);line-height:.88;color:var(--white);margin-bottom:40px;position:relative}
.cta-final p{font-size:1.1rem;line-height:1.85;color:rgba(255,255,255,.72);max-width:560px;margin:0 auto 60px;position:relative}

/* FOOTER */
footer{background:var(--black);padding:80px 64px 48px;border-top:1px solid var(--mid)}
.foot-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:80px;margin-bottom:64px}
.foot-desc{font-size:.875rem;line-height:1.85;color:var(--text);max-width:260px;margin-bottom:20px}
.foot-social{display:flex;gap:16px}
.foot-social a{color:var(--text);transition:color .3s}
.foot-social a:hover{color:var(--orange)}
.foot-h{font-family:var(--font-ui);font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(245,240,235,.25);margin-bottom:20px}
.foot-links{display:flex;flex-direction:column;gap:12px}
.foot-links a{font-size:.875rem;color:var(--text);transition:color .3s}
.foot-links a:hover{color:var(--white)}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:32px;border-top:1px solid var(--mid)}
.foot-copy{font-size:.75rem;color:var(--text)}
.foot-method{font-family:var(--font-ui);font-size:.67rem;letter-spacing:.2em;text-transform:uppercase;color:var(--orange)}

/* BLOG POST CONTENT */
.post-content{max-width:760px;margin:0 auto;font-size:1.05rem;line-height:1.9;color:rgba(245,240,235,.8)}
.post-content h1,.post-content h2,.post-content h3{font-family:var(--font-d);color:var(--white);margin:48px 0 20px;line-height:.95}
.post-content h1{font-size:3rem}
.post-content h2{font-size:2.4rem}
.post-content h3{font-size:1.8rem}
.post-content p{margin-bottom:24px}
.post-content strong{color:var(--white);font-weight:600}
.post-content em{color:rgba(245,240,235,.6)}
.post-content ul,.post-content ol{padding-left:24px;margin-bottom:24px}
.post-content li{margin-bottom:8px;color:rgba(245,240,235,.7)}
.post-content blockquote{border-left:3px solid var(--orange);padding:20px 28px;margin:40px 0;background:var(--gray);font-size:1.1rem;color:rgba(245,240,235,.6);font-style:italic}
.post-content code{background:var(--gray);padding:2px 8px;font-family:monospace;font-size:.9em;color:var(--orange)}
.post-content hr{border:none;border-top:1px solid var(--mid);margin:48px 0}
.post-content a{color:var(--orange);border-bottom:1px solid rgba(255,61,0,.3);transition:border-color .3s}
.post-content a:hover{border-color:var(--orange)}

/* ADMIN BADGE */
.admin-bar{position:fixed;bottom:20px;right:20px;z-index:500;background:var(--orange);padding:10px 20px;font-family:var(--font-ui);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--white);display:flex;align-items:center;gap:10px}
.admin-bar a{color:var(--white)}
.admin-bar a:hover{text-decoration:underline}

/* ANIMATIONS */
.rev{opacity:0;transform:translateY(36px);transition:opacity .9s ease,transform .9s ease}
.rev.on{opacity:1;transform:translateY(0)}
.rev-l{opacity:0;transform:translateX(-36px);transition:opacity .9s ease,transform .9s ease}
.rev-l.on{opacity:1;transform:translateX(0)}
.rev-r{opacity:0;transform:translateX(36px);transition:opacity .9s ease,transform .9s ease}
.rev-r.on{opacity:1;transform:translateX(0)}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* RESPONSIVE */

@media (hover: none) {
  .cur-dot, .cur-ring { display: none; }
}

@media (max-width: 960px) {
  nav { padding: 16px 20px; }
  .nav-links, .nav-cta { display: none; }
  .nav-mobile-toggle { display: flex; }
  .nav-logo img { height: 36px !important; max-width: 180px; filter: invert(1); }

  .hero { flex-direction: column !important; display: flex !important; min-height: auto !important; }
  .hero-right { order: 1; flex: none !important; width: 100% !important; height: 55vw !important; max-height: 360px !important; position: relative !important; overflow: hidden !important; display: block !important; }
  .hero-photo { position: absolute !important; inset: 0 !important; }
  .hero-photo img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: top center !important; }
  .hero-photo::after { background: linear-gradient(to bottom, transparent 60%, #0a0a0a 100%) !important; }
  .hero-bg-text { display: none !important; }
  .hero-left { order: 2; flex: none !important; padding: 40px 20px 60px !important; }
  .hero-sub { max-width: 100% !important; margin-bottom: 40px !important; }
  .btn-row { flex-direction: column !important; align-items: flex-start !important; gap: 20px !important; }

  section { padding: 56px 20px !important; }
  div[style*="padding:160px 64px"] { padding: 100px 20px 56px !important; }
  div[style*="padding:160px 80px"] { padding: 100px 20px 56px !important; }
  div[style*="padding:160px"] { padding: 100px 20px 56px !important; }
  div[style*="padding:120px 64px"] { padding: 56px 20px !important; }
  div[style*="padding:100px 64px"] { padding: 56px 20px !important; }
  div[style*="padding:100px 80px"] { padding: 56px 20px !important; }
  div[style*="padding:80px 64px"] { padding: 48px 20px !important; }

  .prob-grid { grid-template-columns: 1fr !important; }
  .pillars { grid-template-columns: 1fr !important; }

  .estrat { flex-direction: column !important; display: flex !important; min-height: auto !important; }
  .estrat-img { flex: none !important; width: 100% !important; height: 55vw !important; max-height: 380px !important; min-height: 220px !important; display: block !important; position: relative !important; overflow: hidden !important; }
  .estrat-img img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: top center !important; }
  .estrat-img::after { background: linear-gradient(to bottom, transparent 60%, #0a0a0a 100%) !important; }
  .estrat-overlay { display: none !important; }
  .estrat-right { flex: none !important; padding: 40px 20px 60px !important; }
  .estrat-stats { grid-template-columns: repeat(3, 1fr) !important; gap: 16px !important; }

  .step { grid-template-columns: 60px 1fr !important; gap: 20px !important; }
  .step-n { font-size: 3rem !important; }

  .blog-grid-cards { grid-template-columns: 1fr !important; }

  .foot-grid { grid-template-columns: 1fr !important; gap: 40px !important; }
  footer { padding: 56px 20px 40px !important; }
  .foot-bottom { flex-direction: column !important; gap: 12px !important; text-align: center !important; }
  .cta-final { padding: 80px 20px !important; }

  div[style*="grid-template-columns:45% 55%"],
  div[style*="grid-template-columns:1fr 1fr"],
  div[style*="display:grid;grid-template-columns:1fr 1fr"] {
    display: flex !important;
    flex-direction: column !important;
  }
  div[style*="grid-template-columns:45% 55%"] > div:first-child,
  div[style*="grid-template-columns:1fr 1fr"] > div:first-child {
    width: 100% !important;
    height: 55vw !important;
    min-height: 240px !important;
    max-height: 360px !important;
    position: relative !important;
    overflow: hidden !important;
    flex: none !important;
  }
  div[style*="grid-template-columns:45% 55%"] > div:first-child img,
  div[style*="grid-template-columns:1fr 1fr"] > div:first-child img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 20% !important;
  }
  div[style*="grid-template-columns:45% 55%"] > div:last-child,
  div[style*="grid-template-columns:1fr 1fr"] > div:last-child {
    width: 100% !important;
    padding: 40px 20px !important;
    flex: none !important;
  }

  div[style*="grid-template-columns:repeat(4,1fr)"] {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
  }

  div[style*="grid-template-columns:2fr 1fr"] {
    display: flex !important;
    flex-direction: column !important;
  }
  div[style*="grid-template-columns:2fr 1fr"] aside { display: none !important; }

  div[style*="grid-template-columns:1fr 1fr;gap:80px"],
  div[style*="display:grid;grid-template-columns:1fr 1fr;gap:80px"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 40px !important;
  }

  input, textarea, select { font-size: 16px !important; }
}
