/* 交互动画效果 */
        @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
        @keyframes slideInRight { from { transform: translateX(20px); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
        @keyframes slideInBottom { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
        
        .animate-fade-in { animation: fadeIn 0.5s ease-out forwards; }
        .animate-slide-in-right { animation: slideInRight 0.5s ease-out forwards; }
        .animate-slide-in-bottom { animation: slideInBottom 0.5s ease-out forwards; }
        
        body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }

        body { background: radial-gradient(circle at 12% 8%, rgba(94, 234, 212, .20), transparent 30%), radial-gradient(circle at 88% 18%, rgba(125, 211, 252, .18), transparent 30%), #f8faf9; }
        .aura-glow-shell { position: relative; overflow: hidden; background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(236,253,245,.72)); }
        .aura-glow-shell:before { content: ""; position: absolute; inset: -30%; background: radial-gradient(circle at 20% 25%, rgba(45,212,191,.32), transparent 28%), radial-gradient(circle at 82% 20%, rgba(125,211,252,.28), transparent 26%), radial-gradient(circle at 55% 85%, rgba(255,255,255,.92), transparent 28%); animation: auraFloat 16s ease-in-out infinite; pointer-events:none; }
        .aura-glow-content { position: relative; z-index: 1; }
        .aura-glass { background: rgba(255,255,255,.72); backdrop-filter: blur(18px); border: 1px solid rgba(255,255,255,.76); box-shadow: 0 18px 45px rgba(13, 74, 78, .10); }
        .aura-shimmer { position: relative; overflow: hidden; }
        .aura-shimmer:after { content:""; position:absolute; top:0; bottom:0; width:45%; left:-70%; background:linear-gradient(110deg, transparent, rgba(255,255,255,.55), transparent); transform:skewX(-22deg); transition:1.1s ease; }
        .aura-shimmer:hover:after { left:130%; }
        .no-scrollbar::-webkit-scrollbar { display:none; }
        .no-scrollbar { -ms-overflow-style:none; scrollbar-width:none; }
        @keyframes auraFloat { 0%,100% { transform: translateY(0) translateX(0); } 50% { transform: translateY(-18px) translateX(14px); } }

        .drag-scroll { cursor: grab; scroll-behavior: smooth; -webkit-overflow-scrolling: touch; }
        .drag-scroll.dragging { cursor: grabbing; scroll-behavior: auto; user-select: none; }

    
        @keyframes motionPulse { 0%,100% { transform: scale(1); opacity:.55; } 50% { transform: scale(1.08); opacity:.9; } }
        @keyframes motionFloatSoft { 0%,100% { transform: translateY(0px); } 50% { transform: translateY(-14px); } }
        @keyframes motionShine { 0% { transform: translateX(-120%) skewX(-20deg); } 100% { transform: translateX(220%) skewX(-20deg); } }
        @keyframes motionZoom { 0%,100% { transform: scale(1.03); } 50% { transform: scale(1.09); } }
        @keyframes scanMove { 0% { transform: translateY(-110%); } 100% { transform: translateY(120%); } }
        .motion-stage { position: relative; min-height: 520px; border-radius: 2rem; overflow: hidden; background: linear-gradient(135deg, rgba(6,95,70,.96), rgba(15,23,42,.94)); box-shadow: 0 28px 80px rgba(15,23,42,.22); }
        .motion-stage:before { content:""; position:absolute; inset:-15%; background: radial-gradient(circle at 18% 22%, rgba(45,212,191,.34), transparent 28%), radial-gradient(circle at 78% 18%, rgba(56,189,248,.24), transparent 28%), radial-gradient(circle at 60% 70%, rgba(255,255,255,.14), transparent 20%); animation: motionPulse 10s ease-in-out infinite; pointer-events:none; }
        .motion-media-bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; animation: motionZoom 16s ease-in-out infinite; filter: saturate(1.04) contrast(1.02); }
        .motion-stage-overlay { position:absolute; inset:0; background: linear-gradient(140deg, rgba(9,14,22,.22) 8%, rgba(9,14,22,.08) 35%, rgba(9,14,22,.62) 88%); }
        .motion-scanline { position:absolute; left:-10%; right:-10%; height:28%; background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.18), rgba(255,255,255,0)); mix-blend-mode: screen; opacity:.55; animation: scanMove 6s linear infinite; pointer-events:none; }
        .motion-pill-badge { backdrop-filter: blur(14px); background: rgba(255,255,255,.13); border: 1px solid rgba(255,255,255,.18); box-shadow: 0 10px 26px rgba(15,23,42,.18); }
        .motion-floating-card { backdrop-filter: blur(18px); background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.18); box-shadow: 0 16px 38px rgba(2,8,23,.20); animation: motionFloatSoft 8s ease-in-out infinite; }
        .motion-floating-card.delay { animation-delay: -3s; }
        .motion-stage-shine { position: absolute; inset: 0; overflow: hidden; pointer-events:none; }
        .motion-stage-shine:after { content:""; position:absolute; top:-10%; left:-30%; width:24%; height:130%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent); transform: skewX(-18deg); animation: motionShine 5.8s ease-in-out infinite; }
        .motion-thumb { position: relative; overflow: hidden; border-radius: 1.25rem; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.08); transition: transform .25s ease, border-color .25s ease, background .25s ease; }
        .motion-thumb:hover { transform: translateY(-2px); }
        .motion-thumb.active { border-color: rgba(94,234,212,.95); background: rgba(20,184,166,.16); }
        .motion-thumb img { width:100%; height:100%; object-fit:cover; }
        .motion-progress { width:100%; height:4px; border-radius: 999px; background: rgba(255,255,255,.16); overflow:hidden; }
        .motion-progress > span { display:block; height:100%; border-radius:999px; background: linear-gradient(90deg, #5eead4, #38bdf8); transition: width .45s ease; }
        .motion-grid-card { position: relative; border-radius: 1.75rem; overflow: hidden; min-height: 260px; background: linear-gradient(135deg, rgba(15,118,110,.95), rgba(17,24,39,.92)); }
        .motion-grid-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.9; transform: scale(1.05); transition: transform 6s ease; }
        .motion-grid-card:hover img { transform: scale(1.12); }
        .motion-grid-card:after { content:""; position:absolute; inset:0; background: linear-gradient(180deg, rgba(15,23,42,.08), rgba(15,23,42,.62)); }
        .motion-grid-copy { position: absolute; left: 1.25rem; right: 1.25rem; bottom: 1.25rem; z-index: 1; }

        @keyframes pathFloatPrimary {
          0%,100% { transform: translate3d(0,0,0) rotate(-1.2deg); }
          50% { transform: translate3d(12px,-14px,0) rotate(.8deg); }
        }
        @keyframes pathFloatSecondary {
          0%,100% { transform: translate3d(0,0,0) rotate(1.1deg); }
          50% { transform: translate3d(-10px,-12px,0) rotate(-.8deg); }
        }
        @keyframes pathRailMove {
          0% { transform: translateX(0); }
          100% { transform: translateX(-50%); }
        }
        @keyframes pathStageScan {
          0% { transform: translateX(-105%) skewX(-14deg); }
          100% { transform: translateX(230%) skewX(-14deg); }
        }
        @keyframes pathDotPulse {
          0%,100% { box-shadow: 0 0 0 0 rgba(13,148,136,.18), 0 12px 28px rgba(15,23,42,.10); }
          50% { box-shadow: 0 0 0 9px rgba(13,148,136,.08), 0 16px 34px rgba(15,23,42,.14); }
        }
        @keyframes pathProductBreathe {
          0%,100% { transform: scale(1.02); }
          50% { transform: scale(1.08); }
        }
        .path-motion-section {
          position: relative;
          overflow: hidden;
          background: linear-gradient(180deg, #ffffff 0%, #f7fffc 48%, #ffffff 100%);
        }
        .path-motion-stage {
          position: relative;
          min-height: 620px;
          overflow: hidden;
          border-radius: 2rem;
          border: 1px solid rgba(204,251,241,.88);
          background: linear-gradient(135deg, #f8fffc 0%, #e6faf3 48%, #ffffff 100%);
          box-shadow: 0 28px 80px rgba(15,23,42,.13);
        }
        .path-stage-grid {
          position: absolute;
          inset: 0;
          background-image:
            linear-gradient(rgba(15,118,110,.08) 1px, transparent 1px),
            linear-gradient(90deg, rgba(15,118,110,.08) 1px, transparent 1px);
          background-size: 34px 34px;
          opacity: .45;
          pointer-events: none;
        }
        .path-stage-scan {
          position: absolute;
          top: 0;
          bottom: 0;
          left: -30%;
          width: 26%;
          background: linear-gradient(90deg, transparent, rgba(255,255,255,.76), transparent);
          opacity: .72;
          animation: pathStageScan 7.5s ease-in-out infinite;
          pointer-events: none;
        }
        .path-stage-top {
          position: absolute;
          top: 1.25rem;
          left: 1.25rem;
          right: 1.25rem;
          z-index: 4;
          display: flex;
          align-items: center;
          gap: 1rem;
          padding: 1rem;
          border-radius: 1.5rem;
          background: rgba(255,255,255,.78);
          border: 1px solid rgba(255,255,255,.88);
          box-shadow: 0 14px 36px rgba(15,23,42,.08);
          backdrop-filter: blur(16px);
        }
        .path-stage-mark {
          width: 58px;
          height: 58px;
          flex: 0 0 auto;
        }
        .path-product-stack {
          position: absolute;
          left: 1.25rem;
          right: 1.25rem;
          top: 7.5rem;
          bottom: 12rem;
          z-index: 3;
        }
        .path-product-card {
          position: absolute;
          display: grid;
          grid-template-columns: 150px minmax(0,1fr);
          align-items: center;
          gap: 1rem;
          min-height: 190px;
          padding: 1rem;
          border-radius: 1.65rem;
          background: rgba(255,255,255,.86);
          border: 1px solid rgba(255,255,255,.92);
          box-shadow: 0 22px 54px rgba(15,23,42,.13);
          backdrop-filter: blur(18px);
        }
        .path-product-card.primary {
          top: 0;
          left: 0;
          width: min(88%, 540px);
          animation: pathFloatPrimary 8.5s ease-in-out infinite;
        }
        .path-product-card.secondary {
          right: 0;
          bottom: 0;
          width: min(86%, 520px);
          animation: pathFloatSecondary 9s ease-in-out infinite;
          animation-delay: -2.4s;
        }
        .path-product-image {
          aspect-ratio: 1;
          min-width: 0;
          overflow: hidden;
          border-radius: 1.35rem;
          background: linear-gradient(135deg, #ecfdf5, #ffffff);
          border: 1px solid rgba(204,251,241,.92);
        }
        .path-product-image img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          animation: pathProductBreathe 12s ease-in-out infinite;
        }
        .path-review-card {
          position: absolute;
          left: 1.25rem;
          right: 1.25rem;
          bottom: 4.85rem;
          z-index: 4;
          padding: 1rem;
          border-radius: 1.5rem;
          background: rgba(255,255,255,.82);
          border: 1px solid rgba(255,255,255,.94);
          box-shadow: 0 18px 44px rgba(15,23,42,.11);
          backdrop-filter: blur(18px);
        }
        .path-rail {
          position: absolute;
          left: 0;
          right: 0;
          bottom: 1rem;
          z-index: 5;
          height: 2.75rem;
          overflow: hidden;
          border-top: 1px solid rgba(15,118,110,.10);
          border-bottom: 1px solid rgba(15,118,110,.10);
          background: rgba(255,255,255,.60);
        }
        .path-rail-track {
          display: flex;
          width: max-content;
          gap: .55rem;
          padding: .48rem .75rem;
          animation: pathRailMove 28s linear infinite;
        }
        .path-rail-track span {
          flex: 0 0 auto;
          display: inline-flex;
          align-items: center;
          min-height: 1.78rem;
          border-radius: 999px;
          border: 1px solid rgba(13,148,136,.14);
          background: rgba(255,255,255,.84);
          color: rgb(15,118,110);
          font-size: .72rem;
          font-weight: 900;
          padding: .35rem .75rem;
          white-space: nowrap;
        }
        .path-progress-strip {
          position: absolute;
          left: 3rem;
          right: 3rem;
          top: 50%;
          z-index: 1;
          height: 2px;
          background: linear-gradient(90deg, rgba(13,148,136,.08), rgba(13,148,136,.56), rgba(14,165,233,.28));
        }
        .path-progress-dot {
          position: absolute;
          top: 50%;
          width: 34px;
          height: 34px;
          transform: translate(-50%, -50%);
          border-radius: 999px;
          display: inline-flex;
          align-items: center;
          justify-content: center;
          background: #ffffff;
          border: 1px solid rgba(13,148,136,.18);
          color: rgb(15,118,110);
          animation: pathDotPulse 3.8s ease-in-out infinite;
        }
        .path-progress-dot b {
          font-size: .72rem;
          font-weight: 900;
        }
        .path-progress-dot.dot-1 { left: 0%; }
        .path-progress-dot.dot-2 { left: 33.333%; animation-delay: -.7s; }
        .path-progress-dot.dot-3 { left: 66.666%; animation-delay: -1.4s; }
        .path-progress-dot.dot-4 { left: 100%; animation-delay: -2.1s; }
        .path-step-list {
          display: grid;
          gap: .85rem;
        }
        .path-step-row {
          display: grid;
          grid-template-columns: auto 1fr;
          gap: .85rem;
          padding: .9rem;
          border-radius: 1.25rem;
          border: 1px solid rgba(226,232,240,.86);
          background: rgba(255,255,255,.82);
          box-shadow: 0 10px 30px rgba(15,23,42,.05);
        }
        .path-step-icon {
          width: 2.4rem;
          height: 2.4rem;
          border-radius: 1rem;
          display: inline-flex;
          align-items: center;
          justify-content: center;
          background: rgb(240,253,250);
          color: rgb(15,118,110);
          flex: 0 0 auto;
        }
        .path-step-number {
          color: rgb(20,184,166);
          font-size: .72rem;
          font-weight: 900;
        }
    

        .glass-nav { background: rgba(255,255,255,.78); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); border-bottom: 1px solid rgba(231,235,238,.9); box-shadow: 0 10px 30px rgba(15,23,42,.05); }
        .glass-nav-inner { position: relative; }
        .glass-nav-inner:after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:1px; background: linear-gradient(90deg, transparent, rgba(13,148,136,.18), transparent); }
        .brand-mark { overflow: hidden; background: #f4f1e7; border: 1px solid rgba(20,83,45,.16); display: inline-flex; align-items: center; justify-content: center; }
        .brand-mark img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.16); }
        .nav-chip { border-radius: 999px; padding: .55rem .95rem; transition: all .22s ease; }
        .nav-chip:hover { background: rgba(20,184,166,.08); color: rgb(15,118,110); transform: translateY(-1px); }
        .section-reveal { opacity: 0; transform: translateY(30px); transition: opacity .9s ease, transform .9s cubic-bezier(.22,1,.36,1); will-change: opacity, transform; }
        .section-reveal.is-visible { opacity: 1; transform: translateY(0); }
        .drag-scroll { scroll-behavior: smooth; cursor: grab; -webkit-overflow-scrolling: touch; scroll-padding-left: 1rem; }
        .drag-scroll.dragging { cursor: grabbing; user-select: none; }
        .drag-scroll::-webkit-scrollbar { display: none; }
        .med-card { transition: transform .28s cubic-bezier(.22,1,.36,1), box-shadow .28s ease, border-color .28s ease; border: 1px solid rgba(226,232,240,.7); box-shadow: 0 8px 26px rgba(15,23,42,.06); }
        .med-card:hover { transform: translateY(-8px) scale(1.01); box-shadow: 0 22px 54px rgba(15,23,42,.14); border-color: rgba(45,212,191,.45); }
        .med-card .med-image { transition: transform .6s ease; }
        .med-card:hover .med-image { transform: scale(1.08); }
        .med-card .med-metric, .med-card .med-cta { transition: transform .24s ease, box-shadow .24s ease, background .24s ease; }
        .med-card:hover .med-metric { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(15,23,42,.06); }
        .med-card:hover .med-cta { transform: translateY(-1px); box-shadow: 0 12px 26px rgba(15,118,110,.25); }
        .motion-stage { box-shadow: 0 34px 90px rgba(15,23,42,.18); }
        .motion-stage:after { content:""; position:absolute; inset:0; background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1px); background-size: 10px 10px; opacity:.18; mix-blend-mode: soft-light; pointer-events:none; }
        .motion-video-label { backdrop-filter: blur(14px); background: rgba(8,15,28,.28); border: 1px solid rgba(255,255,255,.12); }
        .floating-soft { animation: motionFloatSoft 8s ease-in-out infinite; }
        @media (max-width: 767px) {
          .glass-nav { background: rgba(255,255,255,.88); }
          .drag-scroll { scroll-snap-type: x mandatory; }
          .mobile-one-card { min-width: 88vw !important; max-width: 88vw !important; }
          .motion-stage { min-height: 420px; }
        }

        @media (max-width: 900px) {
          .path-motion-stage {
            min-height: 760px;
            border-radius: 1.5rem;
          }
          .path-stage-top {
            align-items: flex-start;
            left: 1rem;
            right: 1rem;
            top: 1rem;
          }
          .path-stage-mark {
            width: 48px;
            height: 48px;
          }
          .path-product-stack {
            top: 8.75rem;
            bottom: 15rem;
            left: 1rem;
            right: 1rem;
            display: grid;
            gap: .9rem;
            align-content: start;
          }
          .path-product-card,
          .path-product-card.primary,
          .path-product-card.secondary {
            position: relative;
            inset: auto;
            width: 100%;
            min-height: 0;
            grid-template-columns: 112px minmax(0,1fr);
            animation: none;
            transform: none;
            border-radius: 1.35rem;
            align-self: start;
          }
          .path-review-card {
            left: 1rem;
            right: 1rem;
            bottom: 5rem;
          }
          .path-progress-strip {
            left: 2.2rem;
            right: 2.2rem;
            top: auto;
            bottom: 13.4rem;
          }
        }

        @media (max-width: 520px) {
          .path-motion-stage {
            min-height: 820px;
          }
          .path-stage-top {
            display: block;
          }
          .path-stage-mark {
            margin-bottom: .7rem;
          }
          .path-product-stack {
            top: 11.25rem;
            bottom: 17rem;
          }
          .path-product-card,
          .path-product-card.primary,
          .path-product-card.secondary {
            grid-template-columns: 92px minmax(0,1fr);
            gap: .75rem;
            padding: .75rem;
          }
          .path-review-card {
            bottom: 5.05rem;
          }
          .path-progress-strip {
            display: none;
          }
          .path-rail-track {
            animation-duration: 34s;
          }
        }


        @keyframes bloomPulse {
          0%,100% { transform: scale(1); opacity: .60; }
          50% { transform: scale(1.08); opacity: .95; }
        }
        @keyframes bloomDrift {
          0%,100% { transform: translate3d(0,0,0); }
          50% { transform: translate3d(0,-14px,0); }
        }
        @keyframes bloomShimmer {
          0% { opacity: .15; transform: translateX(-12%) scaleX(.96); }
          50% { opacity: .34; transform: translateX(0%) scaleX(1.04); }
          100% { opacity: .15; transform: translateX(12%) scaleX(.96); }
        }

        .bloom-page {
          background:
            radial-gradient(circle at 8% 10%, rgba(153,246,228,.18), transparent 22%),
            radial-gradient(circle at 92% 8%, rgba(191,219,254,.12), transparent 20%),
            linear-gradient(180deg, #ffffff 0%, #fbfffe 40%, #ffffff 100%);
        }

        .bloom-shell {
          position: relative;
          overflow: hidden;
        }
        .bloom-shell:before,
        .bloom-shell:after {
          content: "";
          position: absolute;
          border-radius: 9999px;
          pointer-events: none;
          filter: blur(28px);
          z-index: 0;
        }
        .bloom-shell:before {
          width: 300px;
          height: 300px;
          left: -70px;
          top: -90px;
          background: radial-gradient(circle, rgba(94,234,212,.26) 0%, rgba(94,234,212,.14) 35%, transparent 72%);
          animation: bloomPulse 10s ease-in-out infinite;
        }
        .bloom-shell:after {
          width: 260px;
          height: 260px;
          right: -80px;
          bottom: -90px;
          background: radial-gradient(circle, rgba(59,130,246,.18) 0%, rgba(186,230,253,.14) 36%, transparent 72%);
          animation: bloomPulse 12s ease-in-out infinite reverse;
        }
        .bloom-content { position: relative; z-index: 1; }

        .bloom-hero {
          position: relative;
          overflow: hidden;
        }
        .bloom-hero:before {
          content:"";
          position:absolute;
          inset:-12% -8%;
          background:
            radial-gradient(circle at 22% 26%, rgba(94,234,212,.22), transparent 18%),
            radial-gradient(circle at 78% 18%, rgba(147,197,253,.22), transparent 18%),
            radial-gradient(circle at 58% 72%, rgba(255,255,255,.24), transparent 16%);
          animation: bloomPulse 11s ease-in-out infinite;
          pointer-events:none;
        }
        .bloom-hero:after {
          content:"";
          position:absolute;
          inset:auto -15% 8% -15%;
          height:90px;
          background: radial-gradient(ellipse at center, rgba(255,255,255,.28), transparent 68%);
          filter: blur(18px);
          animation: bloomShimmer 8s ease-in-out infinite;
          pointer-events:none;
        }

        .bloom-card {
          position: relative;
          overflow: hidden;
          isolation: isolate;
        }
        .bloom-card:before {
          content:"";
          position:absolute;
          inset:auto -15% -20% -15%;
          height:120px;
          background: radial-gradient(ellipse at center, rgba(94,234,212,.22), transparent 70%);
          filter: blur(20px);
          opacity:.22;
          transition: opacity .32s ease, transform .32s ease;
          transform: translateY(12px);
          z-index:0;
          pointer-events:none;
        }
        .bloom-card:after {
          content:"";
          position:absolute;
          top:-30%;
          right:-10%;
          width:120px;
          height:120px;
          border-radius:999px;
          background: radial-gradient(circle, rgba(255,255,255,.34), transparent 70%);
          filter: blur(16px);
          opacity:.18;
          transition: opacity .32s ease, transform .32s ease;
          z-index:0;
          pointer-events:none;
        }
        .bloom-card:hover:before {
          opacity:.58;
          transform: translateY(0);
        }
        .bloom-card:hover:after {
          opacity:.38;
          transform: scale(1.08);
        }

        .med-card {
          background:
            linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,252,251,.96));
        }
        .med-card:hover {
          box-shadow: 0 24px 64px rgba(15,23,42,.15), 0 0 0 1px rgba(94,234,212,.32);
        }

        .category-bloom {
          position: relative;
          overflow: hidden;
          isolation: isolate;
          transition: transform .28s cubic-bezier(.22,1,.36,1), box-shadow .28s ease, border-color .28s ease;
          border: 1px solid rgba(229,231,235,.78);
        }
        .category-bloom:before {
          content:"";
          position:absolute;
          inset:auto -10% -18% -10%;
          height:120px;
          background: radial-gradient(ellipse at center, rgba(94,234,212,.18), transparent 72%);
          filter: blur(20px);
          opacity:.18;
          transition: opacity .32s ease, transform .32s ease;
          transform: translateY(10px);
          z-index:0;
          pointer-events:none;
        }
        .category-bloom:hover {
          transform: translateY(-8px);
          box-shadow: 0 22px 54px rgba(15,23,42,.10), 0 0 0 1px rgba(94,234,212,.22);
          border-color: rgba(94,234,212,.34);
        }
        .category-bloom:hover:before {
          opacity:.55;
          transform: translateY(0px);
        }
        .category-bloom > * { position: relative; z-index: 1; }

        .glow-button {
          position: relative;
          overflow: hidden;
          box-shadow: 0 12px 26px rgba(15,118,110,.20);
        }
        .glow-button:before {
          content:"";
          position:absolute;
          inset:auto -15% -30% -15%;
          height:80px;
          background: radial-gradient(ellipse at center, rgba(94,234,212,.34), transparent 70%);
          filter: blur(18px);
          opacity:.52;
          pointer-events:none;
        }
        .glow-button:hover {
          box-shadow: 0 18px 36px rgba(15,118,110,.28);
        }

        .motion-stage {
          overflow: hidden;
        }
        .motion-stage .bloom-orb {
          position:absolute;
          border-radius:9999px;
          filter: blur(22px);
          pointer-events:none;
          z-index:1;
          opacity:.55;
        }
        .motion-stage .bloom-orb.one {
          width:180px; height:180px; left:6%; bottom:10%;
          background: radial-gradient(circle, rgba(94,234,212,.44), transparent 70%);
          animation: bloomDrift 9s ease-in-out infinite;
        }
        .motion-stage .bloom-orb.two {
          width:220px; height:220px; right:10%; top:16%;
          background: radial-gradient(circle, rgba(191,219,254,.34), transparent 72%);
          animation: bloomDrift 11s ease-in-out infinite reverse;
        }

        .motion-grid-card {
          border: 1px solid rgba(255,255,255,.10);
          box-shadow: 0 18px 40px rgba(15,23,42,.14);
        }
        .motion-grid-card:hover {
          box-shadow: 0 28px 66px rgba(15,23,42,.22), 0 0 0 1px rgba(94,234,212,.18);
        }

        @media (max-width: 767px) {
          .bloom-shell:before { width: 190px; height: 190px; left: -70px; top: -50px; }
          .bloom-shell:after { width: 160px; height: 160px; right: -50px; bottom: -40px; }
          .motion-stage .bloom-orb.one { width: 120px; height: 120px; }
          .motion-stage .bloom-orb.two { width: 140px; height: 140px; }
        }
