:root{
    --bg:#0b0f19;
    --panel:#0f172a;
    --text:#e5e7eb;
    --muted:rgba(229,231,235,.72);
    --line:rgba(255,255,255,.10);
    --brand:#7c3aed;
    --brand2:#22d3ee;
    --shadow:0 18px 50px rgba(0,0,0,.35);
    --r:18px;
    --max:1100px;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;
    font-family: "Avenir Next", "Segoe UI", "Trebuchet MS", "Helvetica Neue", Arial, sans-serif;
    color:var(--text);
    background:
      radial-gradient(900px 500px at 15% 10%, rgba(124,58,237,.25), transparent 60%),
      radial-gradient(900px 500px at 80% 10%, rgba(34,211,238,.15), transparent 60%),
      var(--bg);
  }
  a{color:inherit;text-decoration:none}
  .container{max-width:var(--max);margin:0 auto;padding:24px 18px 64px}
  .nav{
    position:sticky;top:0;z-index:50;
    backdrop-filter: blur(10px);
    background: rgba(11,15,25,.55);
    border-bottom:1px solid var(--line);
  }
  .navInner{
    max-width:var(--max);margin:0 auto;padding:14px 18px;
    display:flex;align-items:center;justify-content:space-between;gap:12px;
  }
  .brand{font-weight:800;display:flex;align-items:center;gap:10px}
  .brandDot{
    width:10px;height:10px;border-radius:999px;
    background: linear-gradient(90deg,var(--brand),var(--brand2));
    box-shadow: 0 0 18px rgba(124,58,237,.5);
  }
  .links{display:flex;gap:14px;flex-wrap:wrap}
  .links a{
    color:var(--muted);
    padding:8px 10px;
    border-radius:12px;
    position:relative;
    transition: color .22s ease, background-color .22s ease;
  }
  .links a::after{
    content:"";
    position:absolute;
    left:10px;
    right:10px;
    bottom:4px;
    height:2px;
    border-radius:2px;
    background:linear-gradient(90deg,var(--brand),var(--brand2));
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .26s ease;
  }
  .links a:hover{background:rgba(255,255,255,.04);color:var(--text)}
  .links a:hover::after,.links a.isActive::after{transform:scaleX(1)}
  .links a.isActive{color:var(--text)}
  .links a.peekLink{
    padding-right:18px;
  }
  .links a.peekLink::before{
    content:"";
    position:absolute;
    right:-2px;
    top:7px;
    font-size:14px;
    opacity:0;
    transform:translateY(-2px) scale(.9);
    transition:opacity .2s ease, transform .2s ease;
  }
  .links a.peekLink:hover::before{
    content:"oo";
    opacity:1;
    transform:translateY(0) scale(1);
  }
  .btn,.btnGhost{
    display:inline-flex;align-items:center;justify-content:center;
    border-radius:14px;padding:10px 14px;font-weight:700;
    border:1px solid var(--line);cursor:pointer;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
  }
  .btn{
    background: linear-gradient(90deg, rgba(124,58,237,.35), rgba(34,211,238,.18));
    box-shadow: 0 10px 30px rgba(0,0,0,.25);
  }
  .btn:hover{
    transform:translateY(-2px);
    border-color:rgba(34,211,238,.45);
    box-shadow:0 14px 35px rgba(34,211,238,.20);
  }
  .btnGhost{background:rgba(255,255,255,.03)}
  .btnGhost:hover{
    transform:translateY(-2px);
    background:rgba(255,255,255,.08);
    border-color:rgba(124,58,237,.45);
  }
  #jokeBtn{
    position:relative;
    overflow:hidden;
    background:rgba(255,255,255,.03);
    color:var(--text);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  }
  #jokeBtn::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(120deg, transparent 0%, rgba(255,255,255,.18) 45%, transparent 70%);
    transform: translateX(-130%);
    transition: transform .45s ease;
    pointer-events:none;
  }
  #jokeBtn:hover{
    transform: translateY(-2px);
    border-color: rgba(34,211,238,.5);
    color:#eaffff;
    background: linear-gradient(90deg, rgba(124,58,237,.35), rgba(34,211,238,.22));
    box-shadow: 0 10px 28px rgba(34,211,238,.22), 0 0 0 1px rgba(124,58,237,.25) inset;
  }
  #jokeBtn:hover::before{
    transform: translateX(130%);
  }
  .stackLg{display:flex;flex-direction:column;gap:22px}
  .stackMd{display:flex;flex-direction:column;gap:14px}
  .row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
  .muted{color:var(--muted)}
  .h1{font-size:44px;line-height:1.05;letter-spacing:-1px;margin:0}
  .lead{font-size:16px;line-height:1.7;color:var(--muted);margin:0}
  @media (max-width:620px){.h1{font-size:36px}}
  .tinyNote{font-size:12px}
  
  .heroCard{
    padding:22px;border:1px solid var(--line);border-radius:var(--r);
    background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
    box-shadow: var(--shadow);
  }
  .pillRow{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
  .pill{
    border:1px solid var(--line);
    background:rgba(255,255,255,.03);
    border-radius:999px;padding:6px 10px;
    font-size:13px;color:rgba(229,231,235,.85);
  }
  
  .sectionHeader{display:flex;align-items:center;justify-content:space-between;gap:14px}
  .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
  @media (max-width:980px){.grid{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:620px){.grid{grid-template-columns:1fr}}
  
  .card{
    border:1px solid var(--line);border-radius:18px;
    background: rgba(15,23,42,.75);
    overflow:hidden;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  }
  .card:hover{
    transform: translateY(-4px);
    box-shadow:0 22px 42px rgba(0,0,0,.38);
    border-color:rgba(34,211,238,.30);
  }
  .cardCover img{
    width:100%;height:160px;object-fit:cover;display:block;
    transition:transform .35s ease;
  }
  .card:hover .cardCover img{transform:scale(1.04)}
  .cardBody{padding:14px}
  .cardBody h3{margin:6px 0 8px}
  .tagRow{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
  .tag{
    font-size:12px;padding:5px 9px;border-radius:999px;
    border:1px solid var(--line);
    background:rgba(255,255,255,.03);
    color:rgba(229,231,235,.82);
  }
  
  .filters{display:flex;gap:12px;flex-wrap:wrap}
  .input,.select{
    border:1px solid var(--line);
    background:rgba(255,255,255,.03);
    border-radius:14px;padding:10px 12px;color:var(--text);outline:none;
  }
  .input{flex:1;min-width:220px}
  .select{min-width:180px}
  
  .panel{
    border:1px solid var(--line);
    border-radius:var(--r);
    padding:18px;
    background: rgba(15,23,42,.6);
    transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
  }
  .panel:hover{
    border-color:rgba(124,58,237,.35);
    box-shadow:0 16px 40px rgba(0,0,0,.24);
  }
  .twoCol{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  @media (max-width:860px){.twoCol{grid-template-columns:1fr}}
  
  .detailTop{display:grid;grid-template-columns:1fr 1.2fr;gap:14px;align-items:stretch}
  @media (max-width:900px){.detailTop{grid-template-columns:1fr}}
  .detailCover{
    width:100%;height:320px;object-fit:cover;
    border-radius:var(--r);border:1px solid var(--line);
  }
  .list{margin:10px 0 0;color:var(--muted);line-height:1.7}
  .shots{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px}
  @media (max-width:720px){.shots{grid-template-columns:1fr}}
  .shot{width:100%;border-radius:14px;border:1px solid var(--line)}
  .projectVideo{
    width:100%;
    border-radius:14px;
    border:1px solid var(--line);
    background:#020617;
    margin-top:12px;
    max-height:70vh;
  }
  
  .footer{
    border-top:1px solid var(--line);
    background: rgba(11,15,25,.55);
  }
  .footerInner{
    max-width:var(--max);margin:0 auto;padding:16px 18px;
    display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
  }
  /* ===== 3D Background ===== */
.bg3d{
    position: fixed;
    inset: 0;
    z-index: -1;
    overflow: hidden;
    background:
      radial-gradient(900px 600px at 15% 10%, rgba(124,58,237,.20), transparent 60%),
      radial-gradient(900px 600px at 85% 15%, rgba(34,211,238,.14), transparent 60%),
      radial-gradient(700px 500px at 45% 80%, rgba(56,189,248,.10), transparent 60%),
      #070a12;
    animation:bgShift 16s ease-in-out infinite alternate;
  }
  .bg3d::before,
  .bg3d::after{
    content:"";
    position:absolute;
    inset:-18%;
    pointer-events:none;
    mix-blend-mode:screen;
  }
  .bg3d::before{
    background:
      radial-gradient(540px 260px at 20% 20%, rgba(34,211,238,.18), transparent 70%),
      radial-gradient(560px 280px at 80% 30%, rgba(124,58,237,.18), transparent 72%),
      radial-gradient(520px 240px at 50% 85%, rgba(14,165,233,.12), transparent 72%);
    filter: blur(10px);
    animation: auroraSweep 18s ease-in-out infinite alternate;
  }
  .bg3d::after{
    background:
      conic-gradient(from 120deg at 30% 30%, rgba(124,58,237,.12), rgba(34,211,238,.12), rgba(59,130,246,.10), rgba(124,58,237,.12));
    opacity:.42;
    filter: blur(28px);
    animation: auroraRotate 28s linear infinite;
  }
  
  /* Perspective grid plane */
  .bg3d__grid{
    position:absolute;
    left:50%;
    top:62%;
    width: 180vw;
    height: 180vh;
    transform: translate(-50%,-50%) perspective(900px) rotateX(62deg) rotateZ(0deg);
    transform-origin: center;
    opacity: .55;
    filter: drop-shadow(0 0 18px rgba(124,58,237,.20));
    animation:gridDrift 14s ease-in-out infinite alternate;
  }
  
  /* Two layered grids to create depth */
  .bg3d__grid::before,
  .bg3d__grid::after{
    content:"";
    position:absolute;
    inset:0;
    background:
      linear-gradient(to right, rgba(255,255,255,.11) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(255,255,255,.09) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: radial-gradient(closest-side at 50% 50%, black 35%, transparent 72%);
  }
  
  /* second grid offset + blur = “3D line match” look */
  .bg3d__grid::after{
    transform: translate3d(0, 22px, 0) scale(1.02);
    opacity: .45;
    filter: blur(0.2px);
  }
  
  /* Floating glow blobs */
  .bg3d__glow{
    position:absolute;
    inset:-20%;
    background:
      radial-gradient(650px 320px at 20% 25%, rgba(124,58,237,.22), transparent 60%),
      radial-gradient(650px 320px at 80% 30%, rgba(34,211,238,.16), transparent 60%),
      radial-gradient(500px 260px at 55% 80%, rgba(14,165,233,.12), transparent 60%);
    filter: blur(18px);
    animation: bgFloat 10s ease-in-out infinite alternate;
    opacity: .85;
  }
  
  /* Subtle film grain/noise (premium look) */
  .bg3d__noise{
    position:absolute;
    inset:0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E");
    mix-blend-mode: overlay;
    opacity: .22;
    pointer-events:none;
  }
  
  @keyframes bgFloat{
    0% { transform: translate3d(0,0,0) scale(1); }
    100% { transform: translate3d(-2%,1.5%,0) scale(1.03); }
  }
  @keyframes gridDrift{
    0%{transform: translate(-50%,-50%) perspective(900px) rotateX(62deg) rotateZ(-1deg)}
    100%{transform: translate(-50%,-50%) perspective(900px) rotateX(62deg) rotateZ(1deg)}
  }
  @keyframes bgShift{
    0%{filter:hue-rotate(0deg)}
    100%{filter:hue-rotate(8deg)}
  }
  @keyframes auroraSweep{
    0%{transform:translate3d(-2%, -1%, 0) scale(1)}
    100%{transform:translate3d(2%, 1.5%, 0) scale(1.04)}
  }
  @keyframes auroraRotate{
    0%{transform:rotate(0deg) scale(1)}
    100%{transform:rotate(360deg) scale(1.03)}
  }
  
  /* Make grid a bit smaller on mobile */
  @media (max-width: 700px){
    .bg3d__grid{
      top: 70%;
      transform: translate(-50%,-50%) perspective(800px) rotateX(64deg);
      opacity: .45;
    }
  }
  /* ===== Index extras ===== */
  .miniRow{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    font-size:13px;
    padding-top:8px;
    border-top:1px solid var(--line);
  }
  .heroNow{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
  }
  @media (max-width:980px){.heroNow{grid-template-columns:1fr}}
  .heroNowCard{
    border:1px solid var(--line);
    border-radius:12px;
    background:rgba(255,255,255,.02);
    padding:10px 11px;
    transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease;
  }
  .heroNowCard:hover{
    border-color:rgba(34,211,238,.4);
    transform:translateY(-1px);
    box-shadow:0 8px 24px rgba(34,211,238,.10);
  }
  .heroNowLabel{
    font-size:12px;
    color:var(--muted);
    margin-bottom:6px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.4px;
  }
  .heroNowValue{
    font-size:14px;
    line-height:1.45;
    font-weight:600;
  }
  
  .quoteBox{
    border:1px solid var(--line);
    background:rgba(255,255,255,.03);
    border-radius:16px;
    padding:12px;
    transition:border-color .25s ease, box-shadow .25s ease;
  }
  .quoteBox.isPop{
    animation: quotePop .36s ease;
    border-color:rgba(34,211,238,.5);
    box-shadow:0 10px 24px rgba(34,211,238,.15);
  }
  .quoteText{
    font-size:16px;
    line-height:1.6;
    margin-top:6px;
  }
  
  .grid3{
    display:grid;
    grid-template-columns: repeat(4, 1fr);
    gap:12px;
  }
  @media (max-width:1100px){.grid3{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:720px){.grid3{grid-template-columns:1fr}}
  .statCard{
    border:1px solid var(--line);
    border-radius:16px;
    padding:14px;
    background:rgba(255,255,255,.02);
    transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
  }
  .statCard:hover{
    transform:translateY(-3px);
    border-color:rgba(34,211,238,.35);
    box-shadow:0 14px 34px rgba(34,211,238,.12);
  }
  .statNum{
    font-size:28px;
    font-weight:900;
    letter-spacing:-.5px;
    font-variant-numeric: tabular-nums;
    text-shadow:0 0 24px rgba(124,58,237,.25);
  }
  .statNumInfinity{
    animation: infinityPulse 2s ease-in-out infinite;
    display:inline-block;
  }
  
  .chipGrid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap:12px;
  }
  @media (max-width:980px){.chipGrid{grid-template-columns:1fr}}
  .chipGroup{
    border:1px solid var(--line);
    border-radius:16px;
    padding:14px;
    background:rgba(255,255,255,.02);
  }
  .chipTitle{
    font-weight:800;
    margin-bottom:10px;
  }
  
  .timeline{display:flex;flex-direction:column;gap:14px}
  .tItem{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start}
  .tDot{
    width:10px;height:10px;border-radius:999px;margin-top:6px;
    background:linear-gradient(90deg,var(--brand),var(--brand2));
    box-shadow:0 0 18px rgba(124,58,237,.45);
  }
  .tTitle{font-weight:900}

  .heroSplit{
    display:grid;
    grid-template-columns: 1.2fr .95fr;
    gap:14px;
    align-items:stretch;
  }
  .magicHero{
    display:grid;
    grid-template-columns: 1.25fr .9fr;
    gap:14px;
    align-items:stretch;
  }
  @media (max-width:980px){.magicHero{grid-template-columns:1fr}}
  @media (max-width:950px){.heroSplit{grid-template-columns:1fr}}
  .heroVisual{
    padding:10px;
    overflow:hidden;
  }
  .heroImg{
    width:100%;
    height:100%;
    min-height:300px;
    object-fit:cover;
    border-radius:14px;
    border:1px solid var(--line);
    transform:scale(1.01);
    transition:transform .35s ease, filter .35s ease;
  }
  .heroVisual:hover .heroImg{
    transform:scale(1.03);
    filter:saturate(1.08);
  }

  .nowTicker{
    border:1px solid var(--line);
    background:linear-gradient(90deg, rgba(124,58,237,.25), rgba(34,211,238,.12));
    border-radius:12px;
    padding:12px 14px;
    font-weight:700;
    line-height:1.4;
  }
  .nowTicker.isPop{
    animation:quotePop .34s ease;
  }

  .imageStoryGrid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:14px;
  }
  .imageStory img{
    width:100%;
    border-radius:14px;
    border:1px solid var(--line);
    margin-bottom:10px;
    transition:transform .35s ease, box-shadow .35s ease;
  }
  .imageStory:hover img{
    transform:translateY(-2px) scale(1.01);
    box-shadow:0 12px 28px rgba(34,211,238,.16);
  }
  .imageStory h3{margin:4px 0 6px}
  .imageStory p{margin:0}
  .cookTicker{
    border:1px solid var(--line);
    border-radius:12px;
    padding:12px 14px;
    font-weight:700;
    background:linear-gradient(90deg, rgba(245,158,11,.22), rgba(239,68,68,.16));
  }
  .cookTicker.isPop{animation:quotePop .36s ease}
  .lifeProbe{
    border:1px solid var(--line);
    border-radius:14px;
    padding:16px;
    background:rgba(255,255,255,.02);
  }
  .probeHint{
    font-weight:700;
    margin-bottom:10px;
  }
  .lifeTerminal{
    border:1px solid rgba(34,211,238,.35);
    background:linear-gradient(180deg, rgba(6,11,24,.95), rgba(7,16,30,.95));
    border-radius:12px;
    overflow:hidden;
    max-height:0;
    opacity:0;
    transform:translateY(6px);
    transition:max-height .32s ease, opacity .26s ease, transform .26s ease;
  }
  .lifeProbe:hover .lifeTerminal,
  .lifeTerminal.isOpen{
    max-height:620px;
    opacity:1;
    transform:translateY(0);
  }
  .terminalHeader{
    display:flex;
    align-items:center;
    gap:6px;
    padding:10px 12px;
    border-bottom:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.03);
  }
  .dot{
    width:8px;
    height:8px;
    border-radius:999px;
    background:rgba(148,163,184,.8);
  }
  .terminalBody{
    margin:0;
    padding:12px;
    min-height:220px;
    max-height:500px;
    overflow:auto;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size:14px;
    line-height:1.5;
    color:#cfe8ff;
    white-space:pre-wrap;
  }
  @media (max-width:700px){
    .lifeProbe:hover .lifeTerminal,
    .lifeTerminal.isOpen{
      max-height:72vh;
    }
    .terminalBody{
      max-height:58vh;
    }
  }
  .lifeGallery{
    align-items:start;
  }
  .miniLifeCard img{
    height:170px;
    object-fit:cover;
    margin-bottom:8px;
  }
  .miniLifeCard h3{
    font-size:20px;
    margin:2px 0 4px;
  }
  .miniLifeCard p{
    font-size:15px;
  }
  .qaTerminal{
    max-height:none;
    opacity:1;
    transform:none;
  }
  .qaButtons{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
  }
  .qaBtn{
    border:1px solid var(--line);
    background:rgba(255,255,255,.03);
    color:var(--text);
    border-radius:999px;
    padding:10px 14px;
    font:inherit;
    font-weight:700;
    cursor:pointer;
    transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease;
  }
  .qaBtn:hover{
    transform:translateY(-2px);
    border-color:rgba(34,211,238,.45);
    background:rgba(34,211,238,.09);
    box-shadow:0 8px 20px rgba(34,211,238,.14);
  }
  .qaBtn:active{
    transform:translateY(0);
  }

  .expGrid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
  }
  @media (max-width:1050px){.expGrid{grid-template-columns:1fr 1fr}}
  @media (max-width:760px){.expGrid{grid-template-columns:1fr}}
  .expCard{
    border:1px solid var(--line);
    border-radius:16px;
    padding:14px;
    background:rgba(255,255,255,.02);
    transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease;
  }
  .expCard:hover{
    transform:translateY(-4px);
    border-color:rgba(34,211,238,.42);
    background:linear-gradient(180deg, rgba(124,58,237,.10), rgba(34,211,238,.05));
    box-shadow:0 18px 36px rgba(34,211,238,.12);
  }
  .companyLogo{
    width:62px;
    height:62px;
    border-radius:16px;
    border:1px solid var(--line);
    margin-bottom:10px;
    transition:transform .3s ease, box-shadow .3s ease;
  }
  .expCard:hover .companyLogo{
    transform:rotate(-3deg) scale(1.06);
    box-shadow:0 10px 24px rgba(124,58,237,.2);
  }
  .expCard h3{margin:4px 0 4px}
  .expCard p{margin:8px 0 10px}

  .expAccordion{
    display:flex;
    flex-direction:column;
    gap:10px;
  }
  .expEntry{
    border:1px solid var(--line);
    border-radius:14px;
    background:rgba(255,255,255,.02);
    overflow:hidden;
    transition:border-color .25s ease, box-shadow .25s ease, transform .25s ease;
  }
  .expEntry[open]{
    border-color:rgba(34,211,238,.4);
    box-shadow:0 14px 32px rgba(34,211,238,.10);
  }
  .expHead{
    cursor:pointer;
    list-style:none;
    padding:12px 14px;
    display:flex;
    flex-direction:column;
    gap:4px;
    background:rgba(255,255,255,.02);
  }
  .expHead::-webkit-details-marker{display:none}
  .expTitle{
    font-weight:800;
    font-size:18px;
    line-height:1.3;
  }
  .expMeta{
    font-size:14px;
  }
  .expBody{
    padding:0 14px 14px;
  }

  [data-reveal-ready="true"]{
    opacity:0;
    transform:translateY(18px) scale(.985);
    transition:opacity .52s ease,transform .52s ease;
    transition-delay:var(--reveal-delay,0ms);
  }
  [data-reveal-ready="true"].inView{
    opacity:1;
    transform:translateY(0) scale(1);
  }

  @keyframes quotePop{
    0%{transform:translateY(6px);opacity:.72}
    100%{transform:translateY(0);opacity:1}
  }
  @keyframes infinityPulse{
    0%,100%{transform:translateY(0);text-shadow:0 0 16px rgba(124,58,237,.26)}
    50%{transform:translateY(-1px) scale(1.06);text-shadow:0 0 24px rgba(34,211,238,.4)}
  }

  @media (prefers-reduced-motion: reduce){
    *{animation:none !important;transition:none !important;scroll-behavior:auto !important}
    [data-reveal-ready="true"]{opacity:1;transform:none}
  }
