/* S.C.I.R.T. uses the MP Inova colour tokens and typography from site.css. */
.crumb { padding-block: 24px 8px; font-size: 13px; color: var(--muted); }
.crumb a { text-decoration: none; }
.crumb a:hover { color: var(--orange); }
.scirt-hero { padding-block: 52px 92px; text-align: center; }
.scirt-hero h1 { margin: 18px auto 12px; color: var(--blue); font-size: clamp(56px, 8vw, 106px); }
.scirt-hero h2 { margin: 0 auto 22px; max-width: 920px; font-size: clamp(29px, 4vw, 49px); }
.scirt-tagline { color: var(--muted); font-size: clamp(20px, 2.3vw, 28px); line-height: 1.45; max-width: 850px; margin: 0 auto 16px; }
.scirt-origin { font-size: 13px; color: #697d85; margin-bottom: 42px; }
.scirt-hero figure { margin: 0; }
.scirt-hero img { display: block; max-width: 100%; width: 940px; height: auto; margin-inline: auto; border-radius: 7px; }
.scirt-hero figcaption { color: #74868d; font-size: 12px; margin-top: 14px; }
.scirt-features { background: var(--paper); border-block: 1px solid var(--line); }
.scirt-feature { border-bottom: 1px solid var(--line); }
.scirt-feature:last-child { border-bottom: 0; }
.scirt-feature:nth-child(even) { background: #f7f9f8; }
.scirt-feature-grid { display: grid; grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr); align-items: center; gap: clamp(35px, 6vw, 90px); padding-block: clamp(58px, 7vw, 98px); }
.scirt-feature:nth-child(even) .scirt-feature-copy { order: 2; }
.scirt-feature:nth-child(even) .scirt-feature-media { order: 1; }
.scirt-feature-copy h3 { font-size: clamp(23px, 2.4vw, 32px); line-height: 1.25; letter-spacing: -.025em; margin: 0 0 24px; }
.scirt-feature-copy p { color: #53666e; font-size: clamp(16px, 1.4vw, 18px); line-height: 1.68; margin-bottom: 16px; }
.scirt-feature-copy p:last-child { margin-bottom: 0; }
.scirt-feature-copy h6 { font-size: 16px; line-height: 1.55; font-weight: 500; color: #53666e; margin: 8px 0; }
.scirt-feature-media { min-width: 0; }
.scirt-feature-media > img { display: block; width: 100%; height: auto; max-width: 550px; margin-inline: auto; object-fit: contain; }
.scirt-video iframe { display: block; width: 100%; max-width: 550px; aspect-ratio: 550 / 320; height: auto; border: 0; border-radius: 6px; background: #e8eeee; }
.scirt-video a { display: inline-block; margin-top: 10px; color: var(--blue); font-size: 13px; text-underline-offset: 3px; }
.scirt-contact { background: #e9eeee; padding-block: 72px 84px; }
.scirt-contact .container { display: flex; flex-direction: column; align-items: flex-start; }
.scirt-contact p { color: var(--muted); font-size: 16px; line-height: 1.7; margin-bottom: 32px; }
.scirt-contact h2 { margin: 0 0 19px; }
.scirt-contact a,.scirt-contact span { color: var(--blue); font-size: 17px; font-weight: 650; line-height: 1.8; text-underline-offset: 4px; }
.scirt-footer { padding-block: 29px 42px; color: #667780; font-size: 12px; line-height: 1.55; }
.scirt-footer p { max-width: 900px; }
.scirt-footer a { color: var(--blue); text-underline-offset: 3px; }
@media (max-width: 850px) {
 .scirt-feature-grid { grid-template-columns: 1fr; gap: 30px; }
 .scirt-feature:nth-child(even) .scirt-feature-copy,.scirt-feature:nth-child(even) .scirt-feature-media { order: initial; }
 .scirt-feature-media > img { margin-inline: 0; }
 .scirt-hero { padding-block: 42px 70px; }
}
@media (max-width: 580px) {
 .scirt-hero { padding-block: 35px 56px; }
 .scirt-origin { margin-bottom: 26px; }
 .scirt-feature-grid { padding-block: 54px; }
 .nav { gap: 12px; }
}

.scirt-footer a + a { margin-left: 22px; }
