@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,300&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Poppins',sans-serif;background:#F4F1EE;color:#141414;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}

:root{
  --red:#8B1C2B;--red-d:#5E1019;--red-l:#C23048;
  --ink:#141414;--ink60:rgba(0,0,0,.8);--ink30:rgba(20,20,20,.3);
  --bg:#F4F1EE;--sur:#FFFFFF;--rule:#DDD8D3;
  --nav-h:64px;--max:1100px;--r:3px;
}
.wrap{max-width:var(--max);margin:0 auto;padding:0 2rem}

/* ── NAV ─────────────────────────────────────────────────── */
.nav{position:fixed;top:0;left:0;right:0;z-index:200;height:var(--nav-h);background:rgba(244,241,238,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--rule);transition:box-shadow .3s}
.nav.scrolled{box-shadow:0 2px 20px rgba(0,0,0,.08)}
.nav__inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.nav__logo img{height:30px;width:auto}
.nav__menu{display:flex;align-items:center;gap:2rem;list-style:none}
.nav__menu a{font-size:16px;font-weight:500;color:var(--ink60);letter-spacing:.01em;transition:color .2s}
.nav__menu a:hover{color:var(--red)} 
.nav__cta{font-size:.8125rem !important;font-weight:700 !important;background:var(--red) !important;color:#fff !important;padding:.55rem 1.25rem;border-radius:var(--r);transition:background .2s !important}
.nav__cta:hover{background:var(--red-d) !important}
.nav__ham{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:none;border:none}
.nav__ham span{display:block;width:22px;height:2px;background:var(--ink);transition:transform .25s,opacity .25s}
.nav__ham.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav__ham.open span:nth-child(2){opacity:0}
.nav__ham.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav__drawer{display:none;position:fixed;top:var(--nav-h);left:0;right:0;background:var(--bg);border-bottom:1px solid var(--rule);padding:1.5rem 2rem 2rem;z-index:199;flex-direction:column;gap:0}
.nav__drawer.open{display:flex}
.nav__drawer a{font-size:1rem;font-weight:500;color:var(--ink60);padding:.85rem 0;border-bottom:1px solid var(--rule)}
.nav__drawer .nav__cta{margin-top:1.25rem;text-align:center;padding:.85rem;border-bottom:none}

/* ── HERO ────────────────────────────────────────────────── */
.hero{
  min-height:100svh;display:flex;align-items:center;
  padding-top:calc(var(--nav-h) + 4rem);padding-bottom:4rem;
  background:var(--bg);position:relative;overflow:hidden;
}
/* Ilustração de fundo — círculos concêntricos, identidade visual da Esfera */

.hero__orb-inner{
  position:absolute;right:0px;top:50%;transform:translateY(-50%);
  width:400px;height:400px;border-radius:50%;
  border:1px solid rgba(139,28,43,.06);pointer-events:none;z-index:0;
}
.hero__content{position:relative;z-index:1;width:100%;text-align:center}
.hero__rule{width:48px;height:3px;background:var(--red);margin:0 auto 1.5rem}
.hero__super{display:block;font-size:.6875rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin-bottom:1.5rem}
.hero__h1{font-size:clamp(2.25rem,4.8vw,3.75rem);font-weight:300;line-height:1.1;letter-spacing:-.03em;color:var(--ink);margin-bottom:1.5rem}
.hero__h1 strong{font-weight:800}
.hero__h1 em{font-style:normal;color:var(--red);font-weight:700}
.hero__sub{font-size:1.0625rem;font-weight:400;color:var(--ink60);line-height:1.75;margin:0 auto 2.5rem;background:none;padding:0;border:none;border-radius:0;display:block;text-align:center;max-width:520px;text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:2px;text-underline-offset:5px;animation:hero-line-draw 1s cubic-bezier(.4,0,.2,1) forwards;animation-delay:.6s}
@keyframes hero-line-draw{to{text-decoration-color:var(--red)}}
.hero__sub strong{color:var(--ink);font-weight:600}
.hero__actions{display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap}

/* ── BUTTONS ─────────────────────────────────────────────── */
.btn{display:inline-block;font-family:'Poppins',sans-serif;font-size:.875rem;font-weight:600;letter-spacing:.02em;cursor:pointer;border:none;background:none;transition:all .2s;border-radius:var(--r)}
.btn--red{background:var(--red);color:#fff;padding:.8rem 1.75rem}.btn--red:hover{background:var(--red-d)}
.btn--white{background:#fff;color:var(--red);padding:.8rem 1.75rem}.btn--white:hover{background:rgba(255,255,255,.88)}
.btn--ghost{color:var(--ink);border-bottom:1.5px solid var(--ink);padding-bottom:2px;border-radius:0}.btn--ghost:hover{opacity:.55}
.btn--ghost-light{color:rgba(255,255,255,.85);border-bottom:1.5px solid rgba(255,255,255,.4);padding-bottom:2px;border-radius:0}.btn--ghost-light:hover{color:#fff;border-color:#fff}
.btn--outline{border:1.5px solid var(--red);color:var(--red);padding:.75rem 1.5rem}.btn--outline:hover{background:var(--red);color:#fff}

/* ── BBMD STRIP ──────────────────────────────────────────── */
.bbmd-strip{background:var(--ink);padding:1.75rem 0}
.bbmd-strip__inner{display:flex;align-items:center;gap:2.5rem;flex-wrap:wrap}
.bbmd-strip__label{font-size:.6875rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.3);white-space:nowrap;flex-shrink:0}
.bbmd-strip__items{display:flex;flex:1;flex-wrap:wrap}
.bbmd-strip__item{display:flex;flex-direction:column;padding:0 1.75rem;border-right:1px solid rgba(255,255,255,.1)}
.bbmd-strip__item:last-child{border-right:none}
.bbmd-strip__item strong{font-size:clamp(1.1rem,2vw,1.5rem);font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1.1}
.bbmd-strip__item span{font-size:.6875rem;color:rgba(255,255,255,.38);font-weight:400;margin-top:.15rem}

/* ── SECTIONS ────────────────────────────────────────────── */
.sec{padding:6rem 0;min-height:100svh;display:flex;flex-direction:column;justify-content:center}
.sec--sm{padding:4rem 0}
.sec--dark{background:var(--ink)}
.sec--red{background:var(--red-d)}
.sec--sur{background:var(--sur)}
.sec--bg{background:var(--bg)}
.sec__label{display:block;font-size:24px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-bottom:.75rem}
.sec--dark .sec__label,.sec--red .sec__label{color:rgba(255,255,255,.38)}

/* ── TYPOGRAPHY ──────────────────────────────────────────── */
.t-h2{font-size:clamp(1.875rem,3.5vw,2rem);font-weight:700;line-height:1.16;letter-spacing:-.025em;color:var(--ink)}
.t-h2 em{font-style:normal;color:var(--red)}
.t-h2-alt{font-size: 22px;font-weight:700;line-height:1.16;letter-spacing:-.025em;color:#fff}
.sec--dark .t-h2,.sec--red .t-h2{color:#fff}
.t-body{font-size:1rem;font-weight:400;line-height:1.78;color:var(--ink60)}
.t-body strong{color:var(--ink);font-weight:600}
.sec--dark .t-body,.sec--red .t-body{color:rgba(255,255,255,.55)}
.t-body--lg{font-size:1.0625rem}

/* ── SPLIT ───────────────────────────────────────────────── */
.split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.split--60{grid-template-columns:3fr 2fr}
.split--40{grid-template-columns:3fr 3fr}

/* ── O QUE É ─────────────────────────────────────────────── */
.what-list{list-style:none}
.what-item{display:grid;grid-template-columns:2px 1fr;gap:0 1.25rem;padding:1.5rem 0;border-bottom:1px solid var(--rule);align-items:start}
.what-item:first-child{border-top:1px solid var(--rule)}
.what-item__bar{width:2px;background:var(--red);height:100%;margin-top:3px}
.what-item__title{font-size:1rem;font-weight:700;color:var(--ink);margin-bottom:.3rem}
.what-item__text{font-size:.875rem;color:var(--ink60);line-height:1.7}

/* ── ECOSSISTEMA ─────────────────────────────────────────── */
.eco-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid rgba(255,255,255,.1);margin-top:3.5rem}
.eco-col{padding:2.5rem 2rem;border-right:1px solid rgba(255,255,255,.1);transition:background .3s}
.eco-col:last-child{border-right:none}
.eco-col:hover{background:rgba(255,255,255,.04)}
.eco-col__role{font-size:.6875rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255);margin-bottom:1.5rem;display:block}
.eco-col__logo{height:36px;width:auto;margin-bottom:1.5rem;object-fit:contain;object-position:left}
.eco-col__logo--inv{filter:brightness(10) saturate(0)}
.eco-col__logo--2b{filter:brightness(10) saturate(0)}
.eco-col__desc{font-size:16px;color:rgba(255,255,255);line-height:1.72}

/* ── MODELO — 3 blocos diretos ───────────────────────────── */
.modelo-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  border:1px solid var(--rule);
  margin-top:3.5rem;
}
.modelo-card{
  padding:2.5rem 2rem;
  border-right:1px solid var(--rule);
  position:relative;overflow:hidden;
  background:var(--sur);
  transition:background .25s;
}
.modelo-card:last-child{border-right:none}
.modelo-card::before{
  content:'';position:absolute;top:0;left:0;right:0;
  height:3px;background:var(--red);
  transform:scaleX(0);transform-origin:left;
  transition:transform .35s ease;
}
.modelo-card:hover::before{transform:scaleX(1)}
.modelo-card:hover{background:#fdf9f8}
/* Ilustração SVG de fundo em cada card */
.modelo-card__num{
  font-size:4.5rem;font-weight:900;line-height:1;
  color:rgba(139,28,43,.07);letter-spacing:-.05em;
  margin-bottom:.5rem;
}
.modelo-card__title{font-size:1.25rem;font-weight:700;color:var(--ink);margin-bottom:.75rem;letter-spacing:-.015em}
.modelo-card__text{font-size:.9rem;color:var(--ink60);line-height:1.72;margin-bottom:1.5rem}
.modelo-card__list{list-style:none}
.modelo-card__list li{
  display:flex;gap:.65rem;align-items:baseline;
  font-size:.875rem;color:var(--ink60);
  padding:.5rem 0;border-bottom:1px solid var(--rule);line-height:1.55;
}
.modelo-card__list li:last-child{border-bottom:none}
.modelo-card__list li::before{
  content:'';width:4px;height:4px;border-radius:50%;
  background:var(--red);flex-shrink:0;margin-top:7px;
}
/* SVG illustrations as bg for each card */
.modelo-card--leads .modelo-card__icon{
  width:48px;height:48px;margin-bottom:1.25rem;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Ccircle cx='18' cy='16' r='7' stroke='%238B1C2B' stroke-width='1.5'/%3E%3Ccircle cx='18' cy='16' r='3' fill='rgba(139,28,43,.15)'/%3E%3Cpath d='M6 38c0-6.627 5.373-12 12-12s12 5.373 12 12' stroke='%238B1C2B' stroke-width='1.5' stroke-linecap='round'/%3E%3Ccircle cx='34' cy='22' r='5' stroke='%238B1C2B' stroke-width='1.5' opacity='.5'/%3E%3Cpath d='M28 36c0-4 2.686-7.5 6-8.5' stroke='%238B1C2B' stroke-width='1.5' stroke-linecap='round' opacity='.5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-size:contain;
}
.modelo-card--crm .modelo-card__icon{
  width:48px;height:48px;margin-bottom:1.25rem;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Crect x='6' y='8' width='36' height='32' rx='2' stroke='%238B1C2B' stroke-width='1.5'/%3E%3Cpath d='M6 16h36' stroke='%238B1C2B' stroke-width='1.5'/%3E%3Cpath d='M14 24h20M14 30h12' stroke='%238B1C2B' stroke-width='1.5' stroke-linecap='round' opacity='.6'/%3E%3Ccircle cx='11' cy='12' r='1.5' fill='%238B1C2B' opacity='.5'/%3E%3Ccircle cx='16' cy='12' r='1.5' fill='%238B1C2B' opacity='.5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-size:contain;
}
.modelo-card--cap .modelo-card__icon{
  width:48px;height:48px;margin-bottom:1.25rem;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Crect x='6' y='12' width='36' height='26' rx='2' stroke='%238B1C2B' stroke-width='1.5'/%3E%3Cpath d='M6 20h36' stroke='%238B1C2B' stroke-width='1.5'/%3E%3Cpath d='M16 8h16' stroke='%238B1C2B' stroke-width='1.5' stroke-linecap='round' opacity='.5'/%3E%3Ccircle cx='24' cy='30' r='5' stroke='%238B1C2B' stroke-width='1.5'/%3E%3Cpath d='M24 27v3l2 1.5' stroke='%238B1C2B' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-size:contain;
}

/* ── COMO FUNCIONA — timeline ────────────────────────────── */
.timeline{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:0;position:relative;margin-top:3.5rem;
}
.timeline::before{
  content:'';position:absolute;
  top:20px;left:calc(100%/6);right:calc(100%/6);
  height:1px;background:var(--red);opacity:.25;
}
.timeline-step{padding:0 1.5rem;text-align:center;position:relative}
.timeline-step__dot{
  width:12px;height:12px;border-radius:50%;
  background:var(--red);margin:14px auto 1.75rem;
  position:relative;z-index:1;flex-shrink:0;
}
.timeline-step__dot::after{
  content:'';position:absolute;inset:-5px;
  border-radius:50%;border:1.5px solid rgba(139,28,43,.25);
}
.timeline-step__n{font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin-bottom:.5rem}
.timeline-step__title{font-size:1.0625rem;font-weight:700;color:var(--ink);margin-bottom:.6rem;letter-spacing:-.01em}
.timeline-step__text{font-size:.875rem;color:var(--ink60);line-height:1.7}

/* Nota adiantamento */
.nota-adiantamento{
  margin:3rem auto 0;padding:1.75rem 2rem;
  border-left:3px solid var(--red);background:var(--sur);
  max-width:640px;
}
.nota-adiantamento p{font-size:.9375rem;font-weight:500;color:var(--ink);line-height:1.72}

/* ── REQUISITOS CARDS ────────────────────────────────────── */
.req-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.req-card{
  background:var(--sur);border:1px solid var(--rule);
  padding:1.75rem 1.5rem;position:relative;overflow:hidden;
  transition:transform .25s,box-shadow .25s;
}
.req-card:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(0,0,0,.07)}
.req-card::after{
  content:'';position:absolute;bottom:0;left:0;right:0;
  height:2px;background:var(--red);
  transform:scaleX(0);transform-origin:left;transition:transform .3s;
}
.req-card:hover::after{transform:scaleX(1)}
.req-card__num{font-size:2.25rem;font-weight:900;color:rgba(139,28,43,.09);line-height:1;margin-bottom:.75rem;letter-spacing:-.04em}
.req-card__title{font-size:.9375rem;font-weight:700;color:var(--red);margin-bottom:.5rem}
.req-card__text{font-size:.875rem;color:var(--ink60);line-height:1.7}

/* ── BBMD ────────────────────────────────────────────────── */
.bbmd-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);margin:2.5rem 0}
.bbmd-stat{padding:1.75rem 1.5rem;border-right:1px solid rgba(255,255,255,.1)}
.bbmd-stat:first-child{padding-left:0}
.bbmd-stat:last-child{border-right:none}
.bbmd-stat strong{display:block;font-size:clamp(1.5rem,3vw,2rem);font-weight:900;color:#fff;letter-spacing:-.03em;line-height:1;margin-bottom:.3rem}
.bbmd-stat span{font-size:.75rem;color:rgba(255,255,255,.4);font-weight:400;text-transform:uppercase;letter-spacing:.06em}
.benefit-list{list-style:none}
.benefit-list li{display:flex;gap:.875rem;align-items:baseline;padding:.875rem 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:.9375rem;color:rgba(255,255,255,.65);line-height:1.55}
.benefit-list li:last-child{border-bottom:none}
.benefit-list li::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--red);flex-shrink:0;margin-top:8px}
.bbmd-cities-label{font-size:18px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255);margin-bottom:.5rem}
.bbmd-cities{font-size:18px;color:rgba(255,255,255);line-height:1.9;margin-top:.75rem}

/* ── CTA BAR ─────────────────────────────────────────────── */
.cta-bar{padding:2.5rem 0}
.cta-bar__inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.cta-bar__text{font-size:1.125rem;font-weight:600;line-height:1.5;max-width:100%}

/* ── FAQ ACCORDION ───────────────────────────────────────── */
.faq-list{margin-top:2rem;border-top:1px solid var(--rule)}
.faq-item{border-bottom:1px solid var(--rule)}
.faq-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.5rem 0;background:none;border:none;cursor:pointer;text-align:left}
.faq-trigger__q{font-family:'Poppins',sans-serif;font-size:1.0625rem;font-weight:600;color:var(--ink);line-height:1.4;transition:color .2s}
.faq-trigger:hover .faq-trigger__q{color:var(--red)}
.faq-trigger__icon{flex-shrink:0;width:22px;height:22px;position:relative}
.faq-trigger__icon::before,.faq-trigger__icon::after{content:'';position:absolute;background:var(--red);border-radius:2px;transition:transform .3s,opacity .3s}
.faq-trigger__icon::before{width:12px;height:1.5px;top:50%;left:50%;transform:translate(-50%,-50%)}
.faq-trigger__icon::after{width:1.5px;height:12px;top:50%;left:50%;transform:translate(-50%,-50%)}
.faq-item.open .faq-trigger__icon::after{opacity:0;transform:translate(-50%,-50%) rotate(90deg)}
.faq-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),padding .3s}
.faq-body.open{max-height:400px;padding-bottom:1.5rem}
.faq-body__text{font-size:.9375rem;color:var(--ink60);line-height:1.78;max-width:680px}

/* ── CTA FINAL ───────────────────────────────────────────── */
.cta-final{padding:7rem 0}
.cta-final__center{text-align:center}
.cta-final__h{font-size:clamp(2rem,4vw,3.25rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;color:#fff;max-width:600px;margin:0 auto 1.25rem}
.cta-final__sub{font-size:1rem;font-weight:300;color:rgba(255,255,255,.55);line-height:1.72;max-width:460px;margin:0 auto 2.5rem}

/* ── MODAL DRAWER ────────────────────────────────────────── */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:300;opacity:0;pointer-events:none;transition:opacity .35s}
.modal-overlay.open{opacity:1;pointer-events:all}
.modal-drawer{
  position:fixed;top:0;right:0;bottom:0;
  width:100%;max-width:480px;background:#fff;
  z-index:301;overflow-y:auto;
  transform:translateX(100%);
  transition:transform .4s cubic-bezier(.4,0,.2,1);
}
.modal-drawer.open{transform:translateX(0)}
.modal-close{
  position:sticky;top:1.25rem;float:right;margin:1.25rem 1.25rem 0 0;
  width:36px;height:36px;border-radius:50%;flex-shrink:0;
  background:none;border:1px solid var(--rule);cursor:pointer;
  font-size:1rem;color:var(--ink60);display:flex;align-items:center;justify-content:center;
  transition:background .2s,color .2s;
}
.modal-close:hover{background:var(--bg);color:var(--ink)}
.modal-body{padding:1rem 2.5rem 3rem}
.modal-eyebrow{display:block;font-size:.6875rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-bottom:.75rem}
.modal-title{font-size:1.625rem;font-weight:800;color:var(--ink);letter-spacing:-.025em;line-height:1.2;margin-bottom:.75rem}
.modal-desc{font-size:.9375rem;color:var(--ink60);line-height:1.7;margin-bottom:2rem}
/* Overrides dos campos para contexto claro */
.modal-body .field label{color:var(--ink60)}
.modal-body .field input,.modal-body .field select{color:var(--ink);background:#fff;border:1px solid var(--rule);border-radius:var(--r)}
.modal-body .field input::placeholder{color:var(--ink30)}
.modal-body .field select option{background:#fff;color:var(--ink)}
.modal-body .field input:focus,.modal-body .field select:focus{border-color:var(--red)}
.modal-body .form-submit{background:var(--red);color:#fff;border-radius:var(--r)}
.modal-body .form-submit:hover{background:var(--red-d);opacity:1}
.modal-body .form-note{color:var(--ink30)}
.modal-body .form-success{padding:2rem 0}
.modal-body .form-success__eyebrow{color:var(--red)}
.modal-body .form-success h3{color:var(--ink)}
.modal-body .form-success p{color:var(--ink60)}
/* Mobile: sobe de baixo */
@media(max-width:600px){
  .modal-drawer{top:auto;left:0;right:0;bottom:0;max-width:100%;max-height:92svh;border-radius:1.25rem 1.25rem 0 0;transform:translateY(100%)}
  .modal-drawer.open{transform:translateY(0)}
}

.form-row2{display:grid;grid-template-columns:1fr 1fr;gap:.875rem}
.field{margin-bottom:.875rem;display:flex;flex-direction:column;gap:.35rem}
.field label{font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.38)}
.field input,.field select{font-family:'Poppins',sans-serif;font-size:.9375rem;font-weight:400;color:#fff;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);padding:.75rem 1rem;outline:none;width:100%;appearance:none;-webkit-appearance:none;border-radius:0;transition:border-color .2s}
.field input::placeholder{color:rgba(255,255,255,.2)}
.field select option{background:#1a1a1a;color:#fff}
.field input:focus,.field select:focus{border-color:rgba(255,255,255,.5)}
.field--error input,.field--error select{border-color:#e05555}
.field__err{font-size:.6875rem;color:#e05555}
.form-submit{margin-top:1.25rem;width:100%;font-family:'Poppins',sans-serif;font-size:.9375rem;font-weight:700;background:#fff;color:var(--red);border:none;padding:.9rem 2rem;cursor:pointer;transition:opacity .2s}
.form-submit:hover{opacity:.88}
.form-note{font-size:.6875rem;color:rgba(255,255,255,.25);margin-top:.875rem;line-height:1.5}
.form-success{display:none;padding:3rem 0}
.form-success__eyebrow{display:block;font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:.75rem}
.form-success h3{font-size:1.875rem;font-weight:700;color:#fff;margin-bottom:.75rem;letter-spacing:-.02em}
.form-success p{font-size:1rem;color:rgba(255,255,255,.5);line-height:1.7}

/* ── IMAGE SECTIONS ──────────────────────────────────────── */
/* Seção com imagem de fundo – "Foque no cliente" */
.focus-section{
  position:relative;overflow:hidden;
  padding:7rem 0;min-height:100svh;
  display:flex;align-items:center;
  background:#1a0a0d;
}
.focus-section__bg{
  position:absolute;inset:0;
  background-image:url("../img/background-cliente.png");
  background-size:cover;background-position:center;
  opacity:.18;
}
.focus-section__content{position:relative;z-index:1;text-align:center;max-width:700px;margin:0 auto}
.focus-section__h{font-size:60px;font-weight:900;color:#fff;letter-spacing:-.03em;line-height:1.05;margin-bottom:1rem}
.focus-section__h span{color:var(--red)}
.focus-section__sub{font-size:24px;font-weight:300;color:rgba(255,255,255);line-height:1.75;margin-bottom:2.5rem}

/* Imagem lateral — O que é a Esfera */
.img-right{
  border-radius:0;overflow:hidden;
  position:relative;
}
.img-right img{width:100%;height:100%;object-fit:cover;min-height:360px;filter:contrast(1.05) brightness(.97)}
.img-right::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(120deg,rgba(139,28,43,.08),transparent);
  pointer-events:none;
}

/* Seção BBMD com imagem de fundo */
.bbmd-img-strip{
  position:relative;overflow:hidden;padding:0;
  display:grid;grid-template-columns:1fr 1fr;
  min-height:100svh;
}
.bbmd-img-strip__img{
  background-image:url("../img/bbmd-sede.JPG");
  background-size:cover;background-position:center;
  min-height:320px;
}
.bbmd-img-strip__content{
  background:var(--ink);
  padding:3.5rem 3rem;
  display:flex;align-items:center;
}

/* ── 2b ATIVOS JUDICIAIS ─────────────────────────────────── */
.twob-img-strip{
  position:relative;overflow:hidden;padding:0;
  display:grid;grid-template-columns:1fr 1fr;
  min-height:100svh;
}
.twob-img-strip__img{
  background-image:url("../img/2bsede.png");
  background-size:cover;background-position:center;
  min-height:320px;
}
.twob-img-strip__content{
  background:var(--ink);
  padding:3.5rem 3rem;
  display:flex;align-items:center;
}
.twob-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);margin:2.5rem 0}
.twob-stat{padding:1.75rem 1.5rem;border-right:1px solid rgba(255,255,255,.1)}
.twob-stat:first-child{padding-left:0}
.twob-stat:last-child{border-right:none}
.twob-stat strong{display:block;font-size:clamp(1.5rem,3vw,2rem);font-weight:900;color:#fff;letter-spacing:-.03em;line-height:1;margin-bottom:.3rem}
.twob-stat span{font-size:.75rem;color:rgba(255,255,255,.4);font-weight:400;text-transform:uppercase;letter-spacing:.06em}
@media(max-width:900px){
  .twob-img-strip{grid-template-columns:1fr}
  .twob-img-strip__img{order:-1;min-height:240px}
}
@media(max-width:600px){
  .twob-stats{grid-template-columns:repeat(3,1fr)}
  .twob-stat{border-right:1px solid rgba(255,255,255,.1);border-bottom:none;padding-left:1rem}
  .twob-stat:first-child{padding-left:0}
  .twob-stat:last-child{border-right:none}
  .twob-stat strong{font-size:1.25rem}
}

/* ── FOOTER ──────────────────────────────────────────────── */
.footer{border-top:1px solid rgba(255,255,255,.08);padding:2rem 0;min-height:auto}
.footer__inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.footer__logo img{height:30px}
.footer__copy{font-size:.75rem;color:rgba(255,255,255,.22);line-height:1.6;text-align:right}

/* ── REVEAL ANIMATIONS ───────────────────────────────────── */
@keyframes fadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-d1{transition-delay:.1s}.reveal-d2{transition-delay:.2s}
.reveal-d3{transition-delay:.3s}.reveal-d4{transition-delay:.4s}

/* ── UTILITIES ───────────────────────────────────────────── */
.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mt-5{margin-top:3rem}
.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mb-5{margin-bottom:3rem}
.text-center{text-align:center}

/* ── RESPONSIVE ──────────────────────────────────────────── */
@media(max-width:900px){
  .split,.split--60,.split--40{grid-template-columns:1fr}
  .eco-trio{grid-template-columns:1fr}
  .eco-col{border-right:none;border-bottom:1px solid rgba(255,255,255,.1)}
  .eco-col:last-child{border-bottom:none}
  .modelo-grid{grid-template-columns:1fr}
  .modelo-card{border-right:none;border-bottom:1px solid var(--rule)}
  .modelo-card:last-child{border-bottom:none}
  .timeline{grid-template-columns:1fr}
  .timeline::before{display:none}
  .timeline-step{text-align:left;display:flex;gap:1.25rem;align-items:flex-start;padding:0;margin-bottom:2rem}
  .timeline-step__dot{margin:0;flex-shrink:0;margin-top:4px}
  .req-grid{grid-template-columns:1fr 1fr}
  .bbmd-stats{grid-template-columns:repeat(3,1fr)}
  .bbmd-img-strip{grid-template-columns:1fr}
  .bbmd-img-strip__img{min-height:240px}
  .nav__menu{display:none}
  .nav__ham{display:flex}
}
@media(max-width:600px){
  :root{--nav-h:58px}
  .wrap{padding:0 1.25rem;width:100%}
  .sec{padding:4rem 0}.sec--sm{padding:2.5rem 0}
  .hero{padding-top:calc(var(--nav-h) + 2rem);padding-bottom:3rem;min-height:auto}
  .hero__h1{font-size:2.1rem}
  .hero__h1 em{white-space:nowrap}
  /* Botões do hero lado a lado e centralizados */
  .hero__actions{flex-direction:row;justify-content:center;align-items:center;gap:.75rem;flex-wrap:wrap}
  .bbmd-strip__inner{flex-direction:column;align-items:flex-start;gap:1.25rem}
  .bbmd-strip__items{flex-direction:column;gap:0;width:100%}
  .bbmd-strip__item{padding:.75rem 0;border-right:none;border-bottom:1px solid rgba(255,255,255,.08);flex-direction:row;align-items:center;gap:.75rem}
  .bbmd-strip__item:last-child{border-bottom:none}
  .cta-bar__inner{flex-direction:column;align-items:flex-start}
  .req-grid{grid-template-columns:1fr}
  /* Modelo cards: carrossel horizontal com peek do próximo card */
  .modelo-grid{
    display:flex;flex-direction:row;
    overflow-x:auto;-webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    scroll-padding-left:1.25rem;
    gap:1rem;
    margin-left:-1.25rem;margin-right:-1.25rem;
    padding:0 1.25rem 1.25rem;
    border:none;
    scrollbar-width:none;
    margin-top:2rem;
  }
  .modelo-grid::-webkit-scrollbar{display:none}
  .modelo-card{
    flex:0 0 75vw;
    width:75vw;
    padding:1.75rem 1.5rem;
    border:1px solid var(--rule);
    scroll-snap-align:start;
  }
  .modelo-card::before{transform:scaleX(0)}
  /* Stats da seção BBMD horizontais */
  .bbmd-stats{grid-template-columns:repeat(3,1fr)}
  .bbmd-stat{border-right:1px solid rgba(255,255,255,.1);border-bottom:none;padding-left:1rem}
  .bbmd-stat:first-child{padding-left:0}
  .bbmd-stat:last-child{border-right:none}
  .bbmd-stat strong{font-size:1.25rem}
  .form-row2{grid-template-columns:1fr}
  .footer__inner{flex-direction:column;align-items:flex-start}
  .footer__copy{text-align:left}
  .cta-final{padding:4rem 0}
  .focus-section{padding:5rem 0}
  .focus-section__h{font-size:2.5rem}
}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  *{transition:none !important;animation:none !important}
  .hero__sub{text-decoration-color:var(--red)}
}
