/* Shared site stylesheet extracted from the original page styles. */

:root {
--bg: #090909;
        --bg-soft: #111111;
        --card: rgba(255, 255, 255, 0.05);
        --card-strong: rgba(255, 255, 255, 0.08);
        --text: #f5f5f5;
        --muted: #b7b7b7;
        --line: rgba(255, 255, 255, 0.09);
        --accent: #ffffff;
        --accent-soft: rgba(255, 255, 255, 0.14);

        --logo-gold: #ffd86b;
        --logo-gold-glow: rgba(255, 216, 107, 0.22);
        --logo-pink: #ff63b0;
        --logo-pink-glow: rgba(255, 99, 176, 0.22);
        --logo-blue: #58a9ff;
        --logo-blue-glow: rgba(88, 169, 255, 0.22);
        --logo-violet: #9f7cff;
        --logo-violet-glow: rgba(159, 124, 255, 0.2);
        --pricing-tier-starter-accent: rgba(88, 169, 255, 0.26);
        --pricing-tier-pro-accent-start: rgba(255, 99, 176, 0.22);
        --pricing-tier-pro-accent-end: rgba(88, 169, 255, 0.2);
        --pricing-tier-premium-gold: #f6d98c;
        --pricing-tier-premium-gold-soft: rgba(255, 216, 107, 0.18);
        --pricing-tier-premium-gold-strong: rgba(255, 216, 107, 0.34);
        --pricing-tier-premium-border: rgba(255, 216, 107, 0.4);
        --pricing-tier-shimmer: linear-gradient(
          120deg,
          rgba(255, 255, 255, 0) 16%,
          rgba(255, 255, 255, 0.12) 46%,
          rgba(255, 255, 255, 0) 76%
        );
        --radius: 22px;
        --max: 1240px;
        --shadow: 0 10px 40px rgba(0, 0, 0, 0.35);
        --transition: 420ms cubic-bezier(0.2, 0.8, 0.2, 1);
}
* {
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
}

@keyframes heroFadeUp {
to {
          opacity: 1;
          transform: translateY(0);
        }
}
@keyframes heroCardIn {
to {
          opacity: 1;
          transform: translateY(0) scale(1);
        }
}
@keyframes panelIn {
from {
          opacity: 0;
          transform: translateY(18px);
        }
        to {
          opacity: 1;
          transform: translateY(0);
        }
}
@keyframes ctaGradientFlow {
0% {
          background-position: 0% 50%;
        }
        50% {
          background-position: 100% 50%;
        }
        100% {
          background-position: 0% 50%;
        }
}
@keyframes projectButtonShift {
0% {
          background-position: 0% 50%;
        }
        100% {
          background-position: 100% 50%;
        }
}
@keyframes serviceNumberPulse {
0%,
        100% {
          box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.05),
            0 0 18px var(--service-glow);
        }
        50% {
          box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.05),
            0 0 28px var(--service-glow);
        }
}
@keyframes brandMarkShift {
0% {
          background-position: 0% 50%;
          filter: hue-rotate(0deg);
        }
        50% {
          background-position: 100% 50%;
          filter: hue-rotate(18deg);
        }
        100% {
          background-position: 0% 50%;
          filter: hue-rotate(0deg);
        }
}
@keyframes brandMarkGlow {
0%,
        100% {
          box-shadow:
            0 0 0 8px rgba(255, 255, 255, 0.04),
            0 0 12px rgba(255, 99, 176, 0.16),
            0 0 24px rgba(88, 169, 255, 0.14);
        }
        50% {
          box-shadow:
            0 0 0 8px rgba(255, 255, 255, 0.05),
            0 0 18px rgba(255, 216, 107, 0.24),
            0 0 30px rgba(88, 169, 255, 0.18);
        }
}
@keyframes trustedGoldGlow {
0%,
        100% {
          text-shadow:
            0 0 14px rgba(255, 216, 107, 0.18),
            0 0 28px rgba(255, 216, 107, 0.08);
          filter: brightness(1);
        }
        50% {
          text-shadow:
            0 0 18px rgba(255, 216, 107, 0.32),
            0 0 38px rgba(255, 216, 107, 0.16),
            0 0 58px rgba(255, 216, 107, 0.1);
          filter: brightness(1.06);
        }
}
@keyframes trustedGoldShift {
0% {
          background-position: 0% 50%;
        }
        100% {
          background-position: 100% 50%;
        }
}
@keyframes trustedLogoGlow {
0%,
        100% {
          box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.04),
            0 0 0 rgba(255, 216, 107, 0),
            0 18px 34px rgba(0, 0, 0, 0.22);
        }
        50% {
          box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.05),
            0 0 18px rgba(255, 216, 107, 0.18),
            0 0 34px rgba(255, 216, 107, 0.12),
            0 18px 34px rgba(0, 0, 0, 0.24);
        }
}
@keyframes trustedShimmerSweep {
0% {
          transform: translateX(-145%) skewX(-18deg);
          opacity: 0;
        }
        12% {
          opacity: 0.38;
        }
        42% {
          opacity: 0.18;
        }
        100% {
          transform: translateX(165%) skewX(-18deg);
          opacity: 0;
        }
}

/* index.html */
body.page-index {
margin: 0;
        font-family:
          Inter,
          ui-sans-serif,
          system-ui,
          -apple-system,
          BlinkMacSystemFont,
          "Segoe UI",
          sans-serif;
        background:
          radial-gradient(
            circle at top left,
            rgba(255, 255, 255, 0.06),
            transparent 28%
          ),
          radial-gradient(
            circle at 85% 20%,
            rgba(255, 255, 255, 0.05),
            transparent 24%
          ),
          linear-gradient(180deg, #0b0b0b 0%, #080808 100%);
        color: var(--text);
        line-height: 1.5;
        overflow-x: hidden;
}

body.page-index a {
color: inherit;
        text-decoration: none;
}

body.page-index img {
max-width: 100%;
        display: block;
}

body.page-index .noise {
pointer-events: none;
        position: fixed;
        inset: 0;
        opacity: 0.045;
        background-image: radial-gradient(
          rgba(255, 255, 255, 0.9) 0.5px,
          transparent 0.5px
        );
        background-size: 6px 6px;
        mix-blend-mode: soft-light;
        z-index: 1;
}

body.page-index .container {
width: min(calc(100% - 32px), var(--max));
        margin: 0 auto;
        position: relative;
        z-index: 2;
}

body.page-index .topbar {
position: sticky;
        top: 0;
        z-index: 30;
        backdrop-filter: blur(18px);
        background: rgba(9, 9, 9, 0.68);
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

body.page-index .nav {
min-height: 76px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
}

body.page-index .brand {
display: inline-flex;
        align-items: center;
        gap: 12px;
        font-weight: 600;
        letter-spacing: 0.02em;
}

body.page-index .brand-mark {
width: 14px;
        height: 14px;
        border-radius: 999px;
        background: linear-gradient(
          135deg,
          var(--logo-gold) 0%,
          var(--logo-pink) 35%,
          var(--logo-violet) 68%,
          var(--logo-blue) 100%
        );
        background-size: 220% 220%;
        box-shadow:
          0 0 0 8px rgba(255, 255, 255, 0.04),
          0 0 12px rgba(255, 99, 176, 0.16),
          0 0 24px rgba(88, 169, 255, 0.14);
        animation:
          brandMarkShift 12s ease-in-out infinite,
          brandMarkGlow 6s ease-in-out infinite;
}

body.page-index .nav-links {
display: flex;
        align-items: center;
        gap: 24px;
        flex-wrap: wrap;
}

body.page-index .nav-links a {
position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-weight: 500;
        line-height: 24px;
        color: var(--muted);
        transition:
          color var(--transition),
          transform var(--transition);
        font-size: 0.98rem;
}

body.page-index .nav-links a:hover {
color: var(--text);
        transform: translateY(-1px);
}

body.page-index .button,
body.page-index button {
display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        min-height: 48px;
        padding: 0 20px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.06);
        color: var(--text);
        font-size: 0.96rem;
        cursor: pointer;
        transition:
          transform var(--transition),
          background var(--transition),
          border-color var(--transition),
          box-shadow var(--transition);
        box-shadow: var(--shadow);
}

body.page-index .button:hover,
body.page-index button:hover {
transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.1);
        border-color: rgba(255, 255, 255, 0.18);
}

body.page-index .button.primary,
body.page-index button.primary {
background: #fff;
        color: #0b0b0b;
        border-color: transparent;
}

body.page-index .button.primary:hover,
body.page-index button.primary:hover {
background: #ebebeb;
}

body.page-index .hero {
min-height: calc(100vh - 76px);
        display: grid;
        align-items: center;
        padding: 72px 0 40px;
}

body.page-index .hero-grid {
display: grid;
        grid-template-columns: 1.4fr 0.85fr;
        gap: 28px;
        align-items: end;
}

body.page-index .eyebrow {
display: inline-flex;
        align-items: center;
        gap: 10px;
        color: #d8d8d8;
        padding: 10px 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        background: rgba(255, 255, 255, 0.04);
        margin-bottom: 22px;
        font-size: 0.92rem;
        letter-spacing: 0.02em;
}

body.page-index .hero h1 {
margin: 0;
        font-size: clamp(3rem, 8vw, 7rem);
        line-height: 0.94;
        letter-spacing: -0.055em;
        max-width: 820px;
}

body.page-index .hero-copy {
margin-top: 24px;
        max-width: 700px;
        color: var(--muted);
        font-size: clamp(1rem, 1.5vw, 1.18rem);
}

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

body.page-index .hero-card,
body.page-index .card,
body.page-index .contact-card,
body.page-index .about-card {
border: 1px solid var(--line);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.06),
          rgba(255, 255, 255, 0.03)
        );
        border-radius: var(--radius);
        box-shadow: var(--shadow);
}

body.page-index .hero-card {
padding: 26px;
        min-height: 360px;
        position: relative;
        overflow: hidden;
}

body.page-index .hero-card::before {
content: "";
        position: absolute;
        inset: -20% auto auto -10%;
        width: 240px;
        height: 240px;
        background: radial-gradient(
          circle,
          rgba(255, 255, 255, 0.18),
          transparent 65%
        );
        filter: blur(8px);
        opacity: 0.8;
}

body.page-index .hero-preview {
height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        position: relative;
        z-index: 1;
}

body.page-index .hero-preview-top {
display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 18px;
}

body.page-index .chip {
display: inline-flex;
        align-items: center;
        padding: 8px 12px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #ececec;
        font-size: 0.88rem;
}

body.page-index .preview-stack {
display: grid;
        gap: 12px;
        margin-top: 28px;
}

body.page-index .preview-panel {
padding: 16px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(255, 255, 255, 0.08);
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 18px;
        transition:
          transform var(--transition),
          background var(--transition);
}

body.page-index .preview-panel:hover {
transform: translateX(6px);
        background: rgba(255, 255, 255, 0.08);
}

body.page-index .preview-label {
display: grid;
        gap: 4px;
}

body.page-index .preview-label span {
color: var(--muted);
        font-size: 0.92rem;
}

body.page-index section {
padding: 44px 0 26px;
}

body.page-index .section-header {
display: grid;
        gap: 12px;
        margin-bottom: 22px;
}

body.page-index .section-kicker {
color: #d1d1d1;
        text-transform: uppercase;
        letter-spacing: 0.16em;
        font-size: 0.78rem;
}

body.page-index .section-title {
margin: 0;
        font-size: clamp(2rem, 4vw, 3.5rem);
        letter-spacing: -0.05em;
        line-height: 0.98;
}

body.page-index .section-copy {
color: var(--muted);
        max-width: 700px;
        font-size: 1.02rem;
}

body.page-index .trusted-strip {
padding-top: 10px;
}

body.page-index .trusted-strip-shell {
position: relative;
        overflow: hidden;
        padding: 30px;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        background:
          radial-gradient(
            circle at top right,
            rgba(255, 216, 107, 0.07),
            transparent 28%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(88, 169, 255, 0.08),
            transparent 34%
          ),
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.025)
          );
        box-shadow: var(--shadow);
}

body.page-index .trusted-strip-shell::before {
content: "";
        position: absolute;
        inset: -1px;
        border-radius: inherit;
        padding: 1px;
        background: linear-gradient(
          135deg,
          rgba(255, 255, 255, 0.12),
          rgba(255, 255, 255, 0.02)
        );
        -webkit-mask:
          linear-gradient(#fff 0 0) content-box,
          linear-gradient(#fff 0 0);
        -webkit-mask-composite: xor;
        mask-composite: exclude;
        pointer-events: none;
}

body.page-index .trusted-strip-header {
display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 20px;
        margin-bottom: 24px;
}

body.page-index .trusted-strip-title {
margin: 8px 0 0;
        max-width: 720px;
        font-size: clamp(1.6rem, 2.6vw, 2.4rem);
        line-height: 1.02;
        letter-spacing: -0.04em;
        color: #f6d98c;
        background: linear-gradient(
          135deg,
          rgba(255, 248, 221, 0.98) 0%,
          #f6d98c 24%,
          #ffe8a4 48%,
          #f1c65f 72%,
          rgba(255, 244, 210, 0.96) 100%
        );
        background-size: 180% 180%;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        animation:
          trustedGoldShift 7s linear infinite,
          trustedGoldGlow 3.4s ease-in-out infinite;
}

body.page-index .trusted-strip-copy {
margin: 0;
        max-width: 360px;
        color: var(--muted);
        font-size: 0.98rem;
}

body.page-index .trusted-strip-grid {
display: grid;
        grid-template-columns: repeat(7, minmax(0, 1fr));
        gap: 14px;
}

body.page-index .trusted-strip-item {
--trusted-logo-max-width: 148px;
        --trusted-logo-max-height: 48px;
        min-height: 96px;
        position: relative;
        isolation: isolate;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 14px 16px;
        border-radius: 20px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        background: rgba(255, 255, 255, 0.04);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
        transition:
          transform var(--transition),
          border-color var(--transition),
          background var(--transition),
          box-shadow var(--transition);
}

body.page-index .trusted-strip-item::before {
content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: radial-gradient(
          circle at 50% 50%,
          rgba(255, 216, 107, 0.16),
          rgba(255, 216, 107, 0.04) 38%,
          transparent 72%
        );
        opacity: 0;
        transition: opacity var(--transition);
        pointer-events: none;
        z-index: 0;
}

body.page-index .trusted-strip-item::after {
content: "";
        position: absolute;
        top: -18%;
        left: -24%;
        width: 42%;
        height: 136%;
        background: linear-gradient(
          120deg,
          rgba(255, 255, 255, 0) 0%,
          rgba(255, 232, 164, 0.42) 48%,
          rgba(255, 255, 255, 0) 100%
        );
        opacity: 0;
        pointer-events: none;
        z-index: 0;
}

body.page-index .trusted-strip-item:hover {
transform: translateY(-3px) scale(1.015);
        border-color: rgba(255, 216, 107, 0.42);
        background: linear-gradient(
          180deg,
          rgba(255, 216, 107, 0.1),
          rgba(255, 255, 255, 0.05)
        );
        animation: trustedLogoGlow 2.3s ease-in-out infinite;
}

body.page-index .trusted-strip-item:hover::before {
opacity: 1;
}

body.page-index .trusted-strip-item:hover::after {
opacity: 1;
        animation: trustedShimmerSweep 1.8s ease-in-out infinite;
}

body.page-index .trusted-strip-item img {
position: relative;
        z-index: 1;
        width: auto;
        max-width: min(100%, var(--trusted-logo-max-width));
        max-height: var(--trusted-logo-max-height);
        height: auto;
        object-fit: contain;
        object-position: center;
        opacity: 0.82;
        filter: brightness(0) invert(1) grayscale(1);
        transition:
          opacity var(--transition),
          filter var(--transition),
          transform var(--transition);
}

body.page-index .trusted-strip-item--apple {
  --trusted-logo-max-width: 72px;
  --trusted-logo-max-height: 58px;
}

body.page-index .trusted-strip-item--google {
  --trusted-logo-max-width: 78px;
  --trusted-logo-max-height: 60px;
}

body.page-index .trusted-strip-item--microsoft {
  --trusted-logo-max-width: 172px;
  --trusted-logo-max-height: 58px;
}

body.page-index .trusted-strip-item--bmw {
  --trusted-logo-max-width: 76px;
  --trusted-logo-max-height: 76px;
}

body.page-index .trusted-strip-item--cocacola {
  --trusted-logo-max-width: 150px;
  --trusted-logo-max-height: 50px;
}

body.page-index .trusted-strip-item--heineken {
  --trusted-logo-max-width: 136px;
  --trusted-logo-max-height: 52px;
}

body.page-index .trusted-strip-item--mcdonalds {
  --trusted-logo-max-width: 72px;
  --trusted-logo-max-height: 60px;
}

body.page-index .trusted-strip-item:hover img {
opacity: 1;
        filter:
          brightness(0) saturate(100%) invert(84%) sepia(34%) saturate(606%)
          hue-rotate(350deg) brightness(103%) contrast(97%)
          drop-shadow(0 0 8px rgba(255, 216, 107, 0.36))
          drop-shadow(0 0 18px rgba(255, 216, 107, 0.18));
        transform: scale(1.045);
}

body.page-index .trusted-strip-item--bmw img {
  opacity: 0.92;
  filter: brightness(1.04) contrast(1.08) saturate(0.92);
}

body.page-index .trusted-strip-item--bmw:hover img {
  opacity: 1;
  filter:
    brightness(1.08) contrast(1.12) saturate(1)
    drop-shadow(0 0 8px rgba(255, 216, 107, 0.28))
    drop-shadow(0 0 18px rgba(255, 216, 107, 0.16));
  transform: scale(1.045);
}

@media (prefers-reduced-motion: reduce) {
  body.page-index .trusted-strip-title {
    animation: none;
  }

  body.page-index .trusted-strip-item:hover {
    animation: none;
  }

  body.page-index .trusted-strip-item:hover::after {
    animation: none;
    opacity: 0.42;
  }
}

body.page-index .work-grid {
display: grid;
        grid-template-columns: repeat(12, 1fr);
        gap: 18px;
        margin-top: 26px;
}

body.page-index .work-card {
grid-column: span 6;
        min-height: 420px;
        padding: 20px;
        position: relative;
        overflow: hidden;
        border-radius: 26px;
        border: 1px solid var(--line);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.05),
          rgba(255, 255, 255, 0.03)
        );
        transition:
          transform var(--transition),
          border-color var(--transition),
          background var(--transition);
        box-shadow: var(--shadow);
}

body.page-index .work-card.large {
grid-column: span 8;
        min-height: 520px;
}

body.page-index .work-card.small {
grid-column: span 4;
}

body.page-index .work-card:hover {
transform: translateY(-4px);
        border-color: rgba(255, 255, 255, 0.16);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.08),
          rgba(255, 255, 255, 0.04)
        );
}

body.page-index .work-media {
position: absolute;
        inset: 0;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.02)
          ),
          radial-gradient(
            circle at 20% 20%,
            rgba(255, 255, 255, 0.18),
            transparent 28%
          ),
          radial-gradient(
            circle at 80% 70%,
            rgba(255, 255, 255, 0.1),
            transparent 32%
          ),
          linear-gradient(160deg, #171717, #0d0d0d);
        transform: scale(1);
        transition: transform 900ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.page-index .work-card:hover .work-media {
transform: scale(1.03);
}

body.page-index .work-overlay {
position: absolute;
        inset: 0;
        background: linear-gradient(
          180deg,
          transparent 20%,
          rgba(0, 0, 0, 0.65) 100%
        );
}

body.page-index .work-content {
position: relative;
        z-index: 1;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 18px;
}

body.page-index .work-top {
display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 12px;
}

body.page-index .placeholder-note {
font-size: 0.86rem;
        color: #d5d5d5;
        padding: 8px 12px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.08);
}

body.page-index .work-bottom h3 {
margin: 0 0 8px;
        font-size: clamp(1.4rem, 2.3vw, 2.1rem);
        letter-spacing: -0.04em;
}

body.page-index .work-bottom p {
margin: 0;
        max-width: 520px;
        color: #dadada;
}

body.page-index .services-grid {
display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 18px;
        margin-top: 24px;
}

body.page-index .service-card {
padding: 22px;
        min-height: 250px;
        border-radius: 24px;
        border: 1px solid var(--line);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.05),
          rgba(255, 255, 255, 0.02)
        );
        box-shadow: var(--shadow);
        transition:
          transform var(--transition),
          border-color var(--transition),
          background var(--transition);
}

body.page-index .service-card:hover {
transform: translateY(-4px);
        border-color: rgba(255, 255, 255, 0.15);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.08),
          rgba(255, 255, 255, 0.03)
        );
}

body.page-index .service-number {
font-size: 0.88rem;
        color: var(--muted);
        margin-bottom: 32px;
}

body.page-index .service-card h3 {
margin: 0 0 12px;
        font-size: 1.28rem;
        letter-spacing: -0.03em;
}

body.page-index .service-card p {
margin: 0;
        color: var(--muted);
}

body.page-index .about-layout {
display: grid;
        grid-template-columns: 1.1fr 0.9fr;
        gap: 18px;
        margin-top: 24px;
}

body.page-index .about-card,
body.page-index .contact-card {
padding: 28px;
        min-height: 100%;
}

body.page-index .about-intro {
max-width: 1180px;
        margin: 0 auto;
}

body.page-index .about-intro p {
margin: 0 0 18px;
        color: var(--muted);
        font-size: 1.02rem;
        max-width: 1120px;
}

body.page-index #about .section-header {
max-width: 1120px;
        margin: 0 auto 22px;
}

body.page-index #about .about-intro {
max-width: 1120px;
        margin: 0 auto;
}

body.page-index #about .about-intro p {
max-width: 1120px;
}

body.page-index .about-video-wrap {
position: relative;
        width: min(100%, 1220px);
        margin: 28px auto 30px;
        border-radius: 28px;
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.12);
        background: #050505;
        box-shadow:
          var(--shadow),
          inset 0 1px 0 rgba(255, 255, 255, 0.05),
          0 0 0 1px rgba(255, 255, 255, 0.03);
        cursor: pointer;
        isolation: isolate;
}

body.page-index .about-video-wrap::after {
content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(
          180deg,
          rgba(0, 0, 0, 0.08),
          rgba(0, 0, 0, 0.02) 32%,
          rgba(0, 0, 0, 0.18) 100%
        );
        pointer-events: none;
        z-index: 1;
}

body.page-index .about-video {
display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        object-fit: contain;
        background: #050505;
}

body.page-index .about-sound-hint {
position: absolute;
        right: 18px;
        bottom: 18px;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        padding: 10px 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.14);
        background: rgba(10, 10, 10, 0.62);
        backdrop-filter: blur(12px);
        color: #f5f5f5;
        font-size: 0.9rem;
        letter-spacing: 0.01em;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28);
        z-index: 2;
        transition:
          opacity var(--transition),
          transform var(--transition),
          background var(--transition),
          border-color var(--transition);
        pointer-events: none;
}

body.page-index .about-sound-hint::before {
content: "";
        width: 8px;
        height: 8px;
        border-radius: 999px;
        background: var(--logo-blue);
        box-shadow: 0 0 12px rgba(88, 169, 255, 0.45);
        flex: 0 0 auto;
}

body.page-index .about-video-wrap.sound-enabled .about-sound-hint {
opacity: 0;
        transform: translateY(8px);
}

body.page-index .about-points {
display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
        margin-top: 0;
}

body.page-index .point {
padding: 16px 18px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #e7e7e7;
}

body.page-index .point strong {
display: block;
        font-size: 0.95rem;
        margin-bottom: 6px;
}

body.page-index .point span {
color: var(--muted);
        font-size: 0.94rem;
}

body.page-index .stats {
display: grid;
        gap: 14px;
}

body.page-index .stat {
padding: 18px 20px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        transition:
          transform 380ms cubic-bezier(0.2, 0.8, 0.2, 1),
          border-color var(--transition),
          background var(--transition),
          box-shadow var(--transition);
}

body.page-index .stat .number {
font-size: clamp(1.8rem, 3vw, 2.8rem);
        letter-spacing: -0.05em;
        margin-bottom: 4px;
}

body.page-index .stat .label {
color: var(--muted);
        font-size: 0.95rem;
}

body.page-index .contact-layout {
display: grid;
        grid-template-columns: 0.85fr 1.15fr;
        gap: 18px;
        margin-top: 24px;
}

body.page-index .contact-copy {
display: grid;
        gap: 16px;
        align-content: start;
}

body.page-index .contact-links {
display: grid;
        gap: 10px;
        margin-top: 8px;
}

body.page-index .contact-link {
display: flex;
        justify-content: space-between;
        gap: 14px;
        padding: 16px 18px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        transition:
          transform var(--transition),
          background var(--transition);
}

body.page-index .contact-link:hover {
transform: translateX(5px);
        background: rgba(255, 255, 255, 0.07);
}

body.page-index form {
display: grid;
        gap: 14px;
}

body.page-index .field-row {
display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px;
}

body.page-index label {
display: grid;
        gap: 8px;
        color: #eaeaea;
        font-size: 0.94rem;
}

body.page-index input,
body.page-index textarea {
width: 100%;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.04);
        color: var(--text);
        border-radius: 16px;
        padding: 14px 16px;
        font: inherit;
        transition:
          border-color var(--transition),
          background var(--transition),
          transform var(--transition);
}

body.page-index input:focus,
body.page-index textarea:focus {
outline: none;
        border-color: rgba(255, 255, 255, 0.26);
        background: rgba(255, 255, 255, 0.06);
        transform: translateY(-1px);
}

body.page-index textarea {
resize: vertical;
        min-height: 150px;
}

body.page-index .form-note,
body.page-index .status {
color: var(--muted);
        font-size: 0.92rem;
}

body.page-index .status.success {
color: #d6ffd6;
}

body.page-index .status.error {
color: #ffd3d3;
}

body.page-index footer {
padding: 26px 0 40px;
}

body.page-index .footer-inner {
display: flex;
        justify-content: space-between;
        gap: 18px;
        align-items: center;
        padding-top: 18px;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        color: var(--muted);
        font-size: 0.94rem;
}

body.page-index .socials {
display: flex;
        gap: 10px;
        flex-wrap: wrap;
}

body.page-index .socials a {
padding: 10px 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        background: rgba(255, 255, 255, 0.04);
        transition:
          transform var(--transition),
          background var(--transition);
}

body.page-index .socials a:hover {
transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.08);
}

body.page-index .reveal {
opacity: 0;
        transform: translateY(26px);
        transition:
          opacity 800ms cubic-bezier(0.2, 0.8, 0.2, 1),
          transform 800ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.page-index .reveal.visible {
opacity: 1;
        transform: translateY(0);
}

@media (max-width: 1100px) {
  body.page-index .hero-grid,
body.page-index .about-layout,
body.page-index .contact-layout {
grid-template-columns: 1fr;
  }

  body.page-index .services-grid {
grid-template-columns: repeat(2, 1fr);
  }

  body.page-index .trusted-strip-header {
flex-direction: column;
          align-items: flex-start;
  }

  body.page-index .trusted-strip-copy {
max-width: 620px;
  }

  body.page-index .trusted-strip-grid {
grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body.page-index .work-card.large,
body.page-index .work-card.small,
body.page-index .work-card {
grid-column: span 12;
  }
}

@media (max-width: 760px) {
  body.page-index .nav {
min-height: 72px;
          padding: 12px 0;
          align-items: flex-start;
          flex-direction: column;
  }

  body.page-index .nav-links {
gap: 14px;
  }

  body.page-index .hero {
min-height: auto;
          padding-top: 52px;
  }

  body.page-index .field-row,
body.page-index .services-grid,
body.page-index .about-points {
grid-template-columns: 1fr;
  }

  body.page-index .trusted-strip-shell {
padding: 24px;
  }

  body.page-index .trusted-strip-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.page-index .trusted-strip-item {
min-height: 78px;
          padding: 16px;
  }

  body.page-index .trusted-strip-item img {
max-width: 116px;
          max-height: 30px;
  }

  body.page-index .hero-actions,
body.page-index .footer-inner {
flex-direction: column;
          align-items: flex-start;
  }

  body.page-index .hero-card {
min-height: 300px;
  }

  body.page-index .about-video-wrap {
margin: 22px auto 24px;
          border-radius: 22px;
  }

  body.page-index .about-video {
aspect-ratio: 16 / 9;
  }
}

body.page-index .nav-links a:not(.button)::after {
content: "";
        position: absolute;
        left: 50%;
        bottom: -1px;
        width: calc(100% - 28px);
        height: 2px;
        background: linear-gradient(
          90deg,
          var(--logo-gold),
          var(--logo-pink),
          var(--logo-blue)
        );
        transform: translateX(-50%) scaleX(0);
        transform-origin: center;
        transition:
          transform var(--transition),
          opacity var(--transition);
        opacity: 0.95;
        border-radius: 999px;
        box-shadow: 0 0 14px rgba(88, 169, 255, 0.12);
}

body.page-index .nav-links a:not(.button):hover {
color: var(--text);
}

body.page-index .nav-links a:not(.button):hover::after,
body.page-index .nav-links a:not(.button).active-link::after {
transform: translateX(-50%) scaleX(1);
}

body.page-index .button,
body.page-index button,
body.page-index .socials a,
body.page-index .contact-link,
body.page-index .preview-panel,
body.page-index .service-card,
body.page-index .work-card,
body.page-index .hero-card,
body.page-index .about-card,
body.page-index .contact-card,
body.page-index .stat {
transition:
          transform 380ms cubic-bezier(0.2, 0.8, 0.2, 1),
          border-color var(--transition),
          background var(--transition),
          box-shadow var(--transition);
        will-change: transform;
}

body.page-index .button:hover,
body.page-index button:hover,
body.page-index .socials a:hover,
body.page-index .contact-link:hover,
body.page-index .preview-panel:hover,
body.page-index .service-card:hover,
body.page-index .work-card:hover,
body.page-index .hero-card:hover,
body.page-index .about-card:hover,
body.page-index .contact-card:hover,
body.page-index .stat:hover {
border-color: rgba(255, 255, 255, 0.18);
        box-shadow:
          0 14px 36px rgba(0, 0, 0, 0.42),
          inset 0 1px 0 rgba(255, 255, 255, 0.08),
          0 0 0 1px rgba(255, 255, 255, 0.03);
}

body.page-index .work-card:hover {
transform: translateY(-6px);
}

body.page-index .service-card:hover,
body.page-index .hero-card:hover,
body.page-index .about-card:hover {
transform: translateY(-4px);
}

body.page-index .preview-panel:hover,
body.page-index .contact-link:hover,
body.page-index .socials a:hover {
transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.08);
}

body.page-index .contact-card:hover {
transform: none;
}

body.page-index .stat:hover {
transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.06);
}

body.page-index input:focus,
body.page-index textarea:focus {
outline: none;
        border-color: rgba(255, 255, 255, 0.26);
        background: rgba(255, 255, 255, 0.06);
        transform: none;
        box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.05);
}

body.page-index .hero h1,
body.page-index .hero-copy,
body.page-index .hero-actions,
body.page-index .eyebrow {
opacity: 0;
        transform: translateY(20px);
        animation: heroFadeUp 0.9s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}

body.page-index .eyebrow {
animation-delay: 0.05s;
}

body.page-index .hero h1 {
animation-delay: 0.15s;
}

body.page-index .hero-copy {
animation-delay: 0.28s;
}

body.page-index .hero-actions {
animation-delay: 0.4s;
}

body.page-index .hero-card {
opacity: 0;
        transform: translateY(24px) scale(0.985);
        animation: heroCardIn 1s cubic-bezier(0.2, 0.8, 0.2, 1) 0.2s forwards;
}

body.page-index .preview-panel:nth-child(1) {
animation: panelIn 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.45s both;
}

body.page-index .preview-panel:nth-child(2) {
animation: panelIn 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.58s both;
}

body.page-index .preview-panel:nth-child(3) {
animation: panelIn 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.71s both;
}

@media (prefers-reduced-motion: reduce) {
  body.page-index .hero h1,
body.page-index .hero-copy,
body.page-index .hero-actions,
body.page-index .eyebrow,
body.page-index .hero-card,
body.page-index .preview-panel:nth-child(1),
body.page-index .preview-panel:nth-child(2),
body.page-index .preview-panel:nth-child(3) {
animation: none !important;
          opacity: 1 !important;
          transform: none !important;
  }
}

body.page-index .nav-links a {
position: relative;
}

body.page-index .nav-links a:not(.button)::after {
content: "";
        position: absolute;
        left: 0;
        bottom: -1px;
        width: 100%;
        height: 2px;
        background: linear-gradient(
          90deg,
          var(--logo-gold),
          var(--logo-pink),
          var(--logo-blue)
        );
        transform: scaleX(0);
        transform-origin: left;
        transition:
          transform var(--transition),
          opacity var(--transition);
        opacity: 0.95;
        border-radius: 999px;
        box-shadow: 0 0 14px rgba(88, 169, 255, 0.12);
}

body.page-index .nav-links a:not(.button):hover::after,
body.page-index .nav-links a:not(.button).active-link::after {
transform: scaleX(1);
}

body.page-index .courses-link,
body.page-index .store-link,
body.page-index .news-link {
padding: 0 18px;
        min-height: 44px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.04);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
        font-weight: 500;
}

body.page-index .courses-link:hover {
border-color: rgba(159, 124, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(159, 124, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(159, 124, 255, 0.22),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(88, 169, 255, 0.14),
            transparent 34%
          );
}

body.page-index .store-link:hover {
border-color: rgba(88, 169, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(88, 169, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.24),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.14),
            transparent 34%
          );
}

body.page-index .news-link:hover {
border-color: rgba(255, 99, 176, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(255, 99, 176, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.22),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.16),
            transparent 34%
          );
}

body.page-index .active-link {
color: #ffffff;
        transform: translateY(-1px);
}

body.page-index .courses-link.active-link {
border-color: rgba(159, 124, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(159, 124, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(159, 124, 255, 0.22),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(88, 169, 255, 0.14),
            transparent 34%
          );
}

body.page-index .store-link.active-link {
border-color: rgba(88, 169, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(88, 169, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.24),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.14),
            transparent 34%
          );
}

body.page-index .news-link.active-link {
border-color: rgba(255, 99, 176, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(255, 99, 176, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.22),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.16),
            transparent 34%
          );
}

body.page-index a.button.primary {
position: relative;
        overflow: hidden;
        isolation: isolate;
        border-color: rgba(255, 255, 255, 0.58);
        box-shadow:
          0 10px 30px rgba(0, 0, 0, 0.28),
          inset 0 1px 0 rgba(255, 255, 255, 0.74);
        transition:
          transform var(--transition),
          border-color var(--transition),
          box-shadow var(--transition),
          color var(--transition),
          background var(--transition);
}

body.page-index a.button.primary::before {
content: "";
        position: absolute;
        inset: -1px;
        border-radius: inherit;
        background: linear-gradient(
          115deg,
          rgba(255, 216, 107, 0.98) 0%,
          rgba(255, 255, 255, 0.98) 25%,
          rgba(255, 99, 176, 0.26) 58%,
          rgba(88, 169, 255, 0.32) 100%
        );
        background-size: 220% 220%;
        animation: ctaGradientFlow 5.5s linear infinite;
        opacity: 0;
        transition:
          opacity 420ms ease,
          filter 420ms ease;
        filter: saturate(1.02) brightness(1);
        z-index: 0;
}

body.page-index a.button.primary:hover::before {
opacity: 1;
        filter: saturate(1.08) brightness(1.02);
}

body.page-index a.button.primary:hover {
color: #080808;
        border-color: rgba(255, 255, 255, 0.78);
        box-shadow:
          0 16px 34px rgba(0, 0, 0, 0.34),
          0 0 22px rgba(255, 99, 176, 0.12),
          0 0 24px rgba(88, 169, 255, 0.12),
          inset 0 1px 0 rgba(255, 255, 255, 0.92);
        transform: translateY(-2px) scale(1.01);
}

body.page-index a.button.primary > *,
body.page-index a.button.primary {
z-index: 1;
}

body.page-index .nav-toggle {
display: none;
        width: 46px;
        height: 46px;
        padding: 0;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.05);
        color: var(--text);
        box-shadow: var(--shadow);
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 4px;
        cursor: pointer;
        transition:
          transform var(--transition),
          background var(--transition),
          border-color var(--transition),
          box-shadow var(--transition);
}

body.page-index .nav-toggle:hover {
transform: translateY(-1px);
        background: rgba(255, 255, 255, 0.08);
        border-color: rgba(255, 255, 255, 0.18);
}

body.page-index .nav-toggle-bar {
width: 18px;
        height: 2px;
        border-radius: 999px;
        background: currentColor;
        transition:
          transform var(--transition),
          opacity var(--transition);
}

body.page-index .mobile-menu-backdrop {
display: none;
}

@media (max-width: 860px) {
  body.page-index.menu-open {
overflow: hidden;
  }

  body.page-index .nav {
min-height: 68px;
          padding: 12px 0;
          gap: 14px;
  }

  body.page-index .brand {
min-height: 46px;
          display: inline-flex;
          align-items: center;
  }

  body.page-index .nav-toggle {
display: inline-flex;
  }

  body.page-index .mobile-menu-backdrop {
display: block;
          position: fixed;
          inset: 0;
          background: rgba(0, 0, 0, 0.52);
          opacity: 0;
          pointer-events: none;
          transition: opacity var(--transition);
          z-index: 39;
  }

  body.page-index.menu-open .mobile-menu-backdrop {
opacity: 1;
          pointer-events: auto;
  }

  body.page-index .nav-links {
position: fixed;
          top: 78px;
          left: 12px;
          right: 12px;
          display: grid;
          gap: 8px;
          padding: 16px;
          border-radius: 24px;
          border: 1px solid rgba(255, 255, 255, 0.1);
          background:
            linear-gradient(
              180deg,
              rgba(18, 18, 18, 0.92),
              rgba(12, 12, 12, 0.92)
            ),
            radial-gradient(
              circle at top right,
              rgba(88, 169, 255, 0.1),
              transparent 34%
            );
          backdrop-filter: blur(20px);
          box-shadow:
            0 24px 56px rgba(0, 0, 0, 0.46),
            inset 0 1px 0 rgba(255, 255, 255, 0.05);
          opacity: 0;
          pointer-events: none;
          transform: translateY(-10px) scale(0.98);
          transform-origin: top center;
          transition:
            opacity var(--transition),
            transform var(--transition);
          z-index: 50;
          max-height: calc(100vh - 96px);
          overflow: auto;
  }

  body.page-index.menu-open .nav-links {
opacity: 1;
          pointer-events: auto;
          transform: translateY(0) scale(1);
  }

  body.page-index .nav-links a {
width: 100%;
          min-height: 44px;
          display: inline-flex;
          align-items: center;
          justify-content: flex-start;
          padding: 8px 10px;
          border-radius: 14px;
          font-size: 1rem;
  }

  body.page-index .nav-links a:not(.button):hover {
transform: none;
          background: rgba(255, 255, 255, 0.05);
  }

  body.page-index .nav-links a:not(.button)::after {
bottom: 6px;
  }

  body.page-index .nav-links a.button.primary {
justify-content: center;
          width: 100%;
          margin-top: 4px;
          min-height: 50px;
  }

  body.page-index.menu-open .nav-toggle-bar:nth-child(1) {
transform: translateY(6px) rotate(45deg);
  }

  body.page-index.menu-open .nav-toggle-bar:nth-child(2) {
opacity: 0;
  }

  body.page-index.menu-open .nav-toggle-bar:nth-child(3) {
transform: translateY(-6px) rotate(-45deg);
  }

  body.page-index .hero-grid,
body.page-index .about-layout,
body.page-index .contact-layout {
grid-template-columns: 1fr;
  }

  body.page-index .field-row,
body.page-index .services-grid,
body.page-index .about-points {
grid-template-columns: 1fr;
  }

  body.page-index .hero-actions,
body.page-index .footer-inner {
flex-direction: column;
          align-items: flex-start;
  }

  body.page-index .hero-actions .button {
width: 100%;
          justify-content: center;
  }

  body.page-index .hero-card {
min-height: 300px;
  }

  body.page-index .work-card.large,
body.page-index .work-card.small,
body.page-index .work-card {
grid-column: span 12;
  }

  body.page-index .contact-layout {
grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  body.page-index .nav {
min-height: 64px;
  }

  body.page-index .hero {
padding: 38px 0 12px;
  }

  body.page-index .hero h1 {
font-size: clamp(2.55rem, 12vw, 3.55rem);
  }

  body.page-index .hero-copy {
font-size: 0.96rem;
  }

  body.page-index .nav-links {
top: 74px;
  }
}

body.page-index .contact-layout {
display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
        margin-top: 24px;
        justify-items: center;
}

body.page-index .contact-form-wrap {
width: min(100%, 780px);
}

body.page-index #contact .section-header {
width: min(100%, 780px);
        margin: 0 auto 22px;
        justify-items: center;
        text-align: center;
}

body.page-index #contact .section-kicker {
justify-self: center;
}

body.page-index #contact .section-copy {
margin-inline: auto;
}

body.page-index .nav-links a.store-link::after,
body.page-index .nav-links a.news-link::after {
display: none !important;
}

body.page-index .hero.container {
width: 100%;
        max-width: none;
        margin: 0;
        padding: 0 0 26px;
}

body.page-index .hero {
position: relative;
        min-height: calc(100vh - 76px);
}

body.page-index .hero-shell {
position: relative;
        min-height: calc(100vh - 76px);
        width: 100%;
        border-radius: 0;
        overflow: hidden;
        border: none;
        background: #050505;
        box-shadow: none;
}

body.page-index .hero-media {
position: absolute;
        inset: 0;
        z-index: 0;
        overflow: hidden;
        background:
          radial-gradient(
            circle at 20% 18%,
            rgba(255, 255, 255, 0.08),
            transparent 22%
          ),
          radial-gradient(
            circle at 80% 22%,
            rgba(88, 169, 255, 0.1),
            transparent 26%
          ),
          linear-gradient(180deg, #090909 0%, #050505 100%);
        opacity: 1;
        transform: translateY(0) scale(1.02);
        transform-origin: center top;
        will-change: opacity, transform;
}

body.page-index .hero-bg-video {
position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: 0.58;
        filter: blur(1px) brightness(0.66) saturate(0.94);
        transform: scale(1.04);
}

body.page-index .hero-scrim {
position: absolute;
        inset: 0;
        background:
          linear-gradient(
            90deg,
            rgba(5, 5, 5, 0.76) 0%,
            rgba(5, 5, 5, 0.46) 34%,
            rgba(5, 5, 5, 0.18) 58%,
            rgba(5, 5, 5, 0.54) 100%
          ),
          linear-gradient(
            180deg,
            rgba(5, 5, 5, 0.18) 0%,
            rgba(5, 5, 5, 0.05) 28%,
            rgba(5, 5, 5, 0.42) 100%
          );
        z-index: 1;
}

body.page-index .hero-vignette {
position: absolute;
        inset: 0;
        z-index: 2;
        box-shadow:
          inset 0 0 70px rgba(0, 0, 0, 0.36),
          inset 0 -90px 130px rgba(0, 0, 0, 0.38);
        pointer-events: none;
}

body.page-index .hero-grid {
position: relative;
        z-index: 3;
        width: min(calc(100% - 32px), var(--max));
        margin: 0 auto;
        min-height: calc(100vh - 76px);
        padding: clamp(40px, 5vw, 64px) 0;
        align-items: end;
}

@media (max-width: 1100px) {
  body.page-index .hero-shell {
min-height: auto;
  }

  body.page-index .hero-grid {
min-height: auto;
  }
}

@media (max-width: 760px) {
  body.page-index .hero.container {
padding-bottom: 18px;
  }

  body.page-index .hero {
min-height: auto;
  }

  body.page-index .hero-shell {
min-height: auto;
  }

  body.page-index .hero-grid {
width: min(calc(100% - 24px), var(--max));
          padding: 26px 0 24px;
  }

  body.page-index .hero-bg-video {
opacity: 0.42;
          filter: blur(1px) brightness(0.54) saturate(0.88);
  }

  body.page-index .hero-scrim {
background:
            linear-gradient(
              180deg,
              rgba(5, 5, 5, 0.56) 0%,
              rgba(5, 5, 5, 0.28) 22%,
              rgba(5, 5, 5, 0.7) 100%
            ),
            linear-gradient(
              90deg,
              rgba(5, 5, 5, 0.72) 0%,
              rgba(5, 5, 5, 0.32) 50%,
              rgba(5, 5, 5, 0.74) 100%
            );
  }
}

body.page-index .hero-grid {
align-items: center;
}

body.page-index .hero-grid > div:first-child {
align-self: center;
        max-width: 760px;
        transform: translateY(-30px);
}

body.page-index .hero-card {
align-self: center;
}

body.page-index .preview-stack .preview-panel {
position: relative;
        overflow: hidden;
        border-width: 1px;
}

body.page-index .preview-stack .preview-panel::before,
body.page-index .services-grid .service-card::before {
content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        opacity: 1;
}

body.page-index .preview-stack .preview-panel:nth-child(1) {
border-color: rgba(255, 99, 176, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.06),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.24),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.14),
            transparent 40%
          ),
          rgba(255, 255, 255, 0.04);
        box-shadow:
          0 14px 34px rgba(0, 0, 0, 0.3),
          0 0 24px rgba(255, 99, 176, 0.12);
}

body.page-index .preview-stack .preview-panel:nth-child(1) .chip {
border-color: rgba(255, 99, 176, 0.26);
        background: rgba(255, 99, 176, 0.14);
        box-shadow: 0 0 18px rgba(255, 99, 176, 0.14);
}

body.page-index .preview-stack .preview-panel:nth-child(2) {
border-color: rgba(88, 169, 255, 0.28);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.06),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.22),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.14),
            transparent 38%
          ),
          rgba(255, 255, 255, 0.04);
        box-shadow:
          0 14px 34px rgba(0, 0, 0, 0.3),
          0 0 24px rgba(88, 169, 255, 0.12);
}

body.page-index .preview-stack .preview-panel:nth-child(2) .chip {
border-color: rgba(88, 169, 255, 0.26);
        background: rgba(88, 169, 255, 0.14);
        box-shadow: 0 0 18px rgba(88, 169, 255, 0.14);
}

body.page-index .preview-stack .preview-panel:nth-child(3) {
border-color: rgba(255, 216, 107, 0.28);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.06),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 216, 107, 0.2),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 140, 86, 0.16),
            transparent 38%
          ),
          rgba(255, 255, 255, 0.04);
        box-shadow:
          0 14px 34px rgba(0, 0, 0, 0.3),
          0 0 24px rgba(255, 216, 107, 0.11);
}

body.page-index .preview-stack .preview-panel:nth-child(3) .chip {
border-color: rgba(255, 216, 107, 0.28);
        background: rgba(255, 216, 107, 0.14);
        box-shadow: 0 0 18px rgba(255, 216, 107, 0.14);
}

body.page-index .services-grid .service-card {
position: relative;
        overflow: hidden;
        border-width: 1px;
}

body.page-index .services-grid .service-card:nth-child(1) {
border-color: rgba(255, 99, 176, 0.24);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.02)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.2),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.1),
            transparent 38%
          ),
          rgba(255, 255, 255, 0.03);
        box-shadow:
          0 12px 34px rgba(0, 0, 0, 0.28),
          0 0 24px rgba(255, 99, 176, 0.1);
}

body.page-index .services-grid .service-card:nth-child(2) {
border-color: rgba(88, 169, 255, 0.24);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.02)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.18),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.1),
            transparent 38%
          ),
          rgba(255, 255, 255, 0.03);
        box-shadow:
          0 12px 34px rgba(0, 0, 0, 0.28),
          0 0 24px rgba(88, 169, 255, 0.1);
}

body.page-index .services-grid .service-card:nth-child(3) {
border-color: rgba(255, 216, 107, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.02)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 216, 107, 0.18),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 140, 86, 0.12),
            transparent 38%
          ),
          rgba(255, 255, 255, 0.03);
        box-shadow:
          0 12px 34px rgba(0, 0, 0, 0.28),
          0 0 24px rgba(255, 216, 107, 0.1);
}

body.page-index .services-grid .service-card:nth-child(4) {
border-color: rgba(159, 124, 255, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.02)
          ),
          radial-gradient(
            circle at top right,
            rgba(159, 124, 255, 0.18),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(88, 169, 255, 0.1),
            transparent 38%
          ),
          rgba(255, 255, 255, 0.03);
        box-shadow:
          0 12px 34px rgba(0, 0, 0, 0.28),
          0 0 24px rgba(159, 124, 255, 0.1);
}

body.page-index .services-grid .service-card .service-number {
display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        border-radius: 999px;
        margin-bottom: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.05);
        color: #f0f0f0;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.page-index .services-grid .service-card:nth-child(1) .service-number {
border-color: rgba(255, 99, 176, 0.28);
        background: rgba(255, 99, 176, 0.14);
        box-shadow: 0 0 20px rgba(255, 99, 176, 0.14);
}

body.page-index .services-grid .service-card:nth-child(2) .service-number {
border-color: rgba(88, 169, 255, 0.28);
        background: rgba(88, 169, 255, 0.14);
        box-shadow: 0 0 20px rgba(88, 169, 255, 0.14);
}

body.page-index .services-grid .service-card:nth-child(3) .service-number {
border-color: rgba(255, 216, 107, 0.3);
        background: rgba(255, 216, 107, 0.14);
        box-shadow: 0 0 20px rgba(255, 216, 107, 0.14);
}

body.page-index .services-grid .service-card:nth-child(4) .service-number {
border-color: rgba(159, 124, 255, 0.3);
        background: rgba(159, 124, 255, 0.14);
        box-shadow: 0 0 20px rgba(159, 124, 255, 0.14);
}

body.page-index .services-grid .service-card h3,
body.page-index .preview-stack .preview-panel strong {
color: #f8f8f8;
}

body.page-index .services-grid .service-card p,
body.page-index .preview-stack .preview-panel span {
color: rgba(245, 245, 245, 0.86);
}

@media (max-width: 1100px) {
  body.page-index .hero-grid > div:first-child {
transform: none;
  }
}

@media (max-width: 760px) {
  body.page-index .hero-grid {
align-items: start;
  }

  body.page-index .hero-grid > div:first-child {
transform: none;
          max-width: none;
  }
}

body.page-index .nav-links a.store-link,
body.page-index .nav-links a.store-link:hover,
body.page-index .nav-links a.store-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(88, 169, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(88, 169, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.24),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.14),
            transparent 34%
          );
}

body.page-index .nav-links a.news-link,
body.page-index .nav-links a.news-link:hover,
body.page-index .nav-links a.news-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(255, 99, 176, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(255, 99, 176, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.24),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.15),
            transparent 34%
          );
}

body.page-index .nav-links a.store-link::after,
body.page-index .nav-links a.news-link::after {
display: none !important;
}

body.page-index .nav-links a.store-link,
body.page-index .nav-links a.store-link:hover,
body.page-index .nav-links a.store-link.active-link,
body.page-index .nav-links a.news-link,
body.page-index .nav-links a.news-link:hover,
body.page-index .nav-links a.news-link.active-link {
transform: none !important;
}

/* store.html */
:root {
--bg: #090909;
        --bg-soft: #111111;
        --card: rgba(255, 255, 255, 0.05);
        --card-strong: rgba(255, 255, 255, 0.08);
        --text: #f5f5f5;
        --muted: #b7b7b7;
        --line: rgba(255, 255, 255, 0.09);
        --accent: #ffffff;
        --accent-soft: rgba(255, 255, 255, 0.14);
        --logo-gold: #ffd86b;
        --logo-gold-glow: rgba(255, 216, 107, 0.22);
        --logo-pink: #ff63b0;
        --logo-pink-glow: rgba(255, 99, 176, 0.22);
        --logo-blue: #58a9ff;
        --logo-blue-glow: rgba(88, 169, 255, 0.22);
        --logo-violet: #9f7cff;
        --logo-violet-glow: rgba(159, 124, 255, 0.2);
        --radius: 22px;
        --max: 1240px;
        --shadow: 0 10px 40px rgba(0, 0, 0, 0.35);
        --transition: 420ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

* {
box-sizing: border-box;
}

html {
scroll-behavior: smooth;
}

body.page-store {
margin: 0;
        font-family:
          Inter,
          ui-sans-serif,
          system-ui,
          -apple-system,
          BlinkMacSystemFont,
          "Segoe UI",
          sans-serif;
        background:
          radial-gradient(
            circle at top left,
            rgba(255, 255, 255, 0.06),
            transparent 28%
          ),
          radial-gradient(
            circle at 85% 20%,
            rgba(255, 255, 255, 0.05),
            transparent 24%
          ),
          linear-gradient(180deg, #0b0b0b 0%, #080808 100%);
        color: var(--text);
        line-height: 1.5;
        overflow-x: hidden;
}

body.page-store a {
color: inherit;
        text-decoration: none;
}

body.page-store img {
max-width: 100%;
        display: block;
}

body.page-store .noise {
pointer-events: none;
        position: fixed;
        inset: 0;
        opacity: 0.045;
        background-image: radial-gradient(
          rgba(255, 255, 255, 0.9) 0.5px,
          transparent 0.5px
        );
        background-size: 6px 6px;
        mix-blend-mode: soft-light;
        z-index: 1;
}

body.page-store .container {
width: min(calc(100% - 32px), var(--max));
        margin: 0 auto;
        position: relative;
        z-index: 2;
}

body.page-store .topbar {
position: sticky;
        top: 0;
        z-index: 30;
        backdrop-filter: blur(18px);
        background: rgba(9, 9, 9, 0.68);
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

body.page-store .nav {
min-height: 76px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
}

body.page-store .brand {
display: inline-flex;
        align-items: center;
        gap: 12px;
        font-weight: 600;
        letter-spacing: 0.02em;
}

body.page-store .brand-mark {
width: 14px;
        height: 14px;
        border-radius: 999px;
        background: linear-gradient(
          135deg,
          var(--logo-gold) 0%,
          var(--logo-pink) 35%,
          var(--logo-violet) 68%,
          var(--logo-blue) 100%
        );
        background-size: 220% 220%;
        box-shadow:
          0 0 0 8px rgba(255, 255, 255, 0.04),
          0 0 12px rgba(255, 99, 176, 0.16),
          0 0 24px rgba(88, 169, 255, 0.14);
        animation:
          brandMarkShift 12s ease-in-out infinite,
          brandMarkGlow 6s ease-in-out infinite;
}

body.page-store .nav-links {
display: flex;
        align-items: center;
        gap: 24px;
        flex-wrap: wrap;
}

body.page-store .nav-links a:hover {
color: var(--text);
        transform: translateY(-1px);
}

body.page-store .nav-links a {
position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-weight: 500;
        line-height: 24px;
        color: var(--muted);
        transition:
          color var(--transition),
          transform var(--transition);
        font-size: 0.98rem;
}

body.page-store .nav-links a:not(.button)::after {
content: "";
        position: absolute;
        left: 50%;
        bottom: -1px;
        width: 100%;
        height: 2px;
        background: linear-gradient(
          90deg,
          var(--logo-gold),
          var(--logo-pink),
          var(--logo-blue)
        );
        transform: translateX(-50%) scaleX(0);
        transform-origin: center;
        transition:
          transform var(--transition),
          opacity var(--transition);
        opacity: 0.95;
        border-radius: 999px;
        box-shadow: 0 0 14px rgba(88, 169, 255, 0.12);
}

body.page-store .nav-links a:not(.button):hover::after,
body.page-store .nav-links a:not(.button).active-link::after {
transform: translateX(-50%) scaleX(1);
}

body.page-store .button,
body.page-store button {
display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        min-height: 48px;
        padding: 0 20px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.06);
        color: var(--text);
        font-size: 0.96rem;
        cursor: pointer;
        transition:
          transform var(--transition),
          background var(--transition),
          border-color var(--transition),
          box-shadow var(--transition);
        box-shadow: var(--shadow);
}

body.page-store .button:hover,
body.page-store button:hover {
transform: translateY(-3px);
        background: rgba(255, 255, 255, 0.1);
        border-color: rgba(255, 255, 255, 0.18);
        box-shadow:
          0 14px 30px rgba(0, 0, 0, 0.38),
          0 0 18px rgba(88, 169, 255, 0.1);
}

body.page-store .button.primary,
body.page-store button.primary {
background: #fff;
        color: #0b0b0b;
        border-color: rgba(255, 255, 255, 0.58);
        box-shadow:
          0 10px 30px rgba(0, 0, 0, 0.28),
          inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

body.page-store .button.primary:hover,
body.page-store button.primary:hover {
background: #f3f3f3;
}

body.page-store .topbar .button.primary {
position: relative;
        overflow: hidden;
        isolation: isolate;
        transition:
          transform var(--transition),
          border-color var(--transition),
          box-shadow var(--transition),
          color var(--transition),
          background var(--transition);
}

body.page-store .topbar .button.primary:hover {
color: #080808;
        background-image: linear-gradient(
          115deg,
          rgba(255, 216, 107, 0.95),
          rgba(255, 255, 255, 0.98) 34%,
          rgba(255, 99, 176, 0.22) 66%,
          rgba(88, 169, 255, 0.28) 100%
        );
        background-size: 200% 100%;
        animation: projectButtonShift 2.2s linear infinite;
        border-color: rgba(255, 255, 255, 0.78);
        box-shadow:
          0 16px 34px rgba(0, 0, 0, 0.34),
          0 0 22px rgba(255, 99, 176, 0.12),
          0 0 24px rgba(88, 169, 255, 0.12),
          inset 0 1px 0 rgba(255, 255, 255, 0.9);
        transform: translateY(-2px) scale(1.01);
}

body.page-store .hero {
min-height: calc(100vh - 76px);
        display: grid;
        align-items: center;
        padding: 72px 0 40px;
}

body.page-store .hero-grid {
display: grid;
        grid-template-columns: 1.4fr 0.85fr;
        gap: 28px;
        align-items: end;
}

body.page-store .eyebrow {
display: inline-flex;
        align-items: center;
        gap: 10px;
        color: #d8d8d8;
        padding: 10px 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        background: rgba(255, 255, 255, 0.04);
        margin-bottom: 22px;
        font-size: 0.92rem;
        letter-spacing: 0.02em;
}

body.page-store .hero h1 {
margin: 0;
        font-size: clamp(3rem, 8vw, 7rem);
        line-height: 0.94;
        letter-spacing: -0.055em;
        max-width: 820px;
}

body.page-store .hero-copy {
margin-top: 24px;
        max-width: 700px;
        color: var(--muted);
        font-size: clamp(1rem, 1.5vw, 1.18rem);
}

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

body.page-store .hero-card,
body.page-store .card,
body.page-store .contact-card,
body.page-store .about-card {
border: 1px solid var(--line);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.06),
          rgba(255, 255, 255, 0.03)
        );
        border-radius: var(--radius);
        box-shadow: var(--shadow);
}

body.page-store .hero-card {
padding: 26px;
        min-height: 360px;
        position: relative;
        overflow: hidden;
}

body.page-store .hero-card::before {
content: "";
        position: absolute;
        inset: -20% auto auto -10%;
        width: 240px;
        height: 240px;
        background: radial-gradient(
          circle,
          rgba(255, 255, 255, 0.18),
          transparent 65%
        );
        filter: blur(8px);
        opacity: 0.8;
}

body.page-store .hero-preview {
height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        position: relative;
        z-index: 1;
}

body.page-store .hero-preview-top {
display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 18px;
}

body.page-store .chip {
display: inline-flex;
        align-items: center;
        padding: 8px 12px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #ececec;
        font-size: 0.88rem;
}

body.page-store .preview-stack {
display: grid;
        gap: 12px;
        margin-top: 28px;
}

body.page-store .preview-panel {
padding: 16px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(255, 255, 255, 0.08);
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 18px;
        transition:
          transform var(--transition),
          background var(--transition);
}

body.page-store .preview-panel:hover {
transform: translateX(6px);
        background: rgba(255, 255, 255, 0.08);
}

body.page-store .preview-label {
display: grid;
        gap: 4px;
}

body.page-store .preview-label span {
color: var(--muted);
        font-size: 0.92rem;
}

body.page-store section {
padding: 44px 0 26px;
}

body.page-store .section-header {
display: grid;
        gap: 12px;
        margin-bottom: 22px;
}

body.page-store .section-kicker {
color: #d1d1d1;
        text-transform: uppercase;
        letter-spacing: 0.16em;
        font-size: 0.78rem;
}

body.page-store .section-title {
margin: 0;
        font-size: clamp(2rem, 4vw, 3.5rem);
        letter-spacing: -0.05em;
        line-height: 0.98;
}

body.page-store .section-copy {
color: var(--muted);
        max-width: 700px;
        font-size: 1.02rem;
}

body.page-store .work-grid {
display: grid;
        grid-template-columns: repeat(12, 1fr);
        gap: 18px;
        margin-top: 26px;
}

body.page-store .work-card {
grid-column: span 6;
        min-height: 420px;
        padding: 20px;
        position: relative;
        overflow: hidden;
        border-radius: 26px;
        border: 1px solid var(--line);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.05),
          rgba(255, 255, 255, 0.03)
        );
        transition:
          transform var(--transition),
          border-color var(--transition),
          background var(--transition);
        box-shadow: var(--shadow);
}

body.page-store .work-card.large {
grid-column: span 8;
        min-height: 520px;
}

body.page-store .work-card.small {
grid-column: span 4;
}

body.page-store .work-card:hover {
transform: translateY(-4px);
        border-color: rgba(255, 255, 255, 0.16);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.08),
          rgba(255, 255, 255, 0.04)
        );
}

body.page-store .work-media {
position: absolute;
        inset: 0;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.02)
          ),
          radial-gradient(
            circle at 20% 20%,
            rgba(255, 255, 255, 0.18),
            transparent 28%
          ),
          radial-gradient(
            circle at 80% 70%,
            rgba(255, 255, 255, 0.1),
            transparent 32%
          ),
          linear-gradient(160deg, #171717, #0d0d0d);
        transform: scale(1);
        transition: transform 900ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.page-store .work-card:hover .work-media {
transform: scale(1.03);
}

body.page-store .work-overlay {
position: absolute;
        inset: 0;
        background: linear-gradient(
          180deg,
          transparent 20%,
          rgba(0, 0, 0, 0.65) 100%
        );
}

body.page-store .work-content {
position: relative;
        z-index: 1;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 18px;
}

body.page-store .work-top {
display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 12px;
}

body.page-store .placeholder-note {
font-size: 0.86rem;
        color: #d5d5d5;
        padding: 8px 12px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.08);
}

body.page-store .work-bottom h3 {
margin: 0 0 8px;
        font-size: clamp(1.4rem, 2.3vw, 2.1rem);
        letter-spacing: -0.04em;
}

body.page-store .work-bottom p {
margin: 0;
        max-width: 520px;
        color: #dadada;
}

body.page-store .services-grid {
display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
        margin-top: 26px;
}

body.page-store .service-card {
--service-color: var(--logo-blue);
        --service-glow: var(--logo-blue-glow);
        padding: 30px;
        min-height: 290px;
        border-radius: 30px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at 88% 14%,
            var(--service-glow),
            transparent 36%
          );
        box-shadow: var(--shadow);
        transition:
          transform var(--transition),
          border-color var(--transition),
          background var(--transition),
          box-shadow var(--transition);
        position: relative;
        overflow: hidden;
        isolation: isolate;
}

body.page-store .service-card:nth-child(1) {
--service-color: var(--logo-pink);
        --service-glow: var(--logo-pink-glow);
}

body.page-store .service-card:nth-child(2) {
--service-color: var(--logo-gold);
        --service-glow: var(--logo-gold-glow);
}

body.page-store .service-card:nth-child(3) {
--service-color: var(--logo-blue);
        --service-glow: var(--logo-blue-glow);
}

body.page-store .service-card:nth-child(4) {
--service-color: var(--logo-violet);
        --service-glow: var(--logo-violet-glow);
}

body.page-store .service-card::before {
content: "";
        position: absolute;
        inset: auto 0 0 0;
        height: 2px;
        background: linear-gradient(
          90deg,
          transparent,
          var(--service-color),
          transparent
        );
        transform: scaleX(0.26);
        opacity: 0.7;
        transition:
          transform var(--transition),
          opacity var(--transition);
        z-index: 0;
}

body.page-store .service-card::after {
content: "";
        position: absolute;
        right: -48px;
        top: -48px;
        width: 170px;
        height: 170px;
        border-radius: 999px;
        background: radial-gradient(
          circle,
          var(--service-glow),
          transparent 72%
        );
        filter: blur(12px);
        opacity: 0.85;
        transition:
          transform 700ms cubic-bezier(0.2, 0.8, 0.2, 1),
          opacity var(--transition);
        z-index: 0;
}

body.page-store .service-card:hover {
transform: translateY(-10px);
        border-color: rgba(255, 255, 255, 0.2);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.12),
            rgba(255, 255, 255, 0.04)
          ),
          radial-gradient(
            circle at 88% 14%,
            var(--service-glow),
            transparent 40%
          );
        box-shadow:
          0 20px 50px rgba(0, 0, 0, 0.46),
          inset 0 1px 0 rgba(255, 255, 255, 0.09),
          0 0 24px var(--service-glow);
}

body.page-store .service-card:hover::before {
transform: scaleX(1);
        opacity: 1;
}

body.page-store .service-card:hover::after {
transform: translate(-10px, 10px) scale(1.08);
        opacity: 1;
}

body.page-store .service-number {
width: 48px;
        height: 48px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 999px;
        font-size: 0.94rem;
        color: #fff;
        margin-bottom: 28px;
        background: linear-gradient(
          135deg,
          rgba(255, 255, 255, 0.12),
          rgba(255, 255, 255, 0.04)
        );
        border: 1px solid rgba(255, 255, 255, 0.14);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.05),
          0 0 18px var(--service-glow);
        position: relative;
        z-index: 1;
}

body.page-store .service-card h3 {
margin: 0 0 14px;
        font-size: clamp(1.55rem, 2vw, 2rem);
        letter-spacing: -0.04em;
        line-height: 1.02;
        position: relative;
        z-index: 1;
        text-wrap: balance;
}

body.page-store .service-card p {
margin: 0;
        color: #d9d9d9;
        font-size: 1rem;
        max-width: 32ch;
        position: relative;
        z-index: 1;
}

body.page-store .store-grid {
display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 22px;
        margin-top: 26px;
}

body.page-store .store-card {
position: relative;
        min-height: 420px;
        padding: 18px;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.1),
            transparent 34%
          );
        box-shadow: var(--shadow);
        overflow: hidden;
        isolation: isolate;
        transition:
          transform var(--transition),
          border-color var(--transition),
          box-shadow var(--transition),
          background var(--transition);
}

body.page-store .store-card:nth-child(2) {
background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.11),
            transparent 36%
          );
}

body.page-store .store-card:nth-child(3) {
background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 216, 107, 0.12),
            transparent 36%
          );
}

body.page-store .store-card:hover {
transform: translateY(-10px) scale(1.01);
        border-color: rgba(255, 255, 255, 0.22);
        box-shadow:
          0 24px 58px rgba(0, 0, 0, 0.42),
          inset 0 1px 0 rgba(255, 255, 255, 0.08),
          0 0 20px rgba(88, 169, 255, 0.1);
}

body.page-store .store-preview {
position: relative;
        width: 100%;
        aspect-ratio: 16 / 10;
        border-radius: 22px;
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.1),
            rgba(255, 255, 255, 0.03)
          ),
          linear-gradient(160deg, #181818, #0d0d0d);
        margin-bottom: 18px;
}

body.page-store .store-preview::before {
content: "";
        position: absolute;
        inset: 0;
        background:
          radial-gradient(
            circle at 18% 20%,
            rgba(255, 255, 255, 0.12),
            transparent 26%
          ),
          radial-gradient(
            circle at 78% 70%,
            rgba(88, 169, 255, 0.18),
            transparent 30%
          );
        opacity: 0.95;
        transition:
          transform 900ms cubic-bezier(0.2, 0.8, 0.2, 1),
          opacity var(--transition);
}

body.page-store .store-card:nth-child(2) .store-preview::before {
background:
          radial-gradient(
            circle at 18% 20%,
            rgba(255, 255, 255, 0.12),
            transparent 26%
          ),
          radial-gradient(
            circle at 78% 70%,
            rgba(255, 99, 176, 0.22),
            transparent 30%
          );
}

body.page-store .store-card:nth-child(3) .store-preview::before {
background:
          radial-gradient(
            circle at 18% 20%,
            rgba(255, 255, 255, 0.12),
            transparent 26%
          ),
          radial-gradient(
            circle at 78% 70%,
            rgba(255, 216, 107, 0.24),
            transparent 30%
          );
}

body.page-store .store-card:hover .store-preview::before {
transform: scale(1.06);
}

body.page-store .store-art {
position: absolute;
        inset: 18px;
        border-radius: 18px;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.01)
          ),
          repeating-linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.05) 0 10px,
            rgba(255, 255, 255, 0.02) 10px 20px
          );
        border: 1px solid rgba(255, 255, 255, 0.06);
        display: grid;
        place-items: center;
        overflow: hidden;
}

body.page-store .store-art::after {
content: "";
        width: 120px;
        height: 120px;
        border-radius: 30px;
        background: linear-gradient(
          135deg,
          rgba(255, 255, 255, 0.85),
          rgba(255, 255, 255, 0.16)
        );
        transform: rotate(18deg);
        box-shadow: 0 0 24px rgba(255, 255, 255, 0.08);
        opacity: 0.55;
}

body.page-store .store-badge {
position: absolute;
        top: 14px;
        left: 14px;
        z-index: 2;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 8px 12px;
        border-radius: 999px;
        font-size: 0.84rem;
        background: rgba(10, 10, 10, 0.58);
        border: 1px solid rgba(255, 255, 255, 0.1);
        color: #f0f0f0;
        backdrop-filter: blur(8px);
}

body.page-store .store-card h3 {
margin: 0 0 10px;
        font-size: clamp(1.3rem, 1.8vw, 1.6rem);
        letter-spacing: -0.04em;
        line-height: 1.02;
}

body.page-store .store-card p {
margin: 0 0 18px;
        color: #d2d2d2;
        font-size: 0.98rem;
        max-width: 34ch;
}

body.page-store .store-actions {
display: flex;
        gap: 10px;
        flex-wrap: wrap;
        margin-top: auto;
}

body.page-store .store-button {
min-height: 42px;
        padding: 0 16px;
        font-size: 0.92rem;
}

body.page-store .store-note {
color: var(--muted);
        font-size: 0.92rem;
        margin-top: 10px;
}

body.page-store #store .section-title {
position: relative;
        display: inline-block;
        padding-bottom: 14px;
}

body.page-store #store .section-title::after {
content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 150px;
        height: 2px;
        border-radius: 999px;
        background: linear-gradient(
          90deg,
          var(--logo-blue),
          var(--logo-pink),
          var(--logo-gold)
        );
        box-shadow: 0 0 18px rgba(88, 169, 255, 0.16);
}

body.page-store .about-layout {
display: grid;
        grid-template-columns: 1.1fr 0.9fr;
        gap: 18px;
        margin-top: 24px;
}

body.page-store .about-card,
body.page-store .contact-card {
padding: 28px;
        min-height: 100%;
}

body.page-store .contact-form-wrap {
width: min(100%, 780px);
}

body.page-store .about-card p {
margin: 0 0 18px;
        color: var(--muted);
        font-size: 1.02rem;
        max-width: 720px;
}

body.page-store .about-points {
display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
        margin-top: 24px;
}

body.page-store .point {
padding: 16px 18px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #e7e7e7;
}

body.page-store .point strong {
display: block;
        font-size: 0.95rem;
        margin-bottom: 6px;
}

body.page-store .point span {
color: var(--muted);
        font-size: 0.94rem;
}

body.page-store .stats {
display: grid;
        gap: 14px;
}

body.page-store .stat {
padding: 18px 20px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        transition:
          transform 380ms cubic-bezier(0.2, 0.8, 0.2, 1),
          border-color var(--transition),
          background var(--transition),
          box-shadow var(--transition);
}

body.page-store .stat .number {
font-size: clamp(1.8rem, 3vw, 2.8rem);
        letter-spacing: -0.05em;
        margin-bottom: 4px;
}

body.page-store .stat .label {
color: var(--muted);
        font-size: 0.95rem;
}

body.page-store .contact-layout {
display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
        margin-top: 24px;
        justify-items: center;
}

body.page-store .contact-copy {
display: grid;
        gap: 16px;
        align-content: start;
}

body.page-store .contact-links {
display: grid;
        gap: 10px;
        margin-top: 8px;
}

body.page-store .contact-link {
display: flex;
        justify-content: space-between;
        gap: 14px;
        padding: 16px 18px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        transition:
          transform var(--transition),
          background var(--transition);
}

body.page-store .contact-link:hover {
transform: translateX(5px);
        background: rgba(255, 255, 255, 0.07);
}

body.page-store form {
display: grid;
        gap: 14px;
}

body.page-store .field-row {
display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px;
}

body.page-store label {
display: grid;
        gap: 8px;
        color: #eaeaea;
        font-size: 0.94rem;
}

body.page-store input,
body.page-store textarea {
width: 100%;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.04);
        color: var(--text);
        border-radius: 16px;
        padding: 14px 16px;
        font: inherit;
        transition:
          border-color var(--transition),
          background var(--transition),
          transform var(--transition);
}

body.page-store input:focus,
body.page-store textarea:focus {
outline: none;
        border-color: rgba(255, 255, 255, 0.26);
        background: rgba(255, 255, 255, 0.06);
        transform: translateY(-1px);
}

body.page-store textarea {
resize: vertical;
        min-height: 150px;
}

body.page-store .form-note,
body.page-store .status {
color: var(--muted);
        font-size: 0.92rem;
}

body.page-store .status.success {
color: #d6ffd6;
}

body.page-store .status.error {
color: #ffd3d3;
}

body.page-store footer {
padding: 26px 0 40px;
}

body.page-store .footer-inner {
display: flex;
        justify-content: space-between;
        gap: 18px;
        align-items: center;
        padding-top: 18px;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        color: var(--muted);
        font-size: 0.94rem;
}

body.page-store .socials {
display: flex;
        gap: 10px;
        flex-wrap: wrap;
}

body.page-store .socials a {
padding: 10px 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        background: rgba(255, 255, 255, 0.04);
        transition:
          transform var(--transition),
          background var(--transition);
}

body.page-store .socials a:hover {
transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.08);
}

body.page-store .reveal {
opacity: 0;
        transform: translateY(26px);
        transition:
          opacity 800ms cubic-bezier(0.2, 0.8, 0.2, 1),
          transform 800ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.page-store .reveal.visible {
opacity: 1;
        transform: translateY(0);
}

body.page-store #services .section-title {
position: relative;
        display: inline-block;
        padding-bottom: 16px;
}

body.page-store #services .section-title::after {
content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 170px;
        height: 2px;
        border-radius: 999px;
        background: linear-gradient(
          90deg,
          var(--logo-gold),
          var(--logo-pink),
          var(--logo-blue)
        );
        box-shadow: 0 0 18px rgba(88, 169, 255, 0.14);
}

@media (max-width: 1100px) {
  body.page-store .hero-grid,
body.page-store .about-layout,
body.page-store .contact-layout {
grid-template-columns: 1fr;
  }

  body.page-store .services-grid {
grid-template-columns: repeat(2, 1fr);
  }

  body.page-store .store-grid {
grid-template-columns: repeat(2, 1fr);
  }

  body.page-store .work-card.large,
body.page-store .work-card.small,
body.page-store .work-card {
grid-column: span 12;
  }
}

@media (max-width: 760px) {
  body.page-store .nav {
min-height: 72px;
          padding: 12px 0;
          align-items: flex-start;
          flex-direction: column;
  }

  body.page-store .nav-links {
gap: 14px;
  }

  body.page-store .hero {
min-height: auto;
          padding-top: 52px;
  }

  body.page-store .field-row,
body.page-store .services-grid,
body.page-store .store-grid,
body.page-store .about-points {
grid-template-columns: 1fr;
  }

  body.page-store .hero-actions,
body.page-store .footer-inner {
flex-direction: column;
          align-items: flex-start;
  }

  body.page-store .hero-card {
min-height: 300px;
  }
}

body.page-store .nav-links a:not(.button):hover {
color: var(--text);
}

body.page-store .nav-links a:not(.button):hover::after {
transform: scaleX(1);
}

body.page-store .nav-links a {
position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-weight: 500;
        line-height: 24px;
        color: var(--muted);
        transition:
          color var(--transition),
          transform var(--transition);
        font-size: 0.98rem;
}

body.page-store .nav-links a:not(.button)::after {
content: "";
        position: absolute;
        left: 50%;
        bottom: -1px;
        width: 100%;
        height: 2px;
        background: linear-gradient(
          90deg,
          var(--logo-gold),
          var(--logo-pink),
          var(--logo-blue)
        );
        transform: translateX(-50%) scaleX(0);
        transform-origin: center;
        transition:
          transform var(--transition),
          opacity var(--transition);
        opacity: 0.95;
        border-radius: 999px;
        box-shadow: 0 0 14px rgba(88, 169, 255, 0.12);
}

body.page-store .nav-links a:not(.button):hover::after,
body.page-store .nav-links a:not(.button).active-link::after {
transform: translateX(-50%) scaleX(1);
}

body.page-store .button,
body.page-store button,
body.page-store .socials a,
body.page-store .contact-link,
body.page-store .preview-panel,
body.page-store .service-card,
body.page-store .work-card,
body.page-store .hero-card,
body.page-store .about-card,
body.page-store .contact-card,
body.page-store .stat {
transition:
          transform 380ms cubic-bezier(0.2, 0.8, 0.2, 1),
          border-color var(--transition),
          background var(--transition),
          box-shadow var(--transition);
        will-change: transform;
}

body.page-store .button:hover,
body.page-store button:hover,
body.page-store .socials a:hover,
body.page-store .contact-link:hover,
body.page-store .preview-panel:hover,
body.page-store .service-card:hover,
body.page-store .work-card:hover,
body.page-store .hero-card:hover,
body.page-store .about-card:hover,
body.page-store .contact-card:hover,
body.page-store .stat:hover {
border-color: rgba(255, 255, 255, 0.18);
        box-shadow:
          0 14px 36px rgba(0, 0, 0, 0.42),
          inset 0 1px 0 rgba(255, 255, 255, 0.08),
          0 0 0 1px rgba(255, 255, 255, 0.03);
}

body.page-store .work-card:hover {
transform: translateY(-6px);
}

body.page-store .hero-card:hover,
body.page-store .about-card:hover {
transform: translateY(-4px);
}

body.page-store .preview-panel:hover,
body.page-store .contact-link:hover,
body.page-store .socials a:hover {
transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.08);
}

body.page-store .contact-card:hover {
transform: none;
}

body.page-store .stat:hover {
transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.06);
}

body.page-store input:focus,
body.page-store textarea:focus {
outline: none;
        border-color: rgba(255, 255, 255, 0.26);
        background: rgba(255, 255, 255, 0.06);
        transform: none;
        box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.05);
}

body.page-store .hero h1,
body.page-store .hero-copy,
body.page-store .hero-actions,
body.page-store .eyebrow {
opacity: 0;
        transform: translateY(20px);
        animation: heroFadeUp 0.9s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}

body.page-store .eyebrow {
animation-delay: 0.05s;
}

body.page-store .hero h1 {
animation-delay: 0.15s;
}

body.page-store .hero-copy {
animation-delay: 0.28s;
}

body.page-store .hero-actions {
animation-delay: 0.4s;
}

body.page-store .hero-card {
opacity: 0;
        transform: translateY(24px) scale(0.985);
        animation: heroCardIn 1s cubic-bezier(0.2, 0.8, 0.2, 1) 0.2s forwards;
}

body.page-store .preview-panel:nth-child(1) {
animation: panelIn 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.45s both;
}

body.page-store .preview-panel:nth-child(2) {
animation: panelIn 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.58s both;
}

body.page-store .preview-panel:nth-child(3) {
animation: panelIn 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.71s both;
}

body.page-store .service-card:hover .service-number {
animation: serviceNumberPulse 1.8s ease-in-out infinite;
}

@media (prefers-reduced-motion: reduce) {
  body.page-store .hero h1,
body.page-store .hero-copy,
body.page-store .hero-actions,
body.page-store .eyebrow,
body.page-store .hero-card,
body.page-store .preview-panel:nth-child(1),
body.page-store .preview-panel:nth-child(2),
body.page-store .preview-panel:nth-child(3) {
animation: none !important;
          opacity: 1 !important;
          transform: none !important;
  }
}

body.page-store .store-hero {
min-height: auto;
        padding: 72px 0 28px;
        position: relative;
        isolation: isolate;
}

body.page-store .store-hero::before,
body.page-store .store-hero::after {
content: "";
        position: absolute;
        border-radius: 999px;
        filter: blur(70px);
        opacity: 0.12;
        pointer-events: none;
        z-index: -1;
}

body.page-store .store-hero::before {
width: 220px;
        height: 220px;
        right: 10%;
        top: 8%;
        background: radial-gradient(circle, var(--logo-blue), transparent 70%);
}

body.page-store .store-hero::after {
width: 220px;
        height: 220px;
        left: 8%;
        bottom: 0%;
        background: radial-gradient(circle, var(--logo-pink), transparent 72%);
}

body.page-store .store-hero-grid {
display: grid;
        grid-template-columns: 1.15fr 0.85fr;
        gap: 24px;
        align-items: end;
}

body.page-store .store-hero-copy {
max-width: 760px;
        color: var(--muted);
        font-size: clamp(1rem, 1.4vw, 1.16rem);
        margin-top: 22px;
}

body.page-store .store-hero-card {
padding: 24px;
        min-height: 280px;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.12),
            transparent 34%
          );
        box-shadow: var(--shadow);
        position: relative;
        overflow: hidden;
        isolation: isolate;
}

body.page-store .store-hero-card::before {
content: "";
        position: absolute;
        inset: -18% auto auto -10%;
        width: 220px;
        height: 220px;
        border-radius: 999px;
        background: radial-gradient(
          circle,
          rgba(255, 99, 176, 0.18),
          transparent 70%
        );
        filter: blur(16px);
        opacity: 0.9;
}

body.page-store .store-hero-points {
display: grid;
        gap: 12px;
        position: relative;
        z-index: 1;
        margin-top: 28px;
}

body.page-store .store-hero-point {
display: flex;
        justify-content: space-between;
        gap: 14px;
        padding: 16px 18px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        transition:
          transform var(--transition),
          background var(--transition),
          border-color var(--transition),
          box-shadow var(--transition);
}

body.page-store .store-hero-point:hover {
transform: translateX(5px);
        background: rgba(255, 255, 255, 0.07);
        border-color: rgba(255, 255, 255, 0.12);
        box-shadow: 0 12px 28px rgba(0, 0, 0, 0.24);
}

body.page-store .store-cta {
padding-top: 12px;
}

body.page-store .store-cta-card {
padding: 28px;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 216, 107, 0.1),
            transparent 34%
          );
        box-shadow: var(--shadow);
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        flex-wrap: wrap;
}

@media (max-width: 1100px) {
  body.page-store .store-hero-grid {
grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  body.page-store .store-cta-card {
flex-direction: column;
          align-items: flex-start;
  }
}

body.page-store .nav-links a.courses-link,
body.page-store .nav-links a.store-link,
body.page-store .nav-links a.news-link {
padding: 9px 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.04);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

body.page-store .nav-links a.courses-link {
color: #f3edff;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(159, 124, 255, 0.18),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(88, 169, 255, 0.1),
            transparent 34%
          );
        border-color: rgba(159, 124, 255, 0.18);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.03),
          0 0 18px rgba(159, 124, 255, 0.06);
}

body.page-store .nav-links a.courses-link:hover,
body.page-store .nav-links a.courses-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(159, 124, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(159, 124, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(159, 124, 255, 0.22),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(88, 169, 255, 0.14),
            transparent 34%
          );
}

body.page-store .nav-links a.store-link {
color: #edf5ff;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.18),
            transparent 46%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.1),
            transparent 34%
          );
        border-color: rgba(88, 169, 255, 0.18);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.03),
          0 0 18px rgba(88, 169, 255, 0.07);
}

body.page-store .nav-links a.store-link:hover,
body.page-store .nav-links a.store-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(88, 169, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(88, 169, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.24),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.14),
            transparent 34%
          );
}

body.page-store .nav-links a.news-link {
color: #ffeef8;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.18),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.12),
            transparent 34%
          );
        border-color: rgba(255, 99, 176, 0.18);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.03),
          0 0 18px rgba(255, 99, 176, 0.06);
}

body.page-store .nav-links a.news-link:hover,
body.page-store .nav-links a.news-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(255, 99, 176, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(255, 99, 176, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.24),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.15),
            transparent 34%
          );
}

body.page-store .nav-links a.store-link::after,
body.page-store .nav-links a.news-link::after {
display: none;
}

body.page-store .button.primary,
body.page-store button.primary {
background: linear-gradient(180deg, #ffffff, #f0f0f0);
        color: #0b0b0b;
        border-color: rgba(255, 255, 255, 0.56);
        box-shadow:
          0 10px 30px rgba(0, 0, 0, 0.28),
          inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

body.page-store .button.primary:hover,
body.page-store button.primary:hover {
background: linear-gradient(
          135deg,
          rgba(255, 216, 107, 0.95) 0%,
          rgba(255, 255, 255, 0.98) 38%,
          rgba(255, 99, 176, 0.18) 74%,
          rgba(88, 169, 255, 0.24) 100%
        );
        color: #080808;
        border-color: rgba(255, 255, 255, 0.86);
        box-shadow:
          0 18px 34px rgba(0, 0, 0, 0.32),
          0 0 24px rgba(88, 169, 255, 0.12),
          0 0 20px rgba(255, 99, 176, 0.1),
          inset 0 1px 0 rgba(255, 255, 255, 0.84);
        transform: translateY(-3px) scale(1.01);
}

body.page-store .store-preview-cta {
margin-top: 24px;
        padding: 28px;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.16),
            transparent 32%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 99, 176, 0.1),
            transparent 28%
          );
        box-shadow: var(--shadow);
        position: relative;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        flex-wrap: wrap;
}

body.page-store .store-preview-cta::before {
content: "";
        position: absolute;
        inset: auto -12% -44% auto;
        width: 240px;
        height: 240px;
        border-radius: 999px;
        background: radial-gradient(
          circle,
          rgba(255, 216, 107, 0.16),
          transparent 70%
        );
        filter: blur(12px);
        z-index: 0;
}

body.page-store .store-preview-copy,
body.page-store .store-preview-cta .button {
position: relative;
        z-index: 1;
}

body.page-store .store-preview-copy strong {
display: block;
        margin-bottom: 8px;
        font-size: clamp(1.3rem, 2vw, 1.72rem);
        letter-spacing: -0.04em;
}

body.page-store .store-preview-copy p {
margin: 0;
        max-width: 720px;
        color: var(--muted);
        font-size: 0.98rem;
}

body.page-store .store-preview-cta .button {
min-width: 240px;
        justify-content: center;
}

body.page-store .release-accent {
display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 8px 12px;
        border-radius: 999px;
        border: 1px solid rgba(255, 99, 176, 0.18);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.06),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.16),
            transparent 42%
          );
        color: #fff0f8;
        font-size: 0.86rem;
}

body.page-store .news-grid {
display: grid;
        grid-template-columns: repeat(12, 1fr);
        gap: 18px;
        margin-top: 26px;
}

body.page-store .news-card {
grid-column: span 4;
        min-height: 380px;
        padding: 22px;
        position: relative;
        overflow: hidden;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.06),
          rgba(255, 255, 255, 0.03)
        );
        box-shadow: var(--shadow);
        transition:
          transform var(--transition),
          border-color var(--transition),
          box-shadow var(--transition),
          background var(--transition);
}

body.page-store .news-card.featured {
grid-column: span 6;
        min-height: 430px;
}

body.page-store .news-card::before {
content: "";
        position: absolute;
        right: -46px;
        top: -46px;
        width: 180px;
        height: 180px;
        border-radius: 999px;
        filter: blur(14px);
        opacity: 0.86;
        transition:
          transform var(--transition),
          opacity var(--transition);
}

body.page-store .news-card.news-item::before {
background: radial-gradient(
          circle,
          rgba(88, 169, 255, 0.18),
          transparent 72%
        );
}

body.page-store .news-card.release-item::before {
background: radial-gradient(
          circle,
          rgba(255, 99, 176, 0.2),
          transparent 72%
        );
}

body.page-store .news-card:hover {
transform: translateY(-8px);
        border-color: rgba(255, 255, 255, 0.18);
        box-shadow:
          0 22px 50px rgba(0, 0, 0, 0.42),
          0 0 22px rgba(88, 169, 255, 0.08);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.1),
          rgba(255, 255, 255, 0.04)
        );
}

body.page-store .news-card.release-item:hover {
box-shadow:
          0 22px 50px rgba(0, 0, 0, 0.42),
          0 0 22px rgba(255, 99, 176, 0.1);
}

body.page-store .news-card:hover::before {
transform: translate(-8px, 8px) scale(1.05);
}

body.page-store .news-meta {
display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 12px;
        margin-bottom: 20px;
        position: relative;
        z-index: 1;
}

body.page-store .news-badge {
display: inline-flex;
        align-items: center;
        padding: 8px 12px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #ececec;
        font-size: 0.84rem;
}

body.page-store .news-badge.release {
color: #fff0f8;
        border-color: rgba(255, 99, 176, 0.18);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.06),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.16),
            transparent 46%
          );
}

body.page-store .news-date {
color: var(--muted);
        font-size: 0.88rem;
}

body.page-store .news-card h3 {
margin: 0 0 12px;
        font-size: clamp(1.45rem, 2.2vw, 2rem);
        letter-spacing: -0.04em;
        line-height: 1.02;
        position: relative;
        z-index: 1;
}

body.page-store .news-card p {
margin: 0 0 18px;
        color: #d4d4d4;
        position: relative;
        z-index: 1;
        max-width: 56ch;
}

body.page-store .news-card ul {
margin: 0;
        padding-left: 18px;
        color: var(--muted);
        position: relative;
        z-index: 1;
}

body.page-store .news-card li + li {
margin-top: 8px;
}

body.page-store .news-edit-note {
margin-top: 28px;
        padding: 24px;
        border-radius: 24px;
        border: 1px dashed rgba(255, 255, 255, 0.14);
        background: rgba(255, 255, 255, 0.03);
        color: var(--muted);
}

@media (max-width: 860px) {
  body.page-store .store-preview-cta {
padding: 22px;
  }

  body.page-store .store-preview-cta .button {
width: 100%;
          min-width: 0;
  }

  body.page-store .news-grid {
grid-template-columns: 1fr;
  }

  body.page-store .news-card,
body.page-store .news-card.featured {
grid-column: span 1;
          min-height: auto;
  }
}

body.page-store .nav-toggle {
display: none;
        width: 46px;
        height: 46px;
        padding: 0;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.05);
        color: var(--text);
        box-shadow: var(--shadow);
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 4px;
        cursor: pointer;
        transition:
          transform var(--transition),
          background var(--transition),
          border-color var(--transition),
          box-shadow var(--transition);
}

body.page-store .nav-toggle:hover {
transform: translateY(-1px);
        background: rgba(255, 255, 255, 0.08);
        border-color: rgba(255, 255, 255, 0.18);
}

body.page-store .nav-toggle-bar {
width: 18px;
        height: 2px;
        border-radius: 999px;
        background: currentColor;
        transition:
          transform var(--transition),
          opacity var(--transition);
}

body.page-store .mobile-menu-backdrop {
display: none;
}

body.page-store .nav-links a.store-link::after,
body.page-store .nav-links a.news-link::after {
display: none;
}

@media (max-width: 860px) {
  body.page-store.menu-open {
overflow: hidden;
  }

  body.page-store .container {
width: min(calc(100% - 22px), var(--max));
  }

  body.page-store .nav {
min-height: 68px;
          padding: 12px 0;
          gap: 14px;
          align-items: center;
          flex-direction: row;
  }

  body.page-store .nav-toggle {
display: inline-flex;
  }

  body.page-store .mobile-menu-backdrop {
display: block;
          position: fixed;
          inset: 0;
          background: rgba(0, 0, 0, 0.52);
          opacity: 0;
          pointer-events: none;
          transition: opacity var(--transition);
          z-index: 39;
  }

  body.page-store.menu-open .mobile-menu-backdrop {
opacity: 1;
          pointer-events: auto;
  }

  body.page-store .nav-links {
position: fixed;
          top: 78px;
          left: 12px;
          right: 12px;
          display: grid;
          gap: 8px;
          padding: 16px;
          border-radius: 24px;
          border: 1px solid rgba(255, 255, 255, 0.1);
          background:
            linear-gradient(
              180deg,
              rgba(18, 18, 18, 0.94),
              rgba(12, 12, 12, 0.94)
            ),
            radial-gradient(
              circle at top right,
              rgba(88, 169, 255, 0.1),
              transparent 34%
            );
          backdrop-filter: blur(20px);
          box-shadow:
            0 24px 56px rgba(0, 0, 0, 0.46),
            inset 0 1px 0 rgba(255, 255, 255, 0.05);
          opacity: 0;
          pointer-events: none;
          transform: translateY(-10px) scale(0.98);
          transform-origin: top center;
          transition:
            opacity var(--transition),
            transform var(--transition);
          z-index: 50;
          max-height: calc(100vh - 96px);
          overflow: auto;
          flex-wrap: nowrap;
  }

  body.page-store.menu-open .nav-links {
opacity: 1;
          pointer-events: auto;
          transform: translateY(0) scale(1);
  }

  body.page-store .nav-links a:not(.button):hover {
transform: none;
          background: rgba(255, 255, 255, 0.05);
  }

  body.page-store .nav-links a.button.primary {
justify-content: center;
          width: 100%;
          margin-top: 4px;
          min-height: 50px;
  }

  body.page-store.menu-open .nav-toggle-bar:nth-child(1) {
transform: translateY(6px) rotate(45deg);
  }

  body.page-store.menu-open .nav-toggle-bar:nth-child(2) {
opacity: 0;
  }

  body.page-store.menu-open .nav-toggle-bar:nth-child(3) {
transform: translateY(-6px) rotate(-45deg);
  }
}

@media (max-width: 560px) {
  body.page-store .nav-links {
top: 74px;
  }
}

body.page-store .nav-links a.courses-link,
body.page-store .nav-links a.store-link,
body.page-store .nav-links a.news-link {
min-height: 44px;
        padding: 0 18px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
        font-weight: 500;
        white-space: nowrap;
        vertical-align: middle;
        transform: none !important;
        -webkit-font-smoothing: antialiased;
        text-rendering: geometricPrecision;
}

body.page-store .nav-links a.store-link:hover,
body.page-store .nav-links a.store-link.active-link,
body.page-store .nav-links a.news-link:hover,
body.page-store .nav-links a.news-link.active-link {
transform: none !important;
}

body.page-store .nav-links a.store-link span,
body.page-store .nav-links a.news-link span {
line-height: 1;
}

body.page-store .active-link.store-link,
body.page-store .active-link.news-link {
color: #ffffff;
        transform: none !important;
}

body.page-store .nav-links a.store-link,
body.page-store .nav-links a.store-link:hover,
body.page-store .nav-links a.store-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(88, 169, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(88, 169, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.24),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.14),
            transparent 34%
          );
}

body.page-store .nav-links a.news-link,
body.page-store .nav-links a.news-link:hover,
body.page-store .nav-links a.news-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(255, 99, 176, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(255, 99, 176, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.24),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.15),
            transparent 34%
          );
}

body.page-store .nav-links a.store-link::after,
body.page-store .nav-links a.news-link::after {
display: none !important;
}

body.page-store .nav-links a.store-link,
body.page-store .nav-links a.store-link:hover,
body.page-store .nav-links a.store-link.active-link,
body.page-store .nav-links a.news-link,
body.page-store .nav-links a.news-link:hover,
body.page-store .nav-links a.news-link.active-link {
transform: none !important;
}

/* news.html */
:root {
--bg: #090909;
        --bg-soft: #111111;
        --card: rgba(255, 255, 255, 0.05);
        --card-strong: rgba(255, 255, 255, 0.08);
        --text: #f5f5f5;
        --muted: #b7b7b7;
        --line: rgba(255, 255, 255, 0.09);
        --accent: #ffffff;
        --accent-soft: rgba(255, 255, 255, 0.14);
        --logo-gold: #ffd86b;
        --logo-gold-glow: rgba(255, 216, 107, 0.22);
        --logo-pink: #ff63b0;
        --logo-pink-glow: rgba(255, 99, 176, 0.22);
        --logo-blue: #58a9ff;
        --logo-blue-glow: rgba(88, 169, 255, 0.22);
        --logo-violet: #9f7cff;
        --logo-violet-glow: rgba(159, 124, 255, 0.2);
        --radius: 22px;
        --max: 1240px;
        --shadow: 0 10px 40px rgba(0, 0, 0, 0.35);
        --transition: 420ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

* {
box-sizing: border-box;
}

html {
scroll-behavior: smooth;
}

body.page-news {
margin: 0;
        font-family:
          Inter,
          ui-sans-serif,
          system-ui,
          -apple-system,
          BlinkMacSystemFont,
          "Segoe UI",
          sans-serif;
        background:
          radial-gradient(
            circle at top left,
            rgba(255, 255, 255, 0.06),
            transparent 28%
          ),
          radial-gradient(
            circle at 85% 20%,
            rgba(255, 255, 255, 0.05),
            transparent 24%
          ),
          linear-gradient(180deg, #0b0b0b 0%, #080808 100%);
        color: var(--text);
        line-height: 1.5;
        overflow-x: hidden;
}

body.page-news a {
color: inherit;
        text-decoration: none;
}

body.page-news img {
max-width: 100%;
        display: block;
}

body.page-news .noise {
pointer-events: none;
        position: fixed;
        inset: 0;
        opacity: 0.045;
        background-image: radial-gradient(
          rgba(255, 255, 255, 0.9) 0.5px,
          transparent 0.5px
        );
        background-size: 6px 6px;
        mix-blend-mode: soft-light;
        z-index: 1;
}

body.page-news .container {
width: min(calc(100% - 32px), var(--max));
        margin: 0 auto;
        position: relative;
        z-index: 2;
}

body.page-news .topbar {
position: sticky;
        top: 0;
        z-index: 30;
        backdrop-filter: blur(18px);
        background: rgba(9, 9, 9, 0.68);
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

body.page-news .nav {
min-height: 76px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
}

body.page-news .brand {
display: inline-flex;
        align-items: center;
        gap: 12px;
        font-weight: 600;
        letter-spacing: 0.02em;
}

body.page-news .brand-mark {
width: 14px;
        height: 14px;
        border-radius: 999px;
        background: linear-gradient(
          135deg,
          var(--logo-gold) 0%,
          var(--logo-pink) 35%,
          var(--logo-violet) 68%,
          var(--logo-blue) 100%
        );
        background-size: 220% 220%;
        box-shadow:
          0 0 0 8px rgba(255, 255, 255, 0.04),
          0 0 12px rgba(255, 99, 176, 0.16),
          0 0 24px rgba(88, 169, 255, 0.14);
        animation:
          brandMarkShift 12s ease-in-out infinite,
          brandMarkGlow 6s ease-in-out infinite;
}

body.page-news .nav-links {
display: flex;
        align-items: center;
        gap: 24px;
        flex-wrap: wrap;
}

body.page-news .nav-links a {
font-weight: 500;
        color: var(--muted);
        transition:
          color var(--transition),
          transform var(--transition);
        font-size: 0.98rem;
}

body.page-news .nav-links a:hover {
color: var(--text);
        transform: translateY(-1px);
}

body.page-news .button,
body.page-news button {
display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        min-height: 48px;
        font-weight: 500;
        padding: 0 20px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.06);
        color: var(--text);
        font-size: 0.96rem;
        cursor: pointer;
        transition:
          transform var(--transition),
          background var(--transition),
          border-color var(--transition),
          box-shadow var(--transition);
        box-shadow: var(--shadow);
}

body.page-news .button:hover,
body.page-news button:hover {
transform: translateY(-3px);
        background: rgba(255, 255, 255, 0.1);
        border-color: rgba(255, 255, 255, 0.18);
        box-shadow:
          0 14px 30px rgba(0, 0, 0, 0.38),
          0 0 18px rgba(88, 169, 255, 0.1);
}

body.page-news .button.primary,
body.page-news button.primary {
background: #fff;
        color: #0b0b0b;
        border-color: rgba(255, 255, 255, 0.58);
        box-shadow:
          0 10px 30px rgba(0, 0, 0, 0.28),
          inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

body.page-news .button.primary:hover,
body.page-news button.primary:hover {
background: #f3f3f3;
}

body.page-news .topbar .button.primary {
position: relative;
        overflow: hidden;
        isolation: isolate;
        transition:
          transform var(--transition),
          border-color var(--transition),
          box-shadow var(--transition),
          color var(--transition),
          background var(--transition);
}

body.page-news .topbar .button.primary:hover {
color: #080808;
        background-image: linear-gradient(
          115deg,
          rgba(255, 216, 107, 0.95),
          rgba(255, 255, 255, 0.98) 34%,
          rgba(255, 99, 176, 0.22) 66%,
          rgba(88, 169, 255, 0.28) 100%
        );
        background-size: 200% 100%;
        animation: projectButtonShift 2.2s linear infinite;
        border-color: rgba(255, 255, 255, 0.78);
        box-shadow:
          0 16px 34px rgba(0, 0, 0, 0.34),
          0 0 22px rgba(255, 99, 176, 0.12),
          0 0 24px rgba(88, 169, 255, 0.12),
          inset 0 1px 0 rgba(255, 255, 255, 0.9);
        transform: translateY(-2px) scale(1.01);
}

body.page-news .hero {
min-height: calc(100vh - 76px);
        display: grid;
        align-items: center;
        padding: 72px 0 40px;
}

body.page-news .hero-grid {
display: grid;
        grid-template-columns: 1.4fr 0.85fr;
        gap: 28px;
        align-items: end;
}

body.page-news .eyebrow {
display: inline-flex;
        align-items: center;
        gap: 10px;
        color: #d8d8d8;
        padding: 10px 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        background: rgba(255, 255, 255, 0.04);
        margin-bottom: 22px;
        font-size: 0.92rem;
        letter-spacing: 0.02em;
}

body.page-news .hero h1 {
margin: 0;
        font-size: clamp(3rem, 8vw, 7rem);
        line-height: 0.94;
        letter-spacing: -0.055em;
        max-width: 820px;
}

body.page-news .hero-copy {
margin-top: 24px;
        max-width: 700px;
        color: var(--muted);
        font-size: clamp(1rem, 1.5vw, 1.18rem);
}

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

body.page-news .hero-card,
body.page-news .card,
body.page-news .contact-card,
body.page-news .about-card {
border: 1px solid var(--line);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.06),
          rgba(255, 255, 255, 0.03)
        );
        border-radius: var(--radius);
        box-shadow: var(--shadow);
}

body.page-news .hero-card {
padding: 26px;
        min-height: 360px;
        position: relative;
        overflow: hidden;
}

body.page-news .hero-card::before {
content: "";
        position: absolute;
        inset: -20% auto auto -10%;
        width: 240px;
        height: 240px;
        background: radial-gradient(
          circle,
          rgba(255, 255, 255, 0.18),
          transparent 65%
        );
        filter: blur(8px);
        opacity: 0.8;
}

body.page-news .hero-preview {
height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        position: relative;
        z-index: 1;
}

body.page-news .hero-preview-top {
display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 18px;
}

body.page-news .chip {
display: inline-flex;
        align-items: center;
        padding: 8px 12px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #ececec;
        font-size: 0.88rem;
}

body.page-news .preview-stack {
display: grid;
        gap: 12px;
        margin-top: 28px;
}

body.page-news .preview-panel {
padding: 16px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(255, 255, 255, 0.08);
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 18px;
        transition:
          transform var(--transition),
          background var(--transition);
}

body.page-news .preview-panel:hover {
transform: translateX(6px);
        background: rgba(255, 255, 255, 0.08);
}

body.page-news .preview-label {
display: grid;
        gap: 4px;
}

body.page-news .preview-label span {
color: var(--muted);
        font-size: 0.92rem;
}

body.page-news section {
padding: 44px 0 26px;
}

body.page-news .section-header {
display: grid;
        gap: 12px;
        margin-bottom: 22px;
}

body.page-news .section-kicker {
color: #d1d1d1;
        text-transform: uppercase;
        letter-spacing: 0.16em;
        font-size: 0.78rem;
}

body.page-news .section-title {
margin: 0;
        font-size: clamp(2rem, 4vw, 3.5rem);
        letter-spacing: -0.05em;
        line-height: 0.98;
}

body.page-news .section-copy {
color: var(--muted);
        max-width: 700px;
        font-size: 1.02rem;
}

body.page-news .work-grid {
display: grid;
        grid-template-columns: repeat(12, 1fr);
        gap: 18px;
        margin-top: 26px;
}

body.page-news .work-card {
grid-column: span 6;
        min-height: 420px;
        padding: 20px;
        position: relative;
        overflow: hidden;
        border-radius: 26px;
        border: 1px solid var(--line);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.05),
          rgba(255, 255, 255, 0.03)
        );
        transition:
          transform var(--transition),
          border-color var(--transition),
          background var(--transition);
        box-shadow: var(--shadow);
}

body.page-news .work-card.large {
grid-column: span 8;
        min-height: 520px;
}

body.page-news .work-card.small {
grid-column: span 4;
}

body.page-news .work-card:hover {
transform: translateY(-4px);
        border-color: rgba(255, 255, 255, 0.16);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.08),
          rgba(255, 255, 255, 0.04)
        );
}

body.page-news .work-media {
position: absolute;
        inset: 0;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.02)
          ),
          radial-gradient(
            circle at 20% 20%,
            rgba(255, 255, 255, 0.18),
            transparent 28%
          ),
          radial-gradient(
            circle at 80% 70%,
            rgba(255, 255, 255, 0.1),
            transparent 32%
          ),
          linear-gradient(160deg, #171717, #0d0d0d);
        transform: scale(1);
        transition: transform 900ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.page-news .work-card:hover .work-media {
transform: scale(1.03);
}

body.page-news .work-overlay {
position: absolute;
        inset: 0;
        background: linear-gradient(
          180deg,
          transparent 20%,
          rgba(0, 0, 0, 0.65) 100%
        );
}

body.page-news .work-content {
position: relative;
        z-index: 1;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 18px;
}

body.page-news .work-top {
display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 12px;
}

body.page-news .placeholder-note {
font-size: 0.86rem;
        color: #d5d5d5;
        padding: 8px 12px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.08);
}

body.page-news .work-bottom h3 {
margin: 0 0 8px;
        font-size: clamp(1.4rem, 2.3vw, 2.1rem);
        letter-spacing: -0.04em;
}

body.page-news .work-bottom p {
margin: 0;
        max-width: 520px;
        color: #dadada;
}

body.page-news .services-grid {
display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
        margin-top: 26px;
}

body.page-news .service-card {
--service-color: var(--logo-blue);
        --service-glow: var(--logo-blue-glow);
        padding: 30px;
        min-height: 290px;
        border-radius: 30px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at 88% 14%,
            var(--service-glow),
            transparent 36%
          );
        box-shadow: var(--shadow);
        transition:
          transform var(--transition),
          border-color var(--transition),
          background var(--transition),
          box-shadow var(--transition);
        position: relative;
        overflow: hidden;
        isolation: isolate;
}

body.page-news .service-card:nth-child(1) {
--service-color: var(--logo-pink);
        --service-glow: var(--logo-pink-glow);
}

body.page-news .service-card:nth-child(2) {
--service-color: var(--logo-gold);
        --service-glow: var(--logo-gold-glow);
}

body.page-news .service-card:nth-child(3) {
--service-color: var(--logo-blue);
        --service-glow: var(--logo-blue-glow);
}

body.page-news .service-card:nth-child(4) {
--service-color: var(--logo-violet);
        --service-glow: var(--logo-violet-glow);
}

body.page-news .service-card::before {
content: "";
        position: absolute;
        inset: auto 0 0 0;
        height: 2px;
        background: linear-gradient(
          90deg,
          transparent,
          var(--service-color),
          transparent
        );
        transform: scaleX(0.26);
        opacity: 0.7;
        transition:
          transform var(--transition),
          opacity var(--transition);
        z-index: 0;
}

body.page-news .service-card::after {
content: "";
        position: absolute;
        right: -48px;
        top: -48px;
        width: 170px;
        height: 170px;
        border-radius: 999px;
        background: radial-gradient(
          circle,
          var(--service-glow),
          transparent 72%
        );
        filter: blur(12px);
        opacity: 0.85;
        transition:
          transform 700ms cubic-bezier(0.2, 0.8, 0.2, 1),
          opacity var(--transition);
        z-index: 0;
}

body.page-news .service-card:hover {
transform: translateY(-10px);
        border-color: rgba(255, 255, 255, 0.2);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.12),
            rgba(255, 255, 255, 0.04)
          ),
          radial-gradient(
            circle at 88% 14%,
            var(--service-glow),
            transparent 40%
          );
        box-shadow:
          0 20px 50px rgba(0, 0, 0, 0.46),
          inset 0 1px 0 rgba(255, 255, 255, 0.09),
          0 0 24px var(--service-glow);
}

body.page-news .service-card:hover::before {
transform: scaleX(1);
        opacity: 1;
}

body.page-news .service-card:hover::after {
transform: translate(-10px, 10px) scale(1.08);
        opacity: 1;
}

body.page-news .service-number {
width: 48px;
        height: 48px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 999px;
        font-size: 0.94rem;
        color: #fff;
        margin-bottom: 28px;
        background: linear-gradient(
          135deg,
          rgba(255, 255, 255, 0.12),
          rgba(255, 255, 255, 0.04)
        );
        border: 1px solid rgba(255, 255, 255, 0.14);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.05),
          0 0 18px var(--service-glow);
        position: relative;
        z-index: 1;
}

body.page-news .service-card h3 {
margin: 0 0 14px;
        font-size: clamp(1.55rem, 2vw, 2rem);
        letter-spacing: -0.04em;
        line-height: 1.02;
        position: relative;
        z-index: 1;
        text-wrap: balance;
}

body.page-news .service-card p {
margin: 0;
        color: #d9d9d9;
        font-size: 1rem;
        max-width: 32ch;
        position: relative;
        z-index: 1;
}

body.page-news .store-grid {
display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 22px;
        margin-top: 26px;
}

body.page-news .store-card {
position: relative;
        min-height: 420px;
        padding: 18px;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.1),
            transparent 34%
          );
        box-shadow: var(--shadow);
        overflow: hidden;
        isolation: isolate;
        transition:
          transform var(--transition),
          border-color var(--transition),
          box-shadow var(--transition),
          background var(--transition);
}

body.page-news .store-card:nth-child(2) {
background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.11),
            transparent 36%
          );
}

body.page-news .store-card:nth-child(3) {
background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 216, 107, 0.12),
            transparent 36%
          );
}

body.page-news .store-card:hover {
transform: translateY(-10px) scale(1.01);
        border-color: rgba(255, 255, 255, 0.22);
        box-shadow:
          0 24px 58px rgba(0, 0, 0, 0.42),
          inset 0 1px 0 rgba(255, 255, 255, 0.08),
          0 0 20px rgba(88, 169, 255, 0.1);
}

body.page-news .store-preview {
position: relative;
        width: 100%;
        aspect-ratio: 16 / 10;
        border-radius: 22px;
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.1),
            rgba(255, 255, 255, 0.03)
          ),
          linear-gradient(160deg, #181818, #0d0d0d);
        margin-bottom: 18px;
}

body.page-news .store-preview::before {
content: "";
        position: absolute;
        inset: 0;
        background:
          radial-gradient(
            circle at 18% 20%,
            rgba(255, 255, 255, 0.12),
            transparent 26%
          ),
          radial-gradient(
            circle at 78% 70%,
            rgba(88, 169, 255, 0.18),
            transparent 30%
          );
        opacity: 0.95;
        transition:
          transform 900ms cubic-bezier(0.2, 0.8, 0.2, 1),
          opacity var(--transition);
}

body.page-news .store-card:nth-child(2) .store-preview::before {
background:
          radial-gradient(
            circle at 18% 20%,
            rgba(255, 255, 255, 0.12),
            transparent 26%
          ),
          radial-gradient(
            circle at 78% 70%,
            rgba(255, 99, 176, 0.22),
            transparent 30%
          );
}

body.page-news .store-card:nth-child(3) .store-preview::before {
background:
          radial-gradient(
            circle at 18% 20%,
            rgba(255, 255, 255, 0.12),
            transparent 26%
          ),
          radial-gradient(
            circle at 78% 70%,
            rgba(255, 216, 107, 0.24),
            transparent 30%
          );
}

body.page-news .store-card:hover .store-preview::before {
transform: scale(1.06);
}

body.page-news .store-art {
position: absolute;
        inset: 18px;
        border-radius: 18px;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.01)
          ),
          repeating-linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.05) 0 10px,
            rgba(255, 255, 255, 0.02) 10px 20px
          );
        border: 1px solid rgba(255, 255, 255, 0.06);
        display: grid;
        place-items: center;
        overflow: hidden;
}

body.page-news .store-art::after {
content: "";
        width: 120px;
        height: 120px;
        border-radius: 30px;
        background: linear-gradient(
          135deg,
          rgba(255, 255, 255, 0.85),
          rgba(255, 255, 255, 0.16)
        );
        transform: rotate(18deg);
        box-shadow: 0 0 24px rgba(255, 255, 255, 0.08);
        opacity: 0.55;
}

body.page-news .store-badge {
position: absolute;
        top: 14px;
        left: 14px;
        z-index: 2;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 8px 12px;
        border-radius: 999px;
        font-size: 0.84rem;
        background: rgba(10, 10, 10, 0.58);
        border: 1px solid rgba(255, 255, 255, 0.1);
        color: #f0f0f0;
        backdrop-filter: blur(8px);
}

body.page-news .store-card h3 {
margin: 0 0 10px;
        font-size: clamp(1.3rem, 1.8vw, 1.6rem);
        letter-spacing: -0.04em;
        line-height: 1.02;
}

body.page-news .store-card p {
margin: 0 0 18px;
        color: #d2d2d2;
        font-size: 0.98rem;
        max-width: 34ch;
}

body.page-news .store-actions {
display: flex;
        gap: 10px;
        flex-wrap: wrap;
        margin-top: auto;
}

body.page-news .store-button {
min-height: 42px;
        padding: 0 16px;
        font-size: 0.92rem;
}

body.page-news .store-note {
color: var(--muted);
        font-size: 0.92rem;
        margin-top: 10px;
}

body.page-news #store .section-title {
position: relative;
        display: inline-block;
        padding-bottom: 14px;
}

body.page-news #store .section-title::after {
content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 150px;
        height: 2px;
        border-radius: 999px;
        background: linear-gradient(
          90deg,
          var(--logo-blue),
          var(--logo-pink),
          var(--logo-gold)
        );
        box-shadow: 0 0 18px rgba(88, 169, 255, 0.16);
}

body.page-news .about-layout {
display: grid;
        grid-template-columns: 1.1fr 0.9fr;
        gap: 18px;
        margin-top: 24px;
}

body.page-news .about-card,
body.page-news .contact-card {
padding: 28px;
        min-height: 100%;
}

body.page-news .contact-form-wrap {
width: min(100%, 780px);
}

body.page-news .about-card p {
margin: 0 0 18px;
        color: var(--muted);
        font-size: 1.02rem;
        max-width: 720px;
}

body.page-news .about-points {
display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
        margin-top: 24px;
}

body.page-news .point {
padding: 16px 18px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #e7e7e7;
}

body.page-news .point strong {
display: block;
        font-size: 0.95rem;
        margin-bottom: 6px;
}

body.page-news .point span {
color: var(--muted);
        font-size: 0.94rem;
}

body.page-news .stats {
display: grid;
        gap: 14px;
}

body.page-news .stat {
padding: 18px 20px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        transition:
          transform 380ms cubic-bezier(0.2, 0.8, 0.2, 1),
          border-color var(--transition),
          background var(--transition),
          box-shadow var(--transition);
}

body.page-news .stat .number {
font-size: clamp(1.8rem, 3vw, 2.8rem);
        letter-spacing: -0.05em;
        margin-bottom: 4px;
}

body.page-news .stat .label {
color: var(--muted);
        font-size: 0.95rem;
}

body.page-news .contact-layout {
display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
        margin-top: 24px;
        justify-items: center;
}

body.page-news .contact-copy {
display: grid;
        gap: 16px;
        align-content: start;
}

body.page-news .contact-links {
display: grid;
        gap: 10px;
        margin-top: 8px;
}

body.page-news .contact-link {
display: flex;
        justify-content: space-between;
        gap: 14px;
        padding: 16px 18px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        transition:
          transform var(--transition),
          background var(--transition);
}

body.page-news .contact-link:hover {
transform: translateX(5px);
        background: rgba(255, 255, 255, 0.07);
}

body.page-news form {
display: grid;
        gap: 14px;
}

body.page-news .field-row {
display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px;
}

body.page-news label {
display: grid;
        gap: 8px;
        color: #eaeaea;
        font-size: 0.94rem;
}

body.page-news input,
body.page-news textarea {
width: 100%;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.04);
        color: var(--text);
        border-radius: 16px;
        padding: 14px 16px;
        font: inherit;
        transition:
          border-color var(--transition),
          background var(--transition),
          transform var(--transition);
}

body.page-news input:focus,
body.page-news textarea:focus {
outline: none;
        border-color: rgba(255, 255, 255, 0.26);
        background: rgba(255, 255, 255, 0.06);
        transform: translateY(-1px);
}

body.page-news textarea {
resize: vertical;
        min-height: 150px;
}

body.page-news .form-note,
body.page-news .status {
color: var(--muted);
        font-size: 0.92rem;
}

body.page-news .status.success {
color: #d6ffd6;
}

body.page-news .status.error {
color: #ffd3d3;
}

body.page-news footer {
padding: 26px 0 40px;
}

body.page-news .footer-inner {
display: flex;
        justify-content: space-between;
        gap: 18px;
        align-items: center;
        padding-top: 18px;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        color: var(--muted);
        font-size: 0.94rem;
}

body.page-news .socials {
display: flex;
        gap: 10px;
        flex-wrap: wrap;
}

body.page-news .socials a {
padding: 10px 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        background: rgba(255, 255, 255, 0.04);
        transition:
          transform var(--transition),
          background var(--transition);
}

body.page-news .socials a:hover {
transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.08);
}

body.page-news .reveal {
opacity: 0;
        transform: translateY(26px);
        transition:
          opacity 800ms cubic-bezier(0.2, 0.8, 0.2, 1),
          transform 800ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.page-news .reveal.visible {
opacity: 1;
        transform: translateY(0);
}

body.page-news #services .section-title {
position: relative;
        display: inline-block;
        padding-bottom: 16px;
}

body.page-news #services .section-title::after {
content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 170px;
        height: 2px;
        border-radius: 999px;
        background: linear-gradient(
          90deg,
          var(--logo-gold),
          var(--logo-pink),
          var(--logo-blue)
        );
        box-shadow: 0 0 18px rgba(88, 169, 255, 0.14);
}

@media (max-width: 1100px) {
  body.page-news .hero-grid,
body.page-news .about-layout,
body.page-news .contact-layout {
grid-template-columns: 1fr;
  }

  body.page-news .services-grid {
grid-template-columns: repeat(2, 1fr);
  }

  body.page-news .store-grid {
grid-template-columns: repeat(2, 1fr);
  }

  body.page-news .work-card.large,
body.page-news .work-card.small,
body.page-news .work-card {
grid-column: span 12;
  }
}

@media (max-width: 760px) {
  body.page-news .nav {
min-height: 72px;
          padding: 12px 0;
          align-items: flex-start;
          flex-direction: column;
  }

  body.page-news .nav-links {
gap: 14px;
  }

  body.page-news .hero {
min-height: auto;
          padding-top: 52px;
  }

  body.page-news .field-row,
body.page-news .services-grid,
body.page-news .store-grid,
body.page-news .about-points {
grid-template-columns: 1fr;
  }

  body.page-news .hero-actions,
body.page-news .footer-inner {
flex-direction: column;
          align-items: flex-start;
  }

  body.page-news .hero-card {
min-height: 300px;
  }
}

body.page-news .nav-links a:not(.button)::after {
content: "";
        position: absolute;
        left: 0;
        bottom: -1px;
        width: 100%;
        height: 2px;
        background: linear-gradient(
          90deg,
          var(--logo-gold),
          var(--logo-pink),
          var(--logo-blue)
        );
        transform: scaleX(0);
        transform-origin: left;
        transition:
          transform var(--transition),
          opacity var(--transition);
        opacity: 0.95;
        border-radius: 999px;
        box-shadow: 0 0 14px rgba(88, 169, 255, 0.12);
}

body.page-news .nav-links a:not(.button):hover {
color: var(--text);
}

body.page-news .nav-links a:not(.button):hover::after {
transform: scaleX(1);
}

body.page-news .button,
body.page-news button,
body.page-news .socials a,
body.page-news .contact-link,
body.page-news .preview-panel,
body.page-news .service-card,
body.page-news .work-card,
body.page-news .hero-card,
body.page-news .about-card,
body.page-news .contact-card,
body.page-news .stat {
transition:
          transform 380ms cubic-bezier(0.2, 0.8, 0.2, 1),
          border-color var(--transition),
          background var(--transition),
          box-shadow var(--transition);
        will-change: transform;
}

body.page-news .button:hover,
body.page-news button:hover,
body.page-news .socials a:hover,
body.page-news .contact-link:hover,
body.page-news .preview-panel:hover,
body.page-news .service-card:hover,
body.page-news .work-card:hover,
body.page-news .hero-card:hover,
body.page-news .about-card:hover,
body.page-news .contact-card:hover,
body.page-news .stat:hover {
border-color: rgba(255, 255, 255, 0.18);
        box-shadow:
          0 14px 36px rgba(0, 0, 0, 0.42),
          inset 0 1px 0 rgba(255, 255, 255, 0.08),
          0 0 0 1px rgba(255, 255, 255, 0.03);
}

body.page-news .work-card:hover {
transform: translateY(-6px);
}

body.page-news .hero-card:hover,
body.page-news .about-card:hover {
transform: translateY(-4px);
}

body.page-news .preview-panel:hover,
body.page-news .contact-link:hover,
body.page-news .socials a:hover {
transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.08);
}

body.page-news .contact-card:hover {
transform: none;
}

body.page-news .stat:hover {
transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.06);
}

body.page-news input:focus,
body.page-news textarea:focus {
outline: none;
        border-color: rgba(255, 255, 255, 0.26);
        background: rgba(255, 255, 255, 0.06);
        transform: none;
        box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.05);
}

body.page-news .hero h1,
body.page-news .hero-copy,
body.page-news .hero-actions,
body.page-news .eyebrow {
opacity: 0;
        transform: translateY(20px);
        animation: heroFadeUp 0.9s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}

body.page-news .eyebrow {
animation-delay: 0.05s;
}

body.page-news .hero h1 {
animation-delay: 0.15s;
}

body.page-news .hero-copy {
animation-delay: 0.28s;
}

body.page-news .hero-actions {
animation-delay: 0.4s;
}

body.page-news .hero-card {
opacity: 0;
        transform: translateY(24px) scale(0.985);
        animation: heroCardIn 1s cubic-bezier(0.2, 0.8, 0.2, 1) 0.2s forwards;
}

body.page-news .preview-panel:nth-child(1) {
animation: panelIn 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.45s both;
}

body.page-news .preview-panel:nth-child(2) {
animation: panelIn 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.58s both;
}

body.page-news .preview-panel:nth-child(3) {
animation: panelIn 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.71s both;
}

body.page-news .service-card:hover .service-number {
animation: serviceNumberPulse 1.8s ease-in-out infinite;
}

@media (prefers-reduced-motion: reduce) {
  body.page-news .hero h1,
body.page-news .hero-copy,
body.page-news .hero-actions,
body.page-news .eyebrow,
body.page-news .hero-card,
body.page-news .preview-panel:nth-child(1),
body.page-news .preview-panel:nth-child(2),
body.page-news .preview-panel:nth-child(3) {
animation: none !important;
          opacity: 1 !important;
          transform: none !important;
  }
}

body.page-news .store-hero {
min-height: auto;
        padding: 72px 0 28px;
        position: relative;
        isolation: isolate;
}

body.page-news .store-hero::before,
body.page-news .store-hero::after {
content: "";
        position: absolute;
        border-radius: 999px;
        filter: blur(70px);
        opacity: 0.12;
        pointer-events: none;
        z-index: -1;
}

body.page-news .store-hero::before {
width: 220px;
        height: 220px;
        right: 10%;
        top: 8%;
        background: radial-gradient(circle, var(--logo-blue), transparent 70%);
}

body.page-news .store-hero::after {
width: 220px;
        height: 220px;
        left: 8%;
        bottom: 0%;
        background: radial-gradient(circle, var(--logo-pink), transparent 72%);
}

body.page-news .store-hero-grid {
display: grid;
        grid-template-columns: 1.15fr 0.85fr;
        gap: 24px;
        align-items: end;
}

body.page-news .store-hero-copy {
max-width: 760px;
        color: var(--muted);
        font-size: clamp(1rem, 1.4vw, 1.16rem);
        margin-top: 22px;
}

body.page-news .store-hero-card {
padding: 24px;
        min-height: 280px;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.12),
            transparent 34%
          );
        box-shadow: var(--shadow);
        position: relative;
        overflow: hidden;
        isolation: isolate;
}

body.page-news .store-hero-card::before {
content: "";
        position: absolute;
        inset: -18% auto auto -10%;
        width: 220px;
        height: 220px;
        border-radius: 999px;
        background: radial-gradient(
          circle,
          rgba(255, 99, 176, 0.18),
          transparent 70%
        );
        filter: blur(16px);
        opacity: 0.9;
}

body.page-news .store-hero-points {
display: grid;
        gap: 12px;
        position: relative;
        z-index: 1;
        margin-top: 28px;
}

body.page-news .store-hero-point {
display: flex;
        justify-content: space-between;
        gap: 14px;
        padding: 16px 18px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        transition:
          transform var(--transition),
          background var(--transition),
          border-color var(--transition),
          box-shadow var(--transition);
}

body.page-news .store-hero-point:hover {
transform: translateX(5px);
        background: rgba(255, 255, 255, 0.07);
        border-color: rgba(255, 255, 255, 0.12);
        box-shadow: 0 12px 28px rgba(0, 0, 0, 0.24);
}

body.page-news .store-cta {
padding-top: 12px;
}

body.page-news .store-cta-card {
padding: 28px;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 216, 107, 0.1),
            transparent 34%
          );
        box-shadow: var(--shadow);
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        flex-wrap: wrap;
}

@media (max-width: 1100px) {
  body.page-news .store-hero-grid {
grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  body.page-news .store-cta-card {
flex-direction: column;
          align-items: flex-start;
  }
}

body.page-news .nav-links a {
position: relative;
}

body.page-news .nav-links a.courses-link,
body.page-news .nav-links a.store-link,
body.page-news .nav-links a.news-link {
padding: 9px 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.04);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

body.page-news .nav-links a.courses-link {
color: #f3edff;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(159, 124, 255, 0.18),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(88, 169, 255, 0.1),
            transparent 34%
          );
        border-color: rgba(159, 124, 255, 0.18);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.03),
          0 0 18px rgba(159, 124, 255, 0.06);
}

body.page-news .nav-links a.courses-link:hover,
body.page-news .nav-links a.courses-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(159, 124, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(159, 124, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(159, 124, 255, 0.22),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(88, 169, 255, 0.14),
            transparent 34%
          );
}

body.page-news .nav-links a.store-link {
color: #edf5ff;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.18),
            transparent 46%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.1),
            transparent 34%
          );
        border-color: rgba(88, 169, 255, 0.18);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.03),
          0 0 18px rgba(88, 169, 255, 0.07);
}

body.page-news .nav-links a.store-link:hover,
body.page-news .nav-links a.store-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(88, 169, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(88, 169, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.24),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.14),
            transparent 34%
          );
}

body.page-news .nav-links a.news-link {
color: #ffeef8;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.18),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.12),
            transparent 34%
          );
        border-color: rgba(255, 99, 176, 0.18);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.03),
          0 0 18px rgba(255, 99, 176, 0.06);
}

body.page-news .nav-links a.news-link:hover,
body.page-news .nav-links a.news-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(255, 99, 176, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(255, 99, 176, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.24),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.15),
            transparent 34%
          );
}

body.page-news .nav-links a.store-link::after,
body.page-news .nav-links a.news-link::after {
display: none;
}

body.page-news .button.primary,
body.page-news button.primary {
background: linear-gradient(180deg, #ffffff, #f0f0f0);
        color: #0b0b0b;
        border-color: rgba(255, 255, 255, 0.56);
        box-shadow:
          0 10px 30px rgba(0, 0, 0, 0.28),
          inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

body.page-news .button.primary:hover,
body.page-news button.primary:hover {
background: linear-gradient(
          135deg,
          rgba(255, 216, 107, 0.95) 0%,
          rgba(255, 255, 255, 0.98) 38%,
          rgba(255, 99, 176, 0.18) 74%,
          rgba(88, 169, 255, 0.24) 100%
        );
        color: #080808;
        border-color: rgba(255, 255, 255, 0.86);
        box-shadow:
          0 18px 34px rgba(0, 0, 0, 0.32),
          0 0 24px rgba(88, 169, 255, 0.12),
          0 0 20px rgba(255, 99, 176, 0.1),
          inset 0 1px 0 rgba(255, 255, 255, 0.84);
        transform: translateY(-3px) scale(1.01);
}

body.page-news .store-preview-cta {
margin-top: 24px;
        padding: 28px;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.16),
            transparent 32%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 99, 176, 0.1),
            transparent 28%
          );
        box-shadow: var(--shadow);
        position: relative;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        flex-wrap: wrap;
}

body.page-news .store-preview-cta::before {
content: "";
        position: absolute;
        inset: auto -12% -44% auto;
        width: 240px;
        height: 240px;
        border-radius: 999px;
        background: radial-gradient(
          circle,
          rgba(255, 216, 107, 0.16),
          transparent 70%
        );
        filter: blur(12px);
        z-index: 0;
}

body.page-news .store-preview-copy,
body.page-news .store-preview-cta .button {
position: relative;
        z-index: 1;
}

body.page-news .store-preview-copy strong {
display: block;
        margin-bottom: 8px;
        font-size: clamp(1.3rem, 2vw, 1.72rem);
        letter-spacing: -0.04em;
}

body.page-news .store-preview-copy p {
margin: 0;
        max-width: 720px;
        color: var(--muted);
        font-size: 0.98rem;
}

body.page-news .store-preview-cta .button {
min-width: 240px;
        justify-content: center;
}

body.page-news .release-accent {
display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 8px 12px;
        border-radius: 999px;
        border: 1px solid rgba(255, 99, 176, 0.18);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.06),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.16),
            transparent 42%
          );
        color: #fff0f8;
        font-size: 0.86rem;
}

body.page-news .news-grid {
display: grid;
        grid-template-columns: repeat(12, 1fr);
        gap: 18px;
        margin-top: 26px;
}

body.page-news .news-card {
grid-column: span 4;
        min-height: 380px;
        padding: 22px;
        position: relative;
        overflow: hidden;
        border-radius: 28px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.06),
          rgba(255, 255, 255, 0.03)
        );
        box-shadow: var(--shadow);
        transition:
          transform var(--transition),
          border-color var(--transition),
          box-shadow var(--transition),
          background var(--transition);
}

body.page-news .news-card.featured {
grid-column: span 6;
        min-height: 430px;
}

body.page-news .news-card::before {
content: "";
        position: absolute;
        right: -46px;
        top: -46px;
        width: 180px;
        height: 180px;
        border-radius: 999px;
        filter: blur(14px);
        opacity: 0.86;
        transition:
          transform var(--transition),
          opacity var(--transition);
}

body.page-news .news-card.news-item::before {
background: radial-gradient(
          circle,
          rgba(88, 169, 255, 0.18),
          transparent 72%
        );
}

body.page-news .news-card.release-item::before {
background: radial-gradient(
          circle,
          rgba(255, 99, 176, 0.2),
          transparent 72%
        );
}

body.page-news .news-card:hover {
transform: translateY(-8px);
        border-color: rgba(255, 255, 255, 0.18);
        box-shadow:
          0 22px 50px rgba(0, 0, 0, 0.42),
          0 0 22px rgba(88, 169, 255, 0.08);
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0.1),
          rgba(255, 255, 255, 0.04)
        );
}

body.page-news .news-card.release-item:hover {
box-shadow:
          0 22px 50px rgba(0, 0, 0, 0.42),
          0 0 22px rgba(255, 99, 176, 0.1);
}

body.page-news .news-card:hover::before {
transform: translate(-8px, 8px) scale(1.05);
}

body.page-news .news-meta {
display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 12px;
        margin-bottom: 20px;
        position: relative;
        z-index: 1;
}

body.page-news .news-badge {
display: inline-flex;
        align-items: center;
        padding: 8px 12px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #ececec;
        font-size: 0.84rem;
}

body.page-news .news-badge.release {
color: #fff0f8;
        border-color: rgba(255, 99, 176, 0.18);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.06),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.16),
            transparent 46%
          );
}

body.page-news .news-date {
color: var(--muted);
        font-size: 0.88rem;
}

body.page-news .news-card h3 {
margin: 0 0 12px;
        font-size: clamp(1.45rem, 2.2vw, 2rem);
        letter-spacing: -0.04em;
        line-height: 1.02;
        position: relative;
        z-index: 1;
}

body.page-news .news-card p {
margin: 0 0 18px;
        color: #d4d4d4;
        position: relative;
        z-index: 1;
        max-width: 56ch;
}

body.page-news .news-card ul {
margin: 0;
        padding-left: 18px;
        color: var(--muted);
        position: relative;
        z-index: 1;
}

body.page-news .news-card li + li {
margin-top: 8px;
}

body.page-news .news-edit-note {
margin-top: 28px;
        padding: 24px;
        border-radius: 24px;
        border: 1px dashed rgba(255, 255, 255, 0.14);
        background: rgba(255, 255, 255, 0.03);
        color: var(--muted);
}

@media (max-width: 860px) {
  body.page-news .store-preview-cta {
padding: 22px;
  }

  body.page-news .store-preview-cta .button {
width: 100%;
          min-width: 0;
  }

  body.page-news .news-grid {
grid-template-columns: 1fr;
  }

  body.page-news .news-card,
body.page-news .news-card.featured {
grid-column: span 1;
          min-height: auto;
  }
}

body.page-news .nav-toggle {
display: none;
        width: 46px;
        height: 46px;
        padding: 0;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.05);
        color: var(--text);
        box-shadow: var(--shadow);
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 4px;
        cursor: pointer;
        transition:
          transform var(--transition),
          background var(--transition),
          border-color var(--transition),
          box-shadow var(--transition);
}

body.page-news .nav-toggle:hover {
transform: translateY(-1px);
        background: rgba(255, 255, 255, 0.08);
        border-color: rgba(255, 255, 255, 0.18);
}

body.page-news .nav-toggle-bar {
width: 18px;
        height: 2px;
        border-radius: 999px;
        background: currentColor;
        transition:
          transform var(--transition),
          opacity var(--transition);
}

body.page-news .mobile-menu-backdrop {
display: none;
}

body.page-news .nav-links a.store-link::after,
body.page-news .nav-links a.news-link::after {
display: none;
}

@media (max-width: 860px) {
  body.page-news.menu-open {
overflow: hidden;
  }

  body.page-news .container {
width: min(calc(100% - 22px), var(--max));
  }

  body.page-news .nav {
min-height: 68px;
          padding: 12px 0;
          gap: 14px;
          align-items: center;
          flex-direction: row;
  }

  body.page-news .nav-toggle {
display: inline-flex;
  }

  body.page-news .mobile-menu-backdrop {
display: block;
          position: fixed;
          inset: 0;
          background: rgba(0, 0, 0, 0.52);
          opacity: 0;
          pointer-events: none;
          transition: opacity var(--transition);
          z-index: 39;
  }

  body.page-news.menu-open .mobile-menu-backdrop {
opacity: 1;
          pointer-events: auto;
  }

  body.page-news .nav-links {
position: fixed;
          top: 78px;
          left: 12px;
          right: 12px;
          display: grid;
          gap: 8px;
          padding: 16px;
          border-radius: 24px;
          border: 1px solid rgba(255, 255, 255, 0.1);
          background:
            linear-gradient(
              180deg,
              rgba(18, 18, 18, 0.94),
              rgba(12, 12, 12, 0.94)
            ),
            radial-gradient(
              circle at top right,
              rgba(88, 169, 255, 0.1),
              transparent 34%
            );
          backdrop-filter: blur(20px);
          box-shadow:
            0 24px 56px rgba(0, 0, 0, 0.46),
            inset 0 1px 0 rgba(255, 255, 255, 0.05);
          opacity: 0;
          pointer-events: none;
          transform: translateY(-10px) scale(0.98);
          transform-origin: top center;
          transition:
            opacity var(--transition),
            transform var(--transition);
          z-index: 50;
          max-height: calc(100vh - 96px);
          overflow: auto;
          flex-wrap: nowrap;
  }

  body.page-news.menu-open .nav-links {
opacity: 1;
          pointer-events: auto;
          transform: translateY(0) scale(1);
  }

  body.page-news .nav-links a {
width: 100%;
          min-height: 44px;
          display: inline-flex;
          align-items: center;
          justify-content: flex-start;
          padding: 8px 10px;
          border-radius: 14px;
          font-size: 1rem;
  }

  body.page-news .nav-links a:not(.button):hover {
transform: none;
          background: rgba(255, 255, 255, 0.05);
  }

  body.page-news .nav-links a:not(.button)::after {
bottom: 6px;
  }

  body.page-news .nav-links a.button.primary {
justify-content: center;
          width: 100%;
          margin-top: 4px;
          min-height: 50px;
  }

  body.page-news.menu-open .nav-toggle-bar:nth-child(1) {
transform: translateY(6px) rotate(45deg);
  }

  body.page-news.menu-open .nav-toggle-bar:nth-child(2) {
opacity: 0;
  }

  body.page-news.menu-open .nav-toggle-bar:nth-child(3) {
transform: translateY(-6px) rotate(-45deg);
  }
}

@media (max-width: 560px) {
  body.page-news .nav-links {
top: 74px;
  }
}

body.page-news .nav-links a.courses-link,
body.page-news .nav-links a.store-link,
body.page-news .nav-links a.news-link {
min-height: 44px;
        padding: 0 18px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
        font-weight: 500;
        white-space: nowrap;
        vertical-align: middle;
        transform: none !important;
        -webkit-font-smoothing: antialiased;
        text-rendering: geometricPrecision;
}

body.page-news .nav-links a.store-link:hover,
body.page-news .nav-links a.store-link.active-link,
body.page-news .nav-links a.news-link:hover,
body.page-news .nav-links a.news-link.active-link {
transform: none !important;
}

body.page-news .nav-links a.store-link span,
body.page-news .nav-links a.news-link span {
line-height: 1;
}

body.page-news .active-link.store-link,
body.page-news .active-link.news-link {
color: #ffffff;
        transform: none !important;
}

body.page-news .nav-links a.store-link,
body.page-news .nav-links a.store-link:hover,
body.page-news .nav-links a.store-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(88, 169, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(88, 169, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.24),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.14),
            transparent 34%
          );
}

body.page-news .nav-links a.news-link,
body.page-news .nav-links a.news-link:hover,
body.page-news .nav-links a.news-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(255, 99, 176, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(255, 99, 176, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.24),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.15),
            transparent 34%
          );
}

body.page-news .nav-links a.store-link::after,
body.page-news .nav-links a.news-link::after {
display: none !important;
}

body.page-news .nav-links a.store-link,
body.page-news .nav-links a.store-link:hover,
body.page-news .nav-links a.store-link.active-link,
body.page-news .nav-links a.news-link,
body.page-news .nav-links a.news-link:hover,
body.page-news .nav-links a.news-link.active-link {
transform: none !important;
}

/* courses.html */
body.page-courses .nav-links a.courses-link,
body.page-courses .nav-links a.store-link,
body.page-courses .nav-links a.news-link {
padding: 9px 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: rgba(255, 255, 255, 0.04);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

body.page-courses .nav-links a.courses-link {
color: #f3edff;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(159, 124, 255, 0.18),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(88, 169, 255, 0.1),
            transparent 34%
          );
        border-color: rgba(159, 124, 255, 0.18);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.03),
          0 0 18px rgba(159, 124, 255, 0.06);
}

body.page-courses .nav-links a.courses-link:hover,
body.page-courses .nav-links a.courses-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(159, 124, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(159, 124, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(159, 124, 255, 0.22),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(88, 169, 255, 0.14),
            transparent 34%
          );
}

body.page-courses .nav-links a.store-link {
color: #edf5ff;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.18),
            transparent 46%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.1),
            transparent 34%
          );
        border-color: rgba(88, 169, 255, 0.18);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.03),
          0 0 18px rgba(88, 169, 255, 0.07);
}

body.page-courses .nav-links a.store-link:hover,
body.page-courses .nav-links a.store-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(88, 169, 255, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(88, 169, 255, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(88, 169, 255, 0.24),
            transparent 44%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(255, 216, 107, 0.14),
            transparent 34%
          );
}

body.page-courses .nav-links a.news-link {
color: #ffeef8;
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.18),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.12),
            transparent 34%
          );
        border-color: rgba(255, 99, 176, 0.18);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.03),
          0 0 18px rgba(255, 99, 176, 0.06);
}

body.page-courses .nav-links a.news-link:hover,
body.page-courses .nav-links a.news-link.active-link {
color: #ffffff;
        transform: translateY(-1px);
        border-color: rgba(255, 99, 176, 0.34);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.04),
          0 0 24px rgba(255, 99, 176, 0.16),
          0 14px 28px rgba(0, 0, 0, 0.26);
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.03)
          ),
          radial-gradient(
            circle at top right,
            rgba(255, 99, 176, 0.22),
            transparent 42%
          ),
          radial-gradient(
            circle at bottom left,
            rgba(159, 124, 255, 0.16),
            transparent 34%
          );
}

body.page-courses .courses-page-header {
max-width: 980px;
}

body.page-courses .courses-grid {
display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
        margin-top: 26px;
}

body.page-courses .course-card {
min-height: 380px;
}

body.page-courses .course-card-featured {
grid-column: 1 / -1;
        min-height: 420px;
}


body.page-courses .course-card {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-height: 380px;
}

body.page-courses .course-card-featured {
  min-height: 420px;
}

body.page-courses .course-card .store-preview {
  flex: none;
}

body.page-courses .course-card h3 {
  margin: 0 0 12px;
}

body.page-courses .course-card > p {
  margin: 0 0 18px;
}

body.page-courses .course-info-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: auto;
}

body.page-courses .store-actions {
  margin-top: 16px;
}

body.page-courses .store-note {
  margin-top: 12px;
}

body.page-courses .store-cta .button.primary {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  transition:
    transform var(--transition),
    border-color var(--transition),
    box-shadow var(--transition),
    color var(--transition),
    background var(--transition);
}

body.page-courses .store-cta .button.primary:hover {
  color: #080808;
  background-image: linear-gradient(
    115deg,
    rgba(255, 216, 107, 0.95),
    rgba(255, 255, 255, 0.98) 34%,
    rgba(255, 99, 176, 0.22) 66%,
    rgba(88, 169, 255, 0.28) 100%
  );
  background-size: 200% 100%;
  animation: projectButtonShift 2.2s linear infinite;
  border-color: rgba(255, 255, 255, 0.78);
  box-shadow:
    0 16px 34px rgba(0, 0, 0, 0.34),
    0 0 22px rgba(255, 99, 176, 0.12),
    0 0 24px rgba(88, 169, 255, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
  transform: translateY(-2px) scale(1.01);
}

body.page-courses .store-art::after {
  display: none;
}

body.page-courses .store-art-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

body.page-courses .course-preview {
background:
          linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.1),
            rgba(255, 255, 255, 0.03)
          ),
          linear-gradient(160deg, #181818, #0d0d0d);
}

body.page-courses .course-preview::before {
content: "";
        position: absolute;
        inset: 0;
        background:
          radial-gradient(
            circle at 18% 20%,
            rgba(255, 255, 255, 0.12),
            transparent 26%
          ),
          radial-gradient(
            circle at 78% 70%,
            rgba(159, 124, 255, 0.18),
            transparent 30%
          );
        opacity: 0.95;
}

body.page-courses .feature-preview::before {
background:
          radial-gradient(
            circle at 18% 20%,
            rgba(255, 255, 255, 0.14),
            transparent 24%
          ),
          radial-gradient(
            circle at 78% 70%,
            rgba(159, 124, 255, 0.22),
            transparent 30%
          ),
          radial-gradient(
            circle at 55% 40%,
            rgba(88, 169, 255, 0.14),
            transparent 28%
          );
}

body.page-courses .course-info-row {
display: flex;
        gap: 10px;
        flex-wrap: wrap;
        margin-top: auto;
}

body.page-courses .course-tag {
display: inline-flex;
        align-items: center;
        min-height: 38px;
        padding: 0 14px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        background: rgba(255, 255, 255, 0.05);
        color: #ececec;
        font-size: 0.9rem;
}

@media (max-width: 1100px) {
  body.page-courses .courses-grid {
    grid-template-columns: 1fr;
  }

  body.page-courses .course-card-featured {
    grid-column: auto;
  }
}


/* Unified persistent nav glow for Courses / Store / News */
body.page-index .nav-links a.courses-link,
body.page-index .nav-links a.courses-link:hover,
body.page-index .nav-links a.courses-link.active-link,
body.page-store .nav-links a.courses-link,
body.page-store .nav-links a.courses-link:hover,
body.page-store .nav-links a.courses-link.active-link,
body.page-news .nav-links a.courses-link,
body.page-news .nav-links a.courses-link:hover,
body.page-news .nav-links a.courses-link.active-link {
  color: #ffffff;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid rgba(159, 124, 255, 0.34);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 0 24px rgba(159, 124, 255, 0.16),
    0 14px 28px rgba(0, 0, 0, 0.26);
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.07),
      rgba(255, 255, 255, 0.03)
    ),
    radial-gradient(
      circle at top right,
      rgba(159, 124, 255, 0.22),
      transparent 42%
    ),
    radial-gradient(
      circle at bottom left,
      rgba(88, 169, 255, 0.14),
      transparent 34%
    );
  transform: none !important;
}

body.page-index .nav-links a.store-link,
body.page-index .nav-links a.store-link:hover,
body.page-index .nav-links a.store-link.active-link,
body.page-store .nav-links a.store-link,
body.page-store .nav-links a.store-link:hover,
body.page-store .nav-links a.store-link.active-link,
body.page-news .nav-links a.store-link,
body.page-news .nav-links a.store-link:hover,
body.page-news .nav-links a.store-link.active-link {
  color: #ffffff;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid rgba(88, 169, 255, 0.34);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 0 24px rgba(88, 169, 255, 0.16),
    0 14px 28px rgba(0, 0, 0, 0.26);
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.07),
      rgba(255, 255, 255, 0.03)
    ),
    radial-gradient(
      circle at top right,
      rgba(88, 169, 255, 0.24),
      transparent 44%
    ),
    radial-gradient(
      circle at bottom left,
      rgba(255, 216, 107, 0.14),
      transparent 34%
    );
  transform: none !important;
}

body.page-index .nav-links a.news-link,
body.page-index .nav-links a.news-link:hover,
body.page-index .nav-links a.news-link.active-link,
body.page-store .nav-links a.news-link,
body.page-store .nav-links a.news-link:hover,
body.page-store .nav-links a.news-link.active-link,
body.page-news .nav-links a.news-link,
body.page-news .nav-links a.news-link:hover,
body.page-news .nav-links a.news-link.active-link {
  color: #ffffff;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid rgba(255, 99, 176, 0.34);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 0 24px rgba(255, 99, 176, 0.16),
    0 14px 28px rgba(0, 0, 0, 0.26);
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.07),
      rgba(255, 255, 255, 0.03)
    ),
    radial-gradient(
      circle at top right,
      rgba(255, 99, 176, 0.22),
      transparent 42%
    ),
    radial-gradient(
      circle at bottom left,
      rgba(159, 124, 255, 0.16),
      transparent 34%
    );
  transform: none !important;
}

body.page-index .nav-links a.courses-link::after,
body.page-index .nav-links a.store-link::after,
body.page-index .nav-links a.news-link::after,
body.page-store .nav-links a.courses-link::after,
body.page-store .nav-links a.store-link::after,
body.page-store .nav-links a.news-link::after,
body.page-news .nav-links a.courses-link::after,
body.page-news .nav-links a.store-link::after,
body.page-news .nav-links a.news-link::after {
  display: none !important;
}

/* Unified top navigation - make all tabs match Services */
body.page-index .nav-links a:not(.button),
body.page-store .nav-links a:not(.button),
body.page-news .nav-links a:not(.button),
body.page-courses .nav-links a:not(.button) {
  padding: 0 !important;
  min-height: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--muted) !important;
}

body.page-index .nav-links a:not(.button):hover,
body.page-store .nav-links a:not(.button):hover,
body.page-news .nav-links a:not(.button):hover,
body.page-courses .nav-links a:not(.button):hover {
  color: var(--text) !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  transform: translateY(-1px) !important;
}

body.page-index .nav-links a:not(.button).active-link,
body.page-store .nav-links a:not(.button).active-link,
body.page-news .nav-links a:not(.button).active-link,
body.page-courses .nav-links a:not(.button).active-link {
  color: var(--muted) !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  transform: none !important;
}

body.page-index .nav-links a:not(.button)::after,
body.page-store .nav-links a:not(.button)::after,
body.page-news .nav-links a:not(.button)::after,
body.page-courses .nav-links a:not(.button)::after {
  display: none !important;
  content: none !important;
}


/* FINAL TOP NAV UNIFICATION OVERRIDE */
body.page-index .topbar .nav-links a:not(.button),
body.page-store .topbar .nav-links a:not(.button),
body.page-news .topbar .nav-links a:not(.button) {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: auto !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: none !important;
  box-shadow: none !important;
  color: var(--muted) !important;
  line-height: 24px !important;
  font-weight: 500;
  white-space: nowrap;
  transform: none !important;
}

body.page-index .topbar .nav-links a:not(.button):hover,
body.page-store .topbar .nav-links a:not(.button):hover,
body.page-news .topbar .nav-links a:not(.button):hover,
body.page-index .topbar .nav-links a:not(.button).active-link,
body.page-store .topbar .nav-links a:not(.button).active-link,
body.page-news .topbar .nav-links a:not(.button).active-link {
  color: var(--text) !important;
  background: none !important;
  box-shadow: none !important;
  border: none !important;
  transform: none !important;
}

body.page-index .topbar .nav-links a:not(.button)::after,
body.page-store .topbar .nav-links a:not(.button)::after,
body.page-news .topbar .nav-links a:not(.button)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6px;
  width: 100%;
  height: 2px;
  display: block !important;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--logo-gold), var(--logo-pink), var(--logo-blue));
  box-shadow: 0 0 14px rgba(88, 169, 255, 0.16);
  opacity: 0;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform var(--transition), opacity var(--transition);
}

body.page-index .topbar .nav-links a:not(.button):hover::after,
body.page-store .topbar .nav-links a:not(.button):hover::after,
body.page-news .topbar .nav-links a:not(.button):hover::after {
  opacity: 1;
  transform: scaleX(1);
}

body.page-index .topbar .nav-links a:not(.button).active-link::after,
body.page-store .topbar .nav-links a:not(.button).active-link::after,
body.page-news .topbar .nav-links a:not(.button).active-link::after {
  opacity: 0;
  transform: scaleX(0);
}


/* Shared navigation system */
:root {
  --nav-accent-start: #ff63b0;
  --nav-accent-end: #58a9ff;
  --nav-accent-surface: linear-gradient(
    90deg,
    rgba(255, 99, 176, 0.18),
    rgba(88, 169, 255, 0.18)
  );
}

.topbar .site-nav {
  margin-left: auto;
}

.topbar .site-nav__list {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
}

.topbar .site-nav__item {
  display: flex;
  align-items: center;
}

.topbar .site-nav__link {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid transparent;
  color: var(--muted);
  font-size: 0.98rem;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  vertical-align: middle;
  text-decoration: none;
  outline: none;
  transition:
    color var(--transition),
    background var(--transition),
    border-color var(--transition),
    box-shadow var(--transition);
}

.topbar .site-nav__link::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 8px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(
    90deg,
    var(--nav-accent-start),
    var(--nav-accent-end)
  );
  opacity: 0;
  transform: scaleX(0.45);
  transform-origin: center;
  pointer-events: none;
  transition:
    opacity var(--transition),
    transform var(--transition);
}

.topbar .site-nav__link:hover,
.topbar .site-nav__link:focus-visible {
  color: var(--text);
}

.topbar .site-nav__link:hover::after,
.topbar .site-nav__link:focus-visible::after,
.topbar .site-nav__link[aria-current="page"]::after {
  opacity: 1;
  transform: scaleX(1);
}

.topbar .site-nav__link:focus-visible {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.04);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.08),
    0 10px 24px rgba(0, 0, 0, 0.2);
}

.topbar .site-nav__link[aria-current="page"] {
  color: var(--text);
  border-color: rgba(255, 255, 255, 0.1);
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.08),
      rgba(255, 255, 255, 0.03)
    ),
    var(--nav-accent-surface);
  box-shadow:
    0 10px 30px rgba(0, 0, 0, 0.22),
    0 0 18px rgba(255, 99, 176, 0.08),
    0 0 18px rgba(88, 169, 255, 0.08);
}

.topbar .site-nav__item--cta {
  margin-left: 10px;
}

.topbar .site-nav__cta {
  white-space: nowrap;
}

.work-card-link {
  position: absolute;
  inset: 0;
  z-index: 2;
}

body.page-index .work-media--featured-video {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('https://i.ytimg.com/vi/xmkVdwq9YRQ/hqdefault.jpg');
  background-size: cover;
  background-position: center;
}

.work-featured-meta {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
}

.work-featured-icon {
  width: 64px;
  height: 64px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.14);
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(8px);
  font-size: 1.2rem;
}

.work-featured-title {
  margin: 0 0 6px;
}

.work-featured-copy {
  margin: 0;
  color: #efefef;
}

.store-point-copy {
  color: var(--muted);
  font-size: 0.92rem;
  margin-top: 4px;
}

.section-title-compact {
  margin: 8px 0 10px;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  letter-spacing: -0.05em;
}

.section-copy--tight {
  margin: 0;
  max-width: 680px;
}

.news-edit-note-title {
  display: block;
  margin-bottom: 10px;
  color: #f5f5f5;
}

@media (max-width: 980px) {
  .topbar .site-nav__list {
    gap: 4px;
  }

  .topbar .site-nav__link {
    padding: 0 14px;
    font-size: 0.94rem;
  }

  .topbar .site-nav__item--cta {
    margin-left: 6px;
  }
}

@media (max-width: 860px) {
  .topbar .site-nav {
    position: fixed;
    top: 88px;
    left: 16px;
    right: 16px;
    z-index: 42;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-10px) scale(0.98);
    transition:
      opacity var(--transition),
      transform var(--transition);
  }

  body.menu-open .topbar .site-nav {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
  }

  .topbar .site-nav__list {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    padding: 18px;
    border-radius: 28px;
    background: rgba(10, 10, 10, 0.94);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.42);
    backdrop-filter: blur(18px);
  }

  .topbar .site-nav__item,
  .topbar .site-nav__link,
  .topbar .site-nav__cta {
    width: 100%;
  }

  .topbar .site-nav__link,
  .topbar .site-nav__cta {
    justify-content: flex-start;
  }

  .topbar .site-nav__link {
    min-height: 52px;
    padding: 0 18px;
  }

  .topbar .site-nav__link::after {
    left: 18px;
    right: 18px;
    bottom: 10px;
  }

  .topbar .site-nav__item--cta {
    margin: 4px 0 0;
  }

  .work-featured-meta {
    align-items: flex-start;
  }
}


/* Pricing page */
@keyframes pricingPremiumBorderFlow {
  0% {
    background-position: 0% 50%;
    opacity: 0.78;
  }

  50% {
    background-position: 100% 50%;
    opacity: 1;
  }

  100% {
    background-position: 0% 50%;
    opacity: 0.78;
  }
}

@keyframes pricingPremiumShimmerSweep {
  0% {
    transform: translateX(-170%) skewX(-18deg);
    opacity: 0;
  }

  14% {
    opacity: 0;
  }

  32% {
    opacity: 0.52;
  }

  52% {
    opacity: 0.18;
  }

  100% {
    transform: translateX(185%) skewX(-18deg);
    opacity: 0;
  }
}

body.page-store.page-pricing .pricing-plans-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 22px;
  margin-top: 26px;
  align-items: stretch;
}

body.page-store.page-pricing .pricing-plan-card {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  align-self: stretch;
  height: 100%;
  gap: 16px;
  min-height: 100%;
  padding: 28px;
  border-radius: 32px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.025)),
    radial-gradient(circle at top right, rgba(255, 255, 255, 0.08), transparent 44%),
    rgba(8, 8, 8, 0.72);
  box-shadow:
    0 18px 44px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
  transform: translate3d(0, 0, 0);
  will-change: transform, box-shadow, border-color;
  backface-visibility: hidden;
  transition:
    transform 220ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 220ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 220ms cubic-bezier(0.22, 1, 0.36, 1),
    background 320ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 0s;
}

body.page-store.page-pricing .pricing-plan-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.02));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0.85;
  pointer-events: none;
}

body.page-store.page-pricing .pricing-plan-card::after {
  content: "";
  position: absolute;
  inset: -45% auto auto -30%;
  width: 62%;
  height: 220px;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.08), transparent 72%);
  opacity: 0.6;
  pointer-events: none;
}

body.page-store.page-pricing .pricing-plan-card:hover,
body.page-store.page-pricing .pricing-plan-card:focus-within {
  transform: translate3d(0, -10px, 0) scale(1.02);
  transition-delay: 0s !important;
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow:
    0 28px 64px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.page-store.page-pricing .pricing-plan-card.is-selected {
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow:
    0 24px 58px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.page-store.page-pricing .pricing-plan-card--starter {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.025)),
    radial-gradient(circle at top right, var(--pricing-tier-starter-accent), transparent 44%),
    rgba(8, 8, 8, 0.74);
  transition-delay: 0s !important;
}

body.page-store.page-pricing .pricing-plan-card--starter:hover,
body.page-store.page-pricing .pricing-plan-card--starter:focus-within {
  transform: translate3d(0, -10px, 0) scale(1.02);
  transition-delay: 0s !important;
  border-color: rgba(88, 169, 255, 0.34);
  box-shadow:
    0 28px 64px rgba(0, 0, 0, 0.42),
    0 0 24px rgba(88, 169, 255, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.page-store.page-pricing .pricing-plan-card--starter.is-selected {
  border-color: rgba(88, 169, 255, 0.28);
  box-shadow:
    0 24px 58px rgba(0, 0, 0, 0.38),
    0 0 16px rgba(88, 169, 255, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.page-store.page-pricing .pricing-plan-card--pro {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.03)),
    radial-gradient(circle at top right, var(--pricing-tier-pro-accent-start), transparent 42%),
    radial-gradient(circle at bottom left, var(--pricing-tier-pro-accent-end), transparent 36%),
    rgba(8, 8, 8, 0.74);
  transition-delay: 0s !important;
}

body.page-store.page-pricing .pricing-plan-card--pro:hover,
body.page-store.page-pricing .pricing-plan-card--pro:focus-within {
  transform: translate3d(0, -10px, 0) scale(1.02);
  transition-delay: 0s !important;
  border-color: rgba(255, 99, 176, 0.28);
  box-shadow:
    0 28px 64px rgba(0, 0, 0, 0.42),
    0 0 18px rgba(255, 99, 176, 0.18),
    0 0 20px rgba(88, 169, 255, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.page-store.page-pricing .pricing-plan-card--pro.is-selected {
  border-color: rgba(255, 99, 176, 0.24);
  box-shadow:
    0 24px 58px rgba(0, 0, 0, 0.38),
    0 0 14px rgba(255, 99, 176, 0.14),
    0 0 16px rgba(88, 169, 255, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.page-store.page-pricing .pricing-plan-card--premium {
  border-color: var(--pricing-tier-premium-border);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.035)),
    radial-gradient(circle at top right, var(--pricing-tier-premium-gold-strong), transparent 42%),
    radial-gradient(circle at bottom left, rgba(255, 99, 176, 0.16), transparent 38%),
    rgba(9, 9, 9, 0.78);
  box-shadow:
    0 30px 68px rgba(0, 0, 0, 0.46),
    0 0 28px rgba(255, 216, 107, 0.18),
    inset 0 1px 0 rgba(255, 245, 214, 0.16);
  transition-delay: 0s !important;
}

body.page-store.page-pricing .pricing-plan-card--premium::before {
  inset: 0;
  padding: 1px;
  background: linear-gradient(
    118deg,
    rgba(255, 243, 207, 0.9) 0%,
    rgba(255, 216, 107, 0.48) 22%,
    rgba(255, 255, 255, 0.1) 40%,
    rgba(255, 216, 107, 0.74) 58%,
    rgba(255, 243, 207, 0.28) 76%,
    rgba(255, 216, 107, 0.2) 100%
  );
  background-size: 240% 240%;
  opacity: 0.9;
  animation: pricingPremiumBorderFlow 7.2s linear infinite;
}

body.page-store.page-pricing .pricing-plan-card--premium::after {
  inset: -14% -45%;
  width: 48%;
  height: 145%;
  background: var(--pricing-tier-shimmer);
  opacity: 0;
  mix-blend-mode: screen;
  filter: blur(0.5px);
  transform: translateX(-170%) skewX(-18deg);
  animation: pricingPremiumShimmerSweep 6.2s cubic-bezier(0.2, 0.8, 0.2, 1) infinite;
}

body.page-store.page-pricing .pricing-plan-card--premium .pricing-plan-price {
  color: #fff7df;
  text-shadow: 0 0 18px rgba(255, 216, 107, 0.12);
}

body.page-store.page-pricing .pricing-plan-card--premium .pricing-plan-chip {
  border-color: rgba(255, 216, 107, 0.26);
  background: rgba(255, 216, 107, 0.1);
  box-shadow: 0 0 18px rgba(255, 216, 107, 0.12);
}

body.page-store.page-pricing .pricing-plan-card--premium:hover,
body.page-store.page-pricing .pricing-plan-card--premium:focus-within {
  transform: translate3d(0, -10px, 0) scale(1.02);
  transition-delay: 0s !important;
  border-color: rgba(255, 225, 145, 0.56);
  box-shadow:
    0 36px 86px rgba(0, 0, 0, 0.5),
    0 0 34px rgba(255, 216, 107, 0.24),
    0 0 70px rgba(255, 216, 107, 0.08),
    inset 0 1px 0 rgba(255, 245, 214, 0.2);
}

body.page-store.page-pricing .pricing-plan-card--premium.is-selected {
  border-color: rgba(255, 225, 145, 0.48);
  box-shadow:
    0 30px 72px rgba(0, 0, 0, 0.46),
    0 0 28px rgba(255, 216, 107, 0.2),
    0 0 56px rgba(255, 216, 107, 0.06),
    inset 0 1px 0 rgba(255, 245, 214, 0.18);
}

body.page-store.page-pricing .pricing-plan-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

body.page-store.page-pricing .pricing-plan-chip {
  min-height: 42px;
  padding: 0 16px;
}

body.page-store.page-pricing .pricing-plan-status {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-top: -2px;
}

body.page-store.page-pricing .pricing-plan-badge {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #f3f3f3;
  background: rgba(255, 255, 255, 0.06);
}

body.page-store.page-pricing .pricing-plan-badge--starter {
  color: rgba(193, 224, 255, 0.94);
  background: rgba(88, 169, 255, 0.12);
  border-color: rgba(88, 169, 255, 0.18);
}

body.page-store.page-pricing .pricing-plan-badge--pro {
  color: #ffd8ef;
  background: linear-gradient(90deg, rgba(255, 99, 176, 0.16), rgba(88, 169, 255, 0.14));
  border-color: rgba(255, 255, 255, 0.14);
}

body.page-store.page-pricing .pricing-plan-badge--premium {
  color: #fff5cf;
  background: linear-gradient(90deg, rgba(255, 216, 107, 0.22), rgba(255, 230, 156, 0.1));
  border-color: rgba(255, 216, 107, 0.28);
  box-shadow: 0 0 18px rgba(255, 216, 107, 0.12);
}

body.page-store.page-pricing .pricing-plan-price-label {
  color: rgba(255, 255, 255, 0.68);
  font-size: 0.92rem;
}

body.page-store.page-pricing .pricing-plan-card h3 {
  margin: 0;
  font-size: clamp(1.8rem, 2vw, 2.35rem);
  letter-spacing: -0.055em;
}

body.page-store.page-pricing .pricing-plan-price {
  font-size: clamp(2.35rem, 3vw, 3.45rem);
  line-height: 0.96;
  letter-spacing: -0.065em;
}

body.page-store.page-pricing .pricing-plan-features {
  list-style: none;
  display: grid;
  align-content: start;
  flex: 1 1 auto;
  gap: 12px;
  margin: 2px 0 0;
  padding: 0;
  color: #dddddd;
}

body.page-store.page-pricing .pricing-plan-features li {
  position: relative;
  padding-left: 20px;
}

body.page-store.page-pricing .pricing-plan-features li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.62em;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--logo-pink), var(--logo-blue));
  box-shadow: 0 0 14px rgba(88, 169, 255, 0.18);
}

body.page-store.page-pricing .pricing-plan-card--premium .pricing-plan-features li::before {
  background: linear-gradient(135deg, var(--pricing-tier-premium-gold), #fff3c4);
  box-shadow: 0 0 16px rgba(255, 216, 107, 0.24);
}

body.page-store.page-pricing .pricing-plan-select {
  margin-top: auto;
  min-height: 56px;
  justify-content: center;
  font-weight: 600;
  transition:
    transform var(--transition),
    background var(--transition),
    border-color var(--transition),
    box-shadow var(--transition),
    color var(--transition);
}

body.page-store.page-pricing .pricing-plan-card--starter .pricing-plan-select {
  border-color: rgba(88, 169, 255, 0.16);
}

body.page-store.page-pricing .pricing-plan-card--starter .pricing-plan-select:hover,
body.page-store.page-pricing .pricing-plan-card--starter .pricing-plan-select:focus-visible,
body.page-store.page-pricing .pricing-plan-card--starter .pricing-plan-select.is-selected {
  border-color: rgba(88, 169, 255, 0.32);
  box-shadow: 0 0 20px rgba(88, 169, 255, 0.14);
}

body.page-store.page-pricing .pricing-plan-card--pro .pricing-plan-select {
  background: linear-gradient(135deg, rgba(255, 99, 176, 0.12), rgba(88, 169, 255, 0.12));
  border-color: rgba(255, 255, 255, 0.14);
}

body.page-store.page-pricing .pricing-plan-card--pro .pricing-plan-select:hover,
body.page-store.page-pricing .pricing-plan-card--pro .pricing-plan-select:focus-visible,
body.page-store.page-pricing .pricing-plan-card--pro .pricing-plan-select.is-selected {
  box-shadow:
    0 0 18px rgba(255, 99, 176, 0.14),
    0 0 18px rgba(88, 169, 255, 0.14);
}

body.page-store.page-pricing .pricing-plan-card--premium .pricing-plan-select {
  background: linear-gradient(180deg, #fffaf0, #f3e5bc);
  color: #16120a;
  border-color: rgba(255, 216, 107, 0.34);
  box-shadow:
    0 14px 28px rgba(0, 0, 0, 0.28),
    0 0 20px rgba(255, 216, 107, 0.16);
}

body.page-store.page-pricing .pricing-plan-card--premium .pricing-plan-select:hover,
body.page-store.page-pricing .pricing-plan-card--premium .pricing-plan-select:focus-visible,
body.page-store.page-pricing .pricing-plan-card--premium .pricing-plan-select.is-selected {
  transform: translateY(-2px);
  background: linear-gradient(180deg, #fffdf6, #f7ebc6);
  border-color: rgba(255, 225, 145, 0.46);
  box-shadow:
    0 18px 36px rgba(0, 0, 0, 0.3),
    0 0 28px rgba(255, 216, 107, 0.22);
}

body.page-store.page-pricing .pricing-plan-select:focus-visible {
  outline: none;
  box-shadow:
    0 0 0 2px rgba(255, 255, 255, 0.18),
    0 0 0 6px rgba(88, 169, 255, 0.12);
}

@media (max-width: 1120px) {
  body.page-store.page-pricing .pricing-plan-card--premium {
    grid-column: 1 / -1;
  }

  body.page-store.page-pricing .pricing-plan-card--starter:hover,
  body.page-store.page-pricing .pricing-plan-card--starter:focus-within,
  body.page-store.page-pricing .pricing-plan-card--pro:hover,
  body.page-store.page-pricing .pricing-plan-card--pro:focus-within,
  body.page-store.page-pricing .pricing-plan-card--premium:hover,
  body.page-store.page-pricing .pricing-plan-card--premium:focus-within {
    transform: translate3d(0, -10px, 0) scale(1.02);
  }
}

@media (max-width: 760px) {
  body.page-store.page-pricing .pricing-plan-card:hover,
  body.page-store.page-pricing .pricing-plan-card:focus-within {
    transform: translate3d(0, -6px, 0) scale(1.01);
    transition-delay: 0s !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.page-store.page-pricing .pricing-plan-card,
  body.page-store.page-pricing .pricing-plan-select,
  body.page-store.page-pricing .pricing-plan-card--premium::before,
  body.page-store.page-pricing .pricing-plan-card--premium::after {
    transition: none;
    animation: none;
  }

  body.page-store.page-pricing .pricing-plan-card:hover,
  body.page-store.page-pricing .pricing-plan-card:focus-within,
  body.page-store.page-pricing .pricing-plan-select:hover,
  body.page-store.page-pricing .pricing-plan-select:focus-visible,
  body.page-store.page-pricing .pricing-plan-select.is-selected {
    transform: none;
  }

  body.page-store.page-pricing .pricing-plan-card--premium::after {
    opacity: 0.16;
  }
}

body.page-store.page-pricing .pricing-calculator-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
  gap: 22px;
  margin-top: 26px;
  align-items: start;
}

body.page-store.page-pricing .pricing-form-card,
body.page-store.page-pricing .pricing-summary-card {
  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.08),
      rgba(255, 255, 255, 0.03)
    ),
    rgba(255, 255, 255, 0.02);
  box-shadow: var(--shadow);
}

body.page-store.page-pricing .pricing-form-card {
  padding: 28px;
  display: grid;
  gap: 22px;
}

body.page-store.page-pricing .pricing-summary-card {
  position: sticky;
  top: 108px;
  padding: 28px;
  display: grid;
  gap: 18px;
}

body.page-store.page-pricing .pricing-fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  display: grid;
  gap: 14px;
}

body.page-store.page-pricing .pricing-fieldset legend {
  padding: 0;
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 2px;
}

body.page-store.page-pricing .pricing-plan-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

body.page-store.page-pricing .pricing-radio-card,
body.page-store.page-pricing .pricing-checkbox-card {
  position: relative;
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 16px 18px;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.04);
  cursor: pointer;
  transition:
    border-color var(--transition),
    background var(--transition),
    transform var(--transition),
    box-shadow var(--transition);
}

body.page-store.page-pricing .pricing-radio-card:hover,
body.page-store.page-pricing .pricing-checkbox-card:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.14);
}

body.page-store.page-pricing .pricing-radio-card input,
body.page-store.page-pricing .pricing-checkbox-card input {
  margin: 2px 0 0;
  accent-color: #58a9ff;
}

body.page-store.page-pricing .pricing-radio-card:has(input:checked),
body.page-store.page-pricing .pricing-checkbox-card:has(input:checked) {
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.08),
      rgba(255, 255, 255, 0.03)
    ),
    var(--nav-accent-surface);
  border-color: rgba(255, 255, 255, 0.16);
  box-shadow:
    0 10px 24px rgba(0, 0, 0, 0.24),
    0 0 18px rgba(88, 169, 255, 0.08);
}

body.page-store.page-pricing .pricing-radio-content,
body.page-store.page-pricing .pricing-checkbox-card > span {
  display: grid;
  gap: 4px;
  color: var(--muted);
}

body.page-store.page-pricing .pricing-radio-content strong,
body.page-store.page-pricing .pricing-checkbox-card strong {
  color: var(--text);
}

body.page-store.page-pricing .pricing-field-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

body.page-store.page-pricing .pricing-field {
  display: grid;
  gap: 8px;
  color: #eaeaea;
  font-size: 0.94rem;
}

body.page-store.page-pricing .pricing-field input {
  width: 100%;
  min-height: 52px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
  color: var(--text);
  border-radius: 16px;
  padding: 14px 16px;
  font: inherit;
  transition:
    border-color var(--transition),
    background var(--transition),
    transform var(--transition),
    box-shadow var(--transition);
}

body.page-store.page-pricing .pricing-field input:focus,
body.page-store.page-pricing .pricing-plan-select:focus-visible,
body.page-store.page-pricing .pricing-summary-cta:focus-visible {
  outline: none;
  border-color: rgba(255, 255, 255, 0.26);
  background: rgba(255, 255, 255, 0.06);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.08),
    0 10px 24px rgba(0, 0, 0, 0.2);
}

body.page-store.page-pricing .pricing-addon-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

body.page-store.page-pricing .pricing-helper-note,
body.page-store.page-pricing .pricing-summary-note {
  margin: 0;
  color: var(--muted);
  font-size: 0.94rem;
}

body.page-store.page-pricing .pricing-total-wrap {
  display: grid;
  gap: 6px;
}

body.page-store.page-pricing .pricing-total-label {
  color: var(--muted);
  font-size: 0.94rem;
}

body.page-store.page-pricing .pricing-total-value {
  font-size: clamp(2.2rem, 4vw, 3.6rem);
  line-height: 0.96;
  letter-spacing: -0.06em;
}

body.page-store.page-pricing .pricing-breakdown-list {
  display: grid;
  gap: 10px;
}

body.page-store.page-pricing .pricing-breakdown-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  color: var(--muted);
}

body.page-store.page-pricing .pricing-breakdown-row strong {
  color: var(--text);
  white-space: nowrap;
}

body.page-store.page-pricing .pricing-breakdown-row--summary,
body.page-store.page-pricing .pricing-breakdown-row--total {
  color: var(--text);
}

body.page-store.page-pricing .pricing-breakdown-row--total {
  font-size: 1.04rem;
  border-bottom: 0;
  padding-bottom: 0;
}

body.page-store.page-pricing .pricing-summary-cta {
  margin-top: 8px;
}

@media (max-width: 1100px) {
  body.page-store.page-pricing .pricing-plans-grid,
  body.page-store.page-pricing .pricing-plan-options,
  body.page-store.page-pricing .pricing-field-grid,
  body.page-store.page-pricing .pricing-addon-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.page-store.page-pricing .pricing-calculator-grid {
    grid-template-columns: 1fr;
  }

  body.page-store.page-pricing .pricing-summary-card {
    position: static;
  }
}

@media (max-width: 760px) {
  body.page-store.page-pricing .pricing-plans-grid,
  body.page-store.page-pricing .pricing-plan-options,
  body.page-store.page-pricing .pricing-field-grid,
  body.page-store.page-pricing .pricing-addon-grid {
    grid-template-columns: 1fr;
  }

  body.page-store.page-pricing .pricing-form-card,
  body.page-store.page-pricing .pricing-summary-card {
    padding: 22px;
  }
}


/* Pricing UI polish overrides */
@keyframes pricingChoiceGlow {
  0% {
    box-shadow:
      0 0 0 rgba(255, 99, 176, 0),
      0 0 0 rgba(88, 169, 255, 0);
  }
  100% {
    box-shadow:
      0 0 18px rgba(255, 99, 176, 0.18),
      0 0 24px rgba(88, 169, 255, 0.2);
  }
}

body.page-store.page-pricing .pricing-radio-card,
body.page-store.page-pricing .pricing-checkbox-card {
  overflow: hidden;
  isolation: isolate;
}

body.page-store.page-pricing .pricing-radio-card::before,
body.page-store.page-pricing .pricing-checkbox-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at top right, rgba(88, 169, 255, 0.12), transparent 42%),
    radial-gradient(circle at bottom left, rgba(255, 99, 176, 0.1), transparent 38%);
  opacity: 0;
  transition: opacity var(--transition);
  pointer-events: none;
}

body.page-store.page-pricing .pricing-radio-card:hover::before,
body.page-store.page-pricing .pricing-checkbox-card:hover::before,
body.page-store.page-pricing .pricing-radio-card:has(.pricing-choice-input:checked)::before,
body.page-store.page-pricing .pricing-checkbox-card:has(.pricing-choice-input:checked)::before {
  opacity: 1;
}

body.page-store.page-pricing .pricing-choice-input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

body.page-store.page-pricing .pricing-radio-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
}

body.page-store.page-pricing .pricing-checkbox-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
}

body.page-store.page-pricing .pricing-choice-ui {
  position: relative;
  z-index: 1;
  width: 22px;
  height: 22px;
  margin-top: 2px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.03);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
  transition:
    transform var(--transition),
    border-color var(--transition),
    background var(--transition),
    box-shadow var(--transition);
}

body.page-store.page-pricing .pricing-choice-ui--radio {
  border-radius: 999px;
}

body.page-store.page-pricing .pricing-choice-ui--checkbox {
  border-radius: 8px;
}

body.page-store.page-pricing .pricing-choice-ui::before,
body.page-store.page-pricing .pricing-choice-ui::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  transition:
    transform 280ms cubic-bezier(0.2, 0.8, 0.2, 1),
    opacity 220ms ease;
}

body.page-store.page-pricing .pricing-choice-ui--radio::before {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--logo-pink), var(--logo-blue));
  opacity: 0;
  transform: scale(0.2);
  box-shadow: 0 0 16px rgba(88, 169, 255, 0.28);
}

body.page-store.page-pricing .pricing-choice-ui--checkbox::before {
  width: 12px;
  height: 7px;
  border-left: 2px solid #ffffff;
  border-bottom: 2px solid #ffffff;
  opacity: 0;
  transform: translateY(-1px) rotate(-45deg) scale(0.4);
  transform-origin: center;
}

body.page-store.page-pricing .pricing-radio-card:has(.pricing-choice-input:checked),
body.page-store.page-pricing .pricing-checkbox-card:has(.pricing-choice-input:checked) {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03)),
    linear-gradient(135deg, rgba(255, 99, 176, 0.18), rgba(88, 169, 255, 0.16));
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow:
    0 18px 34px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 0 26px rgba(88, 169, 255, 0.08);
}

body.page-store.page-pricing .pricing-radio-card:has(.pricing-choice-input:checked) .pricing-choice-ui,
body.page-store.page-pricing .pricing-checkbox-card:has(.pricing-choice-input:checked) .pricing-choice-ui {
  border-color: rgba(255, 255, 255, 0.32);
  background: linear-gradient(135deg, rgba(255, 99, 176, 0.4), rgba(88, 169, 255, 0.36));
  transform: translateY(-1px);
  animation: pricingChoiceGlow 320ms ease-out both;
}

body.page-store.page-pricing .pricing-radio-card:has(.pricing-choice-input:checked) .pricing-choice-ui--radio::before,
body.page-store.page-pricing .pricing-checkbox-card:has(.pricing-choice-input:checked) .pricing-choice-ui--checkbox::before {
  opacity: 1;
  transform: translateY(-1px) rotate(-45deg) scale(1);
}

body.page-store.page-pricing .pricing-radio-card:has(.pricing-choice-input:checked) .pricing-choice-ui--radio::before {
  transform: scale(1);
}

body.page-store.page-pricing .pricing-radio-card:has(.pricing-choice-input:focus-visible),
body.page-store.page-pricing .pricing-checkbox-card:has(.pricing-choice-input:focus-visible) {
  border-color: rgba(255, 255, 255, 0.24);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.08),
    0 0 0 4px rgba(88, 169, 255, 0.14),
    0 18px 34px rgba(0, 0, 0, 0.24);
}

body.page-store.page-pricing .pricing-choice-copy {
  position: relative;
  z-index: 1;
}

body.page-store.page-pricing .pricing-choice-copy strong {
  letter-spacing: -0.02em;
}

body.page-store.page-pricing .pricing-choice-meta {
  position: relative;
  z-index: 1;
  justify-self: end;
  align-self: start;
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.96rem;
  font-weight: 600;
  white-space: nowrap;
  padding-left: 12px;
}

body.page-store.page-pricing .pricing-checkbox-card .pricing-choice-copy span,
body.page-store.page-pricing .pricing-radio-card .pricing-choice-copy span {
  color: var(--muted);
}

body.page-store.page-pricing .pricing-checkbox-card:hover,
body.page-store.page-pricing .pricing-radio-card:hover {
  box-shadow:
    0 18px 34px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 0 18px rgba(88, 169, 255, 0.05);
}

body.page-store.page-pricing .pricing-plan-select {
  justify-content: center;
  text-align: center;
}

body.page-store.page-pricing .pricing-summary-cta {
  justify-content: center;
  text-align: center;
}

@media (max-width: 760px) {
  body.page-store.page-pricing .pricing-checkbox-card {
    grid-template-columns: auto minmax(0, 1fr);
  }

  body.page-store.page-pricing .pricing-choice-meta {
    grid-column: 2;
    justify-self: start;
    padding-left: 0;
    margin-top: 6px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.page-store.page-pricing .pricing-radio-card,
  body.page-store.page-pricing .pricing-checkbox-card,
  body.page-store.page-pricing .pricing-choice-ui,
  body.page-store.page-pricing .pricing-choice-ui::before,
  body.page-store.page-pricing .pricing-choice-ui::after {
    transition-duration: 0.01ms !important;
    animation: none !important;
  }

  body.page-store.page-pricing .pricing-radio-card:hover,
  body.page-store.page-pricing .pricing-checkbox-card:hover,
  body.page-store.page-pricing .pricing-plan-card:hover,
  body.page-store.page-pricing .pricing-plan-card.is-selected {
    transform: none;
  }
}


/* Homepage selected work cleanup */
body.page-index .work-grid {
  align-items: stretch;
}

body.page-index .home-work-card {
  grid-column: span 6;
  min-height: 456px;
}

body.page-index .home-work-card .work-media {
  min-height: 456px;
}

body.page-index .work-section-cta {
  display: flex;
  justify-content: center;
  margin-top: 22px;
}

body.page-index .work-section-cta .button {
  min-width: 190px;
}

body.page-index .work-card-link {
  z-index: 3;
}

@media (max-width: 1100px) {
  body.page-index .home-work-card {
    grid-column: span 12;
  }
}


/* Shared scroll reveal polish */
html.scroll-animations-ready .scroll-reveal-item {
  opacity: 0;
  transform: translateY(16px);
}

html.scroll-animations-ready .scroll-reveal-item.is-visible {
  opacity: 1;
  transform: none;
  transition:
    opacity 420ms cubic-bezier(0.2, 0.8, 0.2, 1) var(--reveal-delay, 0ms),
    transform 420ms cubic-bezier(0.2, 0.8, 0.2, 1) var(--reveal-delay, 0ms);
  will-change: opacity, transform;
}

@media (prefers-reduced-motion: reduce) {
  html.scroll-animations-ready .scroll-reveal-item,
  html.scroll-animations-ready .scroll-reveal-item.is-visible {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Homepage logo marquee overrides */
body.page-index .trusted-strip-marquee {
  --trusted-marquee-gap: 14px;
  position: relative;
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
}

body.page-index .trusted-strip-track {
  display: flex;
  align-items: stretch;
  gap: var(--trusted-marquee-gap);
  width: max-content;
  animation: trustedMarqueeDrift 34s linear infinite;
  will-change: transform;
}

body.page-index .trusted-strip-marquee:hover .trusted-strip-track {
  animation-play-state: paused;
}

body.page-index .trusted-strip-track.is-static {
  animation: none;
}

body.page-index .trusted-strip-set {
  display: flex;
  align-items: stretch;
  gap: var(--trusted-marquee-gap);
}

body.page-index .trusted-strip-item {
  flex: 0 0 clamp(126px, 13.2vw, 164px);
  min-height: 96px;
}

@keyframes trustedMarqueeDrift {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(calc(-50% - (var(--trusted-marquee-gap) / 2)), 0, 0);
  }
}

@media (max-width: 1100px) {
  body.page-index .trusted-strip-marquee {
    --trusted-marquee-gap: 12px;
  }

  body.page-index .trusted-strip-item {
    flex-basis: 150px;
  }
}

@media (max-width: 760px) {
  body.page-index .trusted-strip-marquee {
    --trusted-marquee-gap: 10px;
    mask-image: none;
    -webkit-mask-image: none;
  }

  body.page-index .trusted-strip-track {
    animation-duration: 28s;
  }

  body.page-index .trusted-strip-item {
    flex-basis: 132px;
    min-height: 82px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.page-index .trusted-strip-track,
  body.page-index .trusted-strip-marquee:hover .trusted-strip-track {
    animation: none;
  }
}

/* Pricing FAQ section */
@keyframes pricingFaqGlowShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

body.page-pricing .pricing-faq-section {
  padding-top: 8px;
}

body.page-pricing .pricing-faq-list {
  display: grid;
  gap: 14px;
}

body.page-pricing .pricing-faq-item {
  position: relative;
  isolation: isolate;
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background:
    radial-gradient(circle at top right, rgba(255, 216, 107, 0.06), transparent 32%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.03));
  box-shadow: var(--shadow);
  overflow: hidden;
  transition:
    border-color var(--transition),
    box-shadow var(--transition),
    transform var(--transition),
    background var(--transition);
}

body.page-pricing .pricing-faq-item::before,
body.page-pricing .pricing-faq-item::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  transition: opacity var(--transition);
}

body.page-pricing .pricing-faq-item::before {
  z-index: 0;
  background:
    radial-gradient(circle at 12% 18%, rgba(88, 169, 255, 0.18), transparent 34%),
    radial-gradient(circle at 85% 22%, rgba(255, 99, 176, 0.15), transparent 32%),
    radial-gradient(circle at 72% 86%, rgba(255, 216, 107, 0.18), transparent 38%),
    linear-gradient(120deg, rgba(24, 30, 44, 0.88), rgba(44, 28, 50, 0.84), rgba(54, 40, 24, 0.88));
  background-size: 100% 100%, 100% 100%, 100% 100%, 220% 220%;
}

body.page-pricing .pricing-faq-item::after {
  z-index: 0;
  inset: 1px;
  background: linear-gradient(120deg, rgba(255, 255, 255, 0) 22%, rgba(255, 216, 107, 0.18) 48%, rgba(255, 255, 255, 0) 74%);
  transform: translateX(-28%);
  transition:
    opacity var(--transition),
    transform 680ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.page-pricing .pricing-faq-trigger,
body.page-pricing .pricing-faq-panel {
  position: relative;
  z-index: 1;
}

body.page-pricing .pricing-faq-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 24px;
  background: transparent;
  border: 0;
  color: var(--text);
  text-align: left;
  font: inherit;
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  cursor: pointer;
  transition: color var(--transition);
}

body.page-pricing .pricing-faq-icon {
  position: relative;
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
}

body.page-pricing .pricing-faq-icon::before,
body.page-pricing .pricing-faq-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 2px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  transform: translate(-50%, -50%);
  transition:
    transform var(--transition),
    opacity var(--transition),
    background var(--transition),
    box-shadow var(--transition);
}

body.page-pricing .pricing-faq-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

body.page-pricing .pricing-faq-panel {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition:
    grid-template-rows 420ms cubic-bezier(0.2, 0.8, 0.2, 1),
    opacity 320ms ease;
}

body.page-pricing .pricing-faq-panel-inner {
  overflow: hidden;
  padding: 0 24px 0;
  color: var(--muted);
  font-size: 0.98rem;
  line-height: 1.7;
  transition: color var(--transition);
}

body.page-pricing .pricing-faq-item.is-open {
  border-color: rgba(255, 216, 107, 0.28);
  background:
    radial-gradient(circle at top right, rgba(255, 216, 107, 0.08), transparent 36%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.03));
  box-shadow:
    var(--shadow),
    0 0 0 1px rgba(255, 216, 107, 0.12),
    0 0 34px rgba(255, 216, 107, 0.12),
    0 18px 40px rgba(0, 0, 0, 0.3);
}

body.page-pricing .pricing-faq-item.is-open::before {
  opacity: 1;
  animation: pricingFaqGlowShift 10s ease-in-out infinite;
}

body.page-pricing .pricing-faq-item.is-open::after {
  opacity: 1;
  transform: translateX(0%);
}

body.page-pricing .pricing-faq-item.is-open .pricing-faq-trigger {
  color: #fff3cf;
}

body.page-pricing .pricing-faq-item.is-open .pricing-faq-panel {
  grid-template-rows: 1fr;
  opacity: 1;
}

body.page-pricing .pricing-faq-item.is-open .pricing-faq-panel-inner {
  padding-bottom: 22px;
  color: rgba(245, 240, 228, 0.9);
}

body.page-pricing .pricing-faq-item.is-open .pricing-faq-icon::before,
body.page-pricing .pricing-faq-trigger:hover .pricing-faq-icon::before,
body.page-pricing .pricing-faq-trigger:hover .pricing-faq-icon::after {
  background: rgba(255, 216, 107, 0.94);
  box-shadow: 0 0 14px rgba(255, 216, 107, 0.24);
}

body.page-pricing .pricing-faq-item.is-open .pricing-faq-icon::after {
  transform: translate(-50%, -50%) rotate(90deg) scaleX(0);
  opacity: 0;
}

@media (prefers-reduced-motion: reduce) {
  body.page-pricing .pricing-faq-item,
  body.page-pricing .pricing-faq-item::before,
  body.page-pricing .pricing-faq-item::after,
  body.page-pricing .pricing-faq-trigger,
  body.page-pricing .pricing-faq-icon::before,
  body.page-pricing .pricing-faq-icon::after,
  body.page-pricing .pricing-faq-panel,
  body.page-pricing .pricing-faq-panel-inner {
    transition-duration: 0.01ms !important;
  }

  body.page-pricing .pricing-faq-item.is-open::before {
    animation: none;
  }
}

@media (max-width: 760px) {
  body.page-pricing .pricing-faq-trigger {
    padding: 20px 20px;
    font-size: 1rem;
  }

  body.page-pricing .pricing-faq-panel-inner {
    padding: 0 20px 0;
    font-size: 0.95rem;
  }

  body.page-pricing .pricing-faq-item.is-open .pricing-faq-panel-inner {
    padding-bottom: 20px;
  }
}

/* ============================================================
   MOTION SYSTEM ENHANCEMENT — ANIVORA MEDIA
   Added: global tokens, new keyframes, section-by-section
   glow/reveal/interaction polish across all pages.
   prefers-reduced-motion respected throughout.
   ============================================================ */

/* ── 1. MOTION & GLOW TOKENS ── */
:root {
  --dur-fast:   180ms;
  --dur-base:   400ms;
  --dur-slow:   780ms;
  --ease-out:   cubic-bezier(0.2, 0.8, 0.2, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

  --glow-pink:   rgba(255, 99,  176, 0.26);
  --glow-blue:   rgba(88,  169, 255, 0.26);
  --glow-gold:   rgba(255, 216, 107, 0.26);
  --glow-violet: rgba(159, 124, 255, 0.22);
}

/* ── 2. NEW GLOBAL KEYFRAMES ── */

/* Ambient glow breathe (hero card, stat numbers, etc.) */
@keyframes glowPulse {
  0%, 100% { box-shadow: 0 0 0 rgba(88,169,255,0), 0 0 0 rgba(255,99,176,0); }
  50%       { box-shadow: 0 0 32px rgba(88,169,255,0.12), 0 0 24px rgba(255,99,176,0.1); }
}

/* Reusable button / card sheen sweep */
@keyframes sheenSweep {
  0%   { transform: translateX(-140%) skewX(-18deg); opacity: 0; }
  12%  { opacity: 0.38; }
  50%  { opacity: 0.16; }
  100% { transform: translateX(160%) skewX(-18deg); opacity: 0; }
}

/* Eyebrow live-dot blink */
@keyframes dotBlink {
  0%, 100% { opacity: 1;    transform: scale(1);    }
  50%       { opacity: 0.38; transform: scale(0.82); }
}

/* Hero card subtle vertical float */
@keyframes floatY {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-8px); }
}

/* Aurora blob drift (decorative bg blobs) */
@keyframes auroraDrift {
  0%   { transform: translate(0,    0)    scale(1);    filter: hue-rotate(0deg); }
  33%  { transform: translate(24px,-18px) scale(1.04); filter: hue-rotate(12deg); }
  66%  { transform: translate(-16px,12px) scale(0.97); filter: hue-rotate(-8deg); }
  100% { transform: translate(0,    0)    scale(1);    filter: hue-rotate(0deg); }
}

/* Stat number text-glow flash on scroll-reveal */
@keyframes statRevealGlow {
  0%   { text-shadow: none; }
  30%  { text-shadow: 0 0 28px rgba(255,216,107,0.42), 0 0 56px rgba(255,216,107,0.18); }
  100% { text-shadow: none; }
}

/* Section kicker gradient shimmer */
@keyframes kickerShimmer {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

/* Footer brand glow cycle */
@keyframes footerBrandGlow {
  0%, 100% { opacity: 0.58; }
  50%       { opacity: 1; }
}


/* ── 3. SCROLL PROGRESS BAR ── */
.scroll-progress-bar {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  height: 2px;
  width: calc(var(--scroll-progress, 0) * 1%);
  background: linear-gradient(
    90deg,
    var(--logo-gold),
    var(--logo-pink) 38%,
    var(--logo-violet) 68%,
    var(--logo-blue)
  );
  background-size: 200% 100%;
  animation: kickerShimmer 4s linear infinite;
  border-radius: 0 999px 999px 0;
  box-shadow: 0 0 14px rgba(88,169,255,0.32), 0 0 6px rgba(255,99,176,0.22);
  pointer-events: none;
  transform-origin: left center;
  transition: width 80ms linear;
  will-change: width;
}

@media (prefers-reduced-motion: reduce) {
  .scroll-progress-bar { display: none; }
}


/* ── 4. TOPBAR — SCROLL-AWARE DEPTH ── */
.topbar.is-scrolled {
  background: rgba(9, 9, 9, 0.86);
  border-bottom-color: rgba(255, 255, 255, 0.1);
  box-shadow: 0 8px 32px rgba(0,0,0,0.36);
}

@media (prefers-reduced-motion: no-preference) {
  .topbar {
    transition:
      background var(--dur-base) var(--ease-out),
      border-color var(--dur-base) var(--ease-out),
      box-shadow var(--dur-base) var(--ease-out);
  }
}


/* ── 5. EYEBROW — LIVE DOT PULSE ── */
body.page-index .eyebrow::before,
body.page-store .eyebrow::before,
body.page-news .eyebrow::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--logo-pink), var(--logo-blue));
  box-shadow: 0 0 10px var(--glow-blue);
  animation: dotBlink 2.2s ease-in-out infinite;
  flex-shrink: 0;
}

@media (prefers-reduced-motion: reduce) {
  body.page-index .eyebrow::before,
  body.page-store .eyebrow::before,
  body.page-news .eyebrow::before { animation: none; }
}


/* ── 6. HERO CARD — AMBIENT FLOAT + AURORA ── */

/* Aurora decorative blob behind hero */
body.page-index .hero-shell::before {
  content: "";
  position: absolute;
  width: 520px;
  height: 520px;
  border-radius: 999px;
  right: -60px;
  top: 5%;
  background: radial-gradient(circle,
    rgba(255,99,176,0.08) 0%,
    rgba(88,169,255,0.06) 40%,
    transparent 72%
  );
  filter: blur(60px);
  pointer-events: none;
  z-index: 0;
  animation: auroraDrift 22s ease-in-out infinite;
  will-change: transform, filter;
}

body.page-index .hero-card:not(:hover) {
  animation: floatY 7s ease-in-out infinite;
}

/* Stop float on hover so transform interactions feel crisp */
body.page-index .hero-card:hover {
  animation: none;
}

@media (prefers-reduced-motion: reduce) {
  body.page-index .hero-card {
    animation: none !important;
  }
  body.page-index .hero-shell::before {
    animation: none;
  }
}


/* ── 7. SECTION KICKER — GRADIENT TEXT SHIMMER ── */
body.page-index .section-kicker,
body.page-store .section-kicker,
body.page-news .section-kicker,
body.page-courses .section-kicker {
  background: linear-gradient(
    90deg,
    rgba(255,255,255,0.62),
    rgba(255,216,107,0.9) 30%,
    rgba(255,99,176,0.82) 60%,
    rgba(88,169,255,0.9) 80%,
    rgba(255,255,255,0.62)
  );
  background-size: 280% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: kickerShimmer 8s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  body.page-index .section-kicker,
  body.page-store .section-kicker,
  body.page-news .section-kicker,
  body.page-courses .section-kicker {
    animation: none;
    background: none;
    -webkit-text-fill-color: #d1d1d1;
    color: #d1d1d1;
  }
}


/* ── 8. WORK CARDS — PER-COLOR HOVER GLOW ── */

/* Index work cards — assign color variables to first 4 cards */
body.page-index .work-grid .work-card:nth-child(1) { --work-glow: var(--glow-pink);   --work-border: rgba(255,99,176,0.28); }
body.page-index .work-grid .work-card:nth-child(2) { --work-glow: var(--glow-blue);   --work-border: rgba(88,169,255,0.28); }
body.page-index .work-grid .work-card:nth-child(3) { --work-glow: var(--glow-gold);   --work-border: rgba(255,216,107,0.26); }
body.page-index .work-grid .work-card:nth-child(4) { --work-glow: var(--glow-violet); --work-border: rgba(159,124,255,0.26); }

body.page-index .work-card:hover {
  border-color: var(--work-border, rgba(255,255,255,0.18));
  box-shadow:
    0 18px 48px rgba(0,0,0,0.46),
    0 0 32px var(--work-glow, rgba(255,255,255,0.08)),
    inset 0 1px 0 rgba(255,255,255,0.1);
}

/* Portfolio page work cards — same pattern */
body.page-portfolio .work-card:nth-child(odd)  { --work-glow: var(--glow-pink);   --work-border: rgba(255,99,176,0.28); }
body.page-portfolio .work-card:nth-child(even) { --work-glow: var(--glow-blue);   --work-border: rgba(88,169,255,0.28); }

body.page-portfolio .work-card:hover {
  border-color: var(--work-border, rgba(255,255,255,0.18));
  box-shadow:
    0 18px 48px rgba(0,0,0,0.46),
    0 0 32px var(--work-glow, rgba(255,255,255,0.08)),
    inset 0 1px 0 rgba(255,255,255,0.1);
}


/* ── 9. ABOUT POINTS — HOVER LIFT + GLOW ── */
body.page-index .point,
body.page-store .point,
body.page-news .point {
  transition:
    transform var(--dur-base) var(--ease-out),
    border-color var(--dur-base) var(--ease-out),
    background var(--dur-base) var(--ease-out),
    box-shadow var(--dur-base) var(--ease-out);
  will-change: transform;
}

body.page-index .point:hover,
body.page-store .point:hover,
body.page-news .point:hover {
  transform: translateY(-3px);
  border-color: rgba(255,255,255,0.16);
  background: rgba(255,255,255,0.07);
  box-shadow:
    0 14px 32px rgba(0,0,0,0.3),
    inset 0 1px 0 rgba(255,255,255,0.07);
}


/* ── 10. STATS — REVEAL GLOW FLASH ── */
body.page-index .stat.is-visible .number,
body.page-store .stat.is-visible .number,
body.page-news .stat.is-visible .number {
  animation: statRevealGlow 1.6s var(--ease-out) both;
}

@media (prefers-reduced-motion: reduce) {
  body.page-index .stat.is-visible .number,
  body.page-store .stat.is-visible .number,
  body.page-news .stat.is-visible .number { animation: none; }
}


/* ── 11. SECONDARY BUTTON — SHEEN ON HOVER ── */
body.page-index .button:not(.primary)::after,
body.page-store .button:not(.primary)::after,
body.page-news .button:not(.primary)::after {
  content: "";
  position: absolute;
  top: -20%;
  left: -22%;
  width: 40%;
  height: 140%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.18) 48%,
    rgba(255,255,255,0) 100%
  );
  opacity: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 0;
}

body.page-index .button:not(.primary):hover::after,
body.page-store .button:not(.primary):hover::after,
body.page-news .button:not(.primary):hover::after {
  opacity: 1;
  animation: sheenSweep 0.72s ease-out forwards;
}

body.page-index .button:not(.primary),
body.page-store .button:not(.primary),
body.page-news .button:not(.primary) {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

@media (prefers-reduced-motion: reduce) {
  body.page-index .button:not(.primary):hover::after,
  body.page-store .button:not(.primary):hover::after,
  body.page-news .button:not(.primary):hover::after { animation: none; opacity: 0; }
}


/* ── 12. FORM INPUTS — COLOR GLOW FOCUS RING ── */
body.page-index input:focus,
body.page-index textarea:focus,
body.page-store input:focus,
body.page-store textarea:focus,
body.page-news  input:focus,
body.page-news  textarea:focus {
  border-color: rgba(88,169,255,0.44) !important;
  box-shadow:
    0 0 0 1px rgba(88,169,255,0.18),
    0 0 24px rgba(88,169,255,0.12),
    0 0 0 4px rgba(88,169,255,0.06) !important;
  transform: none !important;
}

body.page-index label:focus-within,
body.page-store label:focus-within,
body.page-news  label:focus-within {
  color: #f0f0f0;
}


/* ── 13. CONTACT LINKS — ENHANCED SLIDE + GLOW ── */
body.page-index .contact-link:hover,
body.page-store .contact-link:hover,
body.page-news  .contact-link:hover {
  transform: translateX(6px);
  border-color: rgba(88,169,255,0.26);
  box-shadow:
    0 0 22px rgba(88,169,255,0.1),
    0 12px 28px rgba(0,0,0,0.24);
  background: rgba(88,169,255,0.08);
}


/* ── 14. FOOTER — REVEAL + BRAND GLOW + SOCIAL HOVER ── */
body.page-index footer,
body.page-store footer,
body.page-news footer {
  position: relative;
  isolation: isolate;
}

/* Subtle ambient glow blob in footer */
body.page-index footer::before,
body.page-store footer::before,
body.page-news footer::before {
  content: "";
  position: absolute;
  inset: -60px 20% auto;
  height: 180px;
  background: radial-gradient(
    ellipse,
    rgba(88,169,255,0.06) 0%,
    rgba(255,99,176,0.04) 45%,
    transparent 72%
  );
  filter: blur(40px);
  pointer-events: none;
  z-index: 0;
}

body.page-index .footer-inner,
body.page-store .footer-inner,
body.page-news .footer-inner {
  position: relative;
  z-index: 1;
}

/* Brand mark in footer glows on hover */
body.page-index footer .brand-mark,
body.page-store footer .brand-mark,
body.page-news footer .brand-mark {
  animation:
    brandMarkShift 12s ease-in-out infinite,
    brandMarkGlow 4.5s ease-in-out infinite;
}

/* Social links — per-position color tints */
body.page-index .socials a:nth-child(1):hover,
body.page-store .socials a:nth-child(1):hover,
body.page-news  .socials a:nth-child(1):hover {
  border-color: rgba(255,99,176,0.32);
  box-shadow: 0 0 18px rgba(255,99,176,0.18);
  background: rgba(255,99,176,0.1);
}

body.page-index .socials a:nth-child(2):hover,
body.page-store .socials a:nth-child(2):hover,
body.page-news  .socials a:nth-child(2):hover {
  border-color: rgba(88,169,255,0.32);
  box-shadow: 0 0 18px rgba(88,169,255,0.18);
  background: rgba(88,169,255,0.1);
}

body.page-index .socials a:nth-child(3):hover,
body.page-store .socials a:nth-child(3):hover,
body.page-news  .socials a:nth-child(3):hover {
  border-color: rgba(255,216,107,0.28);
  box-shadow: 0 0 18px rgba(255,216,107,0.16);
  background: rgba(255,216,107,0.08);
}

body.page-index .socials a:nth-child(n+4):hover,
body.page-store .socials a:nth-child(n+4):hover,
body.page-news  .socials a:nth-child(n+4):hover {
  border-color: rgba(159,124,255,0.28);
  box-shadow: 0 0 18px rgba(159,124,255,0.16);
  background: rgba(159,124,255,0.08);
}

/* Footer text copyright — subtle reveal */
body.page-index .footer-inner > span,
body.page-store .footer-inner > span,
body.page-news .footer-inner > span {
  opacity: 0.72;
  transition: opacity var(--dur-base) var(--ease-out);
}

body.page-index .footer-inner:hover > span,
body.page-store .footer-inner:hover > span,
body.page-news .footer-inner:hover > span {
  opacity: 1;
}


/* ── 15. PORTFOLIO PAGE STYLES ── */
body.page-portfolio {
  margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(circle at top left, rgba(255,255,255,0.06), transparent 28%),
    radial-gradient(circle at 85% 20%, rgba(255,255,255,0.05), transparent 24%),
    linear-gradient(180deg, #0b0b0b 0%, #080808 100%);
  color: var(--text);
  line-height: 1.5;
  overflow-x: hidden;
}

body.page-portfolio a { color: inherit; text-decoration: none; }
body.page-portfolio img { max-width: 100%; display: block; }

body.page-portfolio .container {
  width: min(calc(100% - 32px), var(--max));
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

body.page-portfolio .topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  backdrop-filter: blur(18px);
  background: rgba(9, 9, 9, 0.68);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}

body.page-portfolio .nav {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

body.page-portfolio .brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-weight: 600;
  letter-spacing: 0.02em;
}

body.page-portfolio .brand-mark {
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--logo-gold) 0%, var(--logo-pink) 35%, var(--logo-violet) 68%, var(--logo-blue) 100%);
  background-size: 220% 220%;
  box-shadow:
    0 0 0 8px rgba(255,255,255,0.04),
    0 0 12px rgba(255,99,176,0.16),
    0 0 24px rgba(88,169,255,0.14);
  animation: brandMarkShift 12s ease-in-out infinite, brandMarkGlow 6s ease-in-out infinite;
}

body.page-portfolio section { padding: 44px 0 26px; }

body.page-portfolio .section-header {
  display: grid;
  gap: 12px;
  margin-bottom: 22px;
}

body.page-portfolio .section-kicker {
  color: #d1d1d1;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.78rem;
  background: linear-gradient(90deg, rgba(255,255,255,0.62), rgba(255,216,107,0.9) 30%, rgba(255,99,176,0.82) 60%, rgba(88,169,255,0.9) 80%, rgba(255,255,255,0.62));
  background-size: 280% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: kickerShimmer 8s linear infinite;
}

body.page-portfolio .section-title {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.5rem);
  letter-spacing: -0.05em;
  line-height: 0.98;
}

body.page-portfolio .section-copy {
  color: var(--muted);
  max-width: 700px;
  font-size: 1.02rem;
}

/* Portfolio hero */
body.page-portfolio .portfolio-hero {
  padding: 80px 0 32px;
  position: relative;
  isolation: isolate;
}

body.page-portfolio .portfolio-hero::before {
  content: "";
  position: absolute;
  width: 480px;
  height: 480px;
  border-radius: 999px;
  right: -40px;
  top: 0;
  background: radial-gradient(circle, rgba(255,99,176,0.08), rgba(88,169,255,0.06) 48%, transparent 72%);
  filter: blur(56px);
  pointer-events: none;
  z-index: 0;
  animation: auroraDrift 20s ease-in-out infinite;
}

body.page-portfolio .portfolio-hero h1 {
  margin: 0;
  font-size: clamp(3rem, 8vw, 7rem);
  line-height: 0.94;
  letter-spacing: -0.055em;
  position: relative;
  z-index: 1;
  opacity: 0;
  transform: translateY(20px);
  animation: heroFadeUp 0.9s cubic-bezier(0.2, 0.8, 0.2, 1) 0.1s forwards;
}

body.page-portfolio .portfolio-hero-copy {
  margin-top: 22px;
  max-width: 680px;
  color: var(--muted);
  font-size: clamp(1rem, 1.5vw, 1.18rem);
  position: relative;
  z-index: 1;
  opacity: 0;
  transform: translateY(20px);
  animation: heroFadeUp 0.9s cubic-bezier(0.2, 0.8, 0.2, 1) 0.26s forwards;
}

/* Portfolio work grid */
body.page-portfolio .work-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 18px;
  margin-top: 26px;
}

body.page-portfolio .work-card {
  grid-column: span 6;
  min-height: 420px;
  padding: 20px;
  position: relative;
  overflow: hidden;
  border-radius: 26px;
  border: 1px solid var(--line);
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.03));
  transition:
    transform var(--dur-base) var(--ease-out),
    border-color var(--dur-base) var(--ease-out),
    box-shadow var(--dur-base) var(--ease-out),
    background var(--dur-base) var(--ease-out);
  box-shadow: var(--shadow);
  will-change: transform;
}

body.page-portfolio .work-card.large { grid-column: span 8; min-height: 520px; }
body.page-portfolio .work-card.small { grid-column: span 4; }

body.page-portfolio .work-card:hover {
  transform: translateY(-6px);
  background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.04));
}

body.page-portfolio .work-media {
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg, #171717, #0d0d0d);
  transform: scale(1);
  transition: transform 900ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.page-portfolio .work-card:hover .work-media { transform: scale(1.04); }

body.page-portfolio .work-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 20%, rgba(0,0,0,0.65) 100%);
}

body.page-portfolio .work-content {
  position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 18px;
}

body.page-portfolio .work-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

body.page-portfolio .work-bottom h3 {
  margin: 0 0 8px;
  font-size: clamp(1.4rem, 2.3vw, 2.1rem);
  letter-spacing: -0.04em;
}

body.page-portfolio .work-bottom p {
  margin: 0;
  max-width: 520px;
  color: #dadada;
}

body.page-portfolio .chip {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.08);
  color: #ececec;
  font-size: 0.88rem;
}

body.page-portfolio .placeholder-note {
  font-size: 0.86rem;
  color: #d5d5d5;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.08);
}

body.page-portfolio .button,
body.page-portfolio button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 20px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.06);
  color: var(--text);
  font-size: 0.96rem;
  cursor: pointer;
  transition: transform var(--dur-base) var(--ease-out), background var(--dur-base), border-color var(--dur-base), box-shadow var(--dur-base);
  box-shadow: var(--shadow);
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

body.page-portfolio .button:hover { transform: translateY(-2px); background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.18); }

/* Shared animated gradient CTA - matches the top Start a project button */
a.button.primary.gradient-cta {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-color: rgba(255, 255, 255, 0.58);
  box-shadow:
    0 10px 30px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.74);
  transition:
    transform var(--transition, var(--dur-base) var(--ease-out)),
    border-color var(--transition, var(--dur-base) var(--ease-out)),
    box-shadow var(--transition, var(--dur-base) var(--ease-out)),
    color var(--transition, var(--dur-base) var(--ease-out)),
    background var(--transition, var(--dur-base) var(--ease-out));
}

a.button.primary.gradient-cta::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  background: linear-gradient(
    115deg,
    rgba(255, 216, 107, 0.98) 0%,
    rgba(255, 255, 255, 0.98) 25%,
    rgba(255, 99, 176, 0.26) 58%,
    rgba(88, 169, 255, 0.32) 100%
  );
  background-size: 220% 220%;
  animation: ctaGradientFlow 5.5s linear infinite;
  opacity: 0;
  transition: opacity 420ms ease, filter 420ms ease;
  filter: saturate(1.02) brightness(1);
  z-index: 0;
}

a.button.primary.gradient-cta:hover::before,
a.button.primary.gradient-cta:focus-visible::before {
  opacity: 1;
  filter: saturate(1.08) brightness(1.02);
}

a.button.primary.gradient-cta:hover,
a.button.primary.gradient-cta:focus-visible {
  color: #080808;
  border-color: rgba(255, 255, 255, 0.78);
  box-shadow:
    0 16px 34px rgba(0, 0, 0, 0.34),
    0 0 22px rgba(255, 99, 176, 0.12),
    0 0 24px rgba(88, 169, 255, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
  transform: translateY(-2px) scale(1.01);
}

a.button.primary.gradient-cta > * ,
a.button.primary.gradient-cta {
  z-index: 1;
}

body.page-portfolio .socials { display: flex; gap: 10px; flex-wrap: wrap; }
body.page-portfolio .socials a {
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.04);
  transition: transform var(--dur-base) var(--ease-out), background var(--dur-base), box-shadow var(--dur-base), border-color var(--dur-base);
}
body.page-portfolio .socials a:hover { transform: translateY(-2px); background: rgba(255,255,255,0.08); }

body.page-portfolio .reveal {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity 800ms var(--ease-out), transform 800ms var(--ease-out);
}
body.page-portfolio .reveal.visible { opacity: 1; transform: translateY(0); }

body.page-portfolio footer { padding: 26px 0 40px; }
body.page-portfolio .footer-inner {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,0.08);
  color: var(--muted);
  font-size: 0.94rem;
}

@media (max-width: 1100px) {
  body.page-portfolio .work-card.large,
  body.page-portfolio .work-card.small,
  body.page-portfolio .work-card { grid-column: span 12; }
}

@media (prefers-reduced-motion: reduce) {
  body.page-portfolio .portfolio-hero h1,
  body.page-portfolio .portfolio-hero-copy { animation: none !important; opacity: 1 !important; transform: none !important; }
  body.page-portfolio .portfolio-hero::before { animation: none; }
  body.page-portfolio .brand-mark { animation: none; }
  body.page-portfolio .section-kicker { animation: none; background: none; -webkit-text-fill-color: #d1d1d1; }
}


/* ── 16. COURSES PAGE — CARD HOVER GLOW ── */
body.page-courses .store-card {
  transition:
    transform var(--dur-base) var(--ease-out),
    border-color var(--dur-base) var(--ease-out),
    box-shadow var(--dur-base) var(--ease-out),
    background var(--dur-base) var(--ease-out);
  will-change: transform;
}

/* Course card colors by position */
body.page-courses .courses-grid .store-card:nth-child(1) { --course-glow: var(--glow-violet); --course-border: rgba(159,124,255,0.32); }
body.page-courses .courses-grid .store-card:nth-child(2) { --course-glow: var(--glow-blue);   --course-border: rgba(88,169,255,0.32); }
body.page-courses .courses-grid .store-card:nth-child(3) { --course-glow: var(--glow-pink);   --course-border: rgba(255,99,176,0.3); }
body.page-courses .courses-grid .store-card:nth-child(4) { --course-glow: var(--glow-gold);   --course-border: rgba(255,216,107,0.28); }

body.page-courses .courses-grid .store-card:hover {
  transform: translateY(-10px) scale(1.01);
  border-color: var(--course-border, rgba(255,255,255,0.22));
  box-shadow:
    0 24px 58px rgba(0,0,0,0.42),
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 0 28px var(--course-glow, rgba(255,255,255,0.08));
}

/* Course tag hover glow */
body.page-courses .course-tag {
  transition: border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);
}

body.page-courses .course-tag:hover {
  border-color: rgba(159,124,255,0.28);
  background: rgba(159,124,255,0.1);
  box-shadow: 0 0 14px rgba(159,124,255,0.14);
}

/* Courses hero aurora */
body.page-courses .store-hero {
  position: relative;
  isolation: isolate;
}

body.page-courses .store-hero::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  border-radius: 999px;
  right: 5%;
  top: 10%;
  background: radial-gradient(circle, rgba(159,124,255,0.1), rgba(88,169,255,0.07) 48%, transparent 72%);
  filter: blur(56px);
  pointer-events: none;
  z-index: 0;
  animation: auroraDrift 18s ease-in-out infinite;
}

@media (prefers-reduced-motion: reduce) {
  body.page-courses .store-hero::before { animation: none; }
  body.page-courses .section-kicker { animation: none; background: none; -webkit-text-fill-color: #d1d1d1; }
}


/* ── 17. NEWS CARDS — ENHANCED HOVER ── */
body.page-store .news-card:hover,
body.page-news .news-card:hover {
  box-shadow:
    0 24px 56px rgba(0,0,0,0.46),
    0 0 28px rgba(88,169,255,0.12),
    inset 0 1px 0 rgba(255,255,255,0.08);
}

body.page-store .news-card.release-item:hover,
body.page-news .news-card.release-item:hover {
  box-shadow:
    0 24px 56px rgba(0,0,0,0.46),
    0 0 28px rgba(255,99,176,0.14),
    inset 0 1px 0 rgba(255,255,255,0.08);
}


/* ── 18. STORE CARDS — COLORED GLOW HOVER ── */
body.page-store .store-card:nth-child(1):hover,
body.page-news .store-card:nth-child(1):hover {
  box-shadow:
    0 24px 58px rgba(0,0,0,0.42),
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 0 24px rgba(88,169,255,0.18);
}

body.page-store .store-card:nth-child(2):hover,
body.page-news .store-card:nth-child(2):hover {
  box-shadow:
    0 24px 58px rgba(0,0,0,0.42),
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 0 24px rgba(255,99,176,0.18);
}

body.page-store .store-card:nth-child(3):hover,
body.page-news .store-card:nth-child(3):hover {
  box-shadow:
    0 24px 58px rgba(0,0,0,0.42),
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 0 24px rgba(255,216,107,0.18);
}


/* ── 19. PRICING FAQ — TRIGGER HOVER GLOW ── */
body.page-pricing .pricing-faq-trigger:hover {
  color: rgba(255, 240, 215, 0.94);
}

body.page-pricing .pricing-faq-item:not(.is-open):hover {
  transform: translateY(-2px);
  border-color: rgba(255,255,255,0.12);
  box-shadow:
    var(--shadow),
    0 0 18px rgba(255,216,107,0.06);
}


/* ── 20. GLOBAL KEYBOARD FOCUS STYLES (accessibility) ── */
:focus-visible {
  outline: 2px solid rgba(88,169,255,0.72);
  outline-offset: 3px;
  border-radius: 4px;
}

/* Override for elements that already have custom focus styles */
body.page-index input:focus-visible,
body.page-index textarea:focus-visible,
body.page-store input:focus-visible,
body.page-store textarea:focus-visible,
body.page-news input:focus-visible,
body.page-news textarea:focus-visible,
button:focus-visible,
a:focus-visible {
  outline: none;
}

a:focus-visible,
button:focus-visible {
  box-shadow:
    0 0 0 2px rgba(88,169,255,0.24),
    0 0 0 5px rgba(88,169,255,0.08);
  border-radius: 4px;
}


/* ── 21. REDUCED MOTION MASTER OVERRIDE ── */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  /* Restore visibility for elements hidden by scroll-reveal */
  .scroll-reveal-item {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}

/* ── END OF MOTION ENHANCEMENTS ── */


/* Portfolio image placeholders for homepage + portfolio page */
body.page-index .work-grid .work-card:nth-child(1) .work-media {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('portfolio/1.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-index .work-grid .work-card:nth-child(2) .work-media {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('portfolio/2.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-index .work-grid .work-card:nth-child(3) .work-media {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('portfolio/3.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-index .work-grid .work-card:nth-child(4) .work-media {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('portfolio/4.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-portfolio .portfolio-work-grid .work-card:nth-child(1) .work-media {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('portfolio/1.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-portfolio .portfolio-work-grid .work-card:nth-child(2) .work-media {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('portfolio/2.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-portfolio .portfolio-work-grid .work-card:nth-child(3) .work-media {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('portfolio/3.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-portfolio .portfolio-work-grid .work-card:nth-child(4) .work-media {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('portfolio/4.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-portfolio .portfolio-work-grid .work-card:nth-child(5) .work-media {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('portfolio/5.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-portfolio .portfolio-work-grid .work-card:nth-child(6) .work-media {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('portfolio/6.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}


/* Store image placeholders */
body.page-store .store-card:nth-child(1) .store-art {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('Store/previewimage.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-store .store-card:nth-child(2) .store-art {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('Store/White_Clothes.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-store .store-card:nth-child(3) .store-art {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.02)
    ),
    url('Store/Fire.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.page-store .store-card .store-art::after {
  display: none;
}
