:root{
      --bg:#050505;
      --bg2:#0a0807;
      --surface:#11100f;
      --surface2:#17120e;
      --text:#fff;
      --muted:#a3a3a3;
      --orange:#f97316;
      --orange2:#fb923c;
      --amber:#f59e0b;
      --border:rgba(249,115,22,.18);
      --glow:rgba(249,115,22,.28);
      --max:1200px;
      --radius:26px;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 50% -10%,rgba(249,115,22,.11),transparent 34%),
        var(--bg);
      overflow-x:hidden;
      -webkit-font-smoothing:antialiased;
      -moz-osx-font-smoothing:grayscale;
      text-rendering:optimizeLegibility;
    }

    /* Evita zoom de duplo-toque em iOS */
    button, a, summary, input, label {
      touch-action: manipulation;
    }

    a{text-decoration:none;color:inherit}
    button,input{font:inherit}
    img{max-width:100%;display:block}

    .container{
      width:min(calc(100% - 32px),var(--max));
      margin-inline:auto;
      padding-inline:0;
    }

    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:10px;
      color:var(--orange2);
      font-size:.8rem;
      font-weight:800;
      letter-spacing:.14em;
      text-transform:uppercase;
    }

    .eyebrow::before{
      content:"";
      width:28px;
      height:1px;
      background:linear-gradient(90deg,var(--orange),transparent);
    }

    .gradient{
      background:linear-gradient(90deg,var(--orange),var(--orange2),var(--amber));
      -webkit-background-clip:text;
      background-clip:text;
      color:transparent;
    }

    .muted{color:var(--muted)}

    .nav{
      position:fixed;
      z-index:1000;
      top:14px;
      left:50%;
      transform:translateX(-50%);
      width:min(calc(100% - 28px),1160px);
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding:13px 16px 13px 20px;
      border:1px solid rgba(255,255,255,.08);
      border-radius:18px;
      background:rgba(8,8,8,.72);
      backdrop-filter:blur(18px);
      box-shadow:0 16px 44px rgba(0,0,0,.28);
    }

    .brand{
      display:flex;
      align-items:center;
      gap:11px;
      font-weight:900;
      letter-spacing:-.04em;
      font-size:1.15rem;
    }

    .brand-logo{
      height:100px;
      width:auto;
      display:block;
    }

    .nav-links{
      display:flex;
      gap:24px;
      color:#d4d4d4;
      font-size:.9rem;
    }

    .nav-links a:hover{color:white}

    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:9px;
      min-height:52px;
      padding:0 24px;
      border:1px solid rgba(255,255,255,.11);
      border-radius:999px;
      font-weight:800;
      transition:.25s ease;
      cursor:pointer;
    }

    .lu-btn-icon{
      width:22px;
      height:22px;
      flex:0 0 auto;
      display:block;
    }

    .btn-primary{
      background:linear-gradient(90deg,#ea580c,var(--orange),var(--amber));
      color:#fff;
      box-shadow:0 14px 36px rgba(249,115,22,.24);
    }

    .btn-primary:hover{
      transform:translateY(-2px);
      box-shadow:0 18px 44px rgba(249,115,22,.36);
    }

    .btn-secondary{
      background:rgba(255,255,255,.035);
      color:#fff;
    }

    .btn-secondary:hover{
      border-color:rgba(249,115,22,.4);
      background:rgba(249,115,22,.06);
    }

    .hero{
      min-height:100svh;
      display:grid;
      align-items:center;
      padding:130px 0 72px;
      position:relative;
      isolation:isolate;
    }

    .hero::before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(180deg,rgba(5,5,5,.15),rgba(5,5,5,.92)),
        radial-gradient(circle at 72% 38%,rgba(249,115,22,.18),transparent 28%);
      z-index:-1;
    }

    .hero-grid{
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:68px;
      align-items:center;
    }

    h1{
      margin:22px 0 24px;
      max-width:820px;
      font-size:clamp(3rem,7vw,6.4rem);
      line-height:.94;
      letter-spacing:-.065em;
      text-wrap:balance;
    }

    .hero-copy{
      max-width:680px;
      color:#c4c4c4;
      font-size:clamp(1rem,1.5vw,1.25rem);
      line-height:1.75;
    }

    .hero-actions{
      display:flex;
      gap:14px;
      flex-wrap:wrap;
      margin-top:34px;
    }

    .mini-proof{
      display:flex;
      flex-wrap:wrap;
      gap:18px;
      margin-top:28px;
      color:#cfcfcf;
      font-size:.9rem;
    }

    .mini-proof span::before{
      content:"✓";
      color:var(--orange2);
      margin-right:8px;
      font-weight:900;
    }

    .hero-visual{
      position:relative;
      min-height:560px;
      border:1px solid var(--border);
      border-radius:32px;
      overflow:hidden;
      background:
        radial-gradient(circle at 65% 30%,rgba(249,115,22,.22),transparent 30%),
        linear-gradient(145deg,#0d0b09,#050505);
      box-shadow:0 40px 100px -50px rgba(249,115,22,.55);
    }

    .dashboard{
      position:absolute;
      inset:42px;
      border:1px solid rgba(255,255,255,.08);
      border-radius:24px;
      padding:28px;
      background:rgba(255,255,255,.025);
      backdrop-filter:blur(16px);
    }

    .dash-top{
      display:flex;
      justify-content:space-between;
      align-items:center;
      margin-bottom:30px;
    }

    .dash-title{
      font-weight:800;
    }

    .status{
      padding:8px 12px;
      border-radius:999px;
      color:#fed7aa;
      background:rgba(249,115,22,.1);
      border:1px solid rgba(249,115,22,.2);
      font-size:.75rem;
      font-weight:800;
    }

    .chart{
      height:220px;
      position:relative;
      border-radius:18px;
      overflow:hidden;
      background:
        linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
      background-size:40px 40px;
    }

    .chart svg{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
    }

    .dash-cards{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:12px;
      margin-top:18px;
    }

    .metric{
      padding:18px;
      border:1px solid rgba(255,255,255,.07);
      border-radius:16px;
      background:rgba(255,255,255,.025);
    }

    .metric strong{
      display:block;
      margin-top:8px;
      font-size:1.55rem;
    }

    .metric small{color:var(--muted)}

    section{
      padding:110px 0;
      position:relative;
    }

    .section-head{
      max-width:780px;
      margin-bottom:56px;
    }

    .section-head h2{
      margin:16px 0 18px;
      font-size:clamp(2.2rem,4.5vw,4.6rem);
      line-height:1;
      letter-spacing:-.055em;
      text-wrap:balance;
    }

    .section-head p{
      margin:0;
      color:var(--muted);
      line-height:1.75;
      font-size:1.05rem;
    }

    .problem-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:18px;
    }

    .card{
      padding:30px;
      min-height:260px;
      border:1px solid rgba(255,255,255,.075);
      border-radius:var(--radius);
      background:
        linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
      transition:.3s ease;
    }

    .card:hover{
      transform:translateY(-5px);
      border-color:rgba(249,115,22,.32);
      box-shadow:0 30px 70px -50px rgba(249,115,22,.65);
    }

    .card-number{
      color:var(--orange2);
      font-size:.8rem;
      font-weight:900;
      letter-spacing:.16em;
    }

    .card h3{
      margin:28px 0 14px;
      font-size:1.45rem;
      letter-spacing:-.03em;
    }

    .card p{
      color:var(--muted);
      line-height:1.7;
      margin:0;
    }

    .method{
      padding-bottom:30px;
    }

    .method-stage{
      position:relative;
      min-height:320vh;
    }

    .method-sticky{
      position:sticky;
      top:100px;
      min-height:calc(100vh - 120px);
      display:grid;
      grid-template-columns:.8fr 1.2fr;
      gap:56px;
      align-items:center;
    }

    .method-list{
      display:grid;
      gap:12px;
    }

    .method-item{
      padding:20px 22px;
      border:1px solid rgba(255,255,255,.065);
      border-radius:18px;
      color:#7d7d7d;
      transition:.35s ease;
      background:rgba(255,255,255,.015);
    }

    .method-item.active{
      color:#fff;
      border-color:rgba(249,115,22,.34);
      background:rgba(249,115,22,.075);
      transform:translateX(8px);
    }

    .method-item strong{
      display:block;
      margin-bottom:6px;
    }

    .method-panel{
      min-height:560px;
      border:1px solid var(--border);
      border-radius:32px;
      background:
        radial-gradient(circle at 74% 24%,rgba(249,115,22,.2),transparent 30%),
        linear-gradient(145deg,#0e0b09,#070707);
      position:relative;
      overflow:hidden;
      padding:54px;
    }

    .method-screen{
      position:absolute;
      inset:54px;
      opacity:0;
      transform:translateY(28px) scale(.98);
      transition:.55s ease;
      pointer-events:none;
    }

    .method-screen.active{
      opacity:1;
      transform:none;
    }

    .method-screen h3{
      margin:24px 0 18px;
      font-size:clamp(2rem,4vw,4rem);
      letter-spacing:-.05em;
      line-height:1;
    }

    .method-screen p{
      max-width:580px;
      color:#b5b5b5;
      font-size:1.05rem;
      line-height:1.8;
    }

    .pill-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:30px;
    }

    .pill{
      padding:10px 14px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.08);
      color:#d8d8d8;
      background:rgba(255,255,255,.025);
      font-size:.82rem;
    }

    .deliver-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:18px;
    }

    .deliver-card{
      min-height:360px;
      padding:34px;
      border:1px solid rgba(255,255,255,.075);
      border-radius:28px;
      background:linear-gradient(145deg,#0d0b09,#080808);
      position:relative;
      overflow:hidden;
    }

    .deliver-card.large{
      grid-column:span 2;
      min-height:440px;
    }

    .deliver-card::after{
      content:"";
      position:absolute;
      width:280px;
      height:280px;
      right:-100px;
      bottom:-120px;
      border-radius:50%;
      background:radial-gradient(circle,rgba(249,115,22,.2),transparent 70%);
    }

    .deliver-card h3{
      margin:24px 0 14px;
      font-size:2rem;
      letter-spacing:-.04em;
    }

    .deliver-card p{
      max-width:620px;
      color:var(--muted);
      line-height:1.75;
    }

    .mock-browser{
      margin-top:34px;
      border:1px solid rgba(255,255,255,.08);
      border-radius:20px;
      overflow:hidden;
      background:#080808;
    }

    .browser-top{
      display:flex;
      gap:7px;
      padding:13px;
      border-bottom:1px solid rgba(255,255,255,.07);
    }

    .dot{width:8px;height:8px;border-radius:50%;background:#3a3a3a}
    .browser-body{
      display:grid;
      grid-template-columns:.75fr 1.25fr;
      min-height:210px;
    }
    .browser-side{
      border-right:1px solid rgba(255,255,255,.06);
      padding:20px;
    }
    .browser-main{padding:20px}
    .skeleton{
      height:10px;
      border-radius:999px;
      background:rgba(255,255,255,.065);
      margin-bottom:12px;
    }
    .skeleton.orange{background:linear-gradient(90deg,var(--orange),var(--amber))}
    .w30{width:30%}.w50{width:50%}.w70{width:70%}.w90{width:90%}

    .case-grid{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:18px;
    }

    .case{
      min-height:430px;
      padding:34px;
      border:1px solid rgba(255,255,255,.075);
      border-radius:28px;
      background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.01));
    }

    .case-top{
      display:flex;
      justify-content:space-between;
      gap:20px;
      align-items:flex-start;
    }

    .case h3{
      margin:16px 0 10px;
      font-size:2rem;
      letter-spacing:-.04em;
    }

    .case-tag{
      color:var(--orange2);
      font-size:.8rem;
      font-weight:800;
      text-transform:uppercase;
      letter-spacing:.12em;
    }

    .case-flow{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:8px;
      margin-top:70px;
    }

    .flow-step{
      padding:18px 12px;
      border:1px solid rgba(255,255,255,.07);
      border-radius:16px;
      background:rgba(255,255,255,.02);
      color:#d6d6d6;
      text-align:center;
      font-size:.82rem;
    }

    .fail-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:18px;
    }

    .fail-box{
      padding:36px;
      border-radius:28px;
      border:1px solid rgba(255,255,255,.075);
      background:rgba(255,255,255,.018);
    }

    .fail-box.good{
      border-color:rgba(249,115,22,.24);
      background:linear-gradient(145deg,rgba(249,115,22,.08),rgba(255,255,255,.015));
    }

    .fail-box h3{
      font-size:1.8rem;
      letter-spacing:-.04em;
    }

    .check-list{
      display:grid;
      gap:14px;
      margin-top:26px;
    }

    .check{
      display:flex;
      gap:12px;
      color:#cfcfcf;
    }

    .check::before{
      flex:0 0 auto;
      font-weight:900;
    }

    .bad .check::before{content:"×";color:#777}
    .good .check::before{content:"✓";color:var(--orange2)}

    .timeline{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:14px;
    }

    .timeline-step{
      padding:28px;
      border-radius:24px;
      border:1px solid rgba(255,255,255,.07);
      background:rgba(255,255,255,.018);
      min-height:280px;
    }

    .timeline-step strong{
      color:var(--orange2);
      font-size:.82rem;
      letter-spacing:.15em;
    }

    .timeline-step h3{
      margin:26px 0 12px;
      font-size:1.35rem;
    }

    .timeline-step p{
      color:var(--muted);
      line-height:1.7;
      font-size:.94rem;
    }

    .calculator{
      display:grid;
      grid-template-columns:.9fr 1.1fr;
      gap:30px;
      align-items:center;
      padding:44px;
      border-radius:30px;
      border:1px solid var(--border);
      background:
        radial-gradient(circle at 78% 20%,rgba(249,115,22,.16),transparent 26%),
        linear-gradient(145deg,#0e0b09,#070707);
    }

    .range-wrap{
      padding:30px;
      border-radius:22px;
      border:1px solid rgba(255,255,255,.07);
      background:rgba(255,255,255,.02);
    }

    input[type=range]{
      width:100%;
      accent-color:var(--orange);
      min-height:44px;
      font-size:16px;
    }

    .calc-number{
      font-size:clamp(3rem,8vw,6rem);
      line-height:1;
      font-weight:900;
      letter-spacing:-.06em;
      margin:20px 0 10px;
    }

    .calc-result{
      margin-top:24px;
      padding:18px;
      border-radius:16px;
      color:#fed7aa;
      background:rgba(249,115,22,.09);
      border:1px solid rgba(249,115,22,.18);
      line-height:1.65;
    }

    .faq{
      max-width:900px;
      margin-inline:auto;
    }

    details{
      border-bottom:1px solid rgba(255,255,255,.08);
      padding:24px 0;
    }

    summary{
      cursor:pointer;
      list-style:none;
      display:flex;
      justify-content:space-between;
      gap:20px;
      align-items:center;
      min-height:52px;
      font-size:1.15rem;
      font-weight:800;
    }

    summary::after{
      content:"+";
      color:var(--orange2);
      font-size:1.5rem;
    }

    details[open] summary::after{content:"−"}

    details p{
      color:var(--muted);
      line-height:1.75;
      max-width:760px;
    }

    .cta{
      padding:70px;
      border-radius:34px;
      border:1px solid rgba(249,115,22,.24);
      background:
        radial-gradient(circle at 50% 0%,rgba(249,115,22,.2),transparent 34%),
        linear-gradient(145deg,#110b06,#080808);
      text-align:center;
    }

    .cta h2{
      max-width:900px;
      margin:18px auto 20px;
      font-size:clamp(2.3rem,5.5vw,5rem);
      line-height:.98;
      letter-spacing:-.06em;
    }

    .cta p{
      max-width:680px;
      margin:0 auto 30px;
      color:#b5b5b5;
      line-height:1.75;
    }

    footer{
      padding:42px 0 34px;
      border-top:1px solid rgba(255,255,255,.07);
      color:#777;
    }

    .footer-grid{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
      flex-wrap:wrap;
    }

    .reveal{
      opacity:0;
      transform:translateY(32px);
      transition:opacity .75s ease,transform .75s ease;
    }

    .reveal.visible{
      opacity:1;
      transform:none;
    }

    @media(max-width:900px){
      .nav-links{display:none}
      .hero-grid,
      .method-sticky,
      .calculator{
        grid-template-columns:1fr;
      }

      .hero-visual{min-height:500px}
      .problem-grid,
      .timeline{
        grid-template-columns:repeat(2,1fr);
      }

      .method-stage{min-height:auto}
      .method-sticky{
        position:relative;
        top:auto;
        min-height:auto;
      }
      .method-screen{
        position:relative;
        inset:auto;
        display:none;
      }
      .method-screen.active{display:block}
      .method-panel{min-height:520px}
      .deliver-grid,
      .case-grid,
      .fail-grid{grid-template-columns:1fr}
      .deliver-card.large{grid-column:auto}
    }

    @media(max-width:640px){
      .nav .btn{display:none}
      .hero{padding-top:120px}
      h1{font-size:3.6rem}
      .hero-actions{flex-direction:column}
      .hero-actions .btn{width:100%}
      .hero-visual{min-height:430px}
      .dashboard{inset:20px;padding:18px}
      .dash-cards{grid-template-columns:1fr}
      .chart{height:150px}
      section{padding:82px 0}
      .problem-grid,
      .timeline{grid-template-columns:1fr}
      .method-panel{padding:26px;min-height:500px}
      .method-screen{padding:0}
      .case-flow{grid-template-columns:repeat(2,1fr)}
      .calculator{padding:24px}
      .cta{padding:42px 22px}
    }

.lu-pro-footer {
    position: relative;
    overflow: hidden;
    padding: 0;
    border-top: 1px solid rgba(255,255,255,.075);
    background:
      radial-gradient(760px circle at 11% 4%, rgba(249,115,22,.07), transparent 58%),
      radial-gradient(650px circle at 94% 5%, rgba(249,115,22,.035), transparent 62%),
      #070707;
  }

  .lu-pro-footer::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .24;
    background-image:
      radial-gradient(circle, rgba(255,255,255,.26) 0 1px, transparent 1.3px);
    background-size: 85px 85px;
    mask-image: linear-gradient(to bottom, #000, transparent 92%);
  }

  .lu-pro-footer-inner {
    position: relative;
    z-index: 1;
    width: min(calc(100% - 40px), 1230px);
    margin-inline: auto;
    padding: 68px 0 24px;
  }

  .lu-pro-footer-grid {
    display: grid;
    grid-template-columns: 1.35fr .72fr 1fr 1.05fr;
    gap: clamp(38px, 5vw, 78px);
    align-items: start;
    justify-content: space-between;
  }

  .lu-pro-footer-grid > div {
    min-width: 0;
  }

  .lu-pro-brand {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    color: #fff;
  }

  .lu-pro-brand-logo {
    height: 68px;
    width: auto;
    display: block;
  }

  .lu-pro-description {
    max-width: 370px;
    margin: 24px 0 0;
    color: #7d7d82;
    font-size: 14px;
    line-height: 2;
  }

  .lu-pro-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 25px;
    max-width: 100%;
  }

  .lu-pro-badge {
    max-width: 100%;
    flex-shrink: 0;
  }

  .lu-pro-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 7px 13px;
    border: 1px solid rgba(249,115,22,.34);
    border-radius: 999px;
    color: #fb923c;
    background: rgba(249,115,22,.035);
    font-size: 11px;
    font-weight: 700;
  }

  .lu-pro-badge svg {
    width: 14px;
    height: 14px;
    flex: 0 0 auto;
  }

  .lu-pro-footer-title {
    position: relative;
    margin: 0 0 27px;
    padding-bottom: 16px;
    color: #6f6f73;
    font-size: 12px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .115em;
    text-transform: uppercase;
  }

  .lu-pro-footer-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 24px;
    height: 2px;
    border-radius: 99px;
    background: #f97316;
    box-shadow: 0 0 12px rgba(249,115,22,.35);
  }

  .lu-pro-links {
    display: grid;
    gap: 17px;
  }

  .lu-pro-links a {
    width: max-content;
    max-width: 100%;
    color: #858589;
    font-size: 14px;
    font-weight: 700;
    transition: color .22s ease, transform .22s ease;
  }

  .lu-pro-links a:hover {
    color: #fff;
    transform: translateX(4px);
  }

  .lu-pro-contact-list {
    display: grid;
    gap: 20px;
  }

  .lu-pro-contact-item {
    display: grid;
    grid-template-columns: 37px 1fr;
    gap: 12px;
    align-items: start;
  }

  .lu-pro-contact-icon {
    width: 37px;
    height: 37px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 11px;
    color: #f97316;
    background: rgba(255,255,255,.025);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
  }

  .lu-pro-contact-icon svg {
    width: 18px;
    height: 18px;
  }

  .lu-pro-contact-item strong {
    display: block;
    margin: 1px 0 4px;
    color: #c9c9cb;
    font-size: 14px;
    font-weight: 800;
  }

  .lu-pro-contact-item p {
    margin: 0;
    color: #77777c;
    font-size: 12px;
    line-height: 1.7;
  }

  .lu-pro-consult-card {
    padding: 20px;
    border: 1px solid rgba(249,115,22,.30);
    border-radius: 17px;
    background:
      radial-gradient(circle at 92% 0%, rgba(249,115,22,.08), transparent 40%),
      rgba(249,115,22,.045);
    box-shadow:
      0 22px 55px -38px rgba(249,115,22,.35),
      inset 0 1px 0 rgba(255,255,255,.025);
  }

  .lu-pro-consult-heading {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #fb923c;
    font-size: 14px;
    font-weight: 800;
  }

  .lu-pro-consult-heading svg {
    width: 16px;
    height: 16px;
  }

  .lu-pro-consult-card p {
    margin: 15px 0 20px;
    color: #77777c;
    font-size: 12px;
    line-height: 2;
  }

  .lu-pro-consult-button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 43px;
    padding: 0 18px;
    border: 1px solid rgba(249,115,22,.38);
    border-radius: 11px;
    color: #fdba74;
    background: rgba(249,115,22,.07);
    font-size: 12px;
    font-weight: 800;
    transition: background .22s ease, border-color .22s ease, transform .22s ease;
  }

  .lu-pro-consult-button:hover {
    transform: translateY(-2px);
    border-color: rgba(249,115,22,.65);
    background: rgba(249,115,22,.13);
  }

  .lu-pro-consult-button-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
  }

  .lu-pro-consult-button svg {
    width: 15px;
    height: 15px;
  }

  .lu-pro-footer-bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin-top: 58px;
    padding-top: 32px;
    border-top: 1px solid rgba(255,255,255,.075);
    color: #6f6f74;
    font-size: 11.5px;
    text-align: center;
  }

  .lu-pro-foot-copy {
    color: #6f6f74;
    letter-spacing: .02em;
  }

  /* =========================================================
     JPC LAB — bloco de destaque centralizado
     ========================================================= */
  .lu-pro-jpc-card {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 14px 22px 16px;
    margin: 4px auto;
    border: 1px solid rgba(249,115,22,.34);
    border-radius: 16px;
    background:
      radial-gradient(circle at 50% 0%, rgba(249,115,22,.14), transparent 70%),
      linear-gradient(180deg, rgba(249,115,22,.06), rgba(249,115,22,.02));
    box-shadow:
      0 22px 55px -34px rgba(249,115,22,.55),
      inset 0 1px 0 rgba(255,255,255,.04);
    overflow: hidden;
    isolation: isolate;
    transition:
      transform .28s ease,
      border-color .28s ease,
      box-shadow .28s ease;
  }

  .lu-pro-jpc-card:hover {
    transform: translateY(-3px);
    border-color: rgba(249,115,22,.55);
    box-shadow:
      0 28px 70px -32px rgba(249,115,22,.7),
      inset 0 1px 0 rgba(255,255,255,.06);
  }

  /* Glow que segue o cursor dentro do card */
  .lu-pro-jpc-card-glow {
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: radial-gradient(
      circle at var(--mx, 50%) var(--my, 50%),
      rgba(249,115,22,.22),
      transparent 38%
    );
    opacity: .85;
    transition: opacity .28s ease;
  }

  .lu-pro-jpc-label {
    color: #8b8b90;
    font-size: 10px;
    line-height: 1;
    letter-spacing: .22em;
    text-transform: uppercase;
    font-weight: 700;
  }

  .lu-pro-jpc-brand {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    line-height: 1;
  }

  .lu-pro-jpc-mark {
    display: grid;
    place-items: center;
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    color: #fb923c;
    filter: drop-shadow(0 0 10px rgba(249,115,22,.55));
    animation: luJpcSpin 9s linear infinite;
  }

  @keyframes luJpcSpin {
    to { transform: rotate(360deg); }
  }

  .lu-pro-jpc-mark svg {
    width: 22px;
    height: 22px;
  }

  .lu-pro-jpc-name {
    font-size: 18px;
    font-weight: 900;
    letter-spacing: -.04em;
    background: linear-gradient(90deg, #f97316, #fb923c, #f59e0b);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    text-shadow: 0 0 24px rgba(249,115,22,.18);
  }

  .lu-pro-jpc-arrow {
    width: 14px;
    height: 14px;
    color: #fb923c;
    transition: transform .28s ease;
  }

  .lu-pro-jpc-card:hover .lu-pro-jpc-arrow {
    transform: translate(2px, -2px);
  }

  /* Segurança */
  .lu-pro-security {
    display: flex;
    justify-content: center;
    gap: 10px;
  }

  .lu-pro-security span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 13px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 999px;
    background: rgba(255,255,255,.018);
    color: #8a8a8f;
  }

  @media (max-width: 980px) {
    .lu-pro-footer-grid {
      grid-template-columns: 1.3fr 1fr;
      justify-items: center;
      text-align: center;
    }

    .lu-pro-footer-grid > div:first-child {
      grid-column: 1 / -1;
      justify-self: center;
      text-align: center;
    }
  }

  @media (max-width: 640px) {
    .lu-pro-footer-inner {
      width: min(calc(100% - 32px), 1230px);
      padding-top: 48px;
      padding-bottom: 26px;
    }

    .lu-pro-footer-grid {
      grid-template-columns: 1fr;
      gap: 38px;
      text-align: center;
    }

    .lu-pro-brand {
      justify-content: center;
    }

    .lu-pro-description {
      max-width: 100%;
      margin-inline: auto;
      line-height: 1.8;
    }

    .lu-pro-badges {
      justify-content: center;
    }

    .lu-pro-footer-title {
      text-align: center;
    }

    .lu-pro-footer-title::after {
      left: 50%;
      transform: translateX(-50%);
    }

    .lu-pro-links {
      justify-items: center;
    }

    .lu-pro-links a {
      width: auto;
      max-width: 100%;
    }

    .lu-pro-contact-list {
      width: 100%;
      max-width: 290px;
      margin-inline: auto;
    }

    .lu-pro-contact-item {
      width: 100%;
      text-align: left;
    }

    .lu-pro-consult-card p {
      text-align: left;
    }

    .lu-pro-footer-bottom {
      gap: 16px;
      margin-top: 42px;
      padding-top: 26px;
    }

    .lu-pro-jpc-card {
      width: min(100%, 280px);
      padding: 12px 18px 14px;
    }

    .lu-pro-jpc-name {
      font-size: 16px;
    }

    .lu-pro-security {
      justify-content: center;
      flex-wrap: wrap;
    }
  }

/* ===== Fundo imersivo em camadas ===== */
  body {
    position: relative;
    isolation: isolate;
  }

  #lu-particles {
    position: fixed;
    inset: 0;
    z-index: -5;
    width: 100%;
    height: 100%;
    pointer-events: none;
    opacity: .78;
  }

  .lu-ambient-layer {
    position: fixed;
    inset: 0;
    z-index: -6;
    pointer-events: none;
    overflow: hidden;
  }

  .lu-ambient-orb {
    position: absolute;
    border-radius: 999px;
    filter: blur(90px);
    opacity: .14;
    will-change: transform;
  }

  .lu-ambient-orb.one {
    width: 520px;
    height: 520px;
    left: -160px;
    top: 8%;
    background: rgba(249,115,22,.58);
    animation: luAmbientOne 28s ease-in-out infinite alternate;
  }

  .lu-ambient-orb.two {
    width: 420px;
    height: 420px;
    right: -120px;
    top: 42%;
    background: rgba(245,158,11,.44);
    animation: luAmbientTwo 34s ease-in-out infinite alternate;
  }

  .lu-ambient-orb.three {
    width: 360px;
    height: 360px;
    left: 36%;
    bottom: -120px;
    background: rgba(234,88,12,.36);
    animation: luAmbientThree 31s ease-in-out infinite alternate;
  }

  @keyframes luAmbientOne {
    from { transform: translate3d(0,0,0) scale(1); }
    to { transform: translate3d(90px,70px,0) scale(1.12); }
  }

  @keyframes luAmbientTwo {
    from { transform: translate3d(0,0,0) scale(1); }
    to { transform: translate3d(-100px,-55px,0) scale(1.08); }
  }

  @keyframes luAmbientThree {
    from { transform: translate3d(0,0,0) scale(1); }
    to { transform: translate3d(70px,-85px,0) scale(1.14); }
  }

  .lu-cursor-glow {
    position: fixed;
    z-index: 3;
    width: 320px;
    height: 320px;
    left: 0;
    top: 0;
    border-radius: 50%;
    pointer-events: none;
    opacity: 0;
    transform: translate3d(-50%,-50%,0);
    background:
      radial-gradient(circle, rgba(249,115,22,.20) 0%, rgba(249,115,22,.07) 34%, transparent 70%);
    filter: blur(12px);
    mix-blend-mode: screen;
    transition: opacity .25s ease;
  }

  body:hover .lu-cursor-glow {
    opacity: .52;
  }

  /* ===== Grid sutil de profundidade ===== */
  main::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -4;
    pointer-events: none;
    opacity: .16;
    background-image:
      linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
    background-size: 48px 48px;
    mask-image: linear-gradient(to bottom, transparent 0%, black 13%, black 88%, transparent 100%);
    animation: luGridDrift 36s linear infinite;
  }

  @keyframes luGridDrift {
    to { background-position: 48px 48px; }
  }

  /* ===== Microinterações premium ===== */
  .card,
  .deliver-card,
  .case,
  .fail-box,
  .timeline-step,
  .method-panel,
  .range-wrap,
  .cta,
  .lu-pro-consult-card {
    position: relative;
    overflow: hidden;
  }

  .card::before,
  .deliver-card::before,
  .case::before,
  .fail-box::before,
  .timeline-step::before,
  .method-panel::before,
  .range-wrap::before,
  .cta::before,
  .lu-pro-consult-card::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0;
    background:
      radial-gradient(circle at var(--mx,50%) var(--my,50%), rgba(249,115,22,.14), transparent 32%);
    transition: opacity .32s ease;
  }

  .card:hover::before,
  .deliver-card:hover::before,
  .case:hover::before,
  .fail-box:hover::before,
  .timeline-step:hover::before,
  .method-panel:hover::before,
  .range-wrap:hover::before,
  .cta:hover::before,
  .lu-pro-consult-card:hover::before {
    opacity: 1;
  }

  .card,
  .deliver-card,
  .case,
  .fail-box,
  .timeline-step,
  .range-wrap {
    transition:
      transform .28s cubic-bezier(.2,.75,.2,1),
      border-color .28s ease,
      box-shadow .28s ease,
      background .28s ease;
  }

  .card:hover,
  .deliver-card:hover,
  .case:hover,
  .fail-box:hover,
  .timeline-step:hover,
  .range-wrap:hover {
    transform: translateY(-5px);
    border-color: rgba(249,115,22,.30);
    box-shadow:
      0 28px 75px -48px rgba(249,115,22,.58),
      inset 0 1px 0 rgba(255,255,255,.035);
  }

  .card h3,
  .deliver-card h3,
  .case h3,
  .timeline-step h3 {
    transition: transform .28s ease, color .28s ease;
  }

  .card:hover h3,
  .deliver-card:hover h3,
  .case:hover h3,
  .timeline-step:hover h3 {
    transform: translateY(-2px);
    color: #fff;
  }

  .card-number,
  .case-tag,
  .timeline-step strong {
    transition: text-shadow .28s ease, color .28s ease;
  }

  .card:hover .card-number,
  .case:hover .case-tag,
  .timeline-step:hover strong {
    color: #fb923c;
    text-shadow: 0 0 20px rgba(249,115,22,.35);
  }

  /* ===== Brilho nos botões ===== */
  .btn,
  .lu-pro-consult-button {
    position: relative;
    overflow: hidden;
    isolation: isolate;
  }

  .btn::after,
  .lu-pro-consult-button::after {
    content: "";
    position: absolute;
    top: -40%;
    bottom: -40%;
    left: -45%;
    width: 28%;
    z-index: -1;
    transform: skewX(-18deg);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent);
    transition: left .72s cubic-bezier(.2,.75,.2,1);
  }

  .btn:hover::after,
  .lu-pro-consult-button:hover::after {
    left: 125%;
  }

  /* ===== Seções com glow ambiente suave ===== */
  section::after {
    content: "";
    position: absolute;
    z-index: -2;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(100px);
    opacity: .055;
    background: #f97316;
  }

  section:nth-of-type(odd)::after {
    left: -220px;
    top: 30%;
  }

  section:nth-of-type(even)::after {
    right: -220px;
    top: 42%;
  }

  /* ===== Rodapé mais vivo, sem exagero ===== */
  .lu-pro-footer::after {
    content: "";
    position: absolute;
    inset: auto 10% 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(249,115,22,.3), transparent);
    box-shadow: 0 0 20px rgba(249,115,22,.18);
  }

  @media (max-width: 900px) {
    .lu-cursor-glow { display: none; }
    #lu-particles { opacity: .5; }
    .lu-ambient-orb { opacity: .09; filter: blur(110px); }
    main::before { opacity: .09; animation: none; }

    .card:hover,
    .deliver-card:hover,
    .case:hover,
    .fail-box:hover,
    .timeline-step:hover,
    .range-wrap:hover {
      transform: none;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #lu-particles,
    .lu-cursor-glow {
      display: none !important;
    }

    .lu-ambient-orb,
    main::before {
      animation: none !important;
    }
  }

/* Dashboard mais robusto */
  .hero-visual {
    min-height: 610px;
    border-radius: 36px;
    border-color: rgba(249,115,22,.26);
    background:
      radial-gradient(circle at 72% 24%, rgba(249,115,22,.20), transparent 34%),
      radial-gradient(circle at 8% 92%, rgba(245,158,11,.10), transparent 31%),
      linear-gradient(145deg,#120b06 0%,#080706 46%,#050505 100%);
    box-shadow:
      0 42px 110px -52px rgba(249,115,22,.64),
      inset 0 1px 0 rgba(255,255,255,.035);
  }

  .dashboard {
    inset: 38px;
    padding: 30px;
    border-radius: 26px;
    border-color: rgba(255,255,255,.095);
    background:
      linear-gradient(180deg,rgba(17,15,13,.94),rgba(7,7,7,.96));
    box-shadow:
      0 28px 70px -45px rgba(0,0,0,.95),
      inset 0 1px 0 rgba(255,255,255,.035);
  }

  .dash-top {
    margin-bottom: 24px;
  }

  .dash-top small {
    font-size: .78rem;
    font-weight: 600;
    letter-spacing: -.01em;
  }

  .dash-title {
    margin-top: 3px;
    font-size: 1.08rem;
    font-weight: 800;
  }

  .status {
    padding: 9px 14px;
    font-size: .72rem;
    letter-spacing: -.01em;
    background: linear-gradient(180deg,rgba(249,115,22,.17),rgba(249,115,22,.08));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
  }

  .chart {
    height: 248px;
    border: 1px solid rgba(255,255,255,.035);
    background:
      linear-gradient(rgba(255,255,255,.038) 1px,transparent 1px),
      linear-gradient(90deg,rgba(255,255,255,.038) 1px,transparent 1px),
      linear-gradient(180deg,rgba(249,115,22,.018),transparent);
    background-size: 46px 46px,46px 46px,100% 100%;
  }

  .chart svg {
    overflow: visible;
  }

  .chart path[stroke] {
    filter: drop-shadow(0 0 7px rgba(249,115,22,.38));
  }

  .dash-cards {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 12px;
    margin-top: 18px;
  }

  .metric {
    min-width: 0;
    min-height: 104px;
    padding: 17px 16px;
    overflow: hidden;
    border-color: rgba(255,255,255,.075);
    background:
      linear-gradient(180deg,rgba(255,255,255,.032),rgba(255,255,255,.018));
  }

  .metric small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: clamp(.68rem,.8vw,.78rem);
    font-weight: 600;
  }

  .metric strong {
    display: block;
    width: 100%;
    margin-top: 11px;
    color: #fff;
    font-size: clamp(1.1rem,1.75vw,1.48rem);
    line-height: 1.08;
    font-weight: 800;
    white-space: normal;
    overflow-wrap: normal;
    word-break: keep-all;
  }

  @media (max-width: 1080px) and (min-width: 901px) {
    .metric {
      padding-inline: 13px;
    }
    .metric strong {
      font-size: 1.18rem;
    }
  }

  @media (max-width: 640px) {
    .hero-visual {
      min-height: 590px;
    }

    .dashboard {
      inset: 18px;
      padding: 20px;
    }

    .chart {
      height: 210px;
    }

    .dash-cards {
      grid-template-columns: 1fr;
    }

    .metric {
      min-height: 86px;
    }

    .metric strong {
      font-size: 1.35rem;
    }
  }

.lu-wa-inline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 34px;
    padding: 20px 22px;
    border: 1px solid rgba(249,115,22,.20);
    border-radius: 20px;
    background:
      radial-gradient(circle at 92% 0%, rgba(249,115,22,.11), transparent 34%),
      rgba(255,255,255,.022);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
  }

  .lu-wa-inline-copy {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
  }

  .lu-wa-inline-icon {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(249,115,22,.30);
    border-radius: 13px;
    color: #fb923c;
    background: rgba(249,115,22,.075);
  }

  .lu-wa-inline-icon svg {
    width: 19px;
    height: 19px;
  }

  .lu-wa-inline strong {
    display: block;
    margin-bottom: 4px;
    color: #fff;
    font-size: .94rem;
  }

  .lu-wa-inline p {
    margin: 0;
    color: #909096;
    font-size: .8rem;
    line-height: 1.55;
  }

  .lu-wa-inline .btn {
    flex: 0 0 auto;
    min-height: 46px;
    padding-inline: 19px;
    font-size: .82rem;
  }

  @media (max-width: 700px) {
    .lu-wa-inline {
      align-items: stretch;
      flex-direction: column;
      padding: 18px;
    }

    .lu-wa-inline .btn {
      width: 100%;
    }
  }

/* Enquadramento definitivo dos indicadores */
  .dash-cards {
    width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .metric {
    min-width: 0 !important;
    width: 100%;
    padding: 16px 11px !important;
    text-align: center;
  }

  .metric small {
    width: 100%;
    font-size: clamp(.62rem, .92vw, .72rem) !important;
    letter-spacing: -.02em;
  }

  .metric strong {
    width: 100%;
    max-width: 100%;
    margin-top: 10px !important;
    font-size: clamp(.96rem, 1.42vw, 1.26rem) !important;
    line-height: 1 !important;
    letter-spacing: -.055em;
    white-space: nowrap !important;
    overflow: visible !important;
    text-align: center;
  }

  /* Gráfico animado */
  .chart {
    position: relative;
    overflow: hidden;
  }

  .lu-chart-area {
    opacity: 0;
    transition: opacity 1s ease .45s;
  }

  .lu-chart-line {
    fill: none;
    stroke-dasharray: 1200;
    stroke-dashoffset: 1200;
    filter: drop-shadow(0 0 8px rgba(249,115,22,.5));
  }

  .chart.is-animated .lu-chart-line {
    animation: luDrawAcquisition 2.4s cubic-bezier(.2,.78,.2,1) forwards;
  }

  .chart.is-animated .lu-chart-area {
    opacity: 1;
  }

  @keyframes luDrawAcquisition {
    to { stroke-dashoffset: 0; }
  }

  .lu-chart-point {
    position: absolute;
    z-index: 3;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #fb923c;
    border: 2px solid rgba(255,255,255,.9);
    box-shadow:
      0 0 0 5px rgba(249,115,22,.11),
      0 0 18px rgba(249,115,22,.8);
    opacity: 0;
    transform: translate(-50%, -50%) scale(.2);
  }

  .lu-chart-value {
    position: absolute;
    z-index: 4;
    transform: translate(-50%, calc(-100% - 13px));
    padding: 5px 8px;
    border: 1px solid rgba(249,115,22,.28);
    border-radius: 999px;
    color: #fed7aa;
    background: rgba(15,10,7,.88);
    backdrop-filter: blur(9px);
    box-shadow: 0 8px 25px rgba(0,0,0,.3);
    font-size: .62rem;
    line-height: 1;
    font-weight: 800;
    letter-spacing: -.02em;
    opacity: 0;
    white-space: nowrap;
  }

  .chart.is-animated .lu-chart-point,
  .chart.is-animated .lu-chart-value {
    animation: luChartPointIn .46s cubic-bezier(.2,.8,.2,1) forwards;
  }

  .chart.is-animated .lu-p1,
  .chart.is-animated .lu-v1 { animation-delay: .42s; }
  .chart.is-animated .lu-p2,
  .chart.is-animated .lu-v2 { animation-delay: .86s; }
  .chart.is-animated .lu-p3,
  .chart.is-animated .lu-v3 { animation-delay: 1.30s; }
  .chart.is-animated .lu-p4,
  .chart.is-animated .lu-v4 { animation-delay: 1.76s; }
  .chart.is-animated .lu-p5,
  .chart.is-animated .lu-v5 { animation-delay: 2.16s; }

  @keyframes luChartPointIn {
    to {
      opacity: 1;
      transform: translate(-50%, -50%) scale(1);
    }
  }

  .chart.is-animated .lu-chart-value {
    animation-name: luChartValueIn;
  }

  @keyframes luChartValueIn {
    from {
      opacity: 0;
      transform: translate(-50%, calc(-100% - 5px)) scale(.9);
    }
    to {
      opacity: 1;
      transform: translate(-50%, calc(-100% - 13px)) scale(1);
    }
  }

  @media (max-width: 1080px) and (min-width: 901px) {
    .metric strong {
      font-size: 1rem !important;
    }
  }

  @media (max-width: 640px) {
    .dash-cards {
      grid-template-columns: 1fr !important;
    }

    .metric strong {
      font-size: 1.32rem !important;
    }

    .lu-chart-value {
      font-size: .58rem;
      padding: 4px 6px;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .lu-chart-line {
      stroke-dashoffset: 0 !important;
    }

    .lu-chart-area,
    .lu-chart-point,
    .lu-chart-value {
      opacity: 1 !important;
      animation: none !important;
    }

    .lu-chart-point {
      transform: translate(-50%, -50%) scale(1) !important;
    }

    .lu-chart-value {
      transform: translate(-50%, calc(-100% - 13px)) scale(1) !important;
    }
  }

.lu-p5 {
    animation:
      luChartPointIn .46s cubic-bezier(.2,.8,.2,1) 2.16s forwards,
      luLastPointPulse 2.4s ease-out 2.7s infinite !important;
  }

  @keyframes luLastPointPulse {
    0% {
      box-shadow:
        0 0 0 5px rgba(249,115,22,.11),
        0 0 18px rgba(249,115,22,.8);
    }
    70% {
      box-shadow:
        0 0 0 12px rgba(249,115,22,0),
        0 0 25px rgba(249,115,22,.95);
    }
    100% {
      box-shadow:
        0 0 0 5px rgba(249,115,22,.11),
        0 0 18px rgba(249,115,22,.8);
    }
  }

  .lu-v5 {
    transform: translate(-60%, calc(-100% - 12px)) !important;
  }

  .chart.is-animated .lu-v5 {
    animation-name: luLastValueIn !important;
  }

  @keyframes luLastValueIn {
    from {
      opacity: 0;
      transform: translate(-60%, calc(-100% - 5px)) scale(.9);
    }
    to {
      opacity: 1;
      transform: translate(-60%, calc(-100% - 12px)) scale(1);
    }
  }

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

    .lu-v5 {
      transform: translate(-60%, calc(-100% - 12px)) scale(1) !important;
    }
  }

#entregamos {
    position: relative;
    overflow: hidden;
  }

  #entregamos::before {
    content: "";
    position: absolute;
    inset: 10% -15% auto;
    height: 520px;
    pointer-events: none;
    background:
      radial-gradient(circle at 50% 50%, rgba(249,115,22,.09), transparent 58%);
    filter: blur(30px);
  }

  #entregamos .section-head {
    max-width: 900px;
  }

  .deliver-grid {
    gap: 18px !important;
  }

  .deliver-card {
    border-color: rgba(255,255,255,.085) !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,.024), rgba(255,255,255,.012)),
      #090807 !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.025),
      0 30px 80px -62px rgba(249,115,22,.5);
  }

  .deliver-card.large {
    min-height: 590px !important;
    padding: 38px !important;
    border-color: rgba(249,115,22,.24) !important;
    background:
      radial-gradient(circle at 88% 16%, rgba(249,115,22,.12), transparent 28%),
      linear-gradient(145deg, #0e0b09, #080808) !important;
  }

  .lu-deliver-topline {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
  }

  .lu-deliver-topline-copy {
    max-width: 700px;
  }

  .lu-deliver-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    color: #fb923c;
    font-size: .76rem;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
  }

  .lu-deliver-kicker::before {
    content: "";
    width: 28px;
    height: 1px;
    background: linear-gradient(90deg,#f97316,transparent);
  }

  .lu-deliver-topline h3 {
    max-width: 760px;
    margin: 0 0 15px !important;
    font-size: clamp(2rem, 3.2vw, 3.35rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.055em !important;
  }

  .lu-deliver-topline p {
    max-width: 720px;
    margin: 0 !important;
    font-size: .98rem;
    line-height: 1.75;
  }

  .lu-deliver-status {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 36px;
    padding: 0 13px;
    border: 1px solid rgba(249,115,22,.25);
    border-radius: 999px;
    color: #fed7aa;
    background: rgba(249,115,22,.07);
    font-size: .7rem;
    font-weight: 800;
  }

  .lu-deliver-status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #f97316;
    box-shadow: 0 0 0 0 rgba(249,115,22,.4);
    animation: luDeliverPulse 2s ease-out infinite;
  }

  @keyframes luDeliverPulse {
    70% { box-shadow: 0 0 0 9px rgba(249,115,22,0); }
    100% { box-shadow: 0 0 0 0 rgba(249,115,22,0); }
  }

  .lu-funnel-board {
    position: relative;
    margin-top: 34px;
    padding: 24px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 24px;
    overflow: hidden;
    background:
      linear-gradient(rgba(255,255,255,.024) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.024) 1px, transparent 1px),
      rgba(4,4,4,.72);
    background-size: 38px 38px;
  }

  .lu-funnel-board::after {
    content: "";
    position: absolute;
    right: -80px;
    bottom: -120px;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    pointer-events: none;
    background: radial-gradient(circle, rgba(249,115,22,.18), transparent 68%);
  }

  .lu-funnel-track {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(5, minmax(0,1fr));
    gap: 10px;
    align-items: stretch;
  }

  .lu-funnel-track::before {
    content: "";
    position: absolute;
    left: 9%;
    right: 9%;
    top: 31px;
    height: 2px;
    z-index: -1;
    background: linear-gradient(90deg,rgba(249,115,22,.2),#f97316,#fb923c,#f59e0b);
    box-shadow: 0 0 18px rgba(249,115,22,.34);
    transform-origin: left;
    animation: luDeliverLine 2.1s cubic-bezier(.2,.75,.2,1) both;
  }

  @keyframes luDeliverLine {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
  }

  .lu-funnel-step {
    min-width: 0;
    padding: 0 8px 16px;
    text-align: center;
  }

  .lu-funnel-node {
    width: 62px;
    height: 62px;
    margin: 0 auto 16px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(249,115,22,.28);
    border-radius: 19px;
    color: #fb923c;
    background:
      linear-gradient(180deg,rgba(249,115,22,.12),rgba(249,115,22,.035)),
      #0b0908;
    box-shadow:
      0 0 0 7px rgba(7,7,7,.88),
      0 0 26px rgba(249,115,22,.08);
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
  }

  .lu-funnel-step:hover .lu-funnel-node {
    transform: translateY(-4px);
    border-color: rgba(249,115,22,.52);
    box-shadow:
      0 0 0 7px rgba(7,7,7,.88),
      0 0 30px rgba(249,115,22,.22);
  }

  .lu-funnel-node svg {
    width: 23px;
    height: 23px;
  }

  .lu-funnel-step strong {
    display: block;
    margin-bottom: 6px;
    color: #f4f4f5;
    font-size: .82rem;
  }

  .lu-funnel-step small {
    display: block;
    color: #77777d;
    font-size: .66rem;
    line-height: 1.45;
  }

  .lu-deliver-metrics {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 12px;
    margin-top: 22px;
  }

  .lu-deliver-metric {
    padding: 16px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
    background: rgba(255,255,255,.02);
  }

  .lu-deliver-metric span {
    display: block;
    margin-bottom: 8px;
    color: #7f7f84;
    font-size: .67rem;
    text-transform: uppercase;
    letter-spacing: .11em;
    font-weight: 800;
  }

  .lu-deliver-metric strong {
    color: #fff;
    font-size: 1rem;
    letter-spacing: -.03em;
  }

  .lu-service-card {
    min-height: 335px !important;
    padding: 30px !important;
  }

  .lu-service-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    margin-bottom: 28px;
    border: 1px solid rgba(249,115,22,.24);
    border-radius: 16px;
    color: #fb923c;
    background: rgba(249,115,22,.065);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
  }

  .lu-service-icon svg {
    width: 22px;
    height: 22px;
  }

  .lu-service-card h3 {
    margin: 0 0 13px !important;
    font-size: clamp(1.55rem,2vw,2rem) !important;
    line-height: 1.1 !important;
  }

  .lu-service-card p {
    line-height: 1.75 !important;
  }

  .lu-service-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 28px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,.065);
    color: #77777d;
    font-size: .72rem;
  }

  .lu-service-footer strong {
    color: #fb923c;
    font-size: .75rem;
  }

  @media (max-width: 900px) {
    .lu-funnel-track {
      grid-template-columns: 1fr;
      gap: 12px;
    }

    .lu-funnel-track::before {
      left: 31px;
      right: auto;
      top: 9%;
      bottom: 9%;
      width: 2px;
      height: auto;
      transform-origin: top;
      animation-name: luDeliverLineVertical;
    }

    @keyframes luDeliverLineVertical {
      from { transform: scaleY(0); }
      to { transform: scaleY(1); }
    }

    .lu-funnel-step {
      display: grid;
      grid-template-columns: 62px 1fr;
      gap: 16px;
      align-items: center;
      text-align: left;
      padding: 0;
    }

    .lu-funnel-node {
      margin: 0;
    }

    .lu-deliver-metrics {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 640px) {
    .deliver-card.large {
      padding: 24px !important;
    }

    .lu-deliver-topline {
      flex-direction: column;
    }

    .lu-funnel-board {
      padding: 18px;
    }
  }

.lu-segmentation {
    position: relative;
    overflow: hidden;
    padding: 110px 0;
    border-block: 1px solid rgba(255,255,255,.055);
    background:
      radial-gradient(circle at 78% 44%, rgba(249,115,22,.10), transparent 30%),
      radial-gradient(circle at 20% 18%, rgba(245,158,11,.045), transparent 26%),
      linear-gradient(180deg, rgba(7,7,7,.72), rgba(5,5,5,.94));
  }

  .lu-segmentation::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .20;
    background-image:
      linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
      linear-gradient(90deg,rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 46px 46px;
    mask-image: linear-gradient(to bottom, transparent, black 18%, black 85%, transparent);
  }

  .lu-segmentation-wrap {
    position: relative;
    z-index: 1;
  }

  .lu-segmentation-head {
    max-width: 880px;
    margin-bottom: 58px;
  }

  .lu-segmentation-head h2 {
    margin: 16px 0 18px;
    font-size: clamp(2.3rem, 4.8vw, 5rem);
    line-height: .98;
    letter-spacing: -.058em;
    text-wrap: balance;
  }

  .lu-segmentation-head p {
    max-width: 720px;
    margin: 0;
    color: #9b9b9f;
    font-size: 1rem;
    line-height: 1.75;
  }

  .lu-segmentation-grid {
    display: grid;
    grid-template-columns: .78fr 1.22fr;
    gap: 42px;
    align-items: center;
  }

  .lu-segmentation-copy {
    padding: 34px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 28px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012)),
      rgba(8,8,8,.76);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.025),
      0 34px 80px -60px rgba(249,115,22,.5);
  }

  .lu-segmentation-index {
    display: inline-flex;
    align-items: baseline;
    gap: 10px;
    margin-bottom: 24px;
  }

  .lu-segmentation-index strong {
    color: #fb923c;
    font-size: 2.4rem;
    line-height: 1;
    letter-spacing: -.06em;
  }

  .lu-segmentation-index span {
    color: #fff;
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: -.035em;
  }

  .lu-segmentation-copy h3 {
    margin: 0 0 14px;
    color: #fff;
    font-size: 1.65rem;
    line-height: 1.12;
    letter-spacing: -.04em;
  }

  .lu-segmentation-copy > p {
    margin: 0;
    color: #96969b;
    line-height: 1.8;
  }

  .lu-segmentation-benefits {
    display: grid;
    gap: 12px;
    margin-top: 28px;
  }

  .lu-segmentation-benefit {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 48px;
    padding: 0 14px;
    border: 1px solid rgba(255,255,255,.065);
    border-radius: 15px;
    color: #cfcfd2;
    background: rgba(255,255,255,.018);
    font-size: .84rem;
  }

  .lu-segmentation-benefit svg {
    width: 17px;
    height: 17px;
    flex: 0 0 auto;
    color: #fb923c;
  }

  .lu-segmentation-stage {
    position: relative;
    min-height: 560px;
    border: 1px solid rgba(249,115,22,.21);
    border-radius: 32px;
    overflow: hidden;
    background:
      radial-gradient(circle at 50% 48%, rgba(249,115,22,.14), transparent 28%),
      linear-gradient(145deg,#0e0b09,#070707);
    box-shadow:
      0 40px 100px -62px rgba(249,115,22,.65),
      inset 0 1px 0 rgba(255,255,255,.035);
  }

  .lu-segmentation-stage::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .20;
    background-image:
      radial-gradient(circle,rgba(255,255,255,.28) 0 1px,transparent 1.2px);
    background-size: 52px 52px;
    mask-image: radial-gradient(circle at center,black,transparent 78%);
  }

  .lu-segmentation-core {
    position: absolute;
    z-index: 4;
    left: 50%;
    top: 50%;
    width: 128px;
    height: 128px;
    transform: translate(-50%,-50%);
    display: grid;
    place-items: center;
    border: 1px solid rgba(249,115,22,.45);
    border-radius: 34px;
    color: #fff;
    background:
      radial-gradient(circle at 35% 20%,rgba(255,255,255,.08),transparent 30%),
      linear-gradient(145deg,rgba(249,115,22,.20),rgba(249,115,22,.045));
    box-shadow:
      0 0 0 14px rgba(249,115,22,.035),
      0 0 55px rgba(249,115,22,.24);
  }

  .lu-segmentation-core svg {
    width: 46px;
    height: 46px;
    color: #fb923c;
    filter: drop-shadow(0 0 14px rgba(249,115,22,.45));
  }

  .lu-segmentation-core::after {
    content: "";
    position: absolute;
    inset: -17px;
    border: 1px solid rgba(249,115,22,.17);
    border-radius: 43px;
    animation: luSegCorePulse 2.8s ease-out infinite;
  }

  @keyframes luSegCorePulse {
    0% { transform: scale(.94); opacity: .75; }
    70% { transform: scale(1.12); opacity: 0; }
    100% { transform: scale(1.12); opacity: 0; }
  }

  .lu-segmentation-lines {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    pointer-events: none;
  }

  .lu-segmentation-line-base {
    fill: none;
    stroke: rgba(255,255,255,.09);
    stroke-width: 1.5;
  }

  .lu-segmentation-line-glow {
    fill: none;
    stroke: url(#luSegGradient);
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-dasharray: 460;
    stroke-dashoffset: 460;
    filter: url(#luSegGlow);
  }

  .lu-segmentation.is-visible .lu-segmentation-line-glow {
    animation: luSegDraw 1.65s cubic-bezier(.2,.75,.2,1) forwards;
  }

  @keyframes luSegDraw {
    to { stroke-dashoffset: 0; }
  }

  .lu-seg-node {
    position: absolute;
    z-index: 3;
    min-width: 142px;
    padding: 15px 18px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 17px;
    color: #d5d5d8;
    background: rgba(11,11,11,.82);
    backdrop-filter: blur(15px);
    box-shadow: 0 18px 44px -34px rgba(0,0,0,.9);
    opacity: 0;
    transform: translateY(18px) scale(.96);
    transition:
      opacity .55s ease,
      transform .55s cubic-bezier(.2,.75,.2,1),
      border-color .28s ease,
      background .28s ease;
  }

  .lu-segmentation.is-visible .lu-seg-node {
    opacity: 1;
    transform: none;
  }

  .lu-seg-node:nth-of-type(1) { transition-delay: .16s; }
  .lu-seg-node:nth-of-type(2) { transition-delay: .28s; }
  .lu-seg-node:nth-of-type(3) { transition-delay: .40s; }
  .lu-seg-node:nth-of-type(4) { transition-delay: .52s; }
  .lu-seg-node:nth-of-type(5) { transition-delay: .64s; }

  .lu-seg-node:hover {
    border-color: rgba(249,115,22,.38);
    background: rgba(249,115,22,.055);
  }

  .lu-seg-node strong {
    display: block;
    margin-bottom: 5px;
    color: #fff;
    font-size: .88rem;
  }

  .lu-seg-node small {
    display: block;
    color: #78787e;
    font-size: .68rem;
    line-height: 1.4;
  }

  .lu-seg-node.one { left: 8%; top: 18%; }
  .lu-seg-node.two { right: 8%; top: 16%; }
  .lu-seg-node.three { left: 4%; bottom: 16%; }
  .lu-seg-node.four { right: 4%; bottom: 15%; }
  .lu-seg-node.five { left: 50%; bottom: 4%; transform: translate(-50%,18px) scale(.96); }
  .lu-segmentation.is-visible .lu-seg-node.five { transform: translateX(-50%); }

  .lu-segmentation-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin-top: 24px;
    padding: 18px 20px;
    border: 1px solid rgba(249,115,22,.20);
    border-radius: 18px;
    background: rgba(249,115,22,.035);
  }

  .lu-segmentation-cta strong {
    display: block;
    margin-bottom: 4px;
    color: #fff;
    font-size: .9rem;
  }

  .lu-segmentation-cta p {
    margin: 0;
    color: #85858b;
    font-size: .77rem;
  }

  @media (max-width: 980px) {
    .lu-segmentation-grid {
      grid-template-columns: 1fr;
    }

    .lu-segmentation-stage {
      min-height: 530px;
    }
  }

  @media (max-width: 650px) {
    .lu-segmentation {
      padding: 82px 0;
    }

    .lu-segmentation-copy {
      padding: 25px;
    }

    .lu-segmentation-stage {
      min-height: auto;
      padding: 22px;
      display: grid;
      gap: 12px;
    }

    .lu-segmentation-core,
    .lu-segmentation-lines {
      display: none;
    }

    .lu-seg-node,
    .lu-seg-node.one,
    .lu-seg-node.two,
    .lu-seg-node.three,
    .lu-seg-node.four,
    .lu-seg-node.five {
      position: relative;
      inset: auto;
      min-width: 0;
      width: 100%;
      transform: none;
      opacity: 1;
    }

    .lu-segmentation.is-visible .lu-seg-node.five {
      transform: none;
    }

    .lu-segmentation-cta {
      align-items: stretch;
      flex-direction: column;
    }

    .lu-segmentation-cta .btn {
      width: 100%;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .lu-segmentation-line-glow {
      stroke-dashoffset: 0 !important;
      animation: none !important;
    }

    .lu-seg-node {
      opacity: 1 !important;
      transform: none !important;
      transition: none !important;
    }
  }

.lu-segmentation-stage {
    position: relative;
    min-height: 520px !important;
    border: 1px solid rgba(249,115,22,.22);
    border-radius: 30px;
    overflow: hidden;
    background:
      radial-gradient(circle at 50% 48%, rgba(249,115,22,.11), transparent 30%),
      linear-gradient(145deg,#0e0b09,#070707);
    box-shadow:
      0 40px 100px -62px rgba(249,115,22,.62),
      inset 0 1px 0 rgba(255,255,255,.035);
  }

  .lu-segmentation-stage::before {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.18;
    background-image:
      radial-gradient(circle,rgba(255,255,255,.24) 0 1px,transparent 1.2px);
    background-size:52px 52px;
    mask-image:radial-gradient(circle at center,black,transparent 78%);
  }

  .lu-seg-cross {
    position:absolute;
    inset:0;
  }

  .lu-seg-cross svg {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    pointer-events:none;
  }

  .lu-seg-base {
    fill:none;
    stroke:rgba(255,255,255,.11);
    stroke-width:1.4;
  }

  .lu-seg-active {
    fill:none;
    stroke:url(#luCrossGradient);
    stroke-width:2.2;
    stroke-linecap:round;
    stroke-dasharray:420;
    stroke-dashoffset:420;
    filter:url(#luCrossGlow);
  }

  .lu-segmentation.is-visible .lu-seg-active {
    animation:luCrossDraw 1.7s cubic-bezier(.2,.75,.2,1) forwards;
  }

  @keyframes luCrossDraw {
    to { stroke-dashoffset:0; }
  }

  .lu-seg-center {
    position:absolute;
    z-index:5;
    left:50%;
    top:50%;
    width:112px;
    height:112px;
    transform:translate(-50%,-50%);
    display:grid;
    place-items:center;
    border:1px solid rgba(249,115,22,.42);
    border-radius:30px;
    color:#fff;
    background:
      radial-gradient(circle at 35% 20%,rgba(255,255,255,.08),transparent 32%),
      linear-gradient(145deg,rgba(249,115,22,.18),rgba(249,115,22,.045));
    box-shadow:
      0 0 0 13px rgba(249,115,22,.035),
      0 0 50px rgba(249,115,22,.25);
  }

  .lu-seg-center svg {
    width:44px;
    height:44px;
    color:#fb923c;
    filter:drop-shadow(0 0 14px rgba(249,115,22,.42));
  }

  .lu-seg-center::after {
    content:"";
    position:absolute;
    inset:-16px;
    border:1px solid rgba(249,115,22,.17);
    border-radius:38px;
    animation:luCenterPulse 2.8s ease-out infinite;
  }

  @keyframes luCenterPulse {
    0% { transform:scale(.94); opacity:.75; }
    70% { transform:scale(1.12); opacity:0; }
    100% { transform:scale(1.12); opacity:0; }
  }

  .lu-seg-box {
    position:absolute;
    z-index:4;
    min-width:172px;
    padding:15px 18px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:16px;
    color:#d9d9dc;
    background:rgba(11,11,11,.84);
    backdrop-filter:blur(16px);
    box-shadow:0 18px 44px -34px rgba(0,0,0,.95);
    opacity:0;
    transform:translateY(16px) scale(.97);
    transition:
      opacity .55s ease,
      transform .55s cubic-bezier(.2,.75,.2,1),
      border-color .25s ease,
      background .25s ease,
      box-shadow .25s ease;
  }

  .lu-segmentation.is-visible .lu-seg-box {
    opacity:1;
    transform:none;
  }

  .lu-seg-box:hover {
    border-color:rgba(249,115,22,.4);
    background:rgba(249,115,22,.055);
    box-shadow:0 20px 46px -28px rgba(249,115,22,.36);
  }

  .lu-seg-box strong {
    display:block;
    color:#fff;
    font-size:.92rem;
    letter-spacing:-.02em;
  }

  .lu-seg-box small {
    display:block;
    margin-top:5px;
    color:#77777d;
    font-size:.68rem;
    line-height:1.45;
  }

  .lu-seg-box.top {
    left:50%;
    top:8%;
    transform:translate(-50%,16px) scale(.97);
  }

  .lu-segmentation.is-visible .lu-seg-box.top {
    transform:translateX(-50%);
  }

  .lu-seg-box.left {
    left:6%;
    top:28%;
  }

  .lu-seg-box.right {
    right:6%;
    top:28%;
  }

  .lu-seg-box.bottom {
    left:50%;
    bottom:8%;
    transform:translate(-50%,16px) scale(.97);
  }

  .lu-segmentation.is-visible .lu-seg-box.bottom {
    transform:translateX(-50%);
  }

  .lu-seg-box:nth-of-type(1){transition-delay:.16s}
  .lu-seg-box:nth-of-type(2){transition-delay:.30s}
  .lu-seg-box:nth-of-type(3){transition-delay:.44s}
  .lu-seg-box:nth-of-type(4){transition-delay:.58s}

  @media (max-width:650px){
    .lu-segmentation-stage{
      min-height:auto !important;
      padding:20px;
      display:grid;
      gap:12px;
    }

    .lu-seg-cross svg,
    .lu-seg-center{
      display:none;
    }

    .lu-seg-cross{
      position:relative;
      display:grid;
      gap:12px;
    }

    .lu-seg-box,
    .lu-seg-box.top,
    .lu-seg-box.left,
    .lu-seg-box.right,
    .lu-seg-box.bottom{
      position:relative;
      inset:auto;
      min-width:0;
      width:100%;
      transform:none;
      opacity:1;
    }

    .lu-segmentation.is-visible .lu-seg-box.top,
    .lu-segmentation.is-visible .lu-seg-box.bottom{
      transform:none;
    }
  }

  @media (prefers-reduced-motion:reduce){
    .lu-seg-active{
      stroke-dashoffset:0 !important;
      animation:none !important;
    }

    .lu-seg-box{
      opacity:1 !important;
      transform:none !important;
      transition:none !important;
    }
  }

.lu-segmentation {
    position: relative;
    overflow: hidden;
    padding: 108px 0 118px;
    border-block: 1px solid rgba(255,255,255,.055);
    background:
      radial-gradient(circle at 78% 42%, rgba(249,115,22,.085), transparent 32%),
      radial-gradient(circle at 18% 18%, rgba(245,158,11,.035), transparent 28%),
      #060606;
  }

  .lu-segmentation::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .18;
    background-image:
      radial-gradient(circle, rgba(255,255,255,.24) 0 1px, transparent 1.2px);
    background-size: 58px 58px;
    mask-image: linear-gradient(to bottom, transparent, black 16%, black 86%, transparent);
  }

  .lu-seg-original {
    position: relative;
    z-index: 1;
  }

  .lu-seg-original-head {
    max-width: 930px;
    margin-bottom: 72px;
  }

  .lu-seg-original-head .lu-seg-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #fb923c;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
  }

  .lu-seg-original-head .lu-seg-label::before {
    content: "";
    width: 30px;
    height: 1px;
    background: linear-gradient(90deg,#f97316,transparent);
  }

  .lu-seg-original-head h2 {
    margin: 18px 0 18px;
    max-width: 910px;
    font-size: clamp(2.35rem,4.8vw,4.9rem);
    line-height: .99;
    letter-spacing: -.058em;
    text-wrap: balance;
  }

  .lu-seg-original-head p {
    margin: 0;
    max-width: 680px;
    color: #a1a1a6;
    font-size: 1rem;
    line-height: 1.75;
  }

  .lu-seg-original-grid {
    display: grid;
    grid-template-columns: 1fr;
  }

  .lu-seg-original-visual {
    position: relative;
    min-height: 440px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(249,115,22,.16);
    border-radius: 28px;
    overflow: hidden;
    background:
      radial-gradient(circle at 50% 50%, rgba(249,115,22,.10), transparent 36%),
      linear-gradient(145deg,#0d0a08,#070707);
    box-shadow:
      0 40px 95px -60px rgba(249,115,22,.62),
      inset 0 1px 0 rgba(255,255,255,.03);
  }

  .lu-seg-original-visual::before {
    content:"";
    position:absolute;
    inset:0;
    opacity:.18;
    pointer-events:none;
    background-image:
      linear-gradient(rgba(255,255,255,.024) 1px,transparent 1px),
      linear-gradient(90deg,rgba(255,255,255,.024) 1px,transparent 1px);
    background-size:44px 44px;
    mask-image:radial-gradient(circle at center,black,transparent 80%);
  }

  .lu-seg-original-visual img {
    position: relative;
    z-index: 1;
    width: min(92%, 920px);
    height: auto;
    object-fit: contain;
    opacity: .94;
    filter:
      hue-rotate(145deg)
      saturate(1.9)
      brightness(1.02)
      contrast(1.06)
      drop-shadow(0 18px 34px rgba(249,115,22,.16));
    transform: scale(1.03);
    transition: transform .45s ease, filter .45s ease;
  }

  .lu-seg-original-visual:hover img {
    transform: scale(1.055);
    filter:
      hue-rotate(145deg)
      saturate(2.05)
      brightness(1.07)
      contrast(1.07)
      drop-shadow(0 22px 42px rgba(249,115,22,.24));
  }

  .lu-seg-original-visual::after {
    content: "";
    position: absolute;
    inset: 15% 12%;
    border: 1px solid rgba(249,115,22,.08);
    border-radius: 26px;
    pointer-events: none;
    box-shadow: 0 0 42px rgba(249,115,22,.055);
  }

  .lu-seg-original-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin-top: 42px;
    padding: 19px 21px;
    border: 1px solid rgba(249,115,22,.19);
    border-radius: 18px;
    background:
      radial-gradient(circle at 90% 0%,rgba(249,115,22,.085),transparent 34%),
      rgba(249,115,22,.025);
  }

  .lu-seg-original-cta strong {
    display: block;
    margin-bottom: 4px;
    color: #fff;
    font-size: .9rem;
  }

  .lu-seg-original-cta p {
    margin: 0;
    color: #85858a;
    font-size: .77rem;
  }

  @media (max-width: 980px) {
    .lu-seg-original-visual {
      min-height: 380px;
    }
  }

  @media (max-width: 640px) {
    .lu-segmentation {
      padding: 82px 0;
    }

    .lu-seg-original-head {
      margin-bottom: 48px;
    }

    .lu-seg-original-visual {
      min-height: 260px;
      border-radius: 22px;
    }

    .lu-seg-original-visual img {
      width: 98%;
      transform: scale(1);
    }

    .lu-seg-original-cta {
      align-items: stretch;
      flex-direction: column;
    }

    .lu-seg-original-cta .btn {
      width: 100%;
    }
  }

.lu-funnel-compare {
    position: relative;
    overflow: hidden;
    padding: 112px 0 88px;
    border-top: 1px solid rgba(255,255,255,.055);
    background:
      radial-gradient(circle at 50% 10%, rgba(249,115,22,.09), transparent 30%),
      linear-gradient(180deg,#060606,#050505);
  }

  .lu-funnel-compare::before {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.16;
    background-image:
      radial-gradient(circle,rgba(255,255,255,.22) 0 1px,transparent 1.2px);
    background-size:64px 64px;
    mask-image:linear-gradient(to bottom,transparent,black 18%,black 88%,transparent);
  }

  .lu-funnel-compare .container {
    position:relative;
    z-index:1;
  }

  .lu-funnel-compare-head {
    max-width: 860px;
    margin: 0 auto 54px;
    text-align:center;
  }

  .lu-funnel-compare-head .eyebrow {
    justify-content:center;
  }

  .lu-funnel-compare-head h2 {
    margin: 18px auto 16px;
    font-size: clamp(2.4rem,4.8vw,4.9rem);
    line-height:.99;
    letter-spacing:-.058em;
    text-wrap:balance;
  }

  .lu-funnel-compare-head p {
    margin:0 auto;
    max-width:700px;
    color:#9a9a9f;
    line-height:1.7;
  }

  .lu-funnel-compare-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
  }

  .lu-funnel-card {
    position:relative;
    overflow:hidden;
    padding:22px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:24px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012)),
      #0a0a0a;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.025),
      0 30px 80px -62px rgba(0,0,0,.9);
  }

  .lu-funnel-card.ideal {
    border-color:rgba(249,115,22,.28);
    background:
      radial-gradient(circle at 100% 0%,rgba(249,115,22,.10),transparent 34%),
      linear-gradient(180deg,rgba(249,115,22,.025),rgba(255,255,255,.012)),
      #0a0908;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.025),
      0 34px 90px -58px rgba(249,115,22,.48);
  }

  .lu-funnel-badge {
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 11px;
    border-radius:999px;
    font-size:.7rem;
    font-weight:800;
  }

  .lu-funnel-card.current .lu-funnel-badge {
    color:#f3a6a6;
    background:rgba(239,68,68,.12);
    border:1px solid rgba(239,68,68,.22);
  }

  .lu-funnel-card.ideal .lu-funnel-badge {
    color:#fed7aa;
    background:rgba(249,115,22,.10);
    border:1px solid rgba(249,115,22,.25);
  }

  .lu-funnel-step-list {
    display:grid;
    gap:10px;
    margin-top:16px;
  }

  .lu-funnel-step-row {
    padding:14px 14px 12px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:14px;
    background:rgba(255,255,255,.018);
  }

  .lu-funnel-step-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:10px;
  }

  .lu-funnel-step-top strong {
    color:#f4f4f5;
    font-size:.8rem;
  }

  .lu-funnel-step-top span {
    color:#fff;
    font-size:.8rem;
    font-weight:800;
  }

  .lu-rate {
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 9px;
    border-radius:999px;
    color:#d4d4d8 !important;
    background:rgba(255,255,255,.075);
    font-size:.64rem !important;
    margin-right:auto;
  }

  .lu-rate.gain {
    color:#fed7aa !important;
    background:rgba(249,115,22,.12);
  }

  .lu-bar {
    position:relative;
    height:6px;
    overflow:hidden;
    border-radius:99px;
    background:rgba(255,255,255,.10);
  }

  .lu-bar > span {
    display:block;
    height:100%;
    width:var(--w);
    border-radius:inherit;
    transform-origin:left;
    transform:scaleX(0);
  }

  .lu-funnel-card.current .lu-bar > span {
    background:linear-gradient(90deg,#b91c1c,#ef4444);
  }

  .lu-funnel-card.ideal .lu-bar > span {
    background:linear-gradient(90deg,#ea580c,#f97316,#f59e0b);
    box-shadow:0 0 16px rgba(249,115,22,.32);
  }

  .lu-funnel-compare.is-visible .lu-bar > span {
    animation:luFunnelFill 1.1s cubic-bezier(.2,.75,.2,1) forwards;
  }

  .lu-funnel-step-row:nth-child(2) .lu-bar > span { animation-delay:.15s; }
  .lu-funnel-step-row:nth-child(3) .lu-bar > span { animation-delay:.3s; }
  .lu-funnel-step-row:nth-child(4) .lu-bar > span { animation-delay:.45s; }

  @keyframes luFunnelFill {
    to { transform:scaleX(1); }
  }

  .lu-funnel-ticket {
    margin:16px 2px 8px;
    color:#89898e;
    font-size:.7rem;
  }

  .lu-funnel-revenue {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:16px;
    border-radius:15px;
  }

  .lu-funnel-card.current .lu-funnel-revenue {
    background:linear-gradient(90deg,rgba(185,28,28,.78),rgba(239,68,68,.76));
  }

  .lu-funnel-card.ideal .lu-funnel-revenue {
    background:linear-gradient(90deg,#ea580c,#f97316,#f59e0b);
  }

  .lu-funnel-revenue small {
    display:block;
    margin-bottom:3px;
    color:rgba(255,255,255,.82);
    font-size:.67rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
  }

  .lu-funnel-revenue strong {
    color:#fff;
    font-size:1.15rem;
    letter-spacing:-.035em;
  }

  .lu-funnel-gain {
    display:inline-flex;
    align-items:center;
    min-height:38px;
    padding:0 13px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:12px;
    color:#fff;
    background:rgba(0,0,0,.18);
    font-size:.8rem;
    font-weight:900;
  }

  .lu-funnel-compare-cta {
    display:flex;
    justify-content:center;
    margin-top:34px;
  }

  .lu-funnel-compare-cta .btn {
    min-width:min(100%,520px);
  }

  @media(max-width:820px){
    .lu-funnel-compare-grid {
      grid-template-columns:1fr;
    }
  }

  @media(max-width:640px){
    .lu-funnel-compare {
      padding:82px 0 68px;
    }

    .lu-funnel-card {
      padding:16px;
    }

    .lu-funnel-step-top {
      flex-wrap:wrap;
    }
  }

  @media(prefers-reduced-motion:reduce){
    .lu-bar > span {
      transform:scaleX(1) !important;
      animation:none !important;
    }
  }

.lu-count,
  .lu-money-count {
    font-variant-numeric: tabular-nums;
  }

  .lu-bar > span {
    transform: scaleX(0);
    will-change: transform;
  }

  .lu-funnel-compare.is-visible .lu-bar > span {
    animation: luFunnelFill 3.2s cubic-bezier(.16,.72,.18,1) forwards;
  }

  .lu-funnel-step-row:nth-child(2) .lu-bar > span { animation-delay:.35s; }
  .lu-funnel-step-row:nth-child(3) .lu-bar > span { animation-delay:.70s; }
  .lu-funnel-step-row:nth-child(4) .lu-bar > span { animation-delay:1.05s; }

  .lu-count,
  .lu-money-count {
    opacity: .45;
    transform: translateY(6px);
    transition: opacity .3s ease, transform .3s ease;
  }

  .lu-funnel-compare.is-visible .lu-count,
  .lu-funnel-compare.is-visible .lu-money-count {
    opacity: 1;
    transform: none;
  }

.lu-bar > span {
    position: relative;
    overflow: hidden;
  }

  .lu-bar > span::after {
    content: "";
    position: absolute;
    inset: 0;
    width: 34%;
    left: -38%;
    background: linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,.34),
      transparent
    );
    transform: skewX(-18deg);
  }

  .lu-funnel-compare.is-visible .lu-bar > span::after {
    animation: luBarShine 3.2s cubic-bezier(.16,.72,.18,1) forwards;
  }

  .lu-funnel-step-row:nth-child(2) .lu-bar > span::after { animation-delay:.35s; }
  .lu-funnel-step-row:nth-child(3) .lu-bar > span::after { animation-delay:.70s; }
  .lu-funnel-step-row:nth-child(4) .lu-bar > span::after { animation-delay:1.05s; }

  @keyframes luBarShine {
    from { left: -38%; }
    to { left: 108%; }
  }

  @media (prefers-reduced-motion: reduce) {
    .lu-bar > span::after {
      display: none !important;
    }
  }

.lu-trusted {
    position: relative;
    overflow: hidden;
    padding: 82px 0 88px;
    border-block: 1px solid rgba(255,255,255,.055);
    background:
      radial-gradient(circle at 50% 0%, rgba(249,115,22,.08), transparent 34%),
      linear-gradient(180deg,#060606,#050505);
  }

  .lu-trusted::before {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.14;
    background-image:
      radial-gradient(circle,rgba(255,255,255,.22) 0 1px,transparent 1.2px);
    background-size:68px 68px;
    mask-image:linear-gradient(to bottom,transparent,black 18%,black 86%,transparent);
  }

  .lu-trusted .container {
    position:relative;
    z-index:1;
  }

  .lu-trusted-head {
    max-width:760px;
    margin:0 auto 42px;
    text-align:center;
  }

  .lu-trusted-head .eyebrow {
    justify-content:center;
  }

  .lu-trusted-head h2 {
    margin:18px 0 14px;
    font-size:clamp(2.1rem,4vw,4rem);
    line-height:1;
    letter-spacing:-.055em;
    text-wrap:balance;
  }

  .lu-trusted-head p {
    margin:0 auto;
    max-width:660px;
    color:#929297;
    line-height:1.7;
  }

  .lu-logo-marquee {
    position:relative;
    overflow:hidden;
    padding:8px 0;
    mask-image:linear-gradient(90deg,transparent 0,black 9%,black 91%,transparent 100%);
  }

  .lu-logo-track {
    display:flex;
    align-items:center;
    gap:16px;
    width:max-content;
    animation:luLogoScroll 30s linear infinite;
  }

  .lu-logo-marquee:hover .lu-logo-track {
    animation-play-state:paused;
  }

  @keyframes luLogoScroll {
    to { transform:translateX(-50%); }
  }

  .lu-logo-card {
    position:relative;
    flex:0 0 260px;
    height:128px;
    display:grid;
    place-items:center;
    padding:18px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:20px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.026),rgba(255,255,255,.012)),
      rgba(10,10,10,.82);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.025),
      0 20px 48px -38px rgba(0,0,0,.9);
    transition:
      transform .28s ease,
      border-color .28s ease,
      background .28s ease,
      box-shadow .28s ease;
  }

  .lu-logo-card:hover {
    transform:translateY(-4px);
    border-color:rgba(249,115,22,.30);
    background:rgba(249,115,22,.045);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.035),
      0 26px 58px -38px rgba(249,115,22,.42);
  }

  .lu-logo-img {
    display:block;
    width:194px;
    height:60px;
    object-fit:contain;
    object-position:center;
  }

  .lu-trusted-bottom {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    margin-top:30px;
    color:#77777c;
    font-size:.74rem;
  }

  .lu-trusted-bottom span {
    display:inline-flex;
    align-items:center;
    gap:8px;
  }

  .lu-trusted-bottom span::before {
    content:"";
    width:6px;
    height:6px;
    border-radius:50%;
    background:#f97316;
    box-shadow:0 0 12px rgba(249,115,22,.45);
  }

  @media(max-width:640px){
    .lu-trusted {
      padding:68px 0 72px;
    }

    .lu-trusted-bottom {
      flex-wrap:wrap;
      text-align:center;
    }
  }

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

.lu-method-compare {
    position: relative;
    overflow: hidden;
    padding: 110px 0;
    background:
      radial-gradient(circle at 82% 46%, rgba(249,115,22,.10), transparent 30%),
      radial-gradient(circle at 14% 20%, rgba(249,115,22,.04), transparent 24%),
      linear-gradient(180deg,#060606,#050505);
    border-block: 1px solid rgba(255,255,255,.055);
  }

  .lu-method-compare::before {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.14;
    background-image:
      radial-gradient(circle, rgba(255,255,255,.22) 0 1px, transparent 1.2px);
    background-size:62px 62px;
    mask-image:linear-gradient(to bottom,transparent,black 17%,black 88%,transparent);
  }

  .lu-method-compare .container {
    position:relative;
    z-index:1;
  }

  .lu-method-compare-head {
    max-width:920px;
    margin-bottom:54px;
  }

  .lu-method-compare-head h2 {
    margin:16px 0 18px;
    font-size:clamp(2.4rem,5vw,5.2rem);
    line-height:.98;
    letter-spacing:-.06em;
    text-wrap:balance;
  }

  .lu-method-compare-head p {
    max-width:760px;
    margin:0;
    color:#96969b;
    font-size:1rem;
    line-height:1.75;
  }

  .lu-method-compare-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
  }

  .lu-method-panel {
    position:relative;
    overflow:hidden;
    min-height:520px;
    padding:32px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:28px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.024),rgba(255,255,255,.012)),
      #090909;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.025),
      0 30px 80px -60px rgba(0,0,0,.9);
  }

  .lu-method-panel.good {
    border-color:rgba(249,115,22,.28);
    background:
      radial-gradient(circle at 92% 6%,rgba(249,115,22,.11),transparent 28%),
      linear-gradient(180deg,rgba(249,115,22,.025),rgba(255,255,255,.012)),
      #0a0908;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.03),
      0 36px 90px -56px rgba(249,115,22,.48);
  }

  .lu-method-panel::after {
    content:"";
    position:absolute;
    inset:auto -100px -120px auto;
    width:320px;
    height:320px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(249,115,22,.12),transparent 70%);
    pointer-events:none;
  }

  .lu-method-panel-top {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:28px;
  }

  .lu-method-icon {
    width:54px;
    height:54px;
    display:grid;
    place-items:center;
    border-radius:17px;
    border:1px solid rgba(255,255,255,.08);
    color:#8b8b90;
    background:rgba(255,255,255,.025);
  }

  .lu-method-panel.good .lu-method-icon {
    color:#fb923c;
    border-color:rgba(249,115,22,.28);
    background:rgba(249,115,22,.07);
    box-shadow:0 0 26px rgba(249,115,22,.10);
  }

  .lu-method-icon svg {
    width:24px;
    height:24px;
  }

  .lu-method-badge {
    display:inline-flex;
    align-items:center;
    min-height:31px;
    padding:0 11px;
    border-radius:999px;
    color:#86868b;
    background:rgba(255,255,255,.035);
    border:1px solid rgba(255,255,255,.07);
    font-size:.68rem;
    font-weight:800;
  }

  .lu-method-panel.good .lu-method-badge {
    color:#fed7aa;
    background:rgba(249,115,22,.08);
    border-color:rgba(249,115,22,.24);
  }

  .lu-method-panel h3 {
    margin:0 0 12px;
    font-size:clamp(1.8rem,2.6vw,2.8rem);
    line-height:1.04;
    letter-spacing:-.05em;
  }

  .lu-method-panel > p {
    margin:0 0 28px;
    color:#8e8e93;
    line-height:1.7;
  }

  .lu-method-list {
    display:grid;
    gap:12px;
  }

  .lu-method-item {
    display:grid;
    grid-template-columns:36px 1fr auto;
    gap:12px;
    align-items:center;
    min-height:66px;
    padding:12px 14px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:16px;
    background:rgba(255,255,255,.018);
    transition:
      transform .25s ease,
      border-color .25s ease,
      background .25s ease;
  }

  .lu-method-item:hover {
    transform:translateX(4px);
    border-color:rgba(249,115,22,.24);
    background:rgba(249,115,22,.035);
  }

  .lu-method-status {
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:#77777c;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.06);
    font-weight:900;
  }

  .lu-method-panel.good .lu-method-status {
    color:#fb923c;
    background:rgba(249,115,22,.07);
    border-color:rgba(249,115,22,.20);
  }

  .lu-method-item strong {
    display:block;
    color:#f3f3f4;
    font-size:.88rem;
  }

  .lu-method-item small {
    display:block;
    margin-top:4px;
    color:#77777d;
    font-size:.7rem;
    line-height:1.45;
  }

  .lu-method-mini {
    color:#6f6f74;
    font-size:.65rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
  }

  .lu-method-panel.good .lu-method-mini {
    color:#fb923c;
  }

  .lu-method-summary {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-top:26px;
  }

  .lu-method-summary-card {
    padding:15px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:15px;
    background:rgba(255,255,255,.018);
  }

  .lu-method-summary-card span {
    display:block;
    margin-bottom:7px;
    color:#727277;
    font-size:.62rem;
    text-transform:uppercase;
    letter-spacing:.10em;
    font-weight:800;
  }

  .lu-method-summary-card strong {
    color:#fff;
    font-size:.84rem;
  }

  .lu-method-cta {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    margin-top:26px;
    padding:18px 20px;
    border:1px solid rgba(249,115,22,.19);
    border-radius:18px;
    background:
      radial-gradient(circle at 90% 0%,rgba(249,115,22,.08),transparent 34%),
      rgba(249,115,22,.028);
  }

  .lu-method-cta strong {
    display:block;
    margin-bottom:4px;
    color:#fff;
    font-size:.9rem;
  }

  .lu-method-cta p {
    margin:0;
    color:#85858a;
    font-size:.77rem;
  }

  @media(max-width:900px){
    .lu-method-compare-grid,
    .problem-grid {
      display: flex;
      gap: 16px;
      overflow-x: auto;
      overscroll-behavior-x: contain;
      scroll-snap-type: x mandatory;
      scroll-padding-inline: 2px;
      padding-bottom: 6px;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
    }

    .lu-method-compare-grid::-webkit-scrollbar,
    .problem-grid::-webkit-scrollbar {
      display: none;
    }

    .lu-method-compare-grid > *,
    .problem-grid > * {
      scroll-snap-align: start;
    }

    .lu-method-panel {
      flex: 0 0 min(430px, 86%);
    }

    .problem-grid .card {
      flex: 0 0 min(320px, 82%);
    }
  }

  @media(max-width:640px){
    .lu-method-compare {
      padding:82px 0;
    }

    .lu-method-panel {
      min-height:auto;
      padding:24px;
    }

    .lu-method-item {
      grid-template-columns:34px 1fr;
    }

    .lu-method-mini {
      grid-column:2;
    }

    .lu-method-summary {
      grid-template-columns:1fr;
    }

    .lu-method-cta {
      align-items:stretch;
      flex-direction:column;
    }

    .lu-method-cta .btn {
      width:100%;
    }
  }


/* =========================================================
   POLISH PASS — LEVEL UP
   ========================================================= */

:root {
  --ease-premium: cubic-bezier(.2,.75,.2,1);
  --ease-cinematic: cubic-bezier(.16,1,.3,1);
  --shadow-card: 0 28px 80px -56px rgba(0,0,0,.9);
  --shadow-orange: 0 34px 90px -58px rgba(249,115,22,.48);
}

/* Entrada inicial mais cinematográfica */
body {
  opacity: 0;
  animation: luPageIntro .7s var(--ease-cinematic) .08s forwards;
}

@keyframes luPageIntro {
  from { opacity: 0; filter: blur(8px); }
  to { opacity: 1; filter: blur(0); }
}

.hero .eyebrow,
.hero h1,
.hero .hero-copy,
.hero .hero-actions,
.hero .mini-proof,
.hero .hero-visual {
  opacity: 0;
  transform: translateY(26px);
  animation: luHeroIntro .82s var(--ease-cinematic) forwards;
}

.hero .eyebrow { animation-delay: .12s; }
.hero h1 { animation-delay: .2s; }
.hero .hero-copy { animation-delay: .3s; }
.hero .hero-actions { animation-delay: .4s; }
.hero .mini-proof { animation-delay: .48s; }
.hero .hero-visual { animation-delay: .28s; }

@keyframes luHeroIntro {
  to { opacity: 1; transform: none; }
}

/* Spotlight premium */
.card,
.deliver-card,
.lu-method-panel,
.lu-funnel-card,
.lu-logo-card,
.lu-seg-original-visual,
.range-wrap,
.lu-pro-consult-card {
  --spot-x: 50%;
  --spot-y: 50%;
}

.card::after,
.deliver-card::after,
.lu-method-panel::before,
.lu-funnel-card::before,
.lu-logo-card::before,
.lu-seg-original-visual::before,
.range-wrap::before,
.lu-pro-consult-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(circle at var(--spot-x) var(--spot-y),
    rgba(249,115,22,.14),
    transparent 34%);
  transition: opacity .32s ease;
}

.card:hover::after,
.deliver-card:hover::after,
.lu-method-panel:hover::before,
.lu-funnel-card:hover::before,
.lu-logo-card:hover::before,
.lu-seg-original-visual:hover::before,
.range-wrap:hover::before,
.lu-pro-consult-card:hover::before {
  opacity: 1;
}

/* Cards mais táteis */
.card,
.deliver-card,
.lu-method-panel,
.lu-funnel-card,
.lu-logo-card,
.range-wrap {
  transform-style: preserve-3d;
  backface-visibility: hidden;
}

.card:hover,
.deliver-card:hover,
.lu-logo-card:hover {
  transform: translateY(-6px) scale(1.008);
}

/* Botões com sheen recorrente e micro-press */
.btn,
.lu-pro-consult-button {
  isolation: isolate;
}

.btn::before,
.lu-pro-consult-button::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -50%;
  bottom: -50%;
  left: -55%;
  width: 30%;
  transform: skewX(-18deg);
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);
  animation: luButtonSheen 5.8s ease-in-out infinite;
}

@keyframes luButtonSheen {
  0%,72% { left: -55%; }
  100% { left: 130%; }
}

.btn:active,
.lu-pro-consult-button:active {
  transform: translateY(0) scale(.985);
}

/* Separadores mais elegantes */
section + section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: min(84%, 980px);
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient(90deg,transparent,rgba(249,115,22,.22),transparent);
  opacity: .72;
}

/* Scrollbar premium */
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #050505; }
::-webkit-scrollbar-thumb {
  border: 3px solid #050505;
  border-radius: 999px;
  background: linear-gradient(#ea580c,#f59e0b);
}

/* Mobile menu */
.lu-mobile-menu-toggle {
  display: none;
  position: relative;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 13px;
  background: rgba(255,255,255,.025);
  color: #fff;
  cursor: pointer;
}

.lu-mobile-menu-toggle span {
  position: absolute;
  left: 11px;
  width: 20px;
  height: 2px;
  border-radius: 99px;
  background: #fff;
  transition: transform .3s ease, opacity .3s ease, top .3s ease;
}

.lu-mobile-menu-toggle span:nth-child(1) { top: 14px; }
.lu-mobile-menu-toggle span:nth-child(2) { top: 21px; }
.lu-mobile-menu-toggle span:nth-child(3) { top: 28px; }

.lu-mobile-menu-toggle.is-open span:nth-child(1) {
  top: 21px;
  transform: rotate(45deg);
}
.lu-mobile-menu-toggle.is-open span:nth-child(2) { opacity: 0; }
.lu-mobile-menu-toggle.is-open span:nth-child(3) {
  top: 21px;
  transform: rotate(-45deg);
}

/* ========================= MOBILE MASTER PASS ========================= */
@media (max-width: 900px) {
  html { scroll-padding-top: 90px; }
  html, body { overflow-x: hidden; }

  body {
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
  }

  /* Garante que nada vaze horizontalmente */
  img, svg, video, canvas { max-width: 100%; }

  /* Melhora a leitura em mobile */
  p { line-height: 1.7; }

  /* Tap target universal mínimo 44px */
  a, button { min-height: 44px; }

  .container {
    width: min(calc(100% - 28px), var(--max));
  }

  /* A margem do container encolhe bastante no mobile; o FAQ não tinha
     respiro próprio e o ícone "+" ficava colado na borda da tela. */
  .faq details {
    padding: 24px 10px;
  }

  .faq summary {
    gap: 16px;
  }

  .nav {
    top: 10px;
    width: min(calc(100% - 20px), 1160px);
    min-height: 62px;
    padding: 9px 10px 9px 15px;
  }

  .brand {
    font-size: 1.04rem;
  }

  .brand-logo {
    height: 64px;
  }

  .lu-mobile-menu-toggle {
    display: block;
    z-index: 3;
  }

  .nav-links {
    position: fixed;
    top: 78px;
    left: 10px;
    right: 10px;
    display: grid !important;
    gap: 4px;
    padding: 14px;
    border: 1px solid rgba(255,255,255,.085);
    border-radius: 20px;
    background: rgba(8,8,8,.94);
    backdrop-filter: blur(22px);
    box-shadow: 0 22px 54px rgba(0,0,0,.46);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-14px) scale(.98);
    transform-origin: top;
    transition: opacity .28s ease, visibility .28s ease, transform .28s ease;
  }

  .nav-links.is-open {
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  .nav-links a {
    min-height: 48px;
    display: flex;
    align-items: center;
    padding: 0 15px;
    border-radius: 13px;
    font-size: .94rem;
  }

  .nav-links a:hover,
  .nav-links a:active {
    background: rgba(249,115,22,.08);
  }

  .hero {
    min-height: auto;
    padding: 118px 0 74px;
  }

  .hero-grid {
    gap: 44px;
  }

  .hero .eyebrow {
    gap: 8px;
    font-size: .7rem;
    letter-spacing: .08em;
    white-space: nowrap;
  }

  .hero .eyebrow::before {
    width: 18px;
    flex: 0 0 auto;
  }

  h1 {
    max-width: 100%;
    font-size: clamp(3rem, 12.8vw, 4.8rem);
    line-height: .96;
    letter-spacing: -.06em;
  }

  .hero-copy {
    font-size: 1rem;
    line-height: 1.72;
  }

  .hero-actions {
    gap: 10px;
    margin-top: 28px;
  }

  .hero-actions .btn {
    width: 100%;
    min-height: 54px;
  }

  .mini-proof {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px 12px;
    margin-top: 24px;
    font-size: .78rem;
  }

  .hero-visual {
    min-height: 560px;
    border-radius: 28px;
  }

  .dashboard {
    inset: 16px;
    padding: 18px;
    border-radius: 22px;
  }

  .dash-top {
    align-items: flex-start;
    gap: 12px;
  }

  .status {
    flex: 0 0 auto;
    padding: 8px 10px;
    font-size: .64rem;
  }

  .chart {
    height: 205px;
  }

  .dash-cards {
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  .metric {
    min-height: 78px !important;
    padding: 14px 15px !important;
    text-align: left !important;
  }

  .metric strong {
    margin-top: 7px !important;
    font-size: 1.2rem !important;
    text-align: left !important;
  }

  section {
    padding: 78px 0;
  }

  .section-head {
    margin-bottom: 40px;
  }

  .section-head h2,
  .lu-method-compare-head h2,
  .lu-funnel-compare-head h2,
  .lu-trusted-head h2,
  .lu-seg-original-head h2 {
    font-size: clamp(2.1rem, 9vw, 3.4rem);
    line-height: 1.05;
    letter-spacing: -.045em;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }

  .problem-grid,
  .deliver-grid,
  .lu-method-compare-grid,
  .lu-funnel-compare-grid {
    grid-template-columns: 1fr !important;
  }

  .card,
  .deliver-card,
  .lu-method-panel,
  .lu-funnel-card {
    min-height: auto !important;
    padding: 23px !important;
    border-radius: 22px !important;
  }

  .deliver-card.large {
    grid-column: auto !important;
    min-height: auto !important;
  }

  .lu-deliver-topline-copy h3 {
    max-width: 100%;
  }

  .lu-funnel-track {
    grid-template-columns: 1fr !important;
  }

  .lu-funnel-track::before {
    display: none;
  }

  .lu-funnel-step {
    grid-template-columns: 54px 1fr !important;
    gap: 14px;
    text-align: left !important;
  }

  .lu-funnel-node {
    width: 54px;
    height: 54px;
    border-radius: 16px;
  }

  .lu-logo-card {
    flex-basis: 210px;
    height: 108px;
  }

  .lu-logo-img {
    width: 154px;
    height: 48px;
  }

  .lu-logo-track {
    gap: 12px;
    animation-duration: 38s;
  }

  .lu-method-item {
    grid-template-columns: 34px 1fr !important;
    padding: 12px !important;
  }

  .lu-method-mini {
    grid-column: 2;
    justify-self: start;
  }

  .lu-method-summary {
    grid-template-columns: 1fr !important;
  }

  .calculator {
    grid-template-columns: 1fr !important;
    padding: 24px !important;
    gap: 22px;
  }

  .calc-number {
    font-size: clamp(3.2rem, 15vw, 5.5rem);
  }

  .range-wrap {
    padding: 22px;
  }

  .faq {
    width: 100%;
  }

  summary {
    font-size: 1rem;
    line-height: 1.45;
  }

  details {
    padding: 20px 0;
  }

  .lu-pro-footer-inner {
    width: min(calc(100% - 28px),1230px);
  }

  /* Evita hover pesado em toque */
  .card:hover,
  .deliver-card:hover,
  .lu-logo-card:hover {
    transform: none;
  }
}

@media (max-width: 480px) {
  .container {
    width: min(calc(100% - 22px), var(--max));
  }

  h1 {
    font-size: clamp(2.75rem, 13.4vw, 3.7rem);
  }

  .hero-visual {
    min-height: 540px;
  }

  .dashboard {
    inset: 12px;
    padding: 15px;
  }

  .chart {
    height: 190px;
  }

  .lu-chart-value {
    font-size: .52rem !important;
  }

  .mini-proof {
    grid-template-columns: 1fr;
  }

  .lu-wa-inline {
    padding: 16px !important;
  }

  .lu-wa-inline-copy {
    align-items: flex-start;
  }

  .lu-pro-footer-grid {
    gap: 32px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body,
  .hero .eyebrow,
  .hero h1,
  .hero .hero-copy,
  .hero .hero-actions,
  .hero .mini-proof,
  .hero .hero-visual {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }

  .btn::before,
  .lu-pro-consult-button::before {
    animation: none !important;
  }
}

/* =========================================================
   MOBILE HERO FIX — dashboard + proof grid
   ========================================================= */
@media (max-width: 900px) {
  .mini-proof {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px 18px !important;
    align-items: center;
    justify-items: center;
    justify-content: center;
    text-align: center;
  }

  .mini-proof span {
    min-width: 0;
    white-space: nowrap;
  }

  .hero-visual {
    min-height: 500px !important;
    overflow: hidden;
  }

  .dashboard {
    inset: 14px !important;
    padding: 16px !important;
    display: flex;
    flex-direction: column;
  }

  .dash-top {
    margin-bottom: 18px !important;
  }

  .chart {
    flex: 0 0 auto;
    height: 220px !important;
  }

  .dash-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-top: 14px !important;
  }

  .metric {
    min-width: 0 !important;
    min-height: 82px !important;
    padding: 13px 9px !important;
    text-align: center !important;
    overflow: hidden !important;
  }

  .metric small {
    display: block;
    width: 100%;
    font-size: clamp(.56rem, 1.9vw, .68rem) !important;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .metric strong {
    display: block;
    width: 100%;
    margin-top: 9px !important;
    font-size: clamp(.86rem, 3.2vw, 1.08rem) !important;
    line-height: 1 !important;
    letter-spacing: -.045em;
    white-space: nowrap !important;
    text-align: center !important;
  }
}

@media (max-width: 480px) {
  .mini-proof {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 11px 12px !important;
    font-size: .73rem !important;
  }

  .mini-proof span::before {
    margin-right: 6px;
  }

  .hero-visual {
    min-height: 465px !important;
    border-radius: 24px !important;
  }

  .dashboard {
    inset: 10px !important;
    padding: 14px !important;
  }

  .dash-title {
    font-size: .98rem !important;
  }

  .status {
    padding: 7px 8px !important;
    font-size: .58rem !important;
  }

  .chart {
    height: 205px !important;
  }

  .dash-cards {
    gap: 6px !important;
    margin-top: 12px !important;
  }

  .metric {
    min-height: 74px !important;
    padding: 11px 6px !important;
    border-radius: 13px !important;
  }

  .metric small {
    font-size: .54rem !important;
  }

  .metric strong {
    margin-top: 8px !important;
    font-size: clamp(.76rem, 3.55vw, .96rem) !important;
  }

  .lu-chart-value {
    font-size: .48rem !important;
    padding: 4px 5px !important;
  }

  .lu-chart-point {
    width: 8px !important;
    height: 8px !important;
  }
}

@media (max-width: 360px) {
  .mini-proof {
    column-gap: 8px !important;
    font-size: .67rem !important;
  }

  .hero-visual {
    min-height: 450px !important;
  }

  .metric strong {
    font-size: .75rem !important;
  }

  .nav {
    padding: 8px 8px 8px 12px !important;
  }

  .brand {
    font-size: .98rem !important;
  }

  .lu-mobile-menu-toggle {
    width: 40px;
    height: 40px;
  }

  h1 {
    font-size: 2.4rem !important;
  }

  .pipeline-card h3,
  .lu-pipeline-card h3 {
    font-size: 1.05rem;
  }

  .lu-pro-jpc-name {
    font-size: 14px;
  }
}


/* =========================================================
   PIPELINE LEVEL UP — substituição da jornada antiga
   ========================================================= */
.lu-pipeline-section {
  position: relative;
  overflow: hidden;
  padding: 112px 0 124px;
  border-block: 1px solid rgba(255,255,255,.055);
  background:
    radial-gradient(circle at 76% 36%, rgba(249,115,22,.075), transparent 31%),
    linear-gradient(180deg,rgba(3,4,6,.94),#050505);
}

.lu-pipeline-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .15;
  background-image:
    linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
  background-size: 46px 46px;
  mask-image: linear-gradient(to bottom,transparent,black 16%,black 86%,transparent);
}

.lu-pipeline-container {
  position: relative;
  z-index: 1;
}

.lu-pipeline-wrap {
  display: grid;
  grid-template-columns: minmax(0,.82fr) minmax(560px,1.18fr);
  gap: clamp(48px,6vw,86px);
  align-items: start;
}

.lu-pipeline-copy {
  position: sticky;
  top: 112px;
  padding-top: 8px;
}

.lu-pipeline-copy h2 {
  margin: 20px 0 20px;
  max-width: 620px;
  font-size: clamp(3rem,5.5vw,5.55rem);
  line-height: .98;
  letter-spacing: -.062em;
}

.lu-pipeline-copy > p {
  max-width: 590px;
  margin: 0;
  color: #9a9aa0;
  font-size: 1rem;
  line-height: 1.78;
}

.lu-pipeline-scroll-hint {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  margin-top: 28px;
  padding: 10px 14px;
  border: 1px solid rgba(249,115,22,.24);
  border-radius: 999px;
  color: #fed7aa;
  background: rgba(249,115,22,.045);
  font-size: .75rem;
  font-weight: 700;
}

.lu-pipeline-hint-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #fb923c;
  box-shadow: 0 0 0 0 rgba(249,115,22,.42),0 0 13px rgba(249,115,22,.85);
  animation: luPipelineHint 2s ease-out infinite;
}

@keyframes luPipelineHint {
  70% { box-shadow: 0 0 0 9px rgba(249,115,22,0),0 0 18px rgba(249,115,22,.9); }
  100% { box-shadow: 0 0 0 0 rgba(249,115,22,0),0 0 13px rgba(249,115,22,.85); }
}

.lu-pipeline-stage {
  position: relative;
  min-height: 1160px;
}

.lu-pipeline-svg {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}

.lu-path-base,
.lu-path-glow {
  fill: none;
  vector-effect: non-scaling-stroke;
}

.lu-path-base {
  stroke: rgba(255,255,255,.075);
  stroke-width: 1.5;
}

.lu-path-glow {
  stroke: url(#luPipelineGradient);
  stroke-width: 2.5;
  stroke-linecap: round;
  filter: url(#luPipelineGlow);
}

.lu-pipeline-card {
  position: absolute;
  z-index: 5;
  width: min(340px,44%);
  padding: 24px;
  overflow: visible;
  border: 1px solid rgba(255,255,255,.075);
  border-radius: 22px;
  background:
    radial-gradient(circle at 90% 0%,rgba(249,115,22,.055),transparent 35%),
    rgba(15,15,18,.88);
  backdrop-filter: blur(18px);
  box-shadow: 0 24px 70px -48px rgba(0,0,0,.95);
  opacity: .24;
  transition:
    opacity .5s ease,
    border-color .35s ease,
    background .35s ease,
    box-shadow .35s ease;
}

.lu-pipeline-card.is-active {
  opacity: 1;
  border-color: rgba(249,115,22,.37);
  background:
    radial-gradient(circle at 90% 0%,rgba(249,115,22,.105),transparent 38%),
    rgba(16,15,17,.96);
  box-shadow:
    0 28px 80px -46px rgba(249,115,22,.48),
    inset 0 1px 0 rgba(255,255,255,.04);
}

.lu-pipeline-card.left { left: 2%; }
.lu-pipeline-card.right { right: 2%; }
.lu-pipeline-card:nth-of-type(1) { top: 2%; }
.lu-pipeline-card:nth-of-type(2) { top: 21%; }
.lu-pipeline-card:nth-of-type(3) { top: 40%; }
.lu-pipeline-card:nth-of-type(4) { top: 59%; }
.lu-pipeline-card:nth-of-type(5) { top: 78%; }

.lu-pipeline-node {
  position: absolute;
  z-index: 9;
  top: 50%;
  width: 11px;
  height: 11px;
  transform: translateY(-50%);
  border: 1px solid rgba(255,237,213,.88);
  border-radius: 50%;
  background: #f97316;
  box-shadow: 0 0 0 0 rgba(249,115,22,.4),0 0 18px rgba(249,115,22,.85);
  animation: luPipelineNode 2.2s ease-out infinite;
}

.lu-pipeline-card.left .lu-pipeline-node { right: -7px; }
.lu-pipeline-card.right .lu-pipeline-node { left: -7px; }

@keyframes luPipelineNode {
  70% { box-shadow: 0 0 0 11px rgba(249,115,22,0),0 0 23px rgba(249,115,22,.95); }
  100% { box-shadow: 0 0 0 0 rgba(249,115,22,0),0 0 18px rgba(249,115,22,.85); }
}

.lu-pipeline-step-label {
  color: #fb923c;
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.lu-pipeline-card h3 {
  margin: 13px 0 10px;
  color: #fff;
  font-size: 1.34rem;
  line-height: 1.18;
  letter-spacing: -.04em;
}

.lu-pipeline-card p {
  margin: 0;
  color: #929298;
  font-size: .79rem;
  line-height: 1.65;
}

/* ===================== PIPELINE — MOBILE ===================== */
/* Mesmo fluxo do desktop (zigue-zague esquerda/direita + linha curva
   animada), só que os cards seguem o fluxo normal do documento em vez
   de posicionamento absoluto, já que a tela não tem largura para as
   duas colunas fixas. O JS mede a posição real dos nós e desenha a
   curva por cima, então funciona igual em qualquer largura. */
@media (max-width: 1023px) {
  .lu-pipeline-section {
    padding: 84px 0 92px;
  }

  .lu-pipeline-wrap {
    grid-template-columns: minmax(0, 1fr);
    gap: 44px;
    max-width: 560px;
    margin-inline: auto;
  }

  .lu-pipeline-copy {
    position: relative;
    top: auto;
    text-align: center;
    padding-inline: 4px;
  }

  .lu-pipeline-copy .eyebrow {
    justify-content: center;
  }

  .lu-pipeline-copy h2 {
    max-width: 100%;
    font-size: clamp(2.45rem, 8.5vw, 4rem);
    margin-inline: auto;
  }

  .lu-pipeline-copy > p {
    max-width: 100%;
    margin-inline: auto;
  }

  .lu-pipeline-scroll-hint {
    justify-content: center;
  }

  .lu-pipeline-stage {
    min-height: auto;
  }

  .lu-pipeline-card[data-step] {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    width: min(360px, 80%);
  }

  .lu-pipeline-card[data-step].left {
    margin-right: auto;
  }

  .lu-pipeline-card[data-step].right {
    margin-left: auto;
  }

  .lu-pipeline-card + .lu-pipeline-card {
    margin-top: 56px;
  }
}

@media (max-width: 560px) {
  .lu-pipeline-section {
    padding: 72px 0 80px;
  }

  .lu-pipeline-wrap {
    gap: 36px;
  }

  .lu-pipeline-copy h2 {
    font-size: clamp(2.2rem, 10.5vw, 3rem);
    line-height: 1.02;
  }

  .lu-pipeline-scroll-hint {
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    line-height: 1.5;
    padding: 10px 16px;
    font-size: .72rem;
  }

  .lu-pipeline-card[data-step] {
    width: min(300px, 86%);
    padding: 20px;
    border-radius: 18px;
  }

  .lu-pipeline-card + .lu-pipeline-card {
    margin-top: 46px;
  }

  .lu-pipeline-card h3 {
    font-size: 1.16rem;
    margin: 11px 0 8px;
  }

  .lu-pipeline-card p {
    font-size: .84rem;
  }

  .lu-pipeline-node {
    width: 13px;
    height: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lu-pipeline-hint-dot,
  .lu-pipeline-node {
    animation: none !important;
  }
}