:root {
    color-scheme: dark;
    --ink: #f7f1e8;
    --muted: rgba(247, 241, 232, 0.7);
    --line: rgba(247, 241, 232, 0.17);
    --dark: #07080d;
    --panel: rgba(14, 16, 24, 0.62);
    --coral: #ff6b5f;
    --mint: #76f7c8;
    --gold: #ffd166;
    --blue: #7db7ff;
    --violet: #b38cff;
    --ease: cubic-bezier(0.16, 1, 0.3, 1);
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    background: var(--dark);
}

body {
    min-width: 320px;
    margin: 0;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: var(--ink);
    background:
        radial-gradient(circle at 80% 10%, rgba(255, 107, 95, 0.18), transparent 28rem),
        radial-gradient(circle at 12% 42%, rgba(118, 247, 200, 0.13), transparent 24rem),
        #07080d;
    overflow-x: hidden;
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -3;
    pointer-events: none;
    background-image: linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
    background-size: 52px 52px;
    mask-image: linear-gradient(to bottom, transparent, black 20%, black 80%, transparent);
}

a {
    color: inherit;
}

#stage {
    position: fixed;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 20;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.5rem clamp(1.2rem, 6vw, 6rem);
}

.brand {
    display: grid;
    width: 2.75rem;
    aspect-ratio: 1;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 50%;
    background: rgba(7, 8, 13, 0.52);
    text-decoration: none;
    font-weight: 800;
    backdrop-filter: blur(18px);
}

nav {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: rgba(7, 8, 13, 0.46);
    backdrop-filter: blur(18px);
}

nav a {
    padding: 0.58rem 0.85rem;
    border-radius: 999px;
    color: var(--muted);
    font-size: 0.84rem;
    font-weight: 700;
    text-decoration: none;
    transition: color 220ms ease, background 220ms ease;
}

nav a:hover,
nav a:focus-visible {
    color: var(--ink);
    background: rgba(255, 255, 255, 0.11);
}

.scene {
    position: relative;
    min-height: 120vh;
    display: grid;
    align-items: center;
    padding: 8rem clamp(1.2rem, 6vw, 6rem);
}

.hero {
    min-height: 150vh;
    grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.42fr);
    gap: clamp(2rem, 6vw, 6rem);
    align-items: start;
    padding-top: 20vh;
}

.scene-copy {
    min-width: 0;
    max-width: 920px;
}

.scene-copy.compact {
    max-width: 670px;
}

.eyebrow {
    margin: 0 0 1rem;
    color: var(--mint);
    font-size: clamp(0.78rem, 1.4vw, 0.94rem);
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

h1,
h2,
h3,
p {
    margin-top: 0;
}

h1,
h2 {
    max-width: 11ch;
    margin-bottom: 1.25rem;
    font-size: clamp(4.5rem, 16vw, 13.5rem);
    line-height: 0.82;
    letter-spacing: 0;
}

h2 {
    max-width: 12ch;
    font-size: clamp(3.2rem, 9vw, 8rem);
}

.lead,
.scene-copy p:not(.eyebrow) {
    max-width: 58ch;
    color: var(--muted);
    font-size: clamp(1.05rem, 2vw, 1.35rem);
    line-height: 1.65;
}

.hero-monogram {
    position: sticky;
    top: 20vh;
    justify-self: end;
    width: min(36vw, 29rem);
    aspect-ratio: 1;
    margin-top: 2.5rem;
    border: 1px solid var(--line);
    border-radius: 8px;
    background:
        radial-gradient(circle at 28% 20%, rgba(118, 247, 200, 0.2), transparent 30%),
        radial-gradient(circle at 76% 72%, rgba(255, 107, 95, 0.2), transparent 34%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.14), transparent 38%),
        rgba(7, 8, 13, 0.42);
    box-shadow: 0 2rem 7rem rgba(0, 0, 0, 0.38);
    transform: perspective(950px) rotateX(12deg) rotateY(-20deg) rotateZ(calc(var(--scroll, 0) * 0.006deg)) translateY(calc(var(--scroll, 0) * -0.045px));
    transform-style: preserve-3d;
    backdrop-filter: blur(20px);
    overflow: hidden;
}

.hero-monogram::before,
.hero-monogram::after {
    content: "";
    position: absolute;
    inset: 9%;
    border: 1px solid rgba(247, 241, 232, 0.13);
    border-radius: 8px;
    transform: translateZ(1.4rem) rotate(calc(8deg + var(--scroll, 0) * -0.01deg));
}

.hero-monogram::after {
    inset: 22%;
    border-color: rgba(118, 247, 200, 0.35);
    transform: translateZ(3.5rem) rotate(calc(-18deg + var(--scroll, 0) * 0.018deg));
}

.hero-monogram span {
    position: absolute;
    display: block;
}

.monogram-glow {
    inset: 18%;
    border-radius: 50%;
    background:
        radial-gradient(circle, rgba(247, 241, 232, 0.16), transparent 56%),
        conic-gradient(from calc(var(--scroll, 0) * 0.08deg), rgba(118, 247, 200, 0.2), rgba(255, 107, 95, 0.12), rgba(255, 209, 102, 0.16), rgba(118, 247, 200, 0.2));
    filter: blur(10px);
    opacity: 0.8;
    transform: translateZ(0.5rem) rotate(calc(var(--scroll, 0) * 0.02deg));
}

.monogram-ring {
    inset: 14%;
    border: 1px solid rgba(247, 241, 232, 0.24);
    border-radius: 50%;
    transform: translateZ(2.4rem) rotate(calc(16deg + var(--scroll, 0) * 0.025deg));
}

.monogram-ring::before,
.monogram-ring::after {
    content: "";
    position: absolute;
    width: 0.64rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--mint);
    box-shadow: 0 0 2rem rgba(118, 247, 200, 0.65);
}

.monogram-ring::before {
    top: 5%;
    left: 24%;
}

.monogram-ring::after {
    right: 7%;
    bottom: 25%;
    background: var(--coral);
    box-shadow: 0 0 2rem rgba(255, 107, 95, 0.58);
}

.monogram-ring-offset {
    inset: 25%;
    border-color: rgba(255, 209, 102, 0.28);
    border-radius: 8px;
    transform: translateZ(3rem) rotate(calc(-22deg + var(--scroll, 0) * -0.036deg));
}

.monogram-ring-offset::before {
    top: auto;
    left: 13%;
    bottom: 7%;
    background: var(--gold);
    box-shadow: 0 0 2rem rgba(255, 209, 102, 0.54);
}

.monogram-ring-offset::after {
    display: none;
}

.monogram-o,
.monogram-j {
    inset: 0;
    transform-style: preserve-3d;
}

.monogram-o {
    transform: translateZ(5.2rem) translateX(calc(var(--scroll, 0) * -0.018px)) rotate(calc(var(--scroll, 0) * -0.012deg));
}

.monogram-j {
    transform: translateZ(6.2rem) translateX(calc(var(--scroll, 0) * 0.016px)) rotate(calc(4deg + var(--scroll, 0) * 0.014deg));
}

.monogram-o span,
.monogram-j span {
    border: 1px solid rgba(247, 241, 232, 0.36);
    background: linear-gradient(135deg, rgba(247, 241, 232, 0.22), rgba(247, 241, 232, 0.06));
    box-shadow:
        0 1.6rem 3rem rgba(0, 0, 0, 0.28),
        inset 0 0 1.6rem rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(8px);
}

.monogram-o span:nth-child(1),
.monogram-o span:nth-child(2) {
    left: 18%;
    width: 34%;
    height: 13%;
    border-radius: 999px;
}

.monogram-o span:nth-child(1) {
    top: 25%;
    border-color: rgba(118, 247, 200, 0.48);
    background: linear-gradient(90deg, rgba(118, 247, 200, 0.56), rgba(247, 241, 232, 0.12));
}

.monogram-o span:nth-child(2) {
    bottom: 24%;
    border-color: rgba(255, 209, 102, 0.42);
}

.monogram-o span:nth-child(3),
.monogram-o span:nth-child(4) {
    top: 31%;
    width: 12%;
    height: 38%;
    border-radius: 999px;
}

.monogram-o span:nth-child(3) {
    left: 15%;
    background: linear-gradient(180deg, rgba(118, 247, 200, 0.34), rgba(247, 241, 232, 0.08));
}

.monogram-o span:nth-child(4) {
    left: 42%;
    background: linear-gradient(180deg, rgba(255, 209, 102, 0.24), rgba(247, 241, 232, 0.08));
}

.monogram-j span:nth-child(1) {
    top: 25%;
    right: 22%;
    width: 28%;
    height: 13%;
    border-radius: 999px;
    border-color: rgba(255, 107, 95, 0.44);
    background: linear-gradient(90deg, rgba(247, 241, 232, 0.12), rgba(255, 107, 95, 0.45));
}

.monogram-j span:nth-child(2) {
    top: 31%;
    right: 29%;
    width: 12%;
    height: 41%;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 107, 95, 0.32), rgba(247, 241, 232, 0.08));
}

.monogram-j span:nth-child(3) {
    right: 36%;
    bottom: 22%;
    width: 27%;
    height: 13%;
    border-radius: 0 0 999px 999px;
    border-color: rgba(125, 183, 255, 0.42);
    background: linear-gradient(90deg, rgba(125, 183, 255, 0.38), rgba(247, 241, 232, 0.1));
}

.monogram-mark {
    width: 0.5rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--ink);
    opacity: 0.78;
    transform: translateZ(7rem);
}

.mark-a {
    top: 18%;
    left: 15%;
    box-shadow: 0 0 1.4rem rgba(247, 241, 232, 0.48);
}

.mark-b {
    top: 56%;
    right: 14%;
    background: var(--mint);
    box-shadow: 0 0 1.5rem rgba(118, 247, 200, 0.62);
}

.mark-c {
    left: 49%;
    bottom: 12%;
    background: var(--coral);
    box-shadow: 0 0 1.5rem rgba(255, 107, 95, 0.58);
}

.split-scene {
    grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.48fr);
    gap: clamp(2rem, 7vw, 7rem);
}

.signal-stack {
    display: grid;
    gap: 1rem;
    transform: translateY(calc((var(--scroll, 0) - 700) * -0.025px));
}

.signal-stack article {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-height: 7rem;
    padding: 1.3rem;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    backdrop-filter: blur(18px);
}

.signal-stack span {
    color: var(--gold);
    font-weight: 900;
}

.signal-stack strong {
    max-width: 12ch;
    font-size: clamp(1.4rem, 3vw, 2.35rem);
    line-height: 0.96;
    text-align: right;
}

.projects-scene {
    align-content: center;
    overflow: visible;
}

.section-kicker {
    max-width: 860px;
    margin-bottom: 3rem;
}

.project-track {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1rem, 2vw, 1.5rem);
    width: 100%;
    max-width: 112rem;
}

.project-card {
    min-height: clamp(28rem, 42vw, 36rem);
    display: grid;
    align-content: space-between;
    gap: 1.5rem;
    padding: 1rem;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: rgba(247, 241, 232, 0.08);
    backdrop-filter: blur(18px);
    overflow: hidden;
    color: inherit;
    text-decoration: none;
    transition: transform 360ms var(--ease), background 220ms ease, border-color 220ms ease;
}

.project-card:hover,
.project-card:focus-within {
    border-color: rgba(247, 241, 232, 0.34);
    background: rgba(247, 241, 232, 0.11);
    transform: translateY(-0.45rem);
}

.project-card:hover .project-visual span,
.project-card:focus-within .project-visual span {
    transform: translateY(-0.35rem) rotate(var(--tilt, 0deg));
}

.project-card p {
    margin-bottom: 0.4rem;
    color: var(--muted);
    font-weight: 800;
}

.project-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.6rem;
}

.project-meta p {
    margin: 0;
}

.project-status {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 1.9rem;
    padding: 0.34rem 0.62rem;
    border: 1px solid var(--line);
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.project-status.is-progress {
    color: #160f02;
    background: var(--gold);
    border-color: transparent;
}

.project-card h3 {
    min-height: 1.85em;
    margin-bottom: 1rem;
    font-size: clamp(1.75rem, 3.3vw, 4.5rem);
    line-height: 0.92;
}

.project-description {
    min-height: 5.3rem;
    margin-bottom: 1.1rem;
    color: var(--muted);
    font-size: clamp(0.9rem, 1.1vw, 0.98rem);
    font-weight: 500;
    line-height: 1.55;
}

.project-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-bottom: 1.15rem;
}

.project-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 1.8rem;
    padding: 0.32rem 0.55rem;
    border: 1px solid rgba(247, 241, 232, 0.12);
    border-radius: 999px;
    color: rgba(247, 241, 232, 0.76);
    background: rgba(247, 241, 232, 0.06);
    font-size: 0.72rem;
    font-weight: 800;
}

.project-visual {
    position: relative;
    min-height: 19rem;
    border-radius: 7px;
    background: #10131d;
    overflow: hidden;
}

.project-visual span {
    position: absolute;
    display: block;
}

.project-visual img {
    position: absolute;
    display: block;
    max-width: 100%;
    height: auto;
    user-select: none;
    pointer-events: none;
}

.visual-a {
    background: linear-gradient(135deg, #2b165e, #151229 58%, #181b26);
}

.visual-a span {
    width: 24%;
    aspect-ratio: 1;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    --tilt: 12deg;
    transform: rotate(var(--tilt));
    box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.24);
    transition: transform 360ms var(--ease);
}

.visual-a span:nth-child(1) { left: 16%; top: 18%; background: #f2d838; }
.visual-a span:nth-child(2) { left: 39%; top: 18%; background: #6d43d8; --tilt: -9deg; }
.visual-a span:nth-child(3) { left: 62%; top: 18%; background: #f2d838; --tilt: 18deg; }
.visual-a span:nth-child(4) { left: 16%; top: 44%; background: #6d43d8; --tilt: -14deg; }
.visual-a span:nth-child(5) { left: 39%; top: 44%; background: #f2d838; --tilt: 7deg; }
.visual-a span:nth-child(6) { left: 62%; top: 44%; background: #6d43d8; --tilt: -18deg; }

.visual-b {
    background: linear-gradient(145deg, #fbf3f3, #f5e6e6 48%, #d4a0a0);
}

.visual-b img {
    width: 45%;
    left: 50%;
    top: 46%;
    z-index: 2;
    filter: drop-shadow(0 1.2rem 2rem rgba(138, 79, 79, 0.24));
    transform: translate(-50%, -50%);
}

.visual-b span {
    width: 18%;
    aspect-ratio: 1;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.72);
    box-shadow: 0 1rem 2.2rem rgba(138, 79, 79, 0.16);
    transition: transform 360ms var(--ease);
}

.visual-b span:nth-child(2) { left: 16%; top: 18%; background: #ffd93d; }
.visual-b span:nth-child(3) { right: 13%; top: 28%; background: #6bcb77; }
.visual-b span:nth-child(4) { left: 38%; bottom: 16%; background: #4d96ff; }

.visual-c {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: clamp(0.75rem, 2vw, 1.25rem);
    padding: clamp(1rem, 4vw, 2rem);
    background: linear-gradient(180deg, #1a1a2e 0%, #0b0b0f 100%);
    border: 1px solid rgba(0, 175, 240, 0.45);
    box-shadow: inset 0 0 3rem rgba(0, 175, 240, 0.09);
}

.visual-c img {
    position: static;
    width: clamp(5.5rem, 34%, 9rem);
    height: auto;
    transform: scale(1.2);
    filter: drop-shadow(0 1rem 2rem rgba(0, 175, 240, 0.18));
}

.visual-c-wordmark {
    margin: 0;
    font-size: clamp(1.6rem, 4.2vw, 2.5rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1;
    white-space: nowrap;
}

.visual-c-wordmark span {
    position: static;
    display: inline;
}

.visual-c-wordmark span:nth-child(1) { color: #f0f0f5; }
.visual-c-wordmark span:nth-child(2) { color: #00aff0; }
.visual-c-wordmark span:nth-child(3) { color: #8e8ea0; font-weight: 400; }

.visual-d {
    background: linear-gradient(145deg, #faf7f0, #ded7c5);
}

.visual-d span {
    position: absolute;
    display: block;
    transition: transform 360ms var(--ease);
}

.visual-d span:nth-child(1) {
    inset: 14% 12% 30%;
    border-radius: 8px;
    background:
        linear-gradient(rgba(74, 103, 65, 0.2) 1px, transparent 1px),
        linear-gradient(90deg, rgba(74, 103, 65, 0.2) 1px, transparent 1px),
        linear-gradient(135deg, #9fb889, #4a6741);
    background-size: 2rem 2rem, 2rem 2rem, auto;
    box-shadow: 0 1.4rem 3rem rgba(58, 83, 51, 0.2);
}

.visual-d span:nth-child(2) {
    left: 18%;
    right: 18%;
    top: 45%;
    height: 3px;
    background: #faf7f0;
    --tilt: -13deg;
    transform: rotate(var(--tilt));
}

.visual-d span:nth-child(3) {
    left: 15%;
    bottom: 13%;
    width: 26%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #4a6741;
    box-shadow:
        4.5rem -0.3rem 0 -0.2rem #c9a659,
        8.5rem -1.2rem 0 -0.45rem #4a6741;
}

.visual-d::after {
    content: "";
    position: absolute;
    right: 16%;
    bottom: 16%;
    width: 2.2rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #4a6741;
    box-shadow:
        -0.9rem -0.8rem 0 -0.42rem #4a6741,
        0 -1.1rem 0 -0.42rem #4a6741,
        0.9rem -0.8rem 0 -0.42rem #4a6741,
        -1.2rem 0.05rem 0 -0.48rem #4a6741;
}

@media (max-width: 1180px) {
    .project-description {
        min-height: auto;
    }
}

.socials-scene {
    min-height: 110vh;
    grid-template-columns: minmax(0, 0.8fr) minmax(17rem, 0.7fr);
    gap: clamp(2rem, 7vw, 8rem);
}

.social-grid {
    display: grid;
    gap: 0;
    padding: 0.5rem;
    border: 1px solid var(--line);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(247, 241, 232, 0.08), transparent 38%),
        rgba(7, 8, 13, 0.56);
    box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.26);
    backdrop-filter: blur(18px);
}

.social-grid a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-height: 4.75rem;
    padding: 1rem 1.05rem;
    border-radius: 6px;
    text-decoration: none;
    transition: background 220ms ease, color 220ms ease;
}

.social-grid a + a {
    border-top: 1px solid rgba(247, 241, 232, 0.11);
}

.social-grid a::after {
    content: "";
    flex: 0 0 auto;
    width: 0.52rem;
    aspect-ratio: 1;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    opacity: 0.42;
    transform: rotate(45deg);
    transition: opacity 220ms ease, transform 260ms var(--ease);
}

.social-grid a:hover,
.social-grid a:focus-visible {
    background: rgba(247, 241, 232, 0.09);
}

.social-grid a:hover::after,
.social-grid a:focus-visible::after {
    opacity: 0.86;
    transform: translateX(0.2rem) rotate(45deg);
}

.social-grid span {
    color: var(--muted);
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.social-grid strong {
    margin-left: auto;
    font-size: clamp(1rem, 1.55vw, 1.45rem);
    text-align: right;
}

footer {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.5rem clamp(1.2rem, 6vw, 6rem) 2rem;
    color: var(--muted);
    font-size: 0.9rem;
}

@media (max-width: 1180px) {
    .project-track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

[data-reveal] {
    opacity: 0;
    transform: translateY(2.5rem) scale(0.98);
    transition: opacity 700ms ease, transform 900ms var(--ease);
}

[data-reveal].is-visible {
    opacity: 1;
    transform: none;
}

@media (max-width: 820px) {
    nav {
        max-width: calc(100vw - 5.4rem);
        overflow-x: auto;
    }

    .scene,
    .split-scene,
    .socials-scene {
        min-height: auto;
        grid-template-columns: 1fr;
        padding-top: 7rem;
        padding-bottom: 7rem;
    }

    .hero {
        min-height: 118vh;
        grid-template-columns: 1fr;
        padding-top: 9rem;
    }

    .hero-monogram {
        position: relative;
        top: auto;
        justify-self: start;
        width: min(74vw, 24rem);
        margin-top: 2rem;
    }

    .project-track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .project-card {
        min-height: 31rem;
    }

    .project-card h3 {
        min-height: auto;
    }

    .social-grid {
        max-width: 42rem;
    }
}

@media (max-width: 520px) {
    .site-header {
        padding: 0.85rem;
    }

    nav {
        max-width: calc(100vw - 4.5rem);
    }

    nav a {
        padding: 0.52rem 0.7rem;
    }

    h1 {
        font-size: clamp(3.7rem, 21vw, 6rem);
    }

    h2 {
        font-size: clamp(3rem, 18vw, 5.8rem);
    }

    .signal-stack article,
    .social-grid a {
        align-items: flex-start;
        flex-direction: column;
    }

    .social-grid a {
        gap: 0.35rem;
        padding: 0.95rem 2.5rem 0.95rem 0.95rem;
    }

    .social-grid a::after {
        position: absolute;
        right: 1rem;
        top: 1.2rem;
    }

    .project-track {
        grid-template-columns: 1fr;
    }

    .project-meta {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.55rem;
    }

    .signal-stack strong,
    .social-grid strong {
        margin-left: 0;
        text-align: left;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }

    .project-track,
    .social-grid a,
    .hero-monogram,
    .hero-monogram *,
    .signal-stack {
        transform: none !important;
    }
}
