/* Magazine — asymmetric twelve-column spread; Didone display. */
:root { --t-font-display: "Bodoni Moda", "Didot", Georgia, serif; --t-font-body: "Inter", system-ui, sans-serif; --t-max: 1280px; --t-radius: 0; --t-radius-sm: 0; --t-shadow: none; }

/* the spread: cover bleeds to the right, the name overlaps it */
.t-hero--spread { width: min(100% - 2 * var(--t-gutter), var(--t-max)); margin-inline: auto; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 0 24px; padding-block-start: clamp(20px, 4vw, 48px); }
.t-hero--spread .t-cover { grid-column: 5 / -1; grid-row: 1; margin-inline-end: calc(-1 * var(--t-gutter)); aspect-ratio: 16 / 9; max-height: 560px; }
.t-hero--spread .t-hero__inner { grid-column: 1 / 9; grid-row: 1; align-self: end; position: relative; z-index: 1; width: auto; grid-template-columns: 1fr; gap: 10px; padding-block: 0 24px; }
.t-hero--spread .t-hero__media { margin: 0; }
.t-hero--spread .t-photo { width: 96px; border-radius: 50%; box-shadow: 0 0 0 4px var(--t-bg); }
.t-hero--spread .t-eyebrow { letter-spacing: .3em; }
/* the text block sits on a paper panel that overlaps the cover (block elements: inline name/headline ran into one line and clipped the ascenders) */
.t-hero--spread .t-hero__text { background: var(--t-bg); width: fit-content; max-width: 100%; padding: 12px 28px 0 0; }
.t-hero--spread .t-name { font-size: clamp(3rem, 10vw, 8rem); font-weight: 400; line-height: .95; letter-spacing: -0.02em; padding-block-start: .06em; }
.t-hero--spread .t-headline { font-family: var(--t-font-display); font-style: italic; font-size: clamp(1.3rem, 2.6vw, 2rem); margin-block-start: 8px; max-width: 30ch; }
.t-hero--spread .t-tagline { max-width: 40ch; }
.t-hero--spread .t-hero__inner > .t-stats { grid-column: 1; grid-row: auto; order: 10; display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 0; border-block: 1px solid var(--t-text); margin-block-start: 16px; }
.t-hero--spread .t-stats li { padding: 18px 20px 18px 0; border-inline-end: 1px solid var(--t-line); }
.t-hero--spread .t-stats li:last-child { border: 0; }
.t-hero--spread .t-stats strong { font-size: clamp(3rem, 6vw, 5rem); font-weight: 400; letter-spacing: -0.03em; }
.t-hero--spread .t-stats span { text-transform: uppercase; letter-spacing: .16em; }
@media (max-width: 899px) { .t-hero--spread .t-cover { grid-column: 1 / -1; margin-inline: calc(-1 * var(--t-gutter)); } .t-hero--spread .t-hero__inner { grid-column: 1 / -1; grid-row: 2; padding-block-start: 16px; } }
.btn { --bs-btn-border-radius: 0; --bs-btn-font-weight: 600; text-transform: uppercase; letter-spacing: .1em; font-size: var(--t-size-0); }
.t-link { border-radius: 0; }

/* sections shift across the grid */
.t-layout { width: min(100% - 2 * var(--t-gutter), var(--t-max)); }
.t-main { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: clamp(40px, 6vw, 80px) 24px; }
.t-section { grid-column: 1 / -1; }
@media (min-width: 900px) {
  .t-section--summary { grid-column: 2 / 9; }
  .t-section--about { grid-column: 5 / 12; }
  .t-section--projects, .t-section--portfolio, .t-section--contact { grid-column: 1 / -1; }
  .t-section--experience { grid-column: 1 / 8; }
  .t-section--achievements, .t-section--awards, .t-section--publications, .t-section--certifications, .t-section--languages { grid-column: 3 / 11; }
  .t-section--testimonials { grid-column: 2 / 12; }
  .t-section--skills, .t-section--interests { grid-column: 6 / -1; }
  .t-section--education { grid-column: 1 / 7; }
  .t-section--services { grid-column: 3 / 11; }
  .t-section--links { grid-column: 1 / 7; }
}
.t-section__title { font-size: clamp(2rem, 4vw, 3.2rem); font-weight: 400; letter-spacing: -0.02em; line-height: 1; margin-block-end: 20px; }
.t-section__title::after { content: ""; display: block; width: 100%; height: 1px; background: var(--t-text); margin-block-start: 12px; }
.t-section--summary .t-section__title { display: none; }
.t-summary { font-family: var(--t-font-display); font-size: clamp(1.5rem, 3vw, 2.4rem); line-height: 1.25; font-weight: 500; }
.t-section--about .t-prose p:first-of-type::first-letter { font-family: var(--t-font-display); font-size: 4.5em; float: inline-start; line-height: .8; padding: 6px 10px 0 0; }
.t-gallery { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 16px; }
.t-gallery__item { grid-column: span 12; }
@media (min-width: 700px) { .t-gallery__item:nth-child(6n+1) { grid-column: span 7; } .t-gallery__item:nth-child(6n+2) { grid-column: span 5; } .t-gallery__item:nth-child(6n+3) { grid-column: span 4; } .t-gallery__item:nth-child(6n+4) { grid-column: span 4; } .t-gallery__item:nth-child(6n+5) { grid-column: span 4; } .t-gallery__item:nth-child(6n) { grid-column: span 12; } }
.t-gallery__item img { aspect-ratio: 3 / 2; }
.t-gallery figcaption strong { font-family: var(--t-font-display); font-size: var(--t-size-3); font-weight: 400; }
.card { border: 0; background: transparent; }
.card-body { padding-inline: 0; }
.t-card .t-item__title { font-family: var(--t-font-display); font-size: var(--t-size-4); font-weight: 400; }
.t-quote { background: transparent; border: 0; padding: 0; }
.t-quote blockquote { font-size: clamp(1.6rem, 3vw, 2.6rem); font-style: italic; line-height: 1.2; }
.t-quote__mark { display: none; }
.t-timeline__when { font-family: var(--t-font-display); font-style: italic; color: var(--t-text); font-size: var(--t-size-2); }
.t-item__title { font-family: var(--t-font-display); font-weight: 700; font-size: var(--t-size-3); }
.t-chip { border-radius: 0; background: transparent; text-transform: uppercase; letter-spacing: .08em; font-size: var(--t-size-0); }
.t-numbered__item::before { font-family: var(--t-font-display); font-size: var(--t-size-5); }
.form-control { border-radius: 0; }
.t-footer { border-block-start: 1px solid var(--t-text); }
