/* Monolith — vast space, one accent line, wall-sized numerals. */
:root { --t-font-display: "Inter Tight", "Inter", system-ui, sans-serif; --t-font-body: "Inter", system-ui, sans-serif; --t-max: 1240px; --t-gutter: clamp(20px, 6vw, 96px); --t-radius: 0; --t-radius-sm: 0; --t-radius-pill: 0; --t-shadow: none; }
body { position: relative; }
/* the single accent line */
body::before { content: ""; position: fixed; inset-block: 0; inset-inline-start: calc(var(--t-gutter) - 1px); width: 2px; background: var(--t-accent); opacity: .9; z-index: 0; pointer-events: none; }
.t-page { position: relative; z-index: 1; }

.t-hero--monolith .t-hero__inner { grid-template-columns: 1fr; gap: 28px; padding-block: clamp(64px, 14vw, 180px) clamp(32px, 6vw, 80px); padding-inline-start: clamp(20px, 4vw, 56px); }
.t-hero--monolith .t-hero__media { display: none; }
.t-hero--monolith .t-eyebrow { font-weight: 500; letter-spacing: .3em; }
.t-hero--monolith .t-name { font-weight: 200; font-size: clamp(3rem, 10vw, 8rem); line-height: .95; letter-spacing: -0.05em; }
.t-hero--monolith .t-headline { font-size: clamp(1.2rem, 2.4vw, 1.8rem); font-weight: 400; max-width: 34ch; margin-block-start: 16px; }
.t-hero--monolith .t-stats { gap: 48px 96px; margin-block-start: 48px; }
.t-hero--monolith .t-stats strong { font-weight: 200; font-size: clamp(3rem, 8vw, 6.5rem); letter-spacing: -0.05em; }
.t-hero--monolith .t-stats span { letter-spacing: .2em; text-transform: uppercase; }
.btn { --bs-btn-border-radius: 0; --bs-btn-font-weight: 500; --bs-btn-padding-x: 1.6rem; letter-spacing: .12em; text-transform: uppercase; font-size: var(--t-size-0); }
.t-link { border-radius: 0; background: transparent; }

/* sections: a wall-sized faded index behind each title (decorative, hidden from assistive tech) */
.t-main { counter-reset: mono; gap: clamp(64px, 12vw, 160px); }
.t-section { counter-increment: mono; position: relative; padding-inline-start: clamp(20px, 4vw, 56px); }
.t-section::before { content: counter(mono, decimal-leading-zero) / ""; position: absolute; inset-inline-start: clamp(20px, 4vw, 56px); top: -0.3em; font-family: var(--t-font-display); font-weight: 200; font-size: clamp(5rem, 16vw, 14rem); line-height: 1; letter-spacing: -0.06em; color: color-mix(in srgb, var(--t-text) 7%, transparent); pointer-events: none; z-index: -1; }
.t-section__title { font-weight: 400; font-size: var(--t-size-1); text-transform: uppercase; letter-spacing: .3em; margin-block-end: 32px; }
.t-section--summary .t-section__title { display: none; }
.t-summary { font-size: clamp(1.6rem, 3.6vw, 3rem); font-weight: 200; letter-spacing: -0.03em; line-height: 1.15; max-width: 30ch; }

/* projects as a horizontal rail on desktop */
.t-cards--projects { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; padding-block-end: 12px; scrollbar-width: thin; }
.t-cards--projects .card { flex: 0 0 min(86%, 420px); scroll-snap-align: start; border: 0; background: transparent; }
.t-cards--projects .card-body { padding-inline: 0; }
.t-card__media { border: 1px solid var(--t-line); }
.t-card .t-item__title { font-weight: 400; font-size: var(--t-size-4); letter-spacing: -0.02em; }
.t-timeline { gap: 32px; }
.t-timeline__when { letter-spacing: .1em; text-transform: uppercase; font-size: var(--t-size-0); }
.t-item__title { font-weight: 400; font-size: var(--t-size-3); letter-spacing: -0.01em; }
.t-numbered__item::before { font-weight: 200; font-size: var(--t-size-5); }
.t-chip { border-radius: 0; background: transparent; }
.t-quote { border: 0; background: transparent; padding: 0; }
.t-quote blockquote { font-family: var(--t-font-display); font-weight: 200; font-size: clamp(1.6rem, 3vw, 2.6rem); letter-spacing: -0.02em; line-height: 1.2; }
.t-quote__mark { display: none; }
.t-list li { padding-block: 14px; }
.t-footer { border: 0; padding-inline-start: clamp(20px, 4vw, 56px); }
