  :root{
    --bg:#0a0a0a;
    --bg-2:#111111;
    --bg-3:#1a1a1a;
    --yellow:#febe03;
    --yellow-2:#e0a800;
    --text:#ffffff;
    --text-dim:#a8a8a8;
    --border:rgba(254,190,3,.15);
    --shadow:0 20px 60px rgba(0,0,0,.6);
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    font-family:'Manrope',sans-serif;
    background:var(--bg);
    color:var(--text);
    line-height:1.6;
    overflow-x:hidden;
  }
  .container{max-width:1280px;margin:0 auto;padding:0 24px}

  /* ========== NAV ========== */
  .nav{
    position:fixed;top:0;left:0;right:0;z-index:100;
    background:rgba(10,10,10,.85);
    backdrop-filter:blur(12px);
    border-bottom:1px solid rgba(255,255,255,.12);
    padding:16px 0;
  }
  .nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
  .logo{
    font-family:'Oswald',sans-serif;
    font-weight:700;font-size:22px;
    letter-spacing:.05em;
    display:flex;align-items:center;gap:10px;
    text-decoration:none;
  }
  .logo-mark{
    width:38px;height:38px;
    background:var(--yellow);
    display:grid;place-items:center;
    color:#000;font-weight:800;
    transform:rotate(-3deg);
  }
  .logo-text{color:var(--yellow)}
  .logo-text span{color:var(--yellow)}
  .nav-links{display:flex;gap:28px;list-style:none}
  .nav-links a{
    color:var(--text-dim);text-decoration:none;
    font-size:14px;font-weight:500;
    transition:color .2s;
  }
  .nav-links a:hover{color:var(--yellow)}
  .nav-phone{
    background:var(--yellow);color:#000;
    padding:10px 20px;
    font-weight:700;font-size:15px;
    text-decoration:none;
    transition:transform .2s,box-shadow .2s;
    display:flex;align-items:center;gap:8px;
  }
  .nav-phone:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(254,190,3,.3)}
  .burger{display:none;background:none;border:none;color:var(--yellow);cursor:pointer;padding:8px}

  /* ========== HERO ========== */
  .hero{
    position:relative;
    min-height:100vh;
    padding:140px 0 80px;
    overflow:hidden;
    background:
      radial-gradient(ellipse at 70% 30%, rgba(254,190,3,.08), transparent 50%),
      linear-gradient(180deg,#0a0a0a 0%,#0f0f0f 100%);
  }
  .hero::before{
    content:'';position:absolute;inset:0;
    background-image:
      linear-gradient(rgba(254,190,3,.04) 1px,transparent 1px),
      linear-gradient(90deg,rgba(254,190,3,.04) 1px,transparent 1px);
    background-size:60px 60px;
    mask-image:radial-gradient(ellipse at center,black 30%,transparent 70%);
    pointer-events:none;
  }
  .hero-grid{
    position:relative;z-index:2;
    display:grid;grid-template-columns:1.1fr .9fr;
    gap:60px;align-items:center;
  }
  .hero-badge{
    display:inline-flex;align-items:center;gap:10px;
    background:rgba(254,190,3,.1);
    border:1px solid rgba(254,190,3,.3);
    padding:8px 16px;
    font-size:13px;font-weight:600;
    color:var(--yellow);
    letter-spacing:.05em;
    margin-bottom:24px;
  }
  .hero-badge .pulse{
    width:8px;height:8px;background:var(--yellow);
    border-radius:50%;
    animation:pulse 2s infinite;
  }
  @keyframes pulse{
    0%,100%{box-shadow:0 0 0 0 rgba(254,190,3,.7)}
    50%{box-shadow:0 0 0 8px rgba(254,190,3,0)}
  }
  .hero-title{
    font-family:'Oswald',sans-serif;
    font-size:clamp(40px,7vw,88px);
    font-weight:700;
    line-height:.95;
    letter-spacing:-.01em;
    text-transform:uppercase;
    margin-bottom:24px;
  }
  .hero-title .accent{
    color:var(--yellow);
    position:relative;
    display:inline-block;
  }
  .hero-title .accent::after{
    content:'';position:absolute;
    left:0;right:0;bottom:-4px;
    height:6px;background:var(--yellow);
    transform:skewX(-12deg);
    opacity:.3;
  }
  .hero-sub{
    font-size:18px;color:var(--text-dim);
    margin-bottom:36px;max-width:520px;
  }
  .hero-features{
    display:flex;gap:24px;flex-wrap:wrap;
    margin-bottom:40px;
  }
  .hero-feature{
    display:flex;align-items:center;gap:10px;
    font-size:14px;font-weight:600;
    color:var(--text);
  }
  .hero-feature .dot{
    width:6px;height:6px;background:var(--yellow);
    border-radius:50%;
  }
  .hero-cta{display:flex;gap:16px;flex-wrap:wrap}
  .btn{
    display:inline-flex;align-items:center;gap:10px;
    padding:18px 32px;
    font-weight:700;font-size:16px;
    text-decoration:none;
    transition:all .25s;
    cursor:pointer;border:none;
    font-family:inherit;
  }
  .btn-primary{
    background:var(--yellow);color:#000;
    box-shadow:0 8px 30px rgba(254,190,3,.25);
  }
  .btn-primary:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 40px rgba(254,190,3,.4);
  }
  .btn-ghost{
    background:transparent;color:var(--text);
    border:1px solid rgba(255,255,255,.2);
  }
  .btn-ghost:hover{
    border-color:var(--yellow);color:var(--yellow);
  }

  /* truck illustration */
  .hero-visual{
    position:relative;
    aspect-ratio:1;
    display:grid;place-items:center;
  }
  .hero-visual::before{
    content:'';position:absolute;
    width:90%;height:90%;
    background:radial-gradient(circle,rgba(254,190,3,.15),transparent 60%);
    filter:blur(20px);
  }
  .truck-photo{
    position:relative;z-index:2;
    width:100%;max-width:580px;
    filter:
      drop-shadow(0 30px 30px rgba(0,0,0,.65))
      drop-shadow(0 10px 20px rgba(254,190,3,.08));
    animation:float 5s ease-in-out infinite;
  }
  .hero-visual::after{
    content:'';
    position:absolute;
    bottom:8%;left:10%;right:10%;
    height:30px;
    background:radial-gradient(ellipse at center,rgba(0,0,0,.7),transparent 70%);
    filter:blur(8px);
    z-index:1;
    animation:shadowPulse 5s ease-in-out infinite;
  }
  @keyframes shadowPulse{
    0%,100%{transform:scale(1);opacity:.7}
    50%{transform:scale(.92);opacity:.5}
  }
  .motion-lines{
    position:absolute;
    left:-10px;top:50%;
    transform:translateY(-50%);
    width:80px;height:200px;
    z-index:3;
    animation:slideLines 1.8s ease-in-out infinite;
  }
  @keyframes slideLines{
    0%,100%{opacity:.4;transform:translateY(-50%) translateX(0)}
    50%{opacity:1;transform:translateY(-50%) translateX(-8px)}
  }
  @keyframes float{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-12px)}
  }
  .hero-stats{
    position:absolute;
    top:20px;right:0;
    background:rgba(20,20,20,.9);
    backdrop-filter:blur(10px);
    border:1px solid var(--border);
    padding:16px 20px;
    z-index:3;
  }
  .hero-stats-num{
    font-family:'Oswald',sans-serif;
    font-size:32px;color:var(--yellow);font-weight:700;
    line-height:1;
  }
  .hero-stats-label{
    font-size:11px;color:var(--text-dim);
    text-transform:uppercase;letter-spacing:.1em;
    margin-top:4px;
  }
  .hero-stats-2{top:auto;bottom:30px;right:auto;left:-10px}
  .hero-stats-mobile{display:none}

  /* ========== SECTIONS ========== */
  section{padding:100px 0;position:relative}
  .section-head{
    display:flex;align-items:flex-end;
    justify-content:space-between;gap:40px;
    margin-bottom:60px;flex-wrap:wrap;
  }
  .section-tag{
    display:inline-block;
    font-size:12px;color:var(--yellow);
    font-weight:700;letter-spacing:.2em;
    text-transform:uppercase;
    margin-bottom:16px;
  }
  .section-tag::before{
    content:'';display:inline-block;
    width:32px;height:1px;background:var(--yellow);
    vertical-align:middle;margin-right:12px;
  }
  .section-title{
    font-family:'Oswald',sans-serif;
    font-size:clamp(32px,5vw,56px);
    font-weight:700;line-height:1;
    text-transform:uppercase;
    letter-spacing:-.01em;
    max-width:700px;
  }
  .section-title .accent{color:var(--yellow)}
  .section-lead{
    color:var(--text-dim);font-size:16px;
    max-width:380px;
  }

  /* ========== SERVICES ========== */
  .services{background:var(--bg-2)}
  .services-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1px;
    background:var(--border);
    border:1px solid var(--border);
  }
  .service{
    background:var(--bg-2);
    padding:40px 32px;
    position:relative;
    transition:background .3s;
    cursor:default;
    overflow:hidden;
  }
  .service::before{
    content:'';position:absolute;
    top:0;left:0;right:0;height:2px;
    background:var(--yellow);
    transform:scaleX(0);transform-origin:left;
    transition:transform .4s;
  }
  .service:hover{background:var(--bg-3)}
  .service:hover::before{transform:scaleX(1)}
  .service-icon{
    width:60px;height:60px;
    background:rgba(254,190,3,.1);
    border:1px solid rgba(254,190,3,.3);
    display:grid;place-items:center;
    margin-bottom:24px;
    color:var(--yellow);
    transition:all .3s;
  }
  .service:hover .service-icon{
    background:var(--yellow);color:#000;
  }
  .service-num{
    position:absolute;
    top:24px;right:24px;
    font-family:'Oswald',sans-serif;
    font-size:14px;color:rgba(255,255,255,.15);
    font-weight:700;
  }
  .service-title{
    font-family:'Oswald',sans-serif;
    font-size:22px;font-weight:600;
    text-transform:uppercase;
    line-height:1.1;
    margin-bottom:14px;
  }
  .service-desc{
    color:var(--text-dim);font-size:14px;
    line-height:1.6;
  }

  /* ========== ADVANTAGES ========== */
  .advantages-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
  }
  .advantage{
    text-align:center;
    padding:36px 24px;
    background:var(--bg-2);
    border:1px solid var(--border);
    position:relative;
    transition:transform .3s,border-color .3s;
  }
  .advantage:hover{
    transform:translateY(-6px);
    border-color:var(--yellow);
  }
  .advantage-icon{
    width:72px;height:72px;
    margin:0 auto 20px;
    background:var(--bg-3);
    display:grid;place-items:center;
    color:var(--yellow);
    border-radius:50%;
  }
  .advantage-title{
    font-family:'Oswald',sans-serif;
    font-size:18px;font-weight:700;
    text-transform:uppercase;
    letter-spacing:.05em;
    margin-bottom:8px;
  }
  .advantage-desc{
    font-size:14px;color:var(--text-dim);
  }

  /* ========== TRUCK SPECS ========== */
  .specs{
    background:linear-gradient(135deg,#0a0a0a 0%,#141414 100%);
    position:relative;overflow:hidden;
  }
  .specs::before{
    content:'';position:absolute;
    right:-100px;top:50%;transform:translateY(-50%);
    width:500px;height:500px;
    background:radial-gradient(circle,rgba(254,190,3,.08),transparent 60%);
    filter:blur(40px);
  }
  .specs-grid{
    display:grid;grid-template-columns:1fr 1fr;
    gap:60px;align-items:center;
  }
  .specs-visual{
    position:relative;text-align:center;
  }
  .specs-visual svg{
    width:100%;max-width:480px;
    filter:drop-shadow(0 20px 40px rgba(0,0,0,.5));
  }
  .specs-list{display:grid;gap:20px}
  .spec-item{
    display:flex;align-items:center;gap:20px;
    padding:20px 24px;
    background:rgba(255,255,255,.02);
    border-left:3px solid var(--yellow);
  }
  .spec-icon{
    width:50px;height:50px;flex-shrink:0;
    background:rgba(254,190,3,.1);
    display:grid;place-items:center;
    color:var(--yellow);
  }
  .spec-num{
    font-family:'Oswald',sans-serif;
    font-size:28px;font-weight:700;
    color:var(--yellow);line-height:1;
  }
  .spec-label{
    font-size:14px;color:var(--text-dim);
    margin-top:4px;
  }

  /* ========== HOW ========== */
  .how-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
    position:relative;
  }
  .how-grid::before{
    content:'';position:absolute;
    top:35px;left:8%;right:8%;
    height:2px;
    background:repeating-linear-gradient(90deg,var(--yellow) 0 8px,transparent 8px 16px);
    opacity:.3;
    z-index:0;
  }
  .step{
    position:relative;z-index:1;
    text-align:center;
  }
  .step-num{
    width:70px;height:70px;
    margin:0 auto 24px;
    background:var(--bg);
    border:2px solid var(--yellow);
    display:grid;place-items:center;
    font-family:'Oswald',sans-serif;
    font-size:28px;font-weight:700;
    color:var(--yellow);
    border-radius:50%;
    position:relative;
  }
  .step-num::before{
    content:'';position:absolute;
    inset:-8px;
    border:1px dashed rgba(254,190,3,.3);
    border-radius:50%;
    animation:rotate 20s linear infinite;
  }
  @keyframes rotate{to{transform:rotate(360deg)}}
  .step-title{
    font-family:'Oswald',sans-serif;
    font-size:18px;font-weight:600;
    text-transform:uppercase;
    margin-bottom:10px;
  }
  .step-desc{
    font-size:14px;color:var(--text-dim);
  }

  /* ========== CTA BANNER ========== */
  .cta-banner{
    background:var(--yellow);
    color:#000;
    padding:80px 0;
    position:relative;overflow:hidden;
  }
  .cta-banner::before,.cta-banner::after{
    content:'';position:absolute;
    top:0;height:100%;width:60px;
    background:repeating-linear-gradient(
      -45deg,#000 0 10px,var(--yellow) 10px 20px
    );
  }
  .cta-banner::before{left:0}
  .cta-banner::after{right:0}
  .cta-inner{
    display:grid;
    grid-template-columns:1.5fr 1fr;
    gap:40px;align-items:center;
    position:relative;z-index:2;
    padding:0 80px;
  }
  .cta-title{
    font-family:'Oswald',sans-serif;
    font-size:clamp(32px,4.5vw,52px);
    font-weight:700;line-height:1;
    text-transform:uppercase;
  }
  .cta-title strong{
    display:block;
    background:#000;color:var(--yellow);
    padding:6px 16px;
    transform:skewX(-6deg);
    width:fit-content;
    margin-top:8px;
  }
  .cta-buttons{display:flex;flex-direction:column;gap:14px}
  .cta-phone{
    background:#000;color:var(--yellow);
    padding:20px 28px;
    font-family:'Oswald',sans-serif;
    font-size:24px;font-weight:700;
    text-decoration:none;
    display:flex;align-items:center;gap:14px;
    transition:transform .2s;
  }
  .cta-phone:hover{transform:scale(1.03)}
  .cta-social{
    display:flex;gap:10px;
  }
  .cta-social a{
    flex:1;
    background:rgba(0,0,0,.85);
    color:var(--yellow);
    padding:14px;
    text-align:center;
    text-decoration:none;
    font-weight:700;font-size:13px;
    display:flex;align-items:center;justify-content:center;gap:8px;
    transition:background .2s;
    text-transform:uppercase;
    letter-spacing:.05em;
  }
  .cta-social a:hover{background:#1a1a1a}

  /* ========== CONTACTS ========== */
  .contacts-grid{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:24px;
  }
  .contact-card{
    background:var(--bg-2);
    border:1px solid var(--border);
    padding:36px 32px;
    text-decoration:none;
    color:var(--text);
    display:block;
    position:relative;
    overflow:hidden;
    transition:all .3s;
  }
  .contact-card::after{
    content:'→';
    position:absolute;
    top:32px;right:32px;
    font-size:24px;
    color:var(--yellow);
    opacity:0;
    transform:translateX(-10px);
    transition:all .3s;
  }
  .contact-card:hover{
    border-color:var(--yellow);
    transform:translateY(-4px);
  }
  .contact-card:hover::after{
    opacity:1;
    transform:translateX(0);
  }
  .contact-icon{
    width:54px;height:54px;
    background:rgba(254,190,3,.1);
    color:var(--yellow);
    display:grid;place-items:center;
    margin-bottom:20px;
  }
  .contact-label{
    font-size:12px;color:var(--text-dim);
    text-transform:uppercase;letter-spacing:.15em;
    margin-bottom:8px;
  }
  .contact-value{
    font-family:'Oswald',sans-serif;
    font-size:22px;font-weight:600;
  }

  /* ========== FOOTER ========== */
  footer{
    background:#050505;
    padding:50px 0 30px;
    border-top:1px solid var(--border);
  }
  .footer-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;gap:24px;
  }
  .footer-info{
    color:var(--text-dim);font-size:13px;
  }
  .footer-info strong{color:var(--text)}
  .footer-tagline{
    font-family:'Oswald',sans-serif;
    font-size:14px;
    color:var(--yellow);
    letter-spacing:.1em;
    text-transform:uppercase;
  }

  /* ========== FLOATING CALL ========== */
  .floating-call{
    position:fixed;
    bottom:24px;right:24px;
    z-index:50;
    width:60px;height:60px;
    background:var(--yellow);
    border-radius:50%;
    display:grid;place-items:center;
    box-shadow:0 8px 30px rgba(254,190,3,.4);
    color:#000;
    text-decoration:none;
    animation:bell 2s ease-in-out infinite;
  }
  @keyframes bell{
    0%,100%{transform:rotate(0)}
    10%,30%{transform:rotate(-12deg)}
    20%,40%{transform:rotate(12deg)}
    50%{transform:rotate(0)}
  }

  /* ========== RESPONSIVE ========== */
  @media (max-width:1024px){
    .services-grid{grid-template-columns:repeat(2,1fr)}
    .advantages-grid{grid-template-columns:repeat(2,1fr)}
    .how-grid{grid-template-columns:repeat(2,1fr);gap:50px 24px}
    .how-grid::before{display:none}
    .specs-grid{grid-template-columns:1fr;gap:40px}
    .cta-inner{grid-template-columns:1fr;padding:0 40px;gap:30px;text-align:center}
    .cta-title strong{margin-left:auto;margin-right:auto}
  }
  @media (max-width:768px){
    section{padding:70px 0}
    .nav-links{display:none}
    .burger{display:block}
    .nav-phone{padding:8px 14px;font-size:13px}
    .nav-phone span:not(.icon){display:none}
    .hero{padding:120px 0 60px}
    .hero-grid{grid-template-columns:1fr;gap:32px}
    .hero-cta{margin-bottom:8px}
    .hero-visual{max-width:400px;margin:0 auto;order:2}
    /* Hide floating badges on mobile — replace with inline stat strip */
    .hero-stats{display:none}
    /* Mobile stat strip — clean horizontal row above the truck */
    .hero-stats-mobile{
      display:flex;
      align-items:stretch;
      gap:0;
      background:linear-gradient(90deg,rgba(254,190,3,.06),rgba(254,190,3,.02));
      border:1px solid rgba(254,190,3,.2);
      border-left:3px solid var(--yellow);
      padding:14px 16px;
      margin-top:24px;
    }
    .hero-stats-mobile .stat{
      flex:1;
      display:flex;
      align-items:center;
      gap:12px;
      min-width:0;
    }
    .hero-stats-mobile .stat + .stat{
      border-left:1px solid rgba(255,255,255,.08);
      padding-left:16px;
      margin-left:4px;
    }
    .hero-stats-mobile .stat-num{
      font-family:'Oswald',sans-serif;
      font-size:26px;font-weight:700;
      color:var(--yellow);line-height:1;
      flex-shrink:0;
    }
    .hero-stats-mobile .stat-label{
      font-size:10px;
      color:var(--text-dim);
      text-transform:uppercase;
      letter-spacing:.08em;
      line-height:1.2;
      font-weight:600;
    }
    .contacts-grid{grid-template-columns:1fr}
    .cta-banner::before,.cta-banner::after{width:30px}
    .cta-inner{padding:0 50px}
    .footer-inner{flex-direction:column;text-align:center}
  }
  @media (max-width:520px){
    .services-grid{grid-template-columns:1fr}
    .advantages-grid{grid-template-columns:1fr}
    .how-grid{grid-template-columns:1fr}
    .section-head{flex-direction:column;align-items:flex-start}
  }

  /* ========== REVEAL ANIMATIONS ========== */
  /* Respect reduced motion */
  @media (prefers-reduced-motion:reduce){
    .reveal,[class*="reveal-"]{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important;transition:none!important}
  }

  /* Base reveal — fade up (default for section heads, lead text) */
  .reveal{
    opacity:0;
    transform:translateY(40px);
    filter:blur(6px);
    transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1),filter .9s ease;
    will-change:transform,opacity,filter;
  }
  .reveal.visible{opacity:1;transform:translateY(0);filter:blur(0)}

  /* Slide from left — for left-side titles */
  .reveal-left{
    opacity:0;
    transform:translateX(-50px);
    transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);
    will-change:transform,opacity;
  }
  .reveal-left.visible{opacity:1;transform:translateX(0)}

  /* Slide from right — for right-side lead text */
  .reveal-right{
    opacity:0;
    transform:translateX(50px);
    transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);
    will-change:transform,opacity;
  }
  .reveal-right.visible{opacity:1;transform:translateX(0)}

  /* Scale + fade — for advantage cards (more punchy) */
  .reveal-scale{
    opacity:0;
    transform:translateY(30px) scale(.88);
    transition:opacity .7s cubic-bezier(.34,1.56,.64,1),transform .7s cubic-bezier(.34,1.56,.64,1);
    will-change:transform,opacity;
  }
  .reveal-scale.visible{opacity:1;transform:translateY(0) scale(1)}

  /* Slide-up reveal — for service cards (clean rise from below) */
  .reveal-clip{
    opacity:0;
    transform:translateY(60px);
    transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);
    will-change:transform,opacity;
  }
  .reveal-clip.visible{opacity:1;transform:translateY(0)}

  /* Pop reveal — for circular step numbers */
  .reveal-pop{
    opacity:0;
    transform:scale(0) rotate(-90deg);
    transition:opacity .6s ease,transform .8s cubic-bezier(.34,1.7,.64,1);
    will-change:transform,opacity;
  }
  .reveal-pop.visible{opacity:1;transform:scale(1) rotate(0)}

  /* Stagger delays — applied via data attribute or :nth-child */
  .stagger > .reveal:nth-child(1),.stagger > [class*="reveal-"]:nth-child(1){transition-delay:0s}
  .stagger > .reveal:nth-child(2),.stagger > [class*="reveal-"]:nth-child(2){transition-delay:.1s}
  .stagger > .reveal:nth-child(3),.stagger > [class*="reveal-"]:nth-child(3){transition-delay:.2s}
  .stagger > .reveal:nth-child(4),.stagger > [class*="reveal-"]:nth-child(4){transition-delay:.3s}
  .stagger > .reveal:nth-child(5),.stagger > [class*="reveal-"]:nth-child(5){transition-delay:.4s}

  /* Hero on-load animations (no scroll trigger needed) */
  .hero-text > *{
    opacity:0;
    transform:translateY(20px);
    animation:heroIn .9s cubic-bezier(.22,1,.36,1) forwards;
  }
  .hero-text > *:nth-child(1){animation-delay:.1s}
  .hero-text > *:nth-child(2){animation-delay:.25s}
  .hero-text > *:nth-child(3){animation-delay:.4s}
  .hero-text > *:nth-child(4){animation-delay:.55s}
  .hero-text > *:nth-child(5){animation-delay:.7s}
  .hero-text > *:nth-child(6){animation-delay:.85s}
  @keyframes heroIn{
    to{opacity:1;transform:translateY(0)}
  }
  .hero-visual{
    opacity:0;
    transform:translateX(60px) scale(.95);
    animation:heroVisualIn 1.2s cubic-bezier(.22,1,.36,1) .5s forwards;
  }
  @keyframes heroVisualIn{
    to{opacity:1;transform:translateX(0) scale(1)}
  }
