
  /* ===== Fix global: trava o escorregamento lateral (overflow-x) no mobile ===== */
  html, body{ max-width:100%; overflow-x:hidden !important; }
  @media (max-width:786px){
    html, body{ overflow-x:hidden !important; }
  }


  :root{
    --spot-x: 50%;
    --spot-y: 30%;
  }
  html { scroll-behavior: smooth; }
  body{
    background: #0E0E10;
    font-family: 'Inter', sans-serif;
    overflow-x: hidden;
    overscroll-behavior-x: none;
  }

  .skip-link{
    position:absolute; left:-9999px; top:0; z-index:100;
    background:#F5A623; color:#0E0E10; padding:.6rem 1rem; font-weight:600; border-radius:0 0 .5rem 0;
  }
  .skip-link:focus{ left:0; }

  .grid-bg{
    position:absolute; inset:0;
    background-image:
      linear-gradient(to right, rgba(255,255,255,0.035) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(255,255,255,0.035) 1px, transparent 1px);
    background-size: 44px 44px;
    -webkit-mask-image: radial-gradient(ellipse 80% 60% at 50% 20%, black 40%, transparent 90%);
            mask-image: radial-gradient(ellipse 80% 60% at 50% 20%, black 40%, transparent 90%);
  }

  .spotlight{
    position:absolute; inset:0; pointer-events:none;
    background: radial-gradient(600px circle at var(--spot-x) var(--spot-y), rgba(245,166,35,0.10), transparent 60%);
    transition: background .15s ease-out;
  }

  .noise-vignette{
    position:absolute; inset:0; pointer-events:none;
    background: radial-gradient(ellipse 90% 70% at 50% 0%, transparent 30%, #0E0E10 92%);
  }

  .eyebrow{
    display:inline-flex; align-items:center; gap:.55rem;
    font-family:'IBM Plex Mono', monospace;
    font-size:.8rem; letter-spacing:.02em;
    color:#34D0C4;
    background: rgba(52,208,196,0.08);
    border:1px solid rgba(52,208,196,0.25);
    padding:.4rem .75rem; border-radius:999px;
  }
  .eyebrow::before{
    content:''; width:6px; height:6px; border-radius:50%;
    background:#34D0C4; box-shadow:0 0 0 3px rgba(52,208,196,0.18);
    animation: pulse-dot 2s ease-in-out infinite;
  }
  @keyframes pulse-dot{
    0%,100%{ opacity:1; } 50%{ opacity:.4; }
  }

  .btn-primary{
    background:#F5A623; color:#171009;
    font-weight:600; padding:.85rem 1.6rem; border-radius:.65rem;
    display:inline-flex; align-items:center; gap:.5rem;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
    box-shadow: 0 0 0 0 rgba(245,166,35,0.0);
  }
  .btn-primary:hover{ background:#FFB84D; transform: translateY(-2px); box-shadow: 0 10px 30px -8px rgba(245,166,35,0.45); }
  .btn-primary:focus-visible{ outline: 2px solid #F5A623; outline-offset: 3px; }
  .btn-primary:active{ transform: translateY(0); }

  .btn-secondary{
    color:#F3F1EA; font-weight:500; padding:.85rem 1.4rem; border-radius:.65rem;
    border:1px solid #2A2A30; background: rgba(255,255,255,0.02);
    display:inline-flex; align-items:center; gap:.55rem;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
  }
  .btn-secondary:hover{ border-color:#8D8D97; background: rgba(255,255,255,0.05); transform: translateY(-2px); }
  .btn-secondary:focus-visible{ outline: 2px solid #34D0C4; outline-offset: 3px; }

  .nav-link{
    color:#8D8D97; font-size:.925rem; transition: color .15s ease;
  }
  .nav-link:hover{ color:#F3F1EA; }
  .nav-link:focus-visible{ outline: 2px solid #34D0C4; outline-offset: 4px; border-radius: 2px; }

  /* Editor window */
  .editor-window{
    background:#17171B; border:1px solid #2A2A30; border-radius:1rem;
    box-shadow: 0 30px 80px -30px rgba(0,0,0,0.7), 0 0 0 1px rgba(255,255,255,0.02) inset;
    overflow:hidden;
  }
  .editor-titlebar{
    display:flex; align-items:center; justify-content:space-between;
    background:#1D1D22; border-bottom:1px solid #2A2A30;
    padding:.65rem .9rem;
  }
  .dot{ width:.6rem; height:.6rem; border-radius:50%; display:inline-block; }
  .editor-tab{
    font-family:'IBM Plex Mono', monospace; font-size:.78rem; color:#C9C9CF;
    background:#17171B; border:1px solid #2A2A30; border-bottom:none;
    padding:.35rem .75rem; border-radius:.4rem .4rem 0 0;
    display:inline-flex; align-items:center; gap:.4rem;
  }
  .code-area{
    font-family:'IBM Plex Mono', monospace; font-size:.82rem; line-height:1.75;
    padding:1.1rem 1.2rem; min-height:230px;
  }
  .code-line{ display:flex; gap:1rem; opacity:0; transform: translateY(4px); }
  .ln{ color:#4B4B54; user-select:none; width:1.1rem; text-align:right; flex-shrink:0; }
  .tok-kw{ color:#F5A623; }
  .tok-str{ color:#34D0C4; }
  .tok-fn{ color:#E4C88A; }
  .tok-com{ color:#5C5C66; font-style:italic; }
  .tok-plain{ color:#DADAE0; }
  .cursor{
    display:inline-block; width:2px; height:1em; background:#F5A623;
    margin-left:2px; vertical-align:-2px;
    animation: blink 1s step-end infinite;
  }
  @keyframes blink{ 50%{ opacity:0; } }

  .status-bar{
    border-top:1px solid #2A2A30; background:#1D1D22;
    padding:.9rem 1.2rem; display:flex; flex-direction:column; gap:.6rem;
  }
  .status-item{ display:flex; align-items:center; gap:.6rem; font-size:.8rem; color:#8D8D97; opacity:.35; transition: opacity .3s ease; }
  .status-item.is-active{ opacity:1; color:#DADAE0; }
  .status-icon{
    width:1rem; height:1rem; border-radius:50%; border:1.5px solid #4B4B54; flex-shrink:0;
    display:flex; align-items:center; justify-content:center;
  }
  .status-item.is-done .status-icon{ border-color:#34D0C4; background:rgba(52,208,196,0.12); }
  .status-item.is-done .status-icon svg{ display:block; }
  .status-icon svg{ display:none; width:.6rem; height:.6rem; }

  .float-badge{
    position:absolute; font-family:'IBM Plex Mono', monospace; font-size:.72rem;
    background:#17171B; border:1px solid #2A2A30; color:#DADAE0;
    padding:.4rem .65rem; border-radius:.55rem; box-shadow: 0 12px 30px -12px rgba(0,0,0,0.6);
    display:flex; align-items:center; gap:.4rem;
  }

  @media (prefers-reduced-motion: reduce){
    *{ animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
  }


  #quem-somos{
    position:relative;
    background:#0E0E10;
  }

  /* .phi-link is a shared discreet-link component, also used by the
     "Nosso Processo" section further down â kept as-is on purpose. */
  .phi-link{
    display:inline-flex; align-items:center; gap:.5rem;
    font-family:'IBM Plex Mono', monospace; font-size:.85rem;
    color:#DADAE0; padding-bottom:.2rem;
    border-bottom:1px solid #2A2A30;
    transition: color .2s ease, border-color .2s ease, gap .2s ease;
  }
  .phi-link:hover{ color:#F5A623; border-color:#F5A623; gap:.75rem; }
  .phi-link:focus-visible{ outline: 2px solid #34D0C4; outline-offset: 4px; }
  .phi-link svg{ transition: transform .2s ease; }
  .phi-link:hover svg{ transform: translateX(2px); }

  /* ---------- Left column: image placeholders + floating stat cards ---------- */
  .qs-composition{
    position:relative;
    width:100%;
    aspect-ratio: 4 / 5;
    max-width: 460px;
  }

  .qs-placeholder{
    position:absolute;
    border:1px dashed #2A2A30;
    border-radius:1.1rem;
    background:
      repeating-linear-gradient(135deg, rgba(255,255,255,0.025) 0 2px, transparent 2px 14px),
      #121214;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.6rem;
    color:#5C5C66;
    overflow:hidden;
  }
  .qs-placeholder svg{ width:1.6rem; height:1.6rem; opacity:.7; }
  .qs-placeholder span{
    font-family:'IBM Plex Mono', monospace; font-size:.72rem; letter-spacing:.04em;
  }

  .qs-illustration{
    position:absolute; border-radius:1.1rem; overflow:hidden;
    border:1px solid #22222A;
    box-shadow: 0 25px 60px -25px rgba(0,0,0,0.6);
  }
  .qs-illustration svg{ width:100%; height:100%; display:block; }
  .qs-img-1{ top:0; left:0; width:72%; height:76%; z-index:1; }
  .qs-img-2{
    right:0; bottom:0; width:46%; height:40%; z-index:2;
    border-style:solid;
    box-shadow: 0 25px 60px -25px rgba(0,0,0,0.65);
  }

  .qs-card{
    position:absolute; z-index:3;
    background: rgba(18,18,20,0.9);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    border:1px solid #2A2A30; border-radius:1rem;
    padding:1.15rem 1.3rem;
    display:flex; flex-direction:column; gap:.2rem;
    box-shadow: 0 25px 60px -20px rgba(0,0,0,0.7);
  }
  .qs-stat{
    font-family:'Poppins', sans-serif; font-weight:700;
    font-size:1.9rem; line-height:1; letter-spacing:-0.01em;
  }
  .qs-card.is-amber .qs-stat{ color:#F5A623; }
  .qs-card.is-teal .qs-stat{ color:#34D0C4; }
  .qs-card-label{
    font-family:'Poppins', sans-serif; font-weight:600; font-size:.88rem;
    color:#F3F1EA; margin-top:.15rem;
  }
  .qs-card-desc{
    font-size:.76rem; line-height:1.45; color:#8D8D97; max-width:15rem; margin-top:.2rem;
  }

  .qs-card-stat{ left:-7%; bottom:-6%; width:56%; z-index:4; }
  .qs-card-highlight{ right:-6%; top:10%; width:44%; z-index:4; }

  @media (max-width: 480px){
    .qs-composition{ max-width:320px; }
    .qs-card{ padding:.9rem 1rem; }
    .qs-stat{ font-size:1.5rem; }
    .qs-card-desc{ display:none; }
  }

  /* ---------- Right column: WhatsApp CTA ---------- */
  .qs-cta-icon{
    display:inline-flex; align-items:center; justify-content:center;
    width:1.2rem; height:1.2rem; flex-shrink:0;
  }

  @media (prefers-reduced-motion: reduce){
    .qs-reveal{ opacity:1 !important; transform:none !important; }
  }


  #processo{
    position:relative;
    background:#0E0E10;
  }

  /* Radial diagram: business at the core, six inputs orbiting it */
  .proc-orbit{
    position:relative;
    width:min(80vw, 460px);
    aspect-ratio: 1 / 1;
  }
  .proc-glow{
    position:absolute; left:50%; top:50%; width:320px; height:320px;
    transform:translate(-50%,-50%); border-radius:999px; filter: blur(100px);
    background: rgba(245,166,35,0.06); pointer-events:none;
  }

  .proc-svg{ position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
  .proc-ring{ fill:none; stroke:#22222A; stroke-width:1; stroke-dasharray:2 5; vector-effect:non-scaling-stroke; }
  .proc-line-path{
    fill:none; stroke:#F5A623; stroke-width:1.3; stroke-linecap:round;
    vector-effect:non-scaling-stroke;
    transition: stroke .6s ease;
  }
  #proc-lines.is-solved .proc-line-path{ stroke:#34D0C4; }

  .proc-core{
    position:absolute; left:50%; top:50%; transform:translate(-50%,-50%) scale(1);
    width:6.2rem; height:6.2rem; border-radius:50%;
    border:1px solid rgba(245,166,35,0.35); background:#121214;
    display:flex; align-items:center; justify-content:center;
    box-shadow: 0 0 0 0 rgba(52,208,196,0);
    transition: box-shadow .7s ease, border-color .7s ease, transform .7s ease;
    z-index:2;
  }
  .proc-core.is-solved{
    border-color: rgba(52,208,196,0.55);
    box-shadow: 0 0 46px rgba(52,208,196,0.16);
    transform:translate(-50%,-50%) scale(1.08);
  }
  .proc-core-label-wrap{ position:relative; width:100%; height:1rem; }
  .proc-core-label{
    position:absolute; inset:0;
    display:flex; align-items:center; justify-content:center;
    font-family:'IBM Plex Mono', monospace; font-size:.68rem; letter-spacing:.06em; text-transform:uppercase;
    color:#DADAE0; opacity:1; transition: opacity .6s ease;
  }
  .proc-core-label[data-state="solucao"]{ opacity:0; color:#34D0C4; }
  .proc-core.is-solved .proc-core-label[data-state="negocio"]{ opacity:0; }
  .proc-core.is-solved .proc-core-label[data-state="solucao"]{ opacity:1; }

  .proc-node{
    position:absolute;
    transform:translate(-50%,-50%) scale(1);
    display:flex; flex-direction:column; align-items:center; gap:.55rem;
    transition: opacity .5s ease, transform .5s ease;
  }
  .proc-dot{
    width:11px; height:11px; border-radius:50%;
    background:#121214; border:1.5px solid #2A2A30;
    transition: border-color .4s ease, background .4s ease, box-shadow .4s ease;
  }
  .proc-node.is-lit .proc-dot{
    border-color: rgba(245,166,35,0.5); background:#1A1611;
    box-shadow:0 0 0 5px rgba(245,166,35,0.12);
  }
  .proc-node-label{
    font-family:'IBM Plex Mono', monospace; font-size:.7rem; letter-spacing:.02em;
    color:#5C5C66; white-space:nowrap; transition:color .4s ease;
  }
  .proc-node.is-lit .proc-node-label{ color:#DADAE0; }
  .proc-node.is-converged{ transform:translate(-50%,-50%) scale(.93); opacity:.85; }

  @media (max-width: 480px){
    .proc-node-label{ font-size:.62rem; }
    .proc-orbit{ width:88vw; }
  }

  @media (prefers-reduced-motion: reduce){
    .proc-node, .proc-core{ transform:translate(-50%,-50%) !important; }
  }


  #nosso-metodo{
    position:relative;
    background:#0E0E10;
    overflow:hidden;
  }

  .tl-grid-bg{
    position:absolute; inset:0;
    background-image:
      linear-gradient(to right, rgba(255,255,255,0.03) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(255,255,255,0.03) 1px, transparent 1px);
    background-size: 44px 44px;
    -webkit-mask-image: radial-gradient(ellipse 75% 65% at 50% 45%, black 20%, transparent 85%);
            mask-image: radial-gradient(ellipse 75% 65% at 50% 45%, black 20%, transparent 85%);
  }
  .tl-glow{
    position:absolute; left:50%; top:50%; width:640px; height:360px;
    transform:translate(-50%,-50%); border-radius:999px; filter: blur(120px);
    background: rgba(245,166,35,0.06); pointer-events:none;
  }

  /* ---------- The rail: line + nodes, horizontal on desktop, vertical on mobile ---------- */
  .tl-rail{
    position:relative;
    margin-top:4.5rem;
  }

  .tl-svg{ position:absolute; overflow:visible; pointer-events:none; }
  .tl-track-bg{ stroke:#22222A; stroke-width:1.5; vector-effect:non-scaling-stroke; }
  .tl-track-fill{
    stroke:#F5A623; stroke-width:1.5; vector-effect:non-scaling-stroke;
    filter: drop-shadow(0 0 4px rgba(245,166,35,0.5));
  }

  .tl-particle{
    position:absolute; width:7px; height:7px; border-radius:50%;
    background:#F5A623; transform:translate(-50%,-50%);
    box-shadow: 0 0 10px 3px rgba(245,166,35,0.55), 0 0 24px 8px rgba(245,166,35,0.2);
    opacity:0; pointer-events:none;
  }

  /* Mobile: vertical layout â rail on the left, content to the right */
  .tl-svg-v{ left:11px; top:0; width:2px; }

  .tl-steps{
    position:relative;
    display:flex; flex-direction:column; gap:3rem;
  }
  .tl-step{
    position:relative;
    display:flex; align-items:flex-start; gap:1.5rem;
    transition: transform .5s ease;
  }

  .tl-node{
    position:relative; z-index:2; flex-shrink:0;
    width:23px; height:23px; border-radius:50%;
    background:#121214; border:1.5px solid #2A2A30;
    display:flex; align-items:center; justify-content:center;
    color:#5C5C66;
    transition: border-color .45s ease, color .45s ease, box-shadow .45s ease, transform .45s ease;
  }
  .tl-node svg{ width:11px; height:11px; }

  .tl-body{ padding-top:.05rem; }
  .tl-num{
    font-family:'Poppins', sans-serif; font-weight:700;
    font-size:1.7rem; line-height:1; letter-spacing:-0.02em;
    color:#26262B;
    transition: color .45s ease;
  }
  .tl-title{
    font-family:'Poppins', sans-serif; font-weight:600; font-size:1.15rem;
    color:#8D8D97; margin-top:.4rem;
    transition: color .45s ease;
  }
  .tl-desc{
    font-size:.9rem; line-height:1.6; color:#5C5C66; margin-top:.4rem; max-width:22rem;
    transition: color .45s ease;
  }

  /* Passed / lit permanently once the line has drawn through */
  .tl-step.is-lit .tl-node{ border-color: rgba(245,166,35,0.5); color:#F5A623; }
  .tl-step.is-lit .tl-num{ color:#F5A623; }
  .tl-step.is-lit .tl-title{ color:#F3F1EA; }
  .tl-step.is-lit .tl-desc{ color:#8D8D97; }

  /* Momentary spotlight on the current step â grows, then settles */
  .tl-step.is-active .tl-node{
    transform:scale(1.28);
    box-shadow:0 0 0 7px rgba(245,166,35,0.16);
  }
  .tl-step.is-active{ transform: scale(1.035); }

  /* Final step: teal, plus a completion badge */
  .tl-step.is-final.is-lit .tl-node{ border-color: rgba(52,208,196,0.55); color:#34D0C4; }
  .tl-step.is-final.is-lit .tl-num,
  .tl-step.is-final.is-lit .tl-title{ color:#34D0C4; }
  .tl-step.is-final .tl-track-fill{ stroke:#34D0C4; }

  .tl-complete{
    position:absolute; top:-6px; right:-6px;
    width:16px; height:16px; border-radius:50%;
    background:#0E0E10; border:1.5px solid #34D0C4;
    display:flex; align-items:center; justify-content:center;
    opacity:0; transform:scale(.4);
    transition: opacity .5s ease, transform .5s ease;
  }
  .tl-complete svg{ width:8px; height:8px; color:#34D0C4; }
  .tl-step.is-complete .tl-complete{ opacity:1; transform:scale(1); }
  .tl-step.is-complete .tl-node{ box-shadow:0 0 0 8px rgba(52,208,196,0.18); }

  /* ---------- Desktop layout ---------- */
  @media (min-width:1024px){
    .tl-rail{ padding-top:2.25rem; }
    .tl-svg-v{ display:none; }
    .tl-particle-v{ display:none; }

    .tl-steps{
      flex-direction:row; justify-content:space-between; gap:0;
    }
    .tl-step{
      flex-direction:column; align-items:center; text-align:center;
      gap:0; width:100%;
      transform-origin:center bottom;
    }
    .tl-step.is-active{ transform: scale(1.06); }
    .tl-node{ order:2; margin-top:1rem; }
    .tl-num{ order:1; }
    .tl-body{ order:3; padding-top:1.1rem; }
    .tl-desc{ margin-left:auto; margin-right:auto; }
  }

  @media (max-width:1023px){
    .tl-svg-h{ display:none; }
    .tl-particle-h{ display:none; }
  }

  @media (prefers-reduced-motion: reduce){
    .tl-step{ transform:none !important; }
    .tl-node{ transform:none !important; }
  }


  #como-funciona{ position:relative; background:#0E0E10; }

  /* Composition reuses .qs-placeholder (defined for "Quem Somos") for
     visual consistency â only position/size differ here. */
  .pr-composition{
    position:relative; width:100%; max-width:460px; aspect-ratio:4/5;
  }
  .pr-img-1{ top:0; left:0; width:78%; height:64%; z-index:1; }
  .pr-img-2{
    right:0; bottom:14%; width:52%; height:38%; z-index:2;
    border-style:solid; box-shadow:0 25px 60px -25px rgba(0,0,0,0.65);
  }
  .pr-img-3{
    left:6%; bottom:0; width:38%; height:26%; z-index:2;
    border-style:solid; box-shadow:0 20px 50px -22px rgba(0,0,0,0.6);
  }

  /* Left column: numbered step list (light dividers, not boxes) */
  .pr-steps{ margin-top:2.5rem; display:flex; flex-direction:column; }
  .pr-step-item{
    display:flex; gap:1.25rem; padding:1.5rem 0;
    border-top:1px solid #1E1E22;
  }
  .pr-step-num{
    font-family:'IBM Plex Mono', monospace; font-size:.82rem; color:#F5A623;
    flex-shrink:0; width:1.8rem; padding-top:.2rem;
  }
  .pr-step-body h3{
    font-family:'Poppins', sans-serif; font-weight:600; font-size:1.05rem;
    color:#F3F1EA;
  }
  .pr-step-body p{
    margin-top:.35rem; font-size:.92rem; line-height:1.6; color:#8D8D97; max-width:32rem;
  }

  /* Highlight panel under the images */
  .pr-highlight{
    border-left:2px solid rgba(245,166,35,0.4);
    padding-left:1.5rem;
  }
  .pr-highlight h3{
    font-family:'Poppins', sans-serif; font-weight:600; font-size:1.2rem; color:#F3F1EA;
  }
  .pr-highlight p{
    margin-top:.6rem; font-size:.92rem; line-height:1.6; color:#8D8D97; max-width:24rem;
  }
  .pr-check-list{ margin-top:1.35rem; display:flex; flex-direction:column; gap:.65rem; }
  .pr-check-item{
    display:flex; align-items:flex-start; gap:.6rem;
    font-size:.88rem; color:#DADAE0;
  }
  .pr-check-item svg{ flex-shrink:0; margin-top:.15rem; color:#34D0C4; }

  @media (prefers-reduced-motion: reduce){
    .pr-reveal{ opacity:1 !important; transform:none !important; }
  }


  #tecnologia{ position:relative; background:#0E0E10; overflow:hidden; }

  .tech-grid-bg{
    position:absolute; inset:0; pointer-events:none;
    background-image:
      linear-gradient(to right, rgba(255,255,255,0.03) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(255,255,255,0.03) 1px, transparent 1px);
    background-size: 44px 44px;
    -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 50%, black 20%, transparent 85%);
            mask-image: radial-gradient(ellipse 70% 60% at 50% 50%, black 20%, transparent 85%);
  }
  .tech-glow{
    position:absolute; left:50%; top:50%; width:600px; height:360px;
    transform:translate(-50%,-50%); border-radius:999px; filter: blur(120px);
    background: rgba(52,208,196,0.05); pointer-events:none;
  }

  .tech-grid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    background:#22222A;
    border:1px solid #22222A;
    border-radius:1.1rem;
    overflow:hidden;
  }
  @media (max-width: 640px){
    .tech-grid{ grid-template-columns: repeat(2, 1fr); }
  }

  .tech-item{
    background:#131316;
    padding:2.4rem 1.5rem;
    display:flex; align-items:center; justify-content:center;
    opacity:0; transform:translateY(16px) scale(.96);
    transition: background .3s ease;
  }
  .tech-item:hover{ background:#17171B; }

  .tech-logo{
    max-height:2.1rem; max-width:12rem; width:auto; height:auto;
    display:block; margin:0 auto;
    filter:grayscale(1) brightness(1.6) opacity(0.5);
    transition: filter .3s ease, transform .3s ease;
  }
  .tech-item:hover .tech-logo{
    filter:grayscale(0) brightness(1) opacity(1);
    transform:scale(1.05);
  }
  .tech-logo--tall{ max-height:3.1rem; }

  @media (max-width: 480px){
    .tech-logo{ max-height:1.8rem; max-width:10rem; }
    .tech-logo--tall{ max-height:2.5rem; }
    .tech-item{ padding:1.9rem 1rem; }
  }

  @media (prefers-reduced-motion: reduce){
    .tech-item{ opacity:1 !important; transform:none !important; }
  }


  #portfolio{ position:relative; background:#0E0E10; }

  .pf-pin{ position:relative; }

  .pf-viewport{ overflow:hidden; }
  @media (max-width: 1023px){
    .pf-viewport{
      overflow-x:auto; -webkit-overflow-scrolling:touch;
      scroll-snap-type:x mandatory; scrollbar-width:none;
    }
    .pf-viewport::-webkit-scrollbar{ display:none; }
  }

  .pf-track{
    display:flex; gap:2.25rem;
    padding: 0 1.5rem;
    will-change: transform;
  }
  @media (min-width: 1024px){
    .pf-track{ padding: 0 7vw; gap:3rem; }
  }

  .pf-card{
    position:relative; flex-shrink:0;
    width:min(80vw, 460px);
    scroll-snap-align:start;
    opacity:1; transform:scale(1);
  }
  @media (min-width: 1024px){
    .pf-card{
      width:520px; opacity:.5; transform:scale(.96);
      transition: opacity .5s ease, transform .5s ease;
    }
    .pf-card.is-active{ opacity:1; transform:scale(1); }
  }

  .pf-image-wrap{ position:relative; }
  .pf-image{
    position:relative; aspect-ratio: 4/3;
    border:1px dashed #2A2A30; border-radius:1.1rem;
    background:
      repeating-linear-gradient(135deg, rgba(255,255,255,0.025) 0 2px, transparent 2px 14px),
      #121214;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.6rem;
    color:#5C5C66; overflow:hidden;
  }
  .pf-image svg{ width:100%; height:100%; display:block; }
  .pf-image span{ font-family:'IBM Plex Mono', monospace; font-size:.72rem; letter-spacing:.04em; }

  .pf-tag{
    position:absolute; top:1rem; left:1rem; z-index:2;
    background:rgba(18,18,20,0.85); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
    border:1px solid #2A2A30; border-radius:999px;
    padding:.35rem .8rem;
    font-family:'IBM Plex Mono', monospace; font-size:.7rem; letter-spacing:.03em;
    color:#F5A623;
  }

  .pf-index{
    position:absolute; bottom:.75rem; right:1rem; z-index:1;
    font-family:'Poppins', sans-serif; font-weight:700;
    font-size:2.6rem; line-height:1; color:rgba(255,255,255,0.06);
    pointer-events:none;
  }

  .pf-title{
    font-family:'Poppins', sans-serif; font-weight:600; font-size:1.4rem;
    color:#F3F1EA; margin-top:1.4rem;
  }
  .pf-desc{
    margin-top:.5rem; font-size:.92rem; line-height:1.6; color:#8D8D97; max-width:30rem;
  }
  .pf-link{
    display:inline-flex; align-items:center; gap:.45rem; margin-top:1rem;
    font-family:'IBM Plex Mono', monospace; font-size:.82rem; color:#8D8D97;
    transition: color .2s ease, gap .2s ease;
  }
  .pf-link:hover{ color:#F5A623; gap:.65rem; }
  .pf-link svg{ transition: transform .2s ease; }
  .pf-link:hover svg{ transform: translateX(2px); }

  .pf-meta{
    display:none;
    align-items:center; gap:1.25rem;
    max-width: calc(520px * 2 + 3rem);
    margin: 2.75rem auto 0; padding: 0 7vw;
  }
  @media (min-width: 1024px){ .pf-meta{ display:flex; } }
  .pf-progress-track{
    flex:1; height:2px; background:#22222A; border-radius:2px; overflow:hidden;
  }
  .pf-progress-fill{
    height:100%; width:0%; background:#F5A623;
  }
  .pf-counter{
    font-family:'IBM Plex Mono', monospace; font-size:.78rem; color:#5C5C66;
    white-space:nowrap;
  }

  @media (prefers-reduced-motion: reduce){
    .pf-card{ opacity:1 !important; transform:none !important; }
  }


  #performance{ position:relative; background:#0E0E10; overflow:hidden; }

  .perf-grid-bg{
    position:absolute; inset:0; pointer-events:none;
    background-image:
      linear-gradient(to right, rgba(255,255,255,0.03) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(255,255,255,0.03) 1px, transparent 1px);
    background-size: 44px 44px;
    -webkit-mask-image: radial-gradient(ellipse 75% 60% at 50% 45%, black 20%, transparent 85%);
            mask-image: radial-gradient(ellipse 75% 60% at 50% 45%, black 20%, transparent 85%);
  }
  .perf-glow{
    position:absolute; left:70%; top:40%; width:520px; height:360px;
    transform:translate(-50%,-50%); border-radius:999px; filter: blur(120px);
    background: rgba(52,208,196,0.06); pointer-events:none;
  }

  .perf-gauge-grid{
    display:grid; grid-template-columns:repeat(2, 1fr);
    gap:1px; background:#22222A; border:1px solid #22222A;
    border-radius:1.1rem; overflow:hidden;
  }
  .perf-gauge-card{
    background:#131316; padding:2.25rem 1.5rem;
    display:flex; flex-direction:column; align-items:center; gap:.9rem;
    opacity:0; transform:translateY(16px) scale(.96);
  }
  .perf-ring-wrap{ position:relative; width:100px; height:100px; }
  .perf-ring-wrap svg{ width:100%; height:100%; transform:rotate(-90deg); }
  .perf-ring-bg{ fill:none; stroke:#22222A; stroke-width:6; }
  .perf-ring-fill{ fill:none; stroke:#F5A623; stroke-width:6; stroke-linecap:round; }
  .perf-gauge-card.is-teal .perf-ring-fill{ stroke:#34D0C4; }
  .perf-ring-value{
    position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
    font-family:'Poppins', sans-serif; font-weight:700; font-size:1.5rem; color:#F3F1EA;
  }
  .perf-gauge-label{
    font-family:'Poppins', sans-serif; font-weight:600; font-size:.9rem;
    color:#8D8D97; text-align:center;
  }

  @media (max-width:480px){
    .perf-ring-wrap{ width:84px; height:84px; }
    .perf-ring-value{ font-size:1.25rem; }
  }

  @media (prefers-reduced-motion: reduce){
    .perf-gauge-card{ opacity:1 !important; transform:none !important; }
  }


  #cta-final{ position:relative; background:#0E0E10; overflow:hidden; }
  .cta-glow{
    position:absolute; left:50%; top:50%; width:640px; height:380px;
    transform:translate(-50%,-50%); border-radius:999px; filter: blur(130px);
    background: rgba(245,166,35,0.08); pointer-events:none;
  }


  #contato{ position:relative; background:#0E0E10; }

  .form-field{ display:flex; flex-direction:column; gap:.5rem; }
  .form-field.is-wide{ grid-column: 1 / -1; }
  .form-label{
    font-family:'IBM Plex Mono', monospace; font-size:.76rem; letter-spacing:.03em;
    color:#8D8D97;
  }
  .form-input, .form-select, .form-textarea{
    background:#121214; border:1px solid #2A2A30; border-radius:.65rem;
    padding:.8rem 1rem; color:#F3F1EA; font-family:'Inter', sans-serif; font-size:.95rem;
    transition: border-color .2s ease, box-shadow .2s ease;
    width:100%;
  }
  .form-input::placeholder, .form-textarea::placeholder{ color:#5C5C66; }
  .form-input:focus, .form-select:focus, .form-textarea:focus{
    outline:none; border-color:#F5A623; box-shadow:0 0 0 3px rgba(245,166,35,0.15);
  }
  .form-textarea{ resize:vertical; min-height:110px; }
  .form-select{ appearance:none; -webkit-appearance:none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%238D8D97' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-position: right 1rem center;
    padding-right:2.5rem;
  }

  .form-grid{
    display:grid; grid-template-columns: repeat(2, 1fr); gap:1.5rem;
  }
  @media (max-width:640px){
    .form-grid{ grid-template-columns: 1fr; }
  }

  .form-panel{
    border:1px solid #22222A; border-radius:1.25rem; background:#131316;
    padding:2.25rem 1.75rem;
  }
  @media (min-width:768px){ .form-panel{ padding:3rem; } }

  .form-success{
    display:none; text-align:center; padding:2rem 1rem;
  }
  .form-success.is-visible{ display:block; }
  .form-success-icon{
    width:3rem; height:3rem; margin:0 auto 1.25rem; border-radius:50%;
    background:rgba(52,208,196,0.12); border:1px solid rgba(52,208,196,0.4);
    display:flex; align-items:center; justify-content:center; color:#34D0C4;
  }


  footer{ position:relative; background:#0B0B0D; border-top:1px solid #1E1E22; }
  .footer-link{ color:#8D8D97; font-size:.9rem; transition:color .2s ease; }
  .footer-link:hover{ color:#F3F1EA; }
  .footer-heading{
    font-family:'IBM Plex Mono', monospace; font-size:.72rem; letter-spacing:.05em;
    color:#5C5C66; text-transform:uppercase; margin-bottom:1rem;
  }
  .footer-social{
    width:2.25rem; height:2.25rem; border-radius:50%; border:1px solid #2A2A30;
    display:flex; align-items:center; justify-content:center; color:#8D8D97;
    transition: color .2s ease, border-color .2s ease;
  }
  .footer-social:hover{ color:#F5A623; border-color:rgba(245,166,35,0.4); }


  #servicos{ position:relative; background:#0E0E10; overflow:hidden; }

  .sv-grid-bg{
    position:absolute; inset:0; pointer-events:none;
    background-image:
      linear-gradient(to right, rgba(255,255,255,0.03) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(255,255,255,0.03) 1px, transparent 1px);
    background-size: 44px 44px;
    -webkit-mask-image: radial-gradient(ellipse 75% 60% at 50% 40%, black 20%, transparent 85%);
            mask-image: radial-gradient(ellipse 75% 60% at 50% 40%, black 20%, transparent 85%);
  }
  .sv-glow{
    position:absolute; left:30%; top:35%; width:560px; height:340px;
    transform:translate(-50%,-50%); border-radius:999px; filter: blur(120px);
    background: rgba(245,166,35,0.055); pointer-events:none;
  }

  .sv-grid{ display:grid; grid-template-columns:repeat(2, 1fr); gap:1.25rem; }
  @media (max-width:800px){ .sv-grid{ grid-template-columns:1fr; } }

  .sv-card{
    background:#131316; border:1px solid #22222A; border-radius:1.1rem; overflow:hidden;
    display:flex; flex-direction:column;
    opacity:0; transform:translateY(18px);
    transition: border-color .3s ease, transform .3s ease, box-shadow .3s ease;
  }
  .sv-card:hover{
    border-color:#3A3A42; transform:translateY(-4px);
    box-shadow: 0 24px 50px -24px rgba(0,0,0,0.6);
  }

  .sv-cover{ position:relative; aspect-ratio:16/8; overflow:hidden; background:#101012; }
  .sv-cover svg{ width:100%; height:100%; display:block; transition: transform .5s ease; }
  .sv-card:hover .sv-cover svg{ transform:scale(1.06); }

  .sv-body{ padding:1.75rem 1.75rem 2rem; display:flex; flex-direction:column; gap:1rem; flex:1; }

  .sv-icon{
    width:2.5rem; height:2.5rem; border-radius:.65rem;
    border:1px solid #2A2A30; background:#17171B;
    display:flex; align-items:center; justify-content:center;
    color:#F5A623; margin-top:-2.75rem; position:relative; z-index:1;
    box-shadow: 0 8px 20px -6px rgba(0,0,0,0.6);
  }
  .sv-icon svg{ width:1.15rem; height:1.15rem; }

  .sv-card h3{ font-family:'Poppins', sans-serif; font-weight:600; font-size:1.2rem; color:#F3F1EA; }
  .sv-card .sv-tagline{ font-size:.92rem; color:#8D8D97; line-height:1.55; margin-top:-.5rem; }

  .sv-list{ display:flex; flex-wrap:wrap; gap:.45rem; }
  .sv-list span{
    font-family:'IBM Plex Mono', monospace; font-size:.7rem; color:#DADAE0;
    background:#1A1A1E; border:1px solid #22222A; border-radius:999px;
    padding:.32rem .7rem;
  }

  .sv-cta{
    display:inline-flex; align-items:center; gap:.4rem; margin-top:.25rem;
    font-family:'IBM Plex Mono', monospace; font-size:.78rem; color:#8D8D97;
    transition: color .2s ease, gap .2s ease;
  }
  .sv-card:hover .sv-cta{ color:#F5A623; gap:.6rem; }

  /* Carrossel infinito (agora ativo em todos os tamanhos de tela) â controlado via JS pra permitir navegaÃ§Ã£o manual */
  .sv-marquee-wrap{ position:relative; padding:0 1rem; }
  .sv-marquee-wrap::before, .sv-marquee-wrap::after{
    content:''; position:absolute; top:0; bottom:0; width:48px; z-index:3; pointer-events:none;
  }
  .sv-marquee-wrap::before{ left:0; background:linear-gradient(to right, #0E0E10, transparent); }
  .sv-marquee-wrap::after{ right:0; background:linear-gradient(to left, #0E0E10, transparent); }
  .sv-marquee-track{
    display:flex; gap:1rem; width:max-content; will-change:transform;
  }
  .sv-card.in-marquee{ width:calc(50vw - 2rem); flex-shrink:0; opacity:1; transform:none; }
  .sv-card.in-marquee .sv-body{ padding:1.1rem 1.1rem 1.4rem; gap:.65rem; }
  .sv-card.in-marquee .sv-icon{ width:2.1rem; height:2.1rem; margin-top:-2.1rem; }
  .sv-card.in-marquee h3{ font-size:1rem; }
  .sv-card.in-marquee .sv-tagline{ font-size:.8rem; }
  .sv-card.in-marquee .sv-list{ display:none; }
  .sv-card.in-marquee .sv-cta{ font-size:.78rem; }

  @media (min-width:640px){
    .sv-card.in-marquee{ width:calc(50vw - 3rem); }
  }
  @media (min-width:1024px){
    .sv-marquee-wrap{ padding:0; }
    .sv-marquee-wrap::before, .sv-marquee-wrap::after{ width:120px; }
    .sv-marquee-track{ gap:1.5rem; }
    .sv-card.in-marquee{ width:360px; }
    .sv-card.in-marquee .sv-body{ padding:1.75rem 1.75rem 2rem; gap:1rem; }
    .sv-card.in-marquee .sv-icon{ width:2.5rem; height:2.5rem; margin-top:-2.75rem; }
    .sv-card.in-marquee h3{ font-size:1.15rem; }
    .sv-card.in-marquee .sv-tagline{ font-size:.9rem; }
    .sv-card.in-marquee .sv-list{ display:flex; }
    .sv-card.in-marquee .sv-cta{ font-size:.85rem; }
  }

  .sv-marquee-controls{
    display:flex; align-items:center; justify-content:center; gap:1.5rem; margin-top:2rem;
  }
  .sv-arrow{
    width:2.6rem; height:2.6rem; border-radius:50%; border:1px solid #2A2A30;
    background:#131316; display:flex; align-items:center; justify-content:center; color:#8D8D97;
    transition: color .2s ease, border-color .2s ease; flex-shrink:0; z-index:4; position:relative;
  }
  .sv-arrow:hover{ color:#F5A623; border-color:rgba(245,166,35,0.4); }
  .sv-dots{ display:flex; align-items:center; gap:.55rem; }
  .sv-dot{
    width:.5rem; height:.5rem; border-radius:50%; background:#2A2A30; border:none; padding:0;
    transition: background .25s ease, transform .25s ease;
  }
  .sv-dot.is-active{ background:#F5A623; transform:scale(1.35); }

  @media (prefers-reduced-motion: reduce){
    .sv-card{ opacity:1 !important; transform:none !important; }
  }


  #depoimentos, #confianca { position:relative; background:#0E0E10; }
  .home-line{ opacity:0; }

  /* Depoimentos */
  .testi-marquee{ position:relative; overflow-x:hidden; touch-action:pan-y; }
  .testi-marquee::before, .testi-marquee::after{
    content:''; position:absolute; top:0; bottom:0; width:100px; z-index:2; pointer-events:none;
  }
  .testi-marquee::before{ left:0; background:linear-gradient(to right, #0E0E10, transparent); }
  .testi-marquee::after{ right:0; background:linear-gradient(to left, #0E0E10, transparent); }
  .testi-track{ display:flex; gap:1.25rem; width:max-content; animation: testi-scroll 55s linear infinite; }
  .testi-marquee:hover .testi-track{ animation-play-state:paused; }
  @keyframes testi-scroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
  .testi-card{
    width:310px; flex-shrink:0; background:#131316; border:1px solid #22222A; border-radius:1rem;
    padding:1.65rem; display:flex; flex-direction:column; gap:.9rem;
  }
  .testi-stars{ display:flex; gap:.2rem; color:#F5A623; }
  .testi-stars svg{ width:.85rem; height:.85rem; }
  .testi-quote{ font-size:.9rem; color:#DADAE0; line-height:1.6; }
  .testi-name{ font-family:'Poppins', sans-serif; font-weight:600; font-size:.88rem; color:#F3F1EA; }

  /* Quem confia (logos) */
  .logo-marquee{ position:relative; overflow-x:hidden; touch-action:pan-y; }
  .logo-marquee::before, .logo-marquee::after{
    content:''; position:absolute; top:0; bottom:0; width:90px; z-index:2; pointer-events:none;
  }
  .logo-marquee::before{ left:0; background:linear-gradient(to right, #0E0E10, transparent); }
  .logo-marquee::after{ right:0; background:linear-gradient(to left, #0E0E10, transparent); }
  .logo-track{
    display:flex; gap:1.5rem; width:max-content;
    animation: logo-scroll-right 40s linear infinite;
  }
  .logo-marquee:hover .logo-track{ animation-play-state:paused; }
  @keyframes logo-scroll-right{
    from{ transform:translateX(-50%); }
    to{ transform:translateX(0); }
  }
  .client-logo{
    height:2.3rem; width:auto; max-width:150px; flex-shrink:0;
    object-fit:contain; opacity:.8; filter:brightness(1.15);
    transition:opacity .25s ease;
  }
  .client-logo:hover{ opacity:1; }
  @media (prefers-reduced-motion: reduce){
    .logo-track{ animation:none !important; }
  }

  @media (prefers-reduced-motion: reduce){
    .testi-track{ animation:none !important; }
  }



  .menu-toggle{
    display:flex; align-items:center; justify-content:center;
    width:2.75rem; height:2.75rem; flex-shrink:0;
    border-radius:50%; border:1px solid #2A2A30; background:#131316;
    position:relative; z-index:60;
    transition:border-color .25s ease, box-shadow .25s ease;
  }
  .menu-toggle:hover{ border-color:rgba(245,166,35,0.5); box-shadow:0 0 0 5px rgba(245,166,35,0.08); }
  .menu-toggle.is-open{ border-color:rgba(245,166,35,0.55); box-shadow:0 0 0 5px rgba(245,166,35,0.1); }
  .menu-toggle-icon{
    width:1.15rem; height:1.15rem; flex-shrink:0;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.3rem;
  }
  .menu-toggle-bar{
    width:1rem; height:1.5px; background:#DADAE0; border-radius:2px;
    transition:transform .4s cubic-bezier(.65,0,.35,1), background .25s ease;
  }
  .menu-toggle.is-open .menu-toggle-bar:nth-child(1){ transform:translateY(3.9px) rotate(45deg); background:#F5A623; }
  .menu-toggle.is-open .menu-toggle-bar:nth-child(2){ transform:translateY(-3.9px) rotate(-45deg); background:#F5A623; }
  .menu-toggle-label{ display:none; }

  @media (max-width:400px){
    header .btn-primary{ padding:.55rem .9rem !important; font-size:.82rem !important; }
    header img[alt*="Imagine.IDE"]{ height:1.9rem !important; }
  }

  .menu-close{
    position:fixed; top:1.4rem; right:1.5rem; z-index:56;
    width:2.9rem; height:2.9rem; border-radius:50%;
    border:1px solid #2A2A30; background:#131316;
    display:flex; align-items:center; justify-content:center; color:#DADAE0;
    opacity:0; transform:scale(.7) rotate(-45deg); pointer-events:none;
    transition:border-color .2s ease, color .2s ease, transform .3s ease, opacity .3s ease;
  }
  .menu-overlay.is-open .menu-close{
    opacity:1; transform:scale(1) rotate(0deg); pointer-events:auto; transition-delay:.25s;
  }
  .menu-close:hover{ border-color:rgba(245,166,35,0.55); color:#F5A623; transform:scale(1) rotate(90deg); }

  .menu-toggle.is-open .menu-toggle-label{ color:#F5A623; }

  .menu-overlay{
    position:fixed; inset:0; z-index:55; pointer-events:none;
    clip-path:circle(0% at calc(100% - 4.5rem) 2rem);
    transition:clip-path .85s cubic-bezier(.76,0,.24,1);
  }
  .menu-overlay.is-open{
    pointer-events:auto;
    clip-path:circle(150% at calc(100% - 4.5rem) 2rem);
  }
  .menu-overlay-bg{
    position:absolute; inset:0; background:#0B0B0D; overflow:hidden;
    background-image:
      linear-gradient(to right, rgba(255,255,255,0.03) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(255,255,255,0.03) 1px, transparent 1px);
    background-size:44px 44px;
  }
  .menu-overlay-glow{
    position:absolute; top:-10%; right:-10%; width:520px; height:520px; border-radius:999px;
    background:rgba(245,166,35,0.08); filter:blur(140px); pointer-events:none;
  }
  .menu-overlay-watermark{
    position:absolute; bottom:-4rem; right:-1rem;
    font-family:'Poppins', sans-serif; font-weight:700; font-size:min(22vw, 260px);
    color:rgba(255,255,255,0.025); line-height:1; pointer-events:none; user-select:none;
    letter-spacing:-.02em;
  }
  .menu-overlay-content{
    position:relative; height:100%; display:flex; flex-direction:column; justify-content:center;
    max-width:38rem; margin:0 auto; padding:6rem 1.5rem 3rem;
  }
  .menu-overlay-tag{
    display:inline-flex; align-items:center; gap:.5rem; align-self:flex-start;
    font-family:'IBM Plex Mono', monospace; font-size:.78rem; color:#5C5C66;
    margin-bottom:2rem;
  }
  .menu-overlay-dot{
    width:6px; height:6px; border-radius:50%; background:#34D0C4;
    box-shadow:0 0 0 3px rgba(52,208,196,0.18);
    animation: menu-pulse 2s ease-in-out infinite;
  }
  @keyframes menu-pulse{ 0%,100%{ opacity:1; } 50%{ opacity:.4; } }

  .menu-link{
    display:flex; align-items:baseline; gap:1.1rem;
    font-family:'Poppins', sans-serif; font-weight:600; font-size:clamp(1.6rem, 5vw, 2.4rem);
    color:#5C5C66; padding:.7rem 0; border-bottom:1px solid #1E1E22;
    opacity:0; transform:translateY(18px);
    transition:color .2s ease;
  }
  .menu-link:hover{ color:#F3F1EA; }
  .menu-link:hover .menu-link-num{ color:#F5A623; }
  .menu-link.is-current{ color:#F5A623; }
  .menu-link.is-current .menu-link-num{ color:#F5A623; }
  .menu-link-num{
    font-family:'IBM Plex Mono', monospace; font-weight:400; font-size:.85rem; color:#3A3A40;
    transition:color .2s ease;
  }
  .menu-overlay-footer{
    margin-top:2.5rem; display:flex; flex-wrap:wrap; gap:1.75rem;
    font-family:'IBM Plex Mono', monospace; font-size:.85rem;
    opacity:0; transform:translateY(12px);
  }
  .menu-overlay-footer a{ color:#8D8D97; transition:color .2s ease; }
  .menu-overlay-footer a:hover{ color:#34D0C4; }

  body.menu-is-open{ overflow:hidden; }

  @media (prefers-reduced-motion: reduce){
    .menu-link, .menu-overlay-footer{ opacity:1 !important; transform:none !important; }
    .menu-overlay{ transition:none; }
  }


  .wa-float{ position:fixed; right:1.5rem; bottom:1.5rem; z-index:70; }
  .wa-fab{
    position:relative;
    width:3.6rem; height:3.6rem; border-radius:50%;
    background:#25D366; color:#0E0E10;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 12px 30px -8px rgba(37,211,102,0.55);
    transition:transform .25s ease, box-shadow .25s ease;
  }
  .wa-fab::after{
    content:''; position:absolute; inset:-4px; border-radius:50%;
    box-shadow:0 12px 34px -6px rgba(37,211,102,0.85);
    opacity:0; pointer-events:none;
    animation:wa-pulse 2.6s ease-in-out infinite;
  }
  .wa-fab:hover{ transform:scale(1.06); }
  .wa-float.is-open .wa-fab{ transform:rotate(90deg); }
  .wa-float.is-open .wa-fab::after{ animation:none; opacity:0; }
  @keyframes wa-pulse{
    0%,100%{ opacity:0; }
    50%{ opacity:1; }
  }

  .wa-panel{
    position:absolute; right:0; bottom:4.4rem; width:280px;
    background:#131316; border:1px solid #22222A; border-radius:1.1rem;
    padding:1.25rem; box-shadow:0 30px 60px -20px rgba(0,0,0,0.6);
    opacity:0; transform:translateY(12px) scale(.97); pointer-events:none;
    transition:opacity .25s ease, transform .25s ease;
  }
  .wa-float.is-open .wa-panel{ opacity:1; transform:translateY(0) scale(1); pointer-events:auto; }

  .wa-panel-head{ display:flex; align-items:center; justify-content:space-between; gap:.5rem; }
  .wa-panel-title{ font-family:'Poppins', sans-serif; font-weight:600; font-size:.98rem; color:#F3F1EA; }
  .wa-panel-close{ color:#8D8D97; transition:color .2s ease; flex-shrink:0; }
  .wa-panel-close:hover{ color:#F5A623; }
  .wa-panel-sub{ font-size:.8rem; color:#8D8D97; margin-top:.4rem; line-height:1.5; }

  .wa-field{ margin-top:.85rem; }
  .wa-input{
    width:100%; background:#0E0E10; border:1px solid #2A2A30; border-radius:.6rem;
    padding:.65rem .85rem; color:#F3F1EA; font-family:'Inter', sans-serif; font-size:.88rem;
    transition:border-color .2s ease;
  }
  .wa-input::placeholder{ color:#5C5C66; }
  .wa-input:focus{ outline:none; border-color:#25D366; }
  .wa-select{ appearance:none; -webkit-appearance:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%238D8D97' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-position:right .85rem center; padding-right:2.2rem;
  }
  .wa-submit{
    width:100%; margin-top:1rem; background:#25D366; color:#0E0E10; font-weight:600;
    font-size:.85rem; padding:.7rem; border-radius:.6rem;
    display:flex; align-items:center; justify-content:center; gap:.5rem;
    transition:background .2s ease, transform .18s ease;
  }
  .wa-submit:hover{ background:#2fe077; transform:translateY(-1px); }

  @media (max-width:420px){
    .wa-float{ right:1rem; bottom:1rem; }
    .wa-panel{ position:fixed; left:1rem; right:1rem; width:auto; bottom:5.5rem; }
  }


  .cta-modal-overlay{
    position:fixed; inset:0; z-index:80;
    background:rgba(8,8,9,0.72); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px);
    display:flex; align-items:center; justify-content:center; padding:1.25rem;
    opacity:0; pointer-events:none; transition:opacity .25s ease;
  }
  .cta-modal-overlay.is-open{ opacity:1; pointer-events:auto; }
  .cta-modal{
    position:relative; width:100%; max-width:400px;
    background:#131316; border:1px solid #22222A; border-radius:1.25rem;
    padding:2rem 1.75rem;
    transform:translateY(14px) scale(.97); transition:transform .3s ease;
  }
  .cta-modal-overlay.is-open .cta-modal{ transform:translateY(0) scale(1); }
  .cta-modal-close{
    position:absolute; top:1.25rem; right:1.25rem; color:#8D8D97; transition:color .2s ease;
  }
  .cta-modal-close:hover{ color:#F5A623; }
  .cta-modal-title{
    font-family:'Poppins', sans-serif; font-weight:600; font-size:1.3rem; color:#F3F1EA;
    margin-top:1rem; line-height:1.3;
  }
  .cta-modal-sub{ margin-top:.5rem; font-size:.88rem; color:#8D8D97; line-height:1.5; }
  #cta-modal-form{ margin-top:1.5rem; }
  .cta-modal-success{ display:none; text-align:center; padding:1rem 0; }
  .cta-modal-success.is-visible{ display:block; }
  .wa-success-icon{
    width:2.8rem; height:2.8rem; margin:0 auto 1rem; border-radius:50%;
    background:rgba(52,208,196,0.12); border:1px solid rgba(52,208,196,0.4);
    display:flex; align-items:center; justify-content:center; color:#34D0C4;
  }
  body.cta-modal-is-open{ overflow:hidden; }


  .page-transition{
    position:fixed; inset:0; z-index:999;
    background:#0E0E10;
    display:flex; align-items:center; justify-content:center;
    clip-path: circle(150% at 50% 50%);
    pointer-events:none;
  }
  .page-transition.is-animating{
    transition: clip-path .65s cubic-bezier(.76,0,.24,1);
  }
  .page-transition.is-open{ clip-path: circle(0% at 50% 50%); }

  .page-transition-mark{
    position:relative; width:3.2rem; height:3.2rem;
    display:flex; align-items:center; justify-content:center;
    opacity:0; transition: opacity .3s ease;
  }
  .page-transition.is-covering .page-transition-mark{ opacity:1; }

  .page-transition-ring{
    position:absolute; inset:0; border-radius:50%;
    border:1.5px solid rgba(245,166,35,0.25);
    border-top-color:#F5A623;
    animation: page-transition-spin .8s linear infinite;
  }
  .page-transition-dot{
    width:.4rem; height:.4rem; border-radius:50%;
    background:#34D0C4;
    box-shadow: 0 0 12px 2px rgba(52,208,196,0.6);
  }
  @keyframes page-transition-spin{
    to{ transform: rotate(360deg); }
  }

  @media (prefers-reduced-motion: reduce){
    .page-transition{ display:none !important; }
  }


*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:IBM Plex Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-x-0{left:0;right:0}.-right-4{right:-1rem}.-top-5{top:-1.25rem}.top-0{top:0}.z-50{z-index:50}.order-1{order:1}.order-2{order:2}.mx-auto{margin-left:auto;margin-right:auto}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-auto{margin-left:auto}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-9{margin-top:2.25rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-9{height:2.25rem}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-14{width:3.5rem}.w-auto{width:auto}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-12{gap:3rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-12{-moz-column-gap:3rem;column-gap:3rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-2{row-gap:.5rem}.gap-y-6{row-gap:1.5rem}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-white\/5{border-color:hsla(0,0%,100%,.05)}.bg-amber{--tw-bg-opacity:1;background-color:rgb(245 166 35/var(--tw-bg-opacity,1))}.bg-bg{--tw-bg-opacity:1;background-color:rgb(14 14 16/var(--tw-bg-opacity,1))}.bg-bg\/80{background-color:rgba(14,14,16,.8)}.\!px-4{padding-left:1rem!important;padding-right:1rem!important}.\!px-5{padding-left:1.25rem!important;padding-right:1.25rem!important}.\!py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.\!py-2\.5{padding-top:.625rem!important;padding-bottom:.625rem!important}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-14{padding-bottom:3.5rem}.pb-16{padding-bottom:4rem}.pb-20{padding-bottom:5rem}.pb-24{padding-bottom:6rem}.pt-16{padding-top:4rem}.pt-24{padding-top:6rem}.pt-3{padding-top:.75rem}.pt-32{padding-top:8rem}.pt-40{padding-top:10rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.font-display{font-family:Poppins,sans-serif}.font-mono{font-family:IBM Plex Mono,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[\.7rem\]{font-size:.7rem}.text-\[2\.2rem\]{font-size:2.2rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-\[1\.12\]{line-height:1.12}.leading-\[1\.14\]{line-height:1.14}.leading-\[1\.15\]{line-height:1.15}.leading-\[1\.18\]{line-height:1.18}.leading-\[1\.25\]{line-height:1.25}.leading-\[1\.2\]{line-height:1.2}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-tight{letter-spacing:-.025em}.text-amber{--tw-text-opacity:1;color:rgb(245 166 35/var(--tw-text-opacity,1))}.text-ink{--tw-text-opacity:1;color:rgb(243 241 234/var(--tw-text-opacity,1))}.text-muted{--tw-text-opacity:1;color:rgb(141 141 151/var(--tw-text-opacity,1))}.text-muted\/60{color:hsla(240,5%,57%,.6)}.text-muted\/70{color:hsla(240,5%,57%,.7)}.text-muted\/80{color:hsla(240,5%,57%,.8)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:text-ink:hover{--tw-text-opacity:1;color:rgb(243 241 234/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:flex{display:flex}.sm\:h-10{height:2.5rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-4{gap:1rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}}@media (min-width:1024px){.lg\:order-1{order:1}.lg\:order-2{order:2}.lg\:col-span-1{grid-column:span 1/span 1}.lg\:mr-0{margin-right:0}.lg\:mt-16{margin-top:4rem}.lg\:mt-20{margin-top:5rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[1\.05fr_0\.95fr\]{grid-template-columns:1.05fr .95fr}.lg\:grid-cols-\[1\.5fr_1fr\]{grid-template-columns:1.5fr 1fr}.lg\:grid-cols-\[1fr_1fr\]{grid-template-columns:1fr 1fr}.lg\:justify-start{justify-content:flex-start}.lg\:justify-end{justify-content:flex-end}.lg\:gap-16{gap:4rem}.lg\:gap-24{gap:6rem}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:py-20{padding-top:5rem;padding-bottom:5rem}.lg\:py-24{padding-top:6rem;padding-bottom:6rem}.lg\:py-28{padding-top:7rem}.lg\:pb-28,.lg\:py-28{padding-bottom:7rem}.lg\:text-\[3\.2rem\]{font-size:3.2rem}.lg\:text-\[3\.3rem\]{font-size:3.3rem}.lg\:text-\[3rem\]{font-size:3rem}}


  /* Carrossel arrastÃ¡vel (depoimentos e logos de clientes) */
  .drag-carousel-wrap{ position:relative; overflow:hidden; overscroll-behavior-x:contain; }
  .drag-carousel-track{
    display:flex; width:max-content; cursor:grab; touch-action:pan-y;
    user-select:none; -webkit-user-select:none;
  }
  .drag-carousel-track.is-dragging{ cursor:grabbing; touch-action:none; }
  .drag-carousel-track > *{ -webkit-user-drag:none; }
  .drag-carousel-track img{ pointer-events:none; }

  .drag-dots{
    display:flex; align-items:center; justify-content:center; gap:.5rem;
    margin-top:1.5rem;
  }
  .drag-dot{
    width:.4rem; height:.4rem; border-radius:50%; background:#2A2A30;
    transition:background .25s ease, width .25s ease;
  }
  .drag-dot.is-active{ background:#F5A623; width:1.1rem; border-radius:999px; }


  /* ===== Contato direto no WhatsApp (substitui os formulÃ¡rios) ===== */
  a.wa-fab{ text-decoration:none; }
  .wa-direct{ text-align:center; }
  .wa-direct-badge{ display:inline-flex; align-items:center; gap:.5rem; font-family:'IBM Plex Mono', monospace; font-size:.78rem; color:#25D366; background:rgba(37,211,102,0.08); border:1px solid rgba(37,211,102,0.28); padding:.4rem .8rem; border-radius:999px; }
  .wa-direct-title{ font-family:'Poppins', sans-serif; font-weight:600; font-size:1.6rem; line-height:1.25; letter-spacing:-.01em; color:#F3F1EA; margin-top:1.15rem; }
  .wa-direct-sub{ margin:.85rem auto 0; max-width:32rem; color:#8D8D97; line-height:1.65; }
  .wa-direct-btn{ display:inline-flex; align-items:center; justify-content:center; gap:.6rem; margin-top:1.75rem; padding:.95rem 1.7rem; border-radius:.75rem; background:#25D366; color:#08130C; font-weight:600; text-decoration:none; transition:transform .18s ease, box-shadow .18s ease, background .18s ease; box-shadow:0 12px 32px -12px rgba(37,211,102,0.6); }
  .wa-direct-btn:hover{ background:#2EE875; transform:translateY(-2px); box-shadow:0 14px 34px -10px rgba(37,211,102,0.55); }
  .wa-direct-btn:focus-visible{ outline:2px solid #25D366; outline-offset:3px; }
  .wa-direct-note{ margin-top:1.15rem; font-family:'IBM Plex Mono', monospace; font-size:.78rem; color:rgba(141,141,151,0.85); }
  .wa-direct-alt{ margin-top:.5rem; font-size:.85rem; color:#8D8D97; }
  .wa-direct-alt a{ color:#F5A623; }
