.t3-page { overflow-x: clip; background: #fff; }
.t3-container { width: min(calc(100% - 48px), 1220px); margin-inline: auto; }
.t3-section { padding-block: clamp(70px, 7vw, 104px); }
.t3-section--soft { background: linear-gradient(180deg, #fbf9fc 0%, #fff 100%); }
.t3-kicker,
.t3-eyebrow { margin: 0 0 14px; color: var(--color-brand); font-size: .73rem; font-weight: 850; letter-spacing: .15em; line-height: 1.4; text-transform: uppercase; }
.t3-heading { max-width: 800px; margin-bottom: 40px; }
.t3-heading--center { margin-inline: auto; text-align: center; }
.t3-heading h2 { margin-bottom: 14px; font-size: clamp(2rem, 3.5vw, 3.35rem); }
.t3-heading p:last-child { max-width: 680px; margin-bottom: 0; color: var(--color-copy); }
.t3-heading--center p:last-child { margin-inline: auto; }
.t3-button { position: relative; display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: 10px; padding: 12px 22px; border: 1px solid rgba(100, 0, 106, .2); border-radius: 9px; background: var(--gradient-brand); color: #fff; font-size: .9rem; font-weight: 800; box-shadow: var(--shadow-brand); transition: transform .2s ease, box-shadow .3s ease; }
.t3-button:hover { transform: translateY(-2px); box-shadow: 0 18px 38px rgba(139, 0, 143, .27); }
.t3-button--outline { background: #fff; color: var(--color-brand); box-shadow: var(--shadow-xs); }
.t3-button--light { border-color: rgba(255,255,255,.7); background: #fff; color: var(--color-brand); box-shadow: 0 14px 30px rgba(42,0,48,.18); }

/* Hero */
.t3-hero { position: relative; overflow: hidden; padding-block: clamp(62px, 7vw, 96px) 54px; background: radial-gradient(circle at 82% 32%, rgba(216,59,186,.09), transparent 27%), linear-gradient(135deg, #fff 54%, #fbf5fc); }
.t3-hero::before { position: absolute; inset: 0; background-image: linear-gradient(rgba(159,0,159,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(159,0,159,.035) 1px, transparent 1px); background-size: 54px 54px; content: ""; mask-image: linear-gradient(90deg, transparent 38%, #000 80%, transparent); }
.t3-hero__grid { position: relative; display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(40px, 6vw, 90px); }
.t3-hero__copy { position: relative; z-index: 3; }
.t3-hero h1 { max-width: 640px; margin-bottom: 22px; font-size: clamp(2.7rem, 5vw, 5.2rem); }
.t3-hero h1 span { color: var(--color-brand); }
.t3-hero__lead { max-width: 600px; margin-bottom: 16px; color: var(--color-copy); font-size: clamp(1.03rem, 1.5vw, 1.25rem); line-height: 1.55; }
.t3-hero__statement { max-width: 560px; margin-bottom: 26px; color: var(--color-brand-dark); font-weight: 750; }
.t3-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.t3-hero__visual { position: relative; min-height: 490px; }
.t3-hero__visual::before,
.t3-hero__visual::after { position: absolute; border: 1px solid rgba(159,0,159,.15); border-radius: 50%; content: ""; }
.t3-hero__visual::before { inset: 35px 60px 40px 80px; }
.t3-hero__visual::after { inset: 95px 120px 100px 145px; }
.t3-decision-orbit { position: absolute; top: 50%; left: 50%; z-index: 2; display: grid; width: 126px; height: 126px; place-items: center; border: 12px solid rgba(255,255,255,.82); border-radius: 50%; background: radial-gradient(circle at 35% 30%, #cf3ac2, #78007c 66%); box-shadow: 0 22px 60px rgba(127,0,132,.3), 0 0 0 1px rgba(159,0,159,.14); transform: translate(-50%, -50%); }
.t3-decision-orbit .semantic-icon { width: 50px; height: 50px; filter: brightness(0) invert(1); }
.t3-model-chip { position: absolute; z-index: 3; width: min(270px, 43%); overflow: hidden; border: 1px solid rgba(132,87,144,.18); border-radius: 16px; background: rgba(255,255,255,.94); box-shadow: var(--shadow-md); }
.t3-model-chip img { width: 100%; height: 115px; object-fit: cover; }
.t3-model-chip div { padding: 13px 15px 15px; }
.t3-model-chip strong { display: block; color: var(--color-brand); font-size: .9rem; }
.t3-model-chip small { display: block; margin-top: 3px; color: var(--color-copy); line-height: 1.35; }
.t3-model-chip--internal { top: 0; left: 3%; }
.t3-model-chip--outsourced { right: 0; bottom: 0; }
.t3-model-chip--hybrid { top: 8%; right: 0; }
.t3-model-chip--outsourced { left: 8%; }

/* Trust and local navigation */
.t3-trust { padding-block: 30px 38px; border-top: 1px solid var(--color-line); border-bottom: 1px solid var(--color-line); }
.t3-trust h2 { margin-bottom: 21px; color: #19234a; font-size: .75rem; letter-spacing: .17em; text-align: center; text-transform: uppercase; }
.t3-page-nav { position: sticky; top: 68px; z-index: 40; border-bottom: 1px solid var(--color-line); background: rgba(255,255,255,.92); backdrop-filter: blur(18px); }
.t3-page-nav .t3-container { display: flex; align-items: center; gap: 26px; overflow-x: auto; scrollbar-width: none; }
.t3-page-nav a { flex: 0 0 auto; padding-block: 15px; color: var(--color-copy); font-size: .79rem; font-weight: 720; }
.t3-page-nav a:hover { color: var(--color-brand); }
.t3-page-nav__cta { margin-left: auto; color: var(--color-brand) !important; }

/* Decision criteria */
.t3-decision-section { padding-top: 38px; padding-bottom: 0; }
.t3-decision-panel { position: relative; overflow: hidden; padding: clamp(30px, 4vw, 54px); border-radius: 20px; color: #fff; background: var(--gradient-dark); box-shadow: var(--shadow-md); }
.t3-decision-panel::after { position: absolute; right: -110px; bottom: -180px; width: 430px; height: 430px; border-radius: 50%; background: radial-gradient(circle, rgba(219,62,199,.25), transparent 63%); content: ""; }
.t3-decision-panel > div:first-child { position: relative; z-index: 2; max-width: 830px; margin-inline: auto; text-align: center; }
.t3-decision-panel h2 { margin-bottom: 10px; font-size: clamp(1.75rem, 3.1vw, 3rem); }
.t3-decision-panel p:last-child { color: #c6cad8; }
.t3-capability-flow { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; margin: 34px 0 0; padding: 0; list-style: none; }
.t3-capability-flow li { position: relative; min-width: 0; padding: 22px 12px; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; background: rgba(255,255,255,.045); text-align: center; }
.t3-capability-flow li:not(:last-child)::after { position: absolute; top: 50%; right: -10px; z-index: 3; color: #e465d2; content: "›"; transform: translateY(-50%); }
.t3-capability-flow .semantic-icon { width: 28px; height: 28px; margin: 0 auto 9px; filter: brightness(0) invert(1); opacity: .86; }
.t3-capability-flow strong,
.t3-capability-flow small { display: block; }
.t3-capability-flow small { margin-top: 4px; color: #aeb4c8; font-size: .72rem; line-height: 1.35; }

/* Objective */
.t3-objectives { display: grid; grid-template-columns: repeat(5, 1fr); border: 1px solid var(--color-line); border-radius: 18px; box-shadow: var(--shadow-xs); }
.t3-objectives article { min-width: 0; padding: 29px 22px; text-align: center; }
.t3-objectives article + article { border-left: 1px solid var(--color-line); }
.t3-objectives .semantic-icon { width: 38px; height: 38px; margin: 0 auto 14px; }
.t3-objectives h3 { margin-bottom: 8px; font-size: 1rem; letter-spacing: -.02em; }
.t3-objectives p { margin: 0; color: var(--color-copy); font-size: .82rem; }
.t3-scope-strip { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 9px; margin-top: 18px; padding: 15px; border-radius: 12px; background: var(--color-brand-soft); }
.t3-scope-strip strong { margin-right: 4px; color: var(--color-brand-dark); font-size: .82rem; }
.t3-scope-strip span { padding: 7px 10px; border: 1px solid rgba(159,0,159,.12); border-radius: 99px; background: #fff; color: var(--color-copy); font-size: .74rem; }
.t3-principle { max-width: 900px; margin: 22px auto 0; color: var(--color-copy); font-size: .88rem; text-align: center; }

/* Comparison */
.t3-table-wrap { overflow-x: auto; border: 1px solid var(--color-line-strong); border-radius: 18px; background: #fff; box-shadow: var(--shadow-sm); }
.t3-comparison-table { width: 100%; min-width: 920px; border-collapse: separate; border-spacing: 0; font-size: .82rem; }
.t3-comparison-table th,
.t3-comparison-table td { padding: 15px 18px; border-right: 1px solid var(--color-line); border-bottom: 1px solid var(--color-line); text-align: left; vertical-align: middle; }
.t3-comparison-table tr:last-child > * { border-bottom: 0; }
.t3-comparison-table tr > *:last-child { border-right: 0; }
.t3-comparison-table thead th { color: #fff; background: #6f0875; }
.t3-comparison-table thead th:first-child { color: var(--color-copy); background: #f6f1f7; }
.t3-comparison-table thead th:nth-child(3) { background: var(--gradient-brand); }
.t3-comparison-table thead span,
.t3-comparison-table thead small { display: block; }
.t3-comparison-table thead span { font-size: .98rem; }
.t3-comparison-table thead small { margin-top: 4px; color: rgba(255,255,255,.73); font-weight: 450; line-height: 1.35; }
.t3-comparison-table tbody th { position: sticky; left: 0; z-index: 2; width: 145px; background: #fbf9fc; color: var(--color-ink); }
.t3-comparison-table tbody td:nth-child(3) { background: rgba(159,0,159,.027); font-weight: 650; }
.t3-context-note { display: flex; max-width: 700px; align-items: center; justify-content: center; gap: 10px; margin: 18px auto 44px; color: var(--color-brand-dark); font-size: .86rem; font-weight: 700; text-align: center; }
.t3-context-note .semantic-icon { flex: 0 0 auto; width: 22px; height: 22px; }
.t3-models-detail { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.t3-model-detail { overflow: hidden; border: 1px solid var(--color-line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-xs); transition: transform .25s ease, box-shadow .25s ease; }
.t3-model-detail:hover { transform: translateY(-4px); box-shadow: var(--shadow-sm); }
.t3-model-detail figure { margin: 0; }
.t3-model-detail img { width: 100%; height: 185px; object-fit: cover; }
.t3-model-detail > div { padding: 23px; }
.t3-model-detail h3 { min-height: 2.2em; margin-bottom: 14px; font-size: 1.17rem; letter-spacing: -.025em; }
.t3-model-detail ul { min-height: 92px; margin: 0 0 18px; padding-left: 18px; color: var(--color-copy); font-size: .82rem; }
.t3-model-detail a { color: var(--color-brand); font-size: .82rem; font-weight: 800; }

/* Time, cost and knowledge */
.t3-time-cost-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.t3-analysis-card { padding: clamp(25px, 3vw, 38px); border: 1px solid var(--color-line); border-radius: 18px; box-shadow: var(--shadow-xs); }
.t3-analysis-card__head { display: flex; gap: 15px; }
.t3-analysis-card__head .semantic-icon { flex: 0 0 auto; width: 39px; height: 39px; }
.t3-analysis-card h3 { margin-bottom: 8px; font-size: 1.35rem; }
.t3-analysis-card p { color: var(--color-copy); font-size: .84rem; }
.t3-timeline { display: grid; gap: 14px; margin-block: 24px; }
.t3-timeline > div { display: grid; grid-template-columns: 94px repeat(4, 1fr); gap: 5px; align-items: center; }
.t3-timeline strong { font-size: .75rem; }
.t3-timeline span { position: relative; padding: 8px 4px; border-radius: 6px; background: var(--color-brand-soft); color: var(--color-brand-dark); font-size: .65rem; text-align: center; }
.t3-timeline > div:nth-child(2) span { background: #f2e9f9; color: #6030a4; }
.t3-cost-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-block: 24px; }
.t3-cost-grid span { display: grid; min-height: 50px; place-items: center; padding: 8px; border: 1px solid var(--color-line); border-radius: 8px; color: var(--color-copy); font-size: .71rem; text-align: center; }
.t3-knowledge-panel { display: grid; grid-template-columns: .9fr 1.1fr; overflow: hidden; margin-top: 22px; border-radius: 20px; color: #fff; background: var(--gradient-dark); }
.t3-knowledge-panel > div { padding: clamp(30px, 4vw, 52px); }
.t3-knowledge-panel h2 { margin-bottom: 14px; font-size: clamp(1.8rem, 3vw, 2.7rem); }
.t3-knowledge-panel p { color: #bbc0d2; }
.t3-knowledge-panel ul { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; margin: 22px 0 0; padding: 0; list-style: none; }
.t3-knowledge-panel li { position: relative; padding-left: 18px; color: #e2dcec; font-size: .82rem; }
.t3-knowledge-panel li::before { position: absolute; left: 0; color: #f064d2; content: "✓"; }
.t3-knowledge-panel figure { min-height: 100%; margin: 0; }
.t3-knowledge-panel img { width: 100%; height: 100%; object-fit: cover; opacity: .82; }

/* Context and risk */
.t3-situation-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.t3-situation-grid article { padding: 30px; border: 1px solid var(--color-line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-xs); }
.t3-situation-grid article:nth-child(2) { border-color: rgba(159,0,159,.34); box-shadow: 0 18px 45px rgba(112,0,118,.09); }
.t3-situation-grid .semantic-icon { width: 43px; height: 43px; margin-bottom: 18px; }
.t3-situation-grid h3 { margin-bottom: 11px; font-size: 1.3rem; }
.t3-situation-grid p,
.t3-situation-grid li { color: var(--color-copy); font-size: .83rem; }
.t3-situation-grid ul { margin: 18px 0 0; padding-left: 18px; }
.t3-risk-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.t3-risk-card { overflow: hidden; border: 1px solid #f0dce9; border-radius: 18px; background: linear-gradient(135deg, #fff 50%, #fff7fa); }
.t3-risk-card > h3 { margin: 0; padding: 24px 28px; border-bottom: 1px solid #f2dfe9; font-size: 1.35rem; }
.t3-risk-card > ul { margin: 0; padding: 25px 28px 22px 50px; color: var(--color-copy); font-size: .84rem; }
.t3-risk-card > ul li { margin-bottom: 8px; }
.t3-risk-card > ul li::marker { color: #d73778; }
.t3-risk-card > div { padding: 21px 28px; background: #fff3f7; }
.t3-risk-card > div strong { color: #b71f64; font-size: .77rem; text-transform: uppercase; }
.t3-risk-card > div p { margin: 5px 0 0; color: var(--color-copy); font-size: .8rem; }

/* Providers and transition */
.t3-provider-section { padding-top: 0; }
.t3-provider-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 20px; }
.t3-provider-card { padding: clamp(30px, 4vw, 48px); border: 1px solid var(--color-line); border-radius: 20px; box-shadow: var(--shadow-xs); }
.t3-provider-card--dark { color: #fff; background: var(--gradient-dark); }
.t3-provider-card h2 { margin-bottom: 18px; font-size: clamp(1.65rem, 2.6vw, 2.35rem); }
.t3-provider-card ul { columns: 2; gap: 28px; margin: 0 0 27px; padding-left: 18px; color: var(--color-copy); font-size: .82rem; }
.t3-provider-card--dark ul { color: #c5c9d6; }
.t3-provider-card li { break-inside: avoid; margin-bottom: 9px; }
.t3-transition-flow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-block: 24px; }
.t3-transition-flow span { position: relative; padding: 17px 8px; border-radius: 9px; background: var(--color-brand-soft); color: var(--color-brand-dark); font-size: .72rem; font-weight: 750; text-align: center; }
.t3-transition-flow span:not(:last-child)::after { position: absolute; top: 50%; right: -8px; z-index: 2; content: "→"; transform: translateY(-50%); }
.t3-provider-card > p:not(.t3-kicker) { color: var(--color-copy); font-size: .86rem; }
.t3-preserved-assets { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.t3-preserved-assets strong { width: 100%; color: var(--color-brand); font-size: .74rem; text-transform: uppercase; }
.t3-preserved-assets span { padding: 7px 10px; border: 1px solid var(--color-line); border-radius: 99px; font-size: .71rem; }

/* Decision, help and conversion */
.t3-decision-questions { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(30px, 6vw, 80px); align-items: center; }
.t3-decision-questions h2 { font-size: clamp(1.9rem, 3.2vw, 3rem); }
.t3-decision-questions ol { margin: 27px 0 0; padding: 0; counter-reset: question; list-style: none; }
.t3-decision-questions ol li { position: relative; margin-bottom: 13px; padding: 14px 16px 14px 52px; border-bottom: 1px solid var(--color-line); color: var(--color-copy); counter-increment: question; }
.t3-decision-questions ol li::before { position: absolute; top: 11px; left: 4px; display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: var(--color-brand); color: #fff; content: counter(question); font-size: .75rem; font-weight: 800; }
.t3-decision-questions aside { padding: 35px; border: 1px solid var(--color-line); border-radius: 20px; background: #fbf8fc; }
.t3-outcomes { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 22px; }
.t3-outcomes span { padding: 17px; border: 1px solid var(--color-line); border-radius: 10px; background: #fff; color: var(--color-copy); font-size: .75rem; }
.t3-outcomes b { display: block; margin-bottom: 3px; color: var(--color-brand); }
.t3-help-section { padding-top: 0; }
.t3-help-grid { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--color-line); border-radius: 18px; }
.t3-help-grid article { padding: 28px; }
.t3-help-grid article + article { border-left: 1px solid var(--color-line); }
.t3-help-grid .semantic-icon { width: 35px; height: 35px; margin-bottom: 15px; }
.t3-help-grid h3 { margin-bottom: 8px; font-size: 1rem; }
.t3-help-grid p { margin: 0; color: var(--color-copy); font-size: .8rem; }
.t3-recommendation { padding-block: 26px; color: #fff; background: var(--gradient-brand); }
.t3-recommendation__inner { display: flex; align-items: center; justify-content: space-between; gap: 34px; }
.t3-recommendation h2 { margin-bottom: 8px; font-size: clamp(1.55rem, 2.6vw, 2.4rem); }
.t3-recommendation p:last-child { margin-bottom: 0; color: rgba(255,255,255,.8); }
.t3-recommendation .t3-kicker { color: #fff; opacity: .8; }
.t3-faq-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(35px, 6vw, 80px); align-items: start; }
.t3-faq-layout h2 { font-size: clamp(2rem, 3.5vw, 3.2rem); }
.t3-faq { margin-top: 30px; border-top: 1px solid var(--color-line); }
.t3-faq details { border-bottom: 1px solid var(--color-line); }
.t3-faq summary { position: relative; padding: 18px 34px 18px 0; font-weight: 750; cursor: pointer; list-style: none; }
.t3-faq summary::after { position: absolute; top: 16px; right: 4px; color: var(--color-brand); content: "+"; font-size: 1.2rem; }
.t3-faq details[open] summary::after { content: "−"; }
.t3-faq details p { padding: 0 30px 18px 0; color: var(--color-copy); font-size: .86rem; }
.t3-form-card { padding: clamp(27px, 4vw, 43px); border: 1px solid rgba(159,0,159,.38); border-radius: 20px; background: #fff; box-shadow: var(--shadow-md); }
.t3-form-card h2 { margin-bottom: 10px; font-size: clamp(1.6rem, 2.7vw, 2.35rem); }
.t3-form-card > p:not(.t3-kicker) { color: var(--color-copy); font-size: .87rem; }
.t3-form-card form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 24px; }
.t3-form-card label { display: block; margin-bottom: 5px; color: var(--color-brand-dark); font-size: .72rem; font-weight: 750; }
.t3-form-card input,
.t3-form-card select { width: 100%; min-height: 46px; padding: 9px 11px; border: 1px solid #decce0; border-radius: 7px; background: #fff; color: var(--color-ink); }
.t3-form-card input:focus,
.t3-form-card select:focus { border-color: var(--color-brand); outline: 3px solid rgba(159,0,159,.09); }
.t3-form-card button,
.t3-form-note,
.t3-form-feedback { grid-column: 1 / -1; }
.t3-form-card button { width: 100%; margin-top: 3px; border: 0; }
.t3-form-note { display: flex; align-items: center; justify-content: center; gap: 7px; margin: 0; color: var(--color-muted); font-size: .7rem; }
.t3-form-note .semantic-icon { width: 16px; height: 16px; }
.t3-form-feedback { margin: 0; color: var(--color-brand-dark); font-size: .78rem; font-weight: 700; text-align: center; }
.t3-final-cta { position: relative; overflow: hidden; padding-block: 42px; color: #fff; background: var(--gradient-dark); }
.t3-final-cta::after { position: absolute; inset: 0; background: radial-gradient(circle at 85% 50%, rgba(211,47,183,.34), transparent 32%); content: ""; }
.t3-final-cta .t3-container { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 34px; }
.t3-final-cta h2 { margin-bottom: 7px; font-size: clamp(1.7rem, 3vw, 2.8rem); }
.t3-final-cta p:last-child { margin-bottom: 0; color: #bbc0d2; }
.t3-final-cta .t3-kicker { color: #f367d5; }

[data-t3-reveal] { opacity: 0; transform: translateY(18px); transition: opacity .65s var(--ease-standard), transform .65s var(--ease-standard); }
[data-t3-reveal].is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { [data-t3-reveal] { opacity: 1; transform: none; transition: none; } }

@media (max-width: 1020px) {
  .t3-hero__grid { grid-template-columns: 1fr 1fr; gap: 35px; }
  .t3-hero__visual { min-height: 430px; }
  .t3-model-chip { width: 48%; }
  .t3-capability-flow { grid-template-columns: repeat(3, 1fr); }
  .t3-capability-flow li:not(:last-child)::after { display: none; }
  .t3-objectives { grid-template-columns: repeat(3, 1fr); }
  .t3-objectives article + article { border-left: 0; }
  .t3-objectives article { border-bottom: 1px solid var(--color-line); }
  .t3-objectives article:not(:nth-child(3n+1)) { border-left: 1px solid var(--color-line); }
  .t3-models-detail { grid-template-columns: 1fr 1fr; }
  .t3-models-detail article:last-child { grid-column: 1 / -1; display: grid; grid-template-columns: .8fr 1.2fr; }
  .t3-models-detail article:last-child img { height: 100%; }
  .t3-situation-grid article { padding: 24px; }
  .t3-help-grid { grid-template-columns: 1fr 1fr; }
  .t3-help-grid article + article { border-left: 0; }
  .t3-help-grid article:nth-child(even) { border-left: 1px solid var(--color-line); }
  .t3-help-grid article:nth-child(n+3) { border-top: 1px solid var(--color-line); }
}

@media (max-width: 760px) {
  .t3-container { width: min(calc(100% - 32px), 1220px); }
  .t3-section { padding-block: 58px; }
  .t3-heading { margin-bottom: 28px; }
  .t3-hero { padding-top: 42px; }
  .t3-hero__grid { grid-template-columns: 1fr; }
  .t3-hero h1 { font-size: clamp(2.45rem, 11vw, 4rem); }
  .t3-actions { display: grid; }
  .t3-hero__visual { min-height: 470px; margin-top: 10px; }
  .t3-model-chip { width: 49%; }
  .t3-model-chip img { height: 100px; }
  .t3-model-chip--internal { left: 0; }
  .t3-model-chip--hybrid { right: 0; }
  .t3-model-chip--outsourced { bottom: 5px; left: 5%; }
  .t3-decision-orbit { width: 100px; height: 100px; }
  .t3-page-nav { top: 64px; }
  .t3-page-nav .t3-container { width: 100%; padding-inline: 16px; gap: 22px; }
  .t3-page-nav__cta { margin-left: 0; }
  .t3-capability-flow { grid-template-columns: 1fr 1fr; }
  .t3-objectives { grid-template-columns: 1fr 1fr; }
  .t3-objectives article:not(:nth-child(3n+1)) { border-left: 0; }
  .t3-objectives article:nth-child(even) { border-left: 1px solid var(--color-line); }
  .t3-objectives article:last-child { grid-column: 1 / -1; }
  .t3-models-detail { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 12px; }
  .t3-model-detail,
  .t3-models-detail article:last-child { display: block; flex: 0 0 86%; grid-column: auto; scroll-snap-align: start; }
  .t3-model-detail img,
  .t3-models-detail article:last-child img { height: 190px; }
  .t3-time-cost-grid,
  .t3-knowledge-panel,
  .t3-situation-grid,
  .t3-risk-grid,
  .t3-provider-grid,
  .t3-decision-questions,
  .t3-faq-layout { grid-template-columns: 1fr; }
  .t3-knowledge-panel figure { min-height: 260px; order: -1; }
  .t3-knowledge-panel ul { grid-template-columns: 1fr; }
  .t3-provider-card ul { columns: 1; }
  .t3-decision-questions aside { padding: 24px; }
  .t3-recommendation__inner,
  .t3-final-cta .t3-container { align-items: stretch; flex-direction: column; }
  .t3-form-card form { grid-template-columns: 1fr; }
  .t3-form-card form > * { grid-column: 1; }
}

@media (max-width: 500px) {
  .t3-container { width: min(calc(100% - 24px), 1220px); }
  .t3-section { padding-block: 48px; }
  .t3-hero__visual { min-height: 500px; }
  .t3-model-chip { width: 58%; }
  .t3-model-chip--hybrid { top: 15%; }
  .t3-model-chip--outsourced { bottom: 0; left: 2%; }
  .t3-decision-orbit { top: 52%; width: 88px; height: 88px; border-width: 8px; }
  .t3-decision-orbit .semantic-icon { width: 38px; height: 38px; }
  .t3-capability-flow { grid-template-columns: 1fr 1fr; gap: 7px; }
  .t3-capability-flow li { padding: 18px 9px; }
  .t3-objectives { grid-template-columns: 1fr; }
  .t3-objectives article,
  .t3-objectives article:nth-child(even) { border-left: 0; }
  .t3-objectives article:last-child { grid-column: auto; }
  .t3-timeline > div { grid-template-columns: 1fr 1fr; }
  .t3-timeline strong { grid-column: 1 / -1; }
  .t3-cost-grid { grid-template-columns: 1fr 1fr; }
  .t3-transition-flow { grid-template-columns: 1fr 1fr; }
  .t3-transition-flow span:not(:last-child)::after { display: none; }
  .t3-outcomes { grid-template-columns: 1fr; }
  .t3-help-grid { grid-template-columns: 1fr; }
  .t3-help-grid article:nth-child(even) { border-left: 0; }
  .t3-help-grid article + article { border-top: 1px solid var(--color-line); }
  .t3-form-card { padding: 23px 18px; }
}

/* T3 mobile polish */
@media (max-width: 760px) {
  .t3-section { padding-block: 50px; }
  .t3-page-nav { position: relative; top: auto; }
  .t3-page-nav .t3-container { scroll-snap-type: x proximity; }
  .t3-page-nav a { flex: 0 0 auto; white-space: nowrap; scroll-snap-align: start; }
  .t3-hero { padding-top: 30px; }
  .t3-hero h1 { font-size: clamp(2.2rem, 9.6vw, 3.1rem); line-height: 1.03; }
  .t3-actions { gap: 10px; }
  .t3-actions .t3-button { width: 100%; }
  .t3-hero__visual { display: grid; min-height: 0; gap: 10px; padding: 16px; border-radius: 20px; }
  .t3-decision-orbit { position: relative; top: auto; left: auto; grid-column: 1 / -1; grid-row: 1; width: 92px; height: 92px; justify-self: center; transform: none; }
  .t3-model-chip { position: relative; top: auto !important; right: auto !important; bottom: auto !important; left: auto !important; width: 100%; }
  .t3-model-chip img { height: 130px; }
  .t3-capability-flow, .t3-objectives { grid-template-columns: 1fr; gap: 8px; }
  .t3-objectives article:last-child { grid-column: auto; }
  .t3-models-detail { margin-inline: -16px; padding-inline: 16px; }
  .t3-model-detail, .t3-models-detail article:last-child { flex-basis: min(84vw, 350px); }
  .t3-form-card input, .t3-form-card select, .t3-form-card textarea { min-height: 48px; }
}

@media (max-width: 420px) {
  .t3-cost-grid, .t3-transition-flow, .t3-timeline > div { grid-template-columns: 1fr; }
}
