:root {
	--tti-black: #08090b;
	--tti-ink: #101216;
	--tti-surface: #17191e;
	--tti-surface-soft: #202329;
	--tti-paper: #171014;
	--tti-white: #fff;
	--tti-text: #f5f4f0;
	--tti-muted: #a8abb2;
	--tti-line: #30333a;
	--tti-line-light: #c9c7c1;
	--tti-red: #ed1b2f;
	--tti-red-dark: #74121b;
	--tti-amber: #f28c18;
	--tti-focus: #ffd23f;
	--tti-shell: min(1180px, calc(100% - 40px));
	--tti-display: "Arial Narrow", "Roboto Condensed", Impact, sans-serif;
	--tti-body: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; background: var(--tti-black); color: var(--tti-text); font-family: var(--tti-body); font-size: 16px; line-height: 1.65; }
body.nav-open { overflow: hidden; }
img { max-width: 100%; height: auto; }
figure { margin: 0; }
a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .2em; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
:where(a, button, input, textarea, select):focus-visible { outline: 3px solid var(--tti-focus); outline-offset: 3px; }
::selection { background: var(--tti-red); color: var(--tti-white); }
.shell { width: var(--tti-shell); margin-inline: auto; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 10000; top: 12px; left: 12px; padding: 12px 18px; transform: translateY(-150%); background: var(--tti-focus); color: #000; font-weight: 800; }
.skip-link:focus { transform: none; }
.icon { display: inline-block; flex: 0 0 auto; vertical-align: middle; }
.site-frame { min-height: 100vh; }

.topbar { border-bottom: 1px solid #23252a; background: #050506; color: #92959b; font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.topbar__inner { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.topbar p { margin: 0; }
.topbar__actions, .language-nav { display: flex; align-items: center; gap: 6px; }
.language-nav { border-right: 1px solid #35373c; padding-right: 14px; }
.language-nav a { min-width: 31px; padding: 5px 6px; color: #888b91; text-align: center; text-decoration: none; }
.language-nav a:hover, .language-nav a[aria-current="page"] { background: var(--tti-surface-soft); color: var(--tti-white); }
.topbar__shop { display: inline-flex; align-items: center; gap: 7px; padding-left: 8px; color: #d7d8da; text-decoration: none; }
.topbar__shop .icon { width: 16px; height: 16px; }

.site-header { position: relative; z-index: 100; background: rgba(8, 9, 11, .98); }
.brand-row { min-height: 124px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.site-branding, .custom-logo-link { display: inline-flex; align-items: center; }
.custom-logo { display: block; width: auto; max-height: 72px; }
.brand { display: inline-flex; align-items: center; gap: 15px; color: var(--tti-white); text-decoration: none; }
.brand__logo { width: 92px; height: 92px; object-fit: contain; filter: saturate(1.08) contrast(1.08); }
.brand__mark { width: 60px; height: 60px; display: grid; place-items: center; border: 2px solid var(--tti-red); color: var(--tti-white); font-family: var(--tti-display); font-size: 1.2rem; font-weight: 900; letter-spacing: -.05em; transform: skew(-6deg); }
.brand__copy { display: flex; flex-direction: column; line-height: 1; }
.brand__copy strong { font-family: var(--tti-display); font-size: 1.9rem; letter-spacing: .035em; }
.brand__copy small { margin-top: 8px; color: #92959b; font-size: .65rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.brand-claim { max-width: 330px; margin: 0; border-left: 2px solid var(--tti-red); padding-left: 19px; color: #c9cace; font-size: .76rem; font-weight: 800; letter-spacing: .09em; line-height: 1.5; text-transform: uppercase; }

.nav-bar { border-block: 1px solid #2e3137; background: #111318; }
.nav-bar__inner { min-height: 56px; display: flex; align-items: stretch; justify-content: space-between; }
.primary-navigation { flex: 1; }
.menu { margin: 0; padding: 0; list-style: none; }
.menu--primary { min-height: 100%; display: flex; align-items: stretch; }
.menu--primary > li { position: relative; display: flex; }
.menu--primary > li > a { display: flex; align-items: center; padding: 0 20px; color: #c9cbd0; font-size: .74rem; font-weight: 900; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.menu--primary > li > a:hover, .menu--primary > .current-menu-item > a, .menu--primary > .current-menu-ancestor > a { background: #1b1e23; color: var(--tti-white); box-shadow: inset 0 -3px var(--tti-red); }
.menu--primary .sub-menu { position: absolute; z-index: 20; top: 100%; left: 0; min-width: 250px; padding: 10px; opacity: 0; visibility: hidden; transform: translateY(8px); border: 1px solid var(--tti-line); background: #121419; box-shadow: 0 20px 45px rgba(0, 0, 0, .45); transition: opacity .2s ease, transform .2s ease, visibility .2s; }
.menu--primary li:hover > .sub-menu, .menu--primary li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.menu--primary .sub-menu li + li { border-top: 1px solid var(--tti-line); }
.menu--primary .sub-menu a { display: block; padding: 11px 12px; color: #d5d6d9; font-size: .78rem; font-weight: 750; text-decoration: none; }
.menu--primary .sub-menu a:hover { color: var(--tti-white); background: #202329; }
.search-toggle, .nav-toggle, .search-close { border: 0; background: transparent; cursor: pointer; }
.search-toggle { width: 58px; display: grid; place-items: center; border-left: 1px solid var(--tti-line); color: #dddfe2; }
.search-toggle:hover { background: #1b1e23; color: var(--tti-white); }
.nav-toggle { display: none; }
.search-panel { position: absolute; inset: 100% 0 auto; border-bottom: 1px solid var(--tti-line); background: #101216; box-shadow: 0 22px 40px rgba(0, 0, 0, .4); }
.search-panel__inner { min-height: 118px; display: flex; align-items: center; gap: 16px; }
.search-panel .search-form { flex: 1; }
.search-close { width: 48px; height: 48px; display: grid; place-items: center; }
.search-form { display: flex; gap: 10px; }
.search-field { width: 100%; min-height: 52px; border: 1px solid #4a4d54; border-radius: 0; padding: 0 16px; background: #0a0b0e; color: var(--tti-white); }
.search-field::placeholder { color: #777b82; }

.hero { position: relative; min-height: 680px; display: flex; align-items: center; overflow: hidden; background: #090a0c; }
.hero--image { background-image: var(--hero-image); background-position: center 34%; background-size: cover; }
.hero__backdrop, .page-hero__backdrop { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,6,8,.98) 0, rgba(5,6,8,.91) 38%, rgba(5,6,8,.36) 70%, rgba(5,6,8,.48) 100%), linear-gradient(0deg, rgba(8,9,11,.96), transparent 40%), linear-gradient(135deg, rgba(116,18,27,.4), transparent 48%); }
.hero::after { content: ""; position: absolute; inset: auto 0 0; height: 5px; background: linear-gradient(90deg, var(--tti-red-dark), var(--tti-red) 45%, var(--tti-amber) 78%, transparent); }
.hero__content { position: relative; z-index: 2; padding-block: 92px 110px; }
.eyebrow { margin: 0 0 14px; color: var(--tti-red); font-size: .72rem; font-weight: 950; letter-spacing: .18em; text-transform: uppercase; }
.hero h1 { max-width: 850px; margin: 0; font-family: var(--tti-display); font-size: clamp(2.8rem, 5.4vw, 5.2rem); font-weight: 900; letter-spacing: -.04em; line-height: .93; text-transform: uppercase; text-wrap: balance; }
.hero__lead { max-width: 700px; margin: 28px 0 0; color: #c8cacf; font-size: clamp(1rem, 2vw, 1.18rem); }
.hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.home-pulse { border-block: 1px solid #4a1d24; background: linear-gradient(90deg, #200d12, #0e1013 62%); }
.home-pulse__inner { min-height: 84px; display: grid; grid-template-columns: auto minmax(260px, 1fr) auto; align-items: center; gap: 28px; }
.home-pulse__status { display: flex; align-items: center; gap: 10px; color: #f4f4f5; font-size: .67rem; font-weight: 950; letter-spacing: .12em; text-transform: uppercase; }
.home-pulse__status span { width: 9px; height: 9px; border-radius: 50%; background: var(--tti-red); box-shadow: 0 0 0 5px rgba(237,27,47,.14); }
.home-pulse__story { min-width: 0; display: flex; align-items: center; gap: 14px; color: #f1f1f2; text-decoration: none; }
.home-pulse__story strong { overflow: hidden; font-family: var(--tti-display); font-size: 1rem; letter-spacing: .02em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.home-pulse__story time { flex: 0 0 auto; color: #8f9299; font-size: .65rem; }
.home-pulse__story .icon { flex: 0 0 auto; width: 18px; color: var(--tti-focus); }
.home-pulse__routes { display: flex; gap: 18px; }
.home-pulse__routes a { color: #bfc1c6; font-size: .67rem; font-weight: 900; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.home-pulse__routes a:hover { color: #fff; }
.resource-strip { border-bottom: 1px solid #3d2026; background: #130c0f; }
.resource-strip__inner { min-height: 68px; display: flex; align-items: center; gap: 8px 30px; overflow-x: auto; }
.resource-strip a { flex: 0 0 auto; color: #e1e1e3; font-size: .72rem; font-weight: 900; letter-spacing: .075em; text-decoration: none; text-transform: uppercase; }
.resource-strip a::after { content: "↗"; margin-left: 8px; color: var(--tti-amber); }
.resource-strip a:hover { color: var(--tti-white); text-decoration: underline; }
.button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 11px; border: 1px solid transparent; padding: 0 23px; font-size: .74rem; font-weight: 900; letter-spacing: .075em; line-height: 1.2; text-decoration: none; text-transform: uppercase; transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease; }
.button:hover { transform: translateY(-2px); }
.button .icon { width: 19px; height: 19px; }
.button--primary { border-color: var(--tti-red); background: var(--tti-red); color: var(--tti-white); }
.button--primary:hover { border-color: var(--tti-red-dark); background: var(--tti-red-dark); }
.button--ghost { border-color: #666a72; background: rgba(10,11,14,.56); color: var(--tti-white); }
.button--ghost:hover { border-color: var(--tti-white); background: rgba(255,255,255,.08); }

.intro-section { padding-block: 70px; background: var(--tti-ink); }
.home-proof { position: relative; overflow: hidden; padding-block: 110px; border-bottom: 1px solid #4b1820; background: radial-gradient(circle at 12% 18%, rgba(237,27,47,.2), transparent 25%), #090a0c; }
.home-proof::before { content: "INTERNATIONAL"; position: absolute; left: -1vw; bottom: -3vw; color: rgba(255,255,255,.025); font-family: var(--tti-display); font-size: clamp(6rem, 15vw, 13rem); font-weight: 900; line-height: .72; }
.home-proof__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(300px, .82fr) minmax(520px, 1.18fr); align-items: center; gap: 75px; }
.home-proof__statement h2 { max-width: 640px; margin: 0; font-family: var(--tti-display); font-size: clamp(2.8rem, 5vw, 5.2rem); font-weight: 900; letter-spacing: -.045em; line-height: .88; text-transform: uppercase; }
.home-proof__statement > p:not(.eyebrow) { max-width: 570px; margin: 28px 0 34px; color: #b8bbc1; font-size: 1.04rem; }
.home-proof__signals { display: grid; border-block: 1px solid #393c43; }
.home-proof__signals span { padding: 13px 0; border-bottom: 1px solid #282b31; color: #ececee; font-size: .7rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.home-proof__signals span:last-child { border-bottom: 0; }
.home-proof__signals span::before { content: "+"; margin-right: 11px; color: var(--tti-focus); }
.home-proof__mosaic { min-height: 570px; display: grid; grid-template-columns: 1.25fr .75fr; grid-template-rows: 1fr 1fr; gap: 13px; transform: rotate(-1.5deg); }
.home-proof__image { position: relative; overflow: hidden; margin: 0; border: 1px solid rgba(255,255,255,.18); background: #17191d; box-shadow: 0 25px 65px rgba(0,0,0,.42); }
.home-proof__image--main { grid-row: 1 / 3; }
.home-proof__image img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.8) contrast(1.08); transition: transform .5s ease, filter .5s ease; }
.home-proof__image:hover img { transform: scale(1.035); filter: saturate(1.08) contrast(1.04); }
.section { padding-block: 100px; }
.section--dark { background: var(--tti-black); color: var(--tti-text); }
.section--paper { background: var(--tti-paper); color: var(--tti-text); }
.section--paper .prose a { color: #ff5a65; }
.section--paper .prose th, .section--paper .prose td { border-color: #5b4c51; }
.section--paper .prose .wpcf7-form label { color: var(--tti-text); }
.section--capabilities { border-top: 1px solid #4b1820; background: linear-gradient(145deg, #170d11 0, #0d0f12 52%, #151013 100%); color: var(--tti-text); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 38px; }
.section-heading h2, .archive-header h1, .store-band h2, .cta-band h2 { margin: 0; font-family: var(--tti-display); font-size: clamp(2.35rem, 5vw, 4.8rem); font-weight: 900; letter-spacing: -.035em; line-height: .95; text-transform: uppercase; }
.text-link, .card-link { display: inline-flex; align-items: center; gap: 8px; font-size: .72rem; font-weight: 900; letter-spacing: .07em; text-decoration: none; text-transform: uppercase; }
.text-link { border-bottom: 1px solid #72757d; padding-bottom: 5px; color: #c7c9ce; }
.text-link .icon, .card-link .icon { width: 18px; height: 18px; }

.capability-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 2px solid #181a1e; }
.section--capabilities .capability-grid { border-color: #5a2028; }
.capability-card { min-height: 330px; display: flex; flex-direction: column; border-right: 1px solid #bbb9b3; padding: 30px; }
.section--capabilities .capability-card { border-color: #3b3034; background: linear-gradient(180deg, rgba(255,255,255,.025), transparent); }
.capability-card:first-child { border-left: 1px solid #bbb9b3; }
.section--capabilities .capability-card:first-child { border-left-color: #3b3034; }
.capability-card__number { color: #7d7d78; font-size: .7rem; font-weight: 800; }
.capability-card h3 { margin: 70px 0 14px; font-family: var(--tti-display); font-size: clamp(1.6rem, 3vw, 2.4rem); line-height: 1; text-transform: uppercase; }
.capability-card p { margin: 0 0 28px; color: #61625f; font-size: .92rem; }
.section--capabilities .capability-card p { color: #aeb0b5; }
.capability-card > a { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; color: #16181b; font-size: .72rem; font-weight: 900; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.section--capabilities .capability-card > a { color: var(--tti-white); }
.capability-card > a:hover { color: var(--tti-red); }
.capability-card--visual { min-height: 520px; overflow: hidden; padding: 0; }
.capability-card__media { position: relative; min-height: 245px; display: block; overflow: hidden; background: #181a1e; }
.capability-card__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(8,9,11,.75), transparent 55%); }
.capability-card__media img { width: 100%; height: 100%; min-height: 245px; object-fit: cover; filter: saturate(.76) contrast(1.08); transition: transform .45s ease, filter .45s ease; }
.capability-card--visual:hover .capability-card__media img { transform: scale(1.045); filter: saturate(1.08) contrast(1.05); }
.capability-card__body { min-height: 275px; display: flex; flex: 1; flex-direction: column; padding: 26px 29px 30px; }
.capability-card--visual h3 { margin: 32px 0 14px; }
.capability-card--visual .capability-card__body > a { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; color: var(--tti-white); font-size: .72rem; font-weight: 900; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.capability-card--visual .capability-card__body > a:hover { color: var(--tti-red); }

.content-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.content-grid--articles { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.content-grid--people { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.content-card { min-width: 0; overflow: hidden; border: 1px solid var(--tti-line); background: var(--tti-surface); color: var(--tti-text); }
.section--paper .content-card { border-color: var(--tti-line-light); background: #fff; color: #15171a; }
.content-card__media { position: relative; display: block; aspect-ratio: 1.45; overflow: hidden; background: #202329; }
.content-card__media img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.04); transition: transform .35s ease, filter .35s ease; }
.content-card:hover .content-card__media img { transform: scale(1.035); filter: saturate(1) contrast(1.04); }
.content-card__placeholder { position: absolute; inset: 0; display: block; background: radial-gradient(circle at 68% 28%, rgba(223,31,45,.42), transparent 24%), repeating-linear-gradient(125deg, transparent 0 28px, rgba(255,255,255,.035) 29px 30px), #181a1f; }
.content-card__placeholder::after { content: "TTI"; position: absolute; right: 18px; bottom: 10px; color: rgba(255,255,255,.08); font-family: var(--tti-display); font-size: 4rem; font-weight: 900; }
.content-card__body { padding: 23px; }
.entry-meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; color: #858991; font-size: .65rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.entry-terms { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.entry-terms a { color: var(--tti-red); text-decoration: none; }
.content-card h3 { margin: 17px 0 11px; font-family: var(--tti-display); font-size: 1.42rem; line-height: 1.08; text-transform: uppercase; }
.content-card h3 a { color: inherit; text-decoration: none; }
.content-card p { margin: 0; color: #a5a8ae; font-size: .88rem; }
.section--paper .content-card p { color: #666864; }
.card-link { margin-top: 22px; color: var(--tti-white); }
.section--paper .card-link { color: #15171a; }
.card-link:hover { color: var(--tti-red); }

.section--videos { border-top: 1px solid #4b1820; background: linear-gradient(145deg, #160c10, #090a0c 58%); }
.video-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.video-card { overflow: hidden; border: 1px solid var(--tti-line); background: var(--tti-surface); }
.video-card__media { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #111318; text-decoration: none; }
.video-card__media::after { content: "▶"; position: absolute; left: 20px; bottom: 18px; width: 52px; height: 52px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; padding-left: 3px; background: rgba(237,27,47,.9); color: #fff; font-size: 1rem; box-shadow: 0 10px 25px rgba(0,0,0,.35); }
.video-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease, filter .35s ease; }
.video-card:hover .video-card__media img { transform: scale(1.035); filter: saturate(1.08); }
.video-card__placeholder { position: absolute; inset: 0; display: grid; place-items: center; background: radial-gradient(circle at 65% 25%, rgba(237,27,47,.42), transparent 25%), #15171b; color: rgba(255,255,255,.08); font-size: 7rem; }
.video-card__body { padding: 24px; }
.video-card h2, .video-card h3 { margin: 15px 0 10px; font-family: var(--tti-display); font-size: 1.6rem; line-height: 1.05; text-transform: uppercase; }
.video-card h2 a, .video-card h3 a { text-decoration: none; }
.video-card p { margin: 0; color: var(--tti-muted); font-size: .9rem; }
.video-player { width: min(1100px, 100%); margin: 0 auto 50px; overflow: hidden; aspect-ratio: 16 / 9; background: #000; box-shadow: 0 28px 70px rgba(0,0,0,.45); }
.video-player iframe, .video-player video, .video-player img { width: 100%; height: 100%; border: 0; object-fit: cover; }
.video-description { color: #d2d3d6; }
.media-feature { min-height: 660px; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(420px, .75fr); background: #0c0e11; }
.media-feature__visual { position: relative; min-height: 660px; overflow: hidden; }
.media-feature__visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 55%, #0c0e11 100%), linear-gradient(0deg, rgba(5,6,8,.8), transparent 55%); pointer-events: none; }
.media-feature__visual > img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.78) contrast(1.08); }
.media-feature__play { position: absolute; z-index: 3; left: 50%; top: 50%; width: 105px; height: 105px; display: grid; place-items: center; border: 2px solid rgba(255,255,255,.82); border-radius: 50%; background: rgba(202,20,35,.9); color: #fff; text-decoration: none; transform: translate(-50%, -50%); box-shadow: 0 20px 60px rgba(0,0,0,.5); transition: transform .25s ease, background .25s ease; }
.media-feature__play:hover { background: var(--tti-red); transform: translate(-50%, -50%) scale(1.07); }
.media-feature__play span { padding-left: 6px; font-size: 2rem; }
.media-feature__caption { position: absolute; z-index: 3; left: 35px; bottom: 30px; color: #fff; font-size: .68rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.media-feature__caption::before { content: "REC"; margin-right: 13px; color: var(--tti-focus); }
.media-feature__content { display: flex; flex-direction: column; justify-content: center; padding: 80px clamp(35px, 6vw, 95px) 80px 40px; }
.media-feature__content h2 { max-width: 650px; margin: 0; font-family: var(--tti-display); font-size: clamp(2.8rem, 5vw, 5.5rem); font-weight: 900; letter-spacing: -.045em; line-height: .87; text-transform: uppercase; }
.media-feature__content > p:not(.eyebrow) { max-width: 560px; margin: 28px 0 34px; color: #b8bbc1; }
.media-feature__content .button { align-self: flex-start; }

.store-band { padding-block: 75px; border-top: 1px solid var(--tti-line); background: linear-gradient(135deg, #211114, #111318 65%); }
.store-band__inner, .cta-band__inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.store-band h2 { max-width: 800px; font-size: clamp(2rem, 4vw, 4rem); }
.cta-band { padding-block: 60px; background: #111318; }
.cta-band h2 { font-size: clamp(2rem, 4vw, 3.7rem); }

.page-hero { position: relative; min-height: 390px; display: flex; align-items: end; overflow: hidden; background: radial-gradient(circle at 80% 30%, #522026, transparent 28%), repeating-linear-gradient(120deg, transparent 0 40px, rgba(255,255,255,.025) 41px 42px), #0d0f12; }
.page-hero--image { background-image: var(--hero-image); background-position: center; background-size: cover; }
.page-hero__content { position: relative; z-index: 2; padding-block: 100px 62px; }
.page-hero h1, .entry-hero h1, .profile-hero h1 { max-width: 980px; margin: 0; font-family: var(--tti-display); font-size: clamp(3rem, 7vw, 6.4rem); font-weight: 900; letter-spacing: -.045em; line-height: .9; text-transform: uppercase; text-wrap: balance; }
.page-hero__content > p:last-child { max-width: 700px; margin: 22px 0 0; color: #c8cacf; font-size: 1.06rem; }
.page-hero--editorial { min-height: 520px; }
.page-hero--editorial .page-hero__backdrop { background: linear-gradient(90deg, rgba(5,6,8,.98) 0, rgba(5,6,8,.86) 42%, rgba(5,6,8,.18) 72%, rgba(5,6,8,.42)), linear-gradient(0deg, rgba(8,9,11,.96), transparent 48%), linear-gradient(135deg, rgba(116,18,27,.38), transparent 55%); }
.page-hero--editorial .page-hero__content { padding-block: 120px 58px; }
.page-hero--editorial h1 { max-width: 760px; font-size: clamp(3rem, 5.7vw, 5.5rem); }
.page-hero__signals { display: flex; flex-wrap: wrap; gap: 8px 28px; margin-top: 34px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.25); color: #d9dade; font-size: .67rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.page-hero__signals span::before { content: "+"; margin-right: 9px; color: var(--tti-focus); }
.page-impact { position: relative; overflow: hidden; padding-block: 110px; border-block: 1px solid #4b1820; background: radial-gradient(circle at 13% 15%, rgba(237,27,47,.22), transparent 23%), linear-gradient(128deg, #160c10, #08090b 52%, #121419); color: var(--tti-text); }
.page-impact::before { content: "TTI"; position: absolute; left: -2vw; bottom: -7vw; color: rgba(255,255,255,.025); font-family: var(--tti-display); font-size: clamp(16rem, 38vw, 35rem); font-weight: 900; line-height: .72; }
.page-impact__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(290px, .78fr) minmax(520px, 1.22fr); align-items: center; gap: 75px; }
.page-impact__statement { position: relative; z-index: 5; }
.page-impact__statement h2 { max-width: 620px; margin: 0; font-family: var(--tti-display); font-size: clamp(2.8rem, 4.7vw, 5rem); font-weight: 900; letter-spacing: -.045em; line-height: .88; text-shadow: 0 4px 24px rgba(0,0,0,.62); text-transform: uppercase; }
.page-impact__statement > p:not(.eyebrow) { max-width: 510px; margin: 26px 0 32px; color: #afb2b8; font-size: 1.03rem; }
.impact-gallery { position: relative; min-height: 590px; }
.impact-gallery__item { position: absolute; overflow: hidden; margin: 0; border: 1px solid rgba(255,255,255,.2); background: #16181c; box-shadow: 0 28px 70px rgba(0,0,0,.48); }
.impact-gallery__item img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.78) contrast(1.07); transition: filter .3s ease, transform .4s ease; }
.impact-gallery__item:hover img { filter: saturate(1.08) contrast(1.06); transform: scale(1.025); }
.impact-gallery__item figcaption { position: absolute; inset: auto 0 0; padding: 18px 20px 14px; background: linear-gradient(transparent, rgba(0,0,0,.86)); color: #fff; font-size: .6rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.impact-gallery__item--1 { inset: 0 24% 22% 0; transform: rotate(-2deg); }
.impact-gallery__item--2 { inset: 18% 0 0 52%; transform: rotate(2.5deg); }
.impact-gallery__item--3 { z-index: 2; inset: 52% 38% 0 18%; transform: rotate(-.7deg); }
.impact-gallery__seal { position: absolute; z-index: 4; width: 118px; right: 7%; top: 2%; aspect-ratio: 1; border-radius: 50%; padding: 9px; background: rgba(7,8,10,.88); box-shadow: 0 0 0 8px rgba(237,27,47,.22), 0 18px 40px rgba(0,0,0,.45); transform: rotate(7deg); }
.article-layout { display: grid; grid-template-columns: 220px minmax(0, 800px); justify-content: center; align-items: start; gap: 75px; }
.article-layout .prose { width: 100%; margin: 0; }
.story-rail { position: sticky; top: 35px; border-top: 4px solid var(--tti-red); padding: 24px 20px 28px; background: #17191d; color: #fff; box-shadow: 12px 12px 0 #e7e4de; }
.story-rail .eyebrow { margin-bottom: 28px; color: var(--tti-focus); }
.story-rail strong { display: block; font-family: var(--tti-display); font-size: 1.55rem; line-height: 1; text-transform: uppercase; }
.story-rail > span { display: block; margin: 34px 0 12px; color: rgba(255,255,255,.12); font-family: var(--tti-display); font-size: 5rem; font-weight: 900; line-height: .75; }
.story-rail > p:not(.eyebrow) { color: #aeb1b7; font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.story-rail > a { display: inline-block; margin-top: 18px; border-bottom: 1px solid var(--tti-focus); padding-bottom: 4px; color: #fff; font-size: .68rem; font-weight: 900; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.page-story .prose > h1, .page-story .prose > h2 { position: relative; margin-top: 2.2em; padding-top: .7em; border-top: 2px solid #b8b5ae; }
.page-story .prose > h1::before, .page-story .prose > h2::before { content: "FIELD NOTE"; position: absolute; top: -12px; left: 0; padding-right: 12px; background: var(--tti-paper); color: var(--tti-red-dark); font-family: var(--tti-body); font-size: .58rem; font-weight: 950; letter-spacing: .14em; }
.page-story .prose > img, .page-story .prose > p > img, .page-story .prose figure { width: min(1040px, calc(100vw - 48px)); max-width: none; margin-block: 2.8em; margin-left: 50%; transform: translateX(-50%); }
.page-story .prose > p > img { display: block; }
.page-story .prose > p:has(> img) { margin-block: 2.8em; }
.page-story .prose > p:has(> img) img { width: 100%; margin: 0; transform: none; }
.page-story .prose img { max-height: 680px; object-fit: cover; }
.page-closing { position: relative; min-height: 520px; display: flex; align-items: end; overflow: hidden; background-image: var(--closing-image); background-position: center; background-size: cover; }
.page-closing__backdrop { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,6,8,.98), rgba(5,6,8,.75) 55%, rgba(5,6,8,.2)), linear-gradient(0deg, rgba(116,18,27,.78), transparent 55%); }
.page-closing__inner { position: relative; z-index: 2; padding-block: 90px 70px; }
.page-closing h2 { max-width: 820px; margin: 0 0 32px; font-family: var(--tti-display); font-size: clamp(2.8rem, 5.8vw, 6rem); font-weight: 900; letter-spacing: -.045em; line-height: .87; text-transform: uppercase; }
.entry-hero { padding-block: 80px; border-bottom: 1px solid var(--tti-line); background: #0c0e11; }
.entry-hero__inner { display: grid; grid-template-columns: 1fr minmax(320px, .7fr); align-items: center; gap: 60px; }
.entry-hero__inner > div > p { max-width: 720px; color: #b7bac0; }
.entry-hero figure { aspect-ratio: 1.2; overflow: hidden; }
.entry-hero figure img { width: 100%; height: 100%; object-fit: cover; }
.profile-hero { padding-block: 80px; background: #0d0f12; }
.profile-hero__inner { display: grid; grid-template-columns: minmax(260px, .55fr) 1fr; align-items: center; gap: 65px; }
.profile-hero figure { aspect-ratio: .88; overflow: hidden; border-bottom: 4px solid var(--tti-red); }
.profile-hero figure img { width: 100%; height: 100%; object-fit: cover; }

.prose { width: min(760px, 100%); margin-inline: auto; font-size: 1.03rem; }
.prose--lead { width: min(920px, 100%); color: #c9cbd0; font-size: clamp(1.15rem, 2vw, 1.4rem); }
.prose > *:first-child { margin-top: 0; }
.prose > *:last-child { margin-bottom: 0; }
.prose h1, .prose h2, .prose h3, .prose h4 { margin-top: 2em; font-family: var(--tti-display); font-weight: 900; letter-spacing: -.025em; line-height: 1.05; text-transform: uppercase; }
.prose h1 { margin-top: 1.8em; padding-top: .55em; border-top: 2px solid #c8c5bf; font-size: clamp(2.25rem, 4.5vw, 3.9rem); }
.prose h2 { font-size: clamp(2rem, 4vw, 3.4rem); }
.prose h3 { font-size: clamp(1.45rem, 3vw, 2.2rem); }
.prose a { color: var(--tti-red-dark); font-weight: 750; }
.prose blockquote { margin: 2.2em 0; border-left: 4px solid var(--tti-red); padding: .6em 0 .6em 1.5em; font-size: 1.28rem; font-weight: 700; }
.prose figure { margin-block: 2.4em; }
.prose img { height: auto; border-bottom: 4px solid var(--tti-red); box-shadow: 0 18px 45px rgba(17,19,24,.14); }
.prose iframe { width: 100%; max-width: 100%; border: 0; aspect-ratio: 16 / 9; box-shadow: 0 18px 45px rgba(17,19,24,.16); }
.prose hr { margin-block: 3.2em; border: 0; border-top: 1px solid #c8c5bf; }
.prose input:not([type="checkbox"]):not([type="radio"]), .prose textarea, .prose select { width: 100%; min-height: 50px; border: 1px solid #aaa9a5; border-radius: 0; padding: 11px 13px; background: #fff; color: #15171a; font: inherit; }
.prose textarea { min-height: 150px; resize: vertical; }
.prose input[type="submit"], .prose button { min-height: 50px; border: 1px solid var(--tti-red); border-radius: 0; padding: 0 22px; background: var(--tti-red); color: #fff; font-size: .74rem; font-weight: 900; letter-spacing: .075em; text-transform: uppercase; cursor: pointer; }
.prose input[type="submit"]:hover, .prose button:hover { border-color: var(--tti-red-dark); background: var(--tti-red-dark); }
.prose .wpcf7-form p { margin-block: 0 1.25em; }
.prose .wpcf7-form label { display: grid; gap: 7px; color: #343538; font-size: .78rem; font-weight: 850; letter-spacing: .045em; text-transform: uppercase; }
.prose table { width: 100%; border-collapse: collapse; }
.prose th, .prose td { border: 1px solid #bbb9b3; padding: 10px 12px; text-align: left; }
.prose .alignwide { width: min(1180px, calc(100vw - 40px)); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.prose .alignfull { width: 100vw; max-width: none; margin-left: 50%; transform: translateX(-50%); }

.archive-header { max-width: 900px; margin-bottom: 54px; }
.archive-header .archive-description { max-width: 700px; color: var(--tti-muted); }
.archive-header h1 span { color: var(--tti-red); }
.archive-header + .search-form { margin: -24px 0 50px; }
.pagination { margin-top: 50px; }
.nav-links { display: flex; flex-wrap: wrap; gap: 7px; }
.page-numbers { min-width: 42px; min-height: 42px; display: grid; place-items: center; border: 1px solid var(--tti-line); color: var(--tti-white); text-decoration: none; }
.page-numbers.current, .page-numbers:hover { border-color: var(--tti-red); background: var(--tti-red); }
.post-navigation { padding-block: 35px; background: var(--tti-paper); color: #15171a; }
.post-navigation .nav-links { justify-content: space-between; }
.post-navigation a { font-weight: 800; }

.contact-layout { display: grid; grid-template-columns: .72fr 1.28fr; align-items: start; gap: 70px; }
.contact-panel { border-top: 4px solid var(--tti-red); padding: 30px; background: #fff; box-shadow: 0 20px 55px rgba(17,19,24,.1); }
.contact-form { display: grid; gap: 20px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.contact-form label { display: grid; gap: 7px; color: #343538; font-size: .75rem; font-weight: 850; letter-spacing: .055em; text-transform: uppercase; }
.contact-form input, .contact-form textarea { width: 100%; border: 1px solid #b7b7b3; border-radius: 0; padding: 12px 13px; background: #faf9f6; color: #16181b; font-size: 1rem; font-weight: 400; letter-spacing: normal; text-transform: none; }
.contact-form input { min-height: 48px; }
.contact-form textarea { resize: vertical; }
.form-consent { grid-template-columns: 20px 1fr !important; align-items: start; gap: 10px !important; text-transform: none !important; }
.form-consent input { width: 18px; min-height: 18px; margin-top: 2px; }
.form-honeypot { position: absolute !important; left: -10000px !important; }
.form-notice { margin-bottom: 22px; border-left: 4px solid; padding: 14px 16px; font-weight: 750; }
.form-notice--success { border-color: #177c43; background: #e8f6ed; color: #0d522d; }
.form-notice--error { border-color: #b8121d; background: #fbeaec; color: #7c0b13; }

.empty-state { grid-column: 1 / -1; max-width: 600px; padding: 45px; border: 1px solid var(--tti-line); background: var(--tti-surface); }
.empty-state h2 { margin-top: 0; font-family: var(--tti-display); font-size: 2.2rem; text-transform: uppercase; }
.empty-state p { color: var(--tti-muted); }
.not-found { min-height: 620px; display: grid; place-items: center; padding-block: 80px; background: radial-gradient(circle at 70% 30%, #4f1a20, transparent 25%), #090a0c; }
.not-found__inner { position: relative; }
.not-found__code { margin: 0; color: rgba(255,255,255,.055); font-family: var(--tti-display); font-size: clamp(10rem, 30vw, 28rem); font-weight: 900; line-height: .65; }
.not-found .empty-state { position: relative; z-index: 2; margin-top: -5vw; }
.not-found .search-form { position: relative; z-index: 2; margin-top: 20px; }

.site-footer { border-top: 4px solid var(--tti-red); padding: 70px 0 24px; background: #050506; }
.footer-grid { display: grid; grid-template-columns: 1.55fr repeat(3, 1fr); gap: 40px; }
.footer-grid h2, .footer-widget__title { margin: 0 0 18px; color: #777a81; font-family: var(--tti-body); font-size: .65rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.footer-grid > div:not(:first-child), .footer-widget { display: flex; flex-direction: column; align-items: flex-start; }
.footer-grid a { margin-bottom: 8px; color: #c8cacf; font-size: .85rem; text-decoration: none; }
.footer-grid a:hover { color: var(--tti-white); text-decoration: underline; }
.footer-identity > strong { font-family: var(--tti-display); font-size: 2.1rem; letter-spacing: .035em; }
.footer-identity > p { margin: 0; color: #85888f; font-size: .68rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.footer-identity .footer-identity__claim { max-width: 280px; margin-top: 20px; color: #b7b9be; font-size: .8rem; letter-spacing: .06em; line-height: 1.55; }
.menu--footer { display: grid; gap: 8px; }
.menu--footer a { margin: 0; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 55px; border-top: 1px solid #292c31; padding-top: 20px; color: #70737a; font-size: .67rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.footer-bottom p { margin: 0; }

.button--signal { border-color: var(--tti-focus); background: var(--tti-focus); color: #08090b; box-shadow: 8px 8px 0 var(--tti-red); }
.button--signal:hover { background: var(--tti-white); box-shadow: 4px 4px 0 var(--tti-red); }
.button--ink { border-color: #15171a; background: #15171a; color: #fff; }
.button--ink:hover { border-color: var(--tti-red-dark); background: var(--tti-red-dark); }
.archive-header h2 { margin: 0; font-family: var(--tti-display); font-size: clamp(2.3rem, 5vw, 4.7rem); line-height: .92; text-transform: uppercase; }
.archive-header--compact { margin-bottom: 38px; }
.blog-hero { position: relative; min-height: 570px; display: flex; align-items: end; overflow: hidden; background: url("../images/legacy/home10.jpg") center 38% / cover no-repeat; }
.blog-hero::before { content: "FIELD NOTES"; position: absolute; right: -1vw; bottom: -4vw; color: rgba(255,255,255,.055); font-family: var(--tti-display); font-size: clamp(6rem, 17vw, 15rem); font-weight: 900; line-height: .7; white-space: nowrap; transform: rotate(-4deg); }
.blog-hero__backdrop { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,6,8,.98), rgba(5,6,8,.78) 54%, rgba(5,6,8,.28)), linear-gradient(0deg, rgba(116,18,27,.85), transparent 42%); }
.blog-hero__content { position: relative; z-index: 2; padding-block: 90px 70px; }
.blog-hero h1 { max-width: 900px; margin: 0; font-family: var(--tti-display); font-size: clamp(4rem, 10vw, 8.5rem); font-weight: 900; letter-spacing: -.055em; line-height: .8; text-transform: uppercase; }
.blog-hero p:not(.eyebrow) { max-width: 680px; margin: 24px 0 30px; color: #e1e1e3; font-size: clamp(1rem, 2vw, 1.25rem); }
.context-nav { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; color: #c8cbd0; font-size: .7rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.context-nav a { color: #fff; text-decoration: none; }
.context-nav a:hover { color: var(--tti-focus); }
.article-return { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 60px; border-top: 1px solid #c9c7c1; padding-top: 30px; }
.sport-feature { position: relative; overflow: hidden; border-block: 1px solid #246c88; padding-block: 100px; background: radial-gradient(circle at 18% 32%, rgba(39,181,230,.3), transparent 21%), linear-gradient(112deg, #07101d 0 47%, #8d111c 47.2% 66%, #ed1b2f 66.2% 100%); }
.sport-feature::before { content: ""; position: absolute; inset: 0; opacity: .18; background: repeating-linear-gradient(118deg, transparent 0 38px, rgba(255,255,255,.15) 39px 40px); }
.sport-feature__flare { position: absolute; width: 480px; height: 480px; right: -100px; top: -210px; border: 70px solid rgba(255,210,63,.17); border-radius: 50%; box-shadow: 0 0 0 45px rgba(255,255,255,.04); }
.sport-feature__inner { position: relative; z-index: 2; display: grid; grid-template-columns: 280px 1fr auto; align-items: center; gap: 55px; }
.sport-feature__identity { position: relative; display: grid; place-items: center; }
.sport-feature__identity img { width: 235px; aspect-ratio: 1; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 10px rgba(255,255,255,.12), 0 30px 70px rgba(0,0,0,.55); transform: rotate(-4deg); }
.sport-feature__identity span { margin-top: 25px; color: #9adcf5; font-size: .68rem; font-weight: 900; letter-spacing: .13em; text-align: center; text-transform: uppercase; }
.sport-feature__content h2 { max-width: 720px; margin: 0; font-family: var(--tti-display); font-size: clamp(3rem, 6vw, 6.4rem); line-height: .84; letter-spacing: -.045em; text-transform: uppercase; }
.sport-feature__content > p:not(.eyebrow) { max-width: 650px; margin: 26px 0 32px; color: #eef0f3; }
.button--sport { border-color: var(--tti-focus); background: var(--tti-focus); color: #07101d; box-shadow: 9px 9px 0 #fff; }
.button--sport:hover { background: #fff; box-shadow: 5px 5px 0 var(--tti-focus); }
.sport-feature__stamp { padding-left: 24px; border-left: 3px solid var(--tti-focus); color: rgba(255,255,255,.58); font-family: var(--tti-display); font-size: 1.1rem; font-weight: 900; letter-spacing: .15em; line-height: 1.15; }

@media (max-width: 1050px) {
	.content-grid--articles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.menu--primary > li > a { padding-inline: 14px; }
	.footer-grid { grid-template-columns: 1.2fr repeat(3, 1fr); gap: 28px; }
	.page-impact__grid { grid-template-columns: .85fr 1.15fr; gap: 40px; }
	.impact-gallery { min-height: 510px; }
	.article-layout { grid-template-columns: 180px minmax(0, 760px); gap: 40px; }
}

@media (max-width: 860px) {
	.brand-claim { display: none; }
	.nav-toggle { min-height: 56px; display: inline-flex; align-items: center; gap: 9px; font-size: .72rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
	.nav-toggle__close { display: none; }
	.nav-toggle[aria-expanded="true"] .nav-toggle__open { display: none; }
	.nav-toggle[aria-expanded="true"] .nav-toggle__close { display: inline; }
	.primary-navigation { position: fixed; z-index: 50; inset: auto 0 0; top: var(--tti-mobile-menu-top, 0); overflow-y: auto; opacity: 0; visibility: hidden; transform: translateY(-10px); background: #0c0e11; transition: opacity .2s ease, transform .2s ease, visibility .2s; }
	.primary-navigation.is-open { opacity: 1; visibility: visible; transform: none; }
	.menu--primary { display: block; padding: 12px var(--tti-gutter, 20px) 40px; }
	.menu--primary > li { display: block; border-bottom: 1px solid var(--tti-line); }
	.menu--primary > li > a { min-height: 54px; padding: 0; }
	.menu--primary > li > a:hover, .menu--primary > .current-menu-item > a, .menu--primary > .current-menu-ancestor > a { background: transparent; box-shadow: inset 3px 0 var(--tti-red); padding-left: 14px; }
	.menu--primary .sub-menu { position: static; min-width: 0; padding: 0 0 12px 18px; opacity: 1; visibility: visible; transform: none; border: 0; background: transparent; box-shadow: none; }
	.menu--primary .sub-menu li { border: 0; }
	.menu--primary .sub-menu a { padding: 7px 0; color: #a8abb1; }
	.home-proof__grid { grid-template-columns: 1fr; }
	.home-proof__mosaic { width: min(720px, 100%); }
	.capability-grid { grid-template-columns: 1fr; }
	.capability-card, .capability-card:first-child { min-height: 230px; border: 1px solid #bbb9b3; border-top: 0; }
	.capability-card--visual { min-height: 0; }
	.capability-card h3 { margin-top: 35px; }
	.media-feature { grid-template-columns: 1fr; }
	.media-feature__visual { min-height: 540px; }
	.media-feature__visual::after { background: linear-gradient(0deg, #0c0e11, transparent 42%); }
	.content-grid, .content-grid--people { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sport-feature__inner { grid-template-columns: 220px 1fr; }
	.sport-feature__stamp { display: none; }
	.entry-hero__inner { grid-template-columns: 1fr; }
	.entry-hero figure { max-height: 480px; }
	.page-impact { padding-block: 80px; }
	.page-impact__grid { grid-template-columns: 1fr; }
	.page-impact__statement { max-width: 680px; }
	.impact-gallery { width: min(680px, 100%); min-height: 520px; }
	.article-layout { grid-template-columns: 1fr; }
	.story-rail { position: static; display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 8px 24px; }
	.story-rail > span { grid-row: 1 / 4; grid-column: 2; margin: 0; }
	.story-rail > p:not(.eyebrow), .story-rail > a { margin: 0; }
	.contact-layout { grid-template-columns: 1fr; gap: 45px; }
	.footer-grid { grid-template-columns: 1.2fr 1fr 1fr; }
	.footer-grid > div:last-child { grid-column: 2 / -1; }
}

@media (max-width: 620px) {
	:root { --tti-shell: min(100% - 28px, 1180px); }
	.topbar__inner { justify-content: flex-end; }
	.topbar p { display: none; }
	.brand-row { min-height: 88px; }
	.brand__logo { width: 72px; height: 72px; }
	.brand__mark { width: 50px; height: 50px; }
	.brand__copy strong { font-size: 1.5rem; }
	.hero { min-height: 640px; align-items: flex-start; }
	.hero__content { padding-top: 80px; }
	.hero h1 { font-size: clamp(3rem, 16vw, 4.8rem); }
	.hero__actions { align-items: stretch; flex-direction: column; }
	.home-pulse__inner { padding-block: 18px; grid-template-columns: 1fr; gap: 12px; }
	.home-pulse__story { align-items: flex-start; }
	.home-pulse__story strong { white-space: normal; }
	.home-pulse__routes { flex-wrap: wrap; }
	.home-proof { padding-block: 76px; }
	.home-proof__mosaic { min-height: 470px; grid-template-columns: 1.1fr .9fr; gap: 8px; transform: none; }
	.section { padding-block: 72px; }
	.section-heading { align-items: start; flex-direction: column; }
	.content-grid, .content-grid--articles, .content-grid--people { grid-template-columns: 1fr; }
	.video-grid { grid-template-columns: 1fr; }
	.media-feature__visual { min-height: 390px; }
	.media-feature__play { width: 78px; height: 78px; }
	.media-feature__content { padding: 25px 20px 75px; }
	.blog-hero { min-height: 520px; }
	.blog-hero h1 { font-size: clamp(3.4rem, 18vw, 5.6rem); }
	.sport-feature { padding-block: 75px; background: linear-gradient(160deg, #07101d 0 55%, #8d111c 55.2% 72%, #ed1b2f 72.2%); }
	.sport-feature__inner { grid-template-columns: 1fr; gap: 42px; }
	.sport-feature__identity { justify-items: start; }
	.sport-feature__identity img { width: 190px; }
	.sport-feature__identity span { text-align: left; }
	.store-band__inner, .cta-band__inner { align-items: flex-start; flex-direction: column; }
	.page-hero { min-height: 330px; }
	.entry-hero, .profile-hero { padding-block: 60px; }
	.profile-hero__inner { grid-template-columns: 1fr; gap: 35px; }
	.profile-hero figure { max-width: 360px; }
	.form-grid { grid-template-columns: 1fr; }
	.contact-panel { padding: 22px; }
	.page-hero--editorial { min-height: 430px; }
	.page-hero--editorial .page-hero__content { padding-block: 90px 42px; }
	.page-hero__signals { display: grid; gap: 8px; }
	.page-impact { padding-block: 68px; }
	.impact-gallery { min-height: 410px; }
	.impact-gallery__item--1 { inset: 0 17% 31% 0; }
	.impact-gallery__item--2 { inset: 25% 0 5% 48%; }
	.impact-gallery__item--3 { inset: 59% 34% 0 8%; }
	.impact-gallery__seal { width: 82px; right: 3%; }
	.page-story .prose > img, .page-story .prose > p > img, .page-story .prose figure { width: calc(100vw - 28px); }
	.page-closing { min-height: 430px; }
	.search-form { flex-direction: column; }
	.footer-grid { grid-template-columns: 1fr 1fr; }
	.footer-identity { grid-column: 1 / -1; margin-bottom: 16px; }
	.footer-grid > div:last-child { grid-column: auto; }
	.footer-bottom { align-items: flex-start; flex-direction: column; }
}

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

@media print {
	.topbar, .site-header, .site-footer, .hero__actions, .store-band, .cta-band { display: none !important; }
	body, .section--paper, .section--dark { background: #fff !important; color: #000 !important; }
	a { color: #000 !important; text-decoration: underline; }
}
