:root {
  --so-red: #e20b17;
  --so-red-dark: #b90812;
  --so-ink: #101417;
  --so-slate: #53606a;
  --so-line: #dfe4e7;
  --so-soft: #f3f5f6;
  --so-white: #fff;
  --so-radius: 18px;
  --so-shadow: 0 24px 70px rgba(16, 20, 23, .12);
}

.so-content-shell { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.so-eyebrow { display: inline-flex; align-items: center; gap: 10px; color: var(--so-red); font-size: .78rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.so-eyebrow::before { content: ""; width: 28px; height: 2px; background: currentColor; }
.so-section-heading { max-width: 720px; margin-bottom: 40px; }
.so-section-heading h1, .so-contact h1, .so-news-single h1 { margin: 12px 0 16px; color: var(--so-ink); font-size: clamp(2.2rem, 5vw, 4.6rem); line-height: .98; letter-spacing: -.045em; }
.so-section-heading p, .so-contact__intro > p { color: var(--so-slate); font-size: 1.08rem; line-height: 1.75; }
.so-news-listing, .so-contact, .so-news-single { padding-block: clamp(90px, 10vw, 150px); }

.so-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.so-news-card { overflow: hidden; display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--so-line); border-radius: var(--so-radius); background: var(--so-white); box-shadow: 0 12px 32px rgba(16, 20, 23, .06); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.so-news-card:hover { transform: translateY(-5px); border-color: rgba(226, 11, 23, .28); box-shadow: var(--so-shadow); }
.so-news-card__media { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #171c20; }
.so-news-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.so-news-card:hover .so-news-card__media img { transform: scale(1.035); }
.so-news-card__placeholder { display: grid; width: 100%; height: 100%; place-items: center; color: rgba(255,255,255,.12); font-size: 5rem; font-weight: 900; letter-spacing: -.08em; }
.so-news-card__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 26px; }
.so-news-card__meta { display: flex; align-items: center; gap: 12px; color: #6c767e; font-size: .78rem; font-weight: 700; }
.so-badge { display: inline-flex; padding: 6px 9px; border-radius: 99px; background: rgba(226, 11, 23, .09); color: var(--so-red-dark); text-transform: uppercase; letter-spacing: .08em; }
.so-news-card__title { margin: 18px 0 10px; font-size: 1.42rem; line-height: 1.15; letter-spacing: -.025em; }
.so-news-card__title a { color: var(--so-ink); text-decoration: none; }
.so-news-card__body p { margin: 0 0 24px; color: var(--so-slate); line-height: 1.65; }
.so-text-link { margin-top: auto; color: var(--so-red-dark); font-weight: 800; text-decoration: none; }
.so-text-link span { display: inline-block; transition: transform .2s ease; }
.so-text-link:hover span { transform: translateX(4px); }
.so-empty-state { padding: 56px; border: 1px dashed #cbd2d7; border-radius: var(--so-radius); background: var(--so-soft); text-align: center; }
.so-pagination { display: flex; justify-content: center; gap: 8px; margin-top: 44px; }
.so-pagination .page-numbers { display: grid; min-width: 42px; height: 42px; padding-inline: 12px; place-items: center; border: 1px solid var(--so-line); border-radius: 9px; color: var(--so-ink); text-decoration: none; }
.so-pagination .current { border-color: var(--so-red); background: var(--so-red); color: var(--so-white); }

.so-contact { display: grid; grid-template-columns: minmax(0, .8fr) minmax(520px, 1.2fr); gap: clamp(50px, 8vw, 110px); align-items: start; }
.so-contact__intro { position: sticky; top: 120px; }
.so-contact__promise { display: grid; gap: 5px; margin-top: 34px; padding: 24px; border-left: 4px solid var(--so-red); background: var(--so-soft); }
.so-contact__promise a { color: var(--so-red-dark); font-weight: 800; text-decoration: none; }
.so-contact__panel { padding: clamp(24px, 4vw, 48px); border: 1px solid var(--so-line); border-radius: 24px; background: var(--so-white); box-shadow: var(--so-shadow); }
.so-inquiry-form { display: grid; gap: 30px; }
.so-inquiry-form fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.so-inquiry-form legend { width: 100%; margin-bottom: 18px; padding: 0 0 12px; border-bottom: 1px solid var(--so-line); color: var(--so-ink); font-size: 1.12rem; font-weight: 850; }
.so-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.so-field { min-width: 0; }
.so-field--wide { grid-column: 1 / -1; }
.so-field label { display: block; margin-bottom: 8px; color: #252c31; font-size: .88rem; font-weight: 760; }
.so-field__hint { color: #727d85; font-weight: 500; }
.so-field input, .so-field select, .so-field textarea { width: 100%; min-height: 50px; box-sizing: border-box; padding: 12px 14px; border: 1px solid #cfd6da; border-radius: 10px; background: #fff; color: var(--so-ink); font: inherit; transition: border-color .2s ease, box-shadow .2s ease; }
.so-field textarea { min-height: 130px; resize: vertical; }
.so-field input:focus, .so-field select:focus, .so-field textarea:focus { outline: 0; border-color: var(--so-red); box-shadow: 0 0 0 4px rgba(226, 11, 23, .1); }
.so-document-upload { display: grid; gap: 14px; }
.so-document-upload--vehicle-first { margin-bottom: 24px; }
.so-document-note { display: grid; padding: 17px 18px; grid-template-columns: 44px minmax(0, 1fr); align-items: start; gap: 14px; border: 1px solid rgba(226, 11, 23, .2); border-radius: 13px; background: linear-gradient(135deg, rgba(226, 11, 23, .075), rgba(226, 11, 23, .025)); }
.so-document-note__icon { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 11px; background: var(--so-red); color: #fff; box-shadow: 0 9px 22px rgba(226, 11, 23, .2); }
.so-document-note__icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.so-document-note strong { display: block; margin: 1px 0 5px; color: var(--so-ink); font-size: .95rem; }
.so-document-note p { margin: 0; color: #59656c; font-size: .83rem; line-height: 1.58; }
.so-document-status:not([hidden]) { display: flex; margin: 0; align-items: center; gap: 9px; color: #23643a; font-size: .82rem; font-weight: 750; line-height: 1.45; }
.so-document-status::before { display: grid; width: 22px; height: 22px; flex: 0 0 auto; place-items: center; border-radius: 50%; background: #daf3e2; content: "✓"; font-size: .76rem; font-weight: 900; }
.so-year-document-reminder:not([hidden]) { display: flex; margin: 16px 0 0; padding: 13px 15px; align-items: flex-start; gap: 10px; border: 1px solid rgba(226,11,23,.2); border-radius: 10px; background: rgba(226,11,23,.055); color: #5c3033; font-size: .82rem; font-weight: 650; line-height: 1.55; }
.so-year-document-reminder::before { display: grid; width: 22px; height: 22px; flex: 0 0 auto; place-items: center; border-radius: 50%; background: var(--so-red); color: #fff; content: "i"; font-size: .76rem; font-weight: 900; }
.so-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.so-choice { display: flex; align-items: flex-start; gap: 10px; padding: 14px; border: 1px solid var(--so-line); border-radius: 10px; cursor: pointer; }
.so-choice:has(input:checked) { border-color: rgba(226, 11, 23, .55); background: rgba(226, 11, 23, .045); }
.so-choice input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--so-red); }
.so-consent { display: flex; align-items: flex-start; gap: 12px; color: var(--so-slate); font-size: .87rem; line-height: 1.55; }
.so-consent input { width: 18px; height: 18px; flex: 0 0 auto; margin-top: 2px; accent-color: var(--so-red); }
.so-consent a { color: var(--so-red-dark); }
.so-required-note { margin: -14px 0 0; color: #6c767e; font-size: .78rem; }
.so-button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; padding: 13px 22px; border: 0; border-radius: 10px; font: inherit; font-weight: 850; text-decoration: none; cursor: pointer; transition: transform .2s ease, background .2s ease, box-shadow .2s ease; }
.so-button:hover { transform: translateY(-2px); }
.so-button--primary { background: var(--so-red); color: #fff; box-shadow: 0 12px 28px rgba(226, 11, 23, .23); }
.so-button--primary:hover { background: var(--so-red-dark); color: #fff; }
.so-form-notice { display: grid; gap: 5px; margin-bottom: 26px; padding: 18px 20px; border-radius: 12px; }
.so-form-notice--success { border: 1px solid #86d7a1; background: #ecfdf3; color: #155b2e; }
.so-form-notice--error { border: 1px solid #f2a6a6; background: #fff0f0; color: #821d1d; }
.so-form-notice ul { margin: 8px 0 0 20px; padding: 0; }
.so-hp { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

.so-news-single { max-width: 900px; }
.so-back-link { display: inline-flex; margin-bottom: 34px; color: var(--so-red-dark); font-weight: 800; text-decoration: none; }
.so-news-single__header { max-width: 820px; }
.so-news-single__lead { color: var(--so-slate); font-size: 1.3rem; line-height: 1.65; }
.so-news-single__image { overflow: hidden; margin: 42px 0; border-radius: var(--so-radius); }
.so-news-single__image img { display: block; width: 100%; height: auto; }
.so-richtext { color: #30383e; font-size: 1.08rem; line-height: 1.8; }
.so-richtext h2, .so-richtext h3 { margin-top: 1.7em; color: var(--so-ink); letter-spacing: -.02em; }
.so-richtext a { color: var(--so-red-dark); }
.so-inline-cta { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 64px; padding: 34px; border-radius: var(--so-radius); background: #151a1e; color: #fff; }
.so-inline-cta h2 { margin: 8px 0 0; color: #fff; }

.so-news-single:has(.so-md1-news) { max-width: 1180px; }
.so-md1-news { margin-top: 10px; }
.so-news-highlight { position: relative; margin: 0 0 26px; padding: clamp(30px,5vw,58px); overflow: hidden; border-radius: 20px; background: #12181c; color: #fff; }
.so-news-highlight::after { position: absolute; right: -90px; bottom: -140px; width: 320px; height: 320px; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; content: ""; box-shadow: 0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.015); }
.so-news-highlight > span { position: relative; z-index: 1; color: #ff3341; font-size: .7rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.so-news-highlight h2 { position: relative; z-index: 1; max-width: 820px; margin: 18px 0 20px; color: #fff !important; font-size: clamp(2.2rem,5vw,4.8rem); line-height: .92; letter-spacing: -.055em; }
.so-news-highlight p { position: relative; z-index: 1; max-width: 760px; margin: 0; color: rgba(255,255,255,.62); font-size: 1rem; line-height: 1.75; }
.so-news-focus { display: grid; margin: 0 0 60px; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }
.so-news-focus article { min-height: 225px; padding: 27px; border: 1px solid var(--so-line); border-radius: 15px; background: var(--so-soft); }
.so-news-focus small { color: var(--so-red); font-size: .67rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.so-news-focus h3 { margin: 58px 0 11px !important; font-size: 1.45rem; }
.so-news-focus p { margin: 0; color: var(--so-slate); font-size: .86rem; line-height: 1.65; }
.so-news-trademark-note { margin: 20px 0 0; color: var(--so-slate); font-size: .72rem; line-height: 1.6; }
.so-news-list-head { display: flex; margin: 75px 0 32px; align-items: end; justify-content: space-between; gap: 35px; }
.so-news-list-head h2 { margin: 12px 0 0 !important; font-size: clamp(2.3rem,5vw,4.6rem); line-height: .95; letter-spacing: -.05em; }
.so-compatibility-search { width: min(390px,100%); }
.so-compatibility-search label { display: block; margin-bottom: 9px; color: var(--so-ink); font-size: .78rem; font-weight: 800; }
.so-compatibility-search input { width: 100%; min-height: 52px; padding: 13px 16px; border: 1px solid #ccd5da; border-radius: 11px; background: #fff; color: var(--so-ink); font: inherit; }
.so-compatibility-search input:focus { outline: 0; border-color: var(--so-red); box-shadow: 0 0 0 4px rgba(226,11,23,.1); }
.so-compatibility-empty { margin: 10px 0 0; color: var(--so-red-dark); font-size: .8rem; font-weight: 750; }
.so-compatibility-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.so-compatibility-card { min-height: 250px; padding: 27px; border: 1px solid var(--so-line); border-radius: 16px; background: #fff; box-shadow: 0 12px 32px rgba(16,20,23,.045); }
.so-compatibility-card[hidden] { display: none; }
.so-compatibility-card header { display: flex; margin-bottom: 26px; align-items: center; justify-content: space-between; gap: 18px; }
.so-compatibility-card header span { color: var(--so-red); font-size: .68rem; font-weight: 900; letter-spacing: .13em; }
.so-compatibility-card h3 { margin: 0 !important; font-size: 1.4rem; }
.so-compatibility-card dl,.so-compatibility-card dl div { margin: 0; }
.so-compatibility-card dl { display: grid; gap: 18px; }
.so-compatibility-card dl div { padding-top: 15px; border-top: 1px solid var(--so-line); }
.so-compatibility-card dt { margin-bottom: 5px; color: #7b878e; font-size: .66rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.so-compatibility-card dd { margin: 0; color: var(--so-slate); font-size: .86rem; line-height: 1.65; }
.so-news-compatibility-note { margin: 28px 0 0; padding: 22px 0 0; border-top: 1px solid var(--so-line); color: var(--so-slate); font-size: .8rem; line-height: 1.65; }
.so-news-compatibility-note strong { color: var(--so-ink); }

.so-news-single:has(.so-rsg-news) { max-width: 1180px; }
.so-rsg-news { margin-top: 10px; }
.so-rsg-facts { display: grid; margin: 0 0 clamp(62px,8vw,95px); grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }
.so-rsg-facts article { position: relative; min-height: 270px; padding: 30px; overflow: hidden; border: 1px solid var(--so-line); border-radius: 16px; background: var(--so-soft); }
.so-rsg-facts article::after { position: absolute; width: 95px; height: 3px; right: 30px; bottom: 0; background: var(--so-red); content: ""; }
.so-rsg-facts small { color: var(--so-red); font-size: .68rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.so-rsg-facts h3 { margin: 72px 0 13px !important; font-size: 1.45rem; line-height: 1.08; }
.so-rsg-facts p { margin: 0; color: var(--so-slate); font-size: .88rem; line-height: 1.68; }
.so-rsg-explainer { display: grid; margin-bottom: clamp(70px,9vw,110px); grid-template-columns: minmax(0,.83fr) minmax(420px,1.17fr); align-items: center; gap: clamp(36px,7vw,90px); }
.so-rsg-explainer h2,.so-rsg-effect__heading h2,.so-rsg-models-head h2 { margin: 18px 0 24px !important; font-size: clamp(2.35rem,5vw,4.65rem); line-height: .94; letter-spacing: -.052em; }
.so-rsg-explainer > div > p { color: var(--so-slate); line-height: 1.8; }
.so-rsg-explainer figure { position: relative; margin: 0; }
.so-rsg-explainer figure::before { position: absolute; z-index: -1; width: 72%; height: 72%; right: -22px; bottom: -22px; border-radius: 18px; background: var(--so-red); content: ""; opacity: .08; }
.so-rsg-explainer img { display: block; width: 100%; border-radius: 18px; box-shadow: 0 28px 70px rgba(16,20,23,.18); }
.so-rsg-explainer figcaption { margin-top: 13px; color: #78838a; font-size: .72rem; line-height: 1.55; }
.so-rsg-effect { margin-bottom: clamp(70px,9vw,110px); padding: clamp(30px,5vw,58px); border-radius: 22px; background: #11171a; color: #fff; }
.so-rsg-effect__heading { max-width: 760px; }
.so-rsg-effect__heading h2 { color: #fff !important; }
.so-rsg-effect__grid { display: grid; margin-top: 42px; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid rgba(255,255,255,.12); }
.so-rsg-effect__grid article { min-height: 230px; padding: 28px 24px 5px; border-right: 1px solid rgba(255,255,255,.12); }
.so-rsg-effect__grid article:first-child { padding-left: 0; }
.so-rsg-effect__grid article:last-child { padding-right: 0; border-right: 0; }
.so-rsg-effect__grid span { color: #ff3341; font-size: .68rem; font-weight: 900; letter-spacing: .13em; }
.so-rsg-effect__grid h3 { margin: 62px 0 13px !important; color: #fff !important; font-size: 1.25rem; }
.so-rsg-effect__grid p { margin: 0; color: rgba(255,255,255,.58); font-size: .83rem; line-height: 1.65; }
.so-rsg-models-head { max-width: 880px; margin-bottom: 42px; }
.so-rsg-models-head > p { max-width: 800px; color: var(--so-slate); line-height: 1.75; }
.so-rsg-brand-grid { display: grid; grid-template-columns: 1.3fr .9fr; gap: 15px; }
.so-rsg-brand-card { overflow: hidden; border: 1px solid var(--so-line); border-radius: 18px; background: #fff; box-shadow: 0 14px 38px rgba(16,20,23,.055); }
.so-rsg-brand-card header { display: flex; padding: 28px 30px; align-items: flex-end; justify-content: space-between; gap: 20px; border-bottom: 1px solid var(--so-line); background: linear-gradient(145deg,#fff,#f3f6f7); }
.so-rsg-brand-card header span { color: var(--so-red); font-size: .7rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.so-rsg-brand-card header h3 { margin: 0 !important; font-size: 1.35rem; }
.so-rsg-brand-card ul { margin: 0; padding: 0; list-style: none; }
.so-rsg-brand-card li { display: grid; padding: 20px 30px; grid-template-columns: minmax(0,1fr) auto; column-gap: 18px; border-bottom: 1px solid var(--so-line); }
.so-rsg-brand-card li:last-child { border-bottom: 0; }
.so-rsg-brand-card li strong { color: var(--so-ink); font-size: .96rem; }
.so-rsg-brand-card li > span { align-self: center; padding: 4px 7px; border-radius: 6px; background: rgba(226,11,23,.08); color: var(--so-red-dark); font-size: .67rem; font-weight: 850; }
.so-rsg-brand-card li small { margin-top: 6px; grid-column: 1 / -1; color: var(--so-slate); font-size: .76rem; line-height: 1.55; }
.so-rsg-generation-note { display: grid; margin-top: 16px; padding: 26px 30px; grid-template-columns: minmax(190px,.36fr) minmax(0,1fr); gap: 30px; border: 1px solid rgba(226,11,23,.22); border-radius: 16px; background: rgba(226,11,23,.045); }
.so-rsg-generation-note strong { color: var(--so-ink); }
.so-rsg-generation-note p { margin: 0; color: var(--so-slate); font-size: .83rem; line-height: 1.65; }
.so-rsg-cta { display: flex; margin-top: 40px; padding: 27px 30px; align-items: center; justify-content: space-between; gap: 24px; border-radius: 16px; background: var(--so-red); color: #fff !important; text-decoration: none; box-shadow: 0 18px 40px rgba(226,11,23,.22); transition: transform .22s ease, background .22s ease; }
.so-rsg-cta:hover { transform: translateY(-3px); background: var(--so-red-dark); }
.so-rsg-cta span { display: grid; gap: 5px; }
.so-rsg-cta small { color: rgba(255,255,255,.72); font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.so-rsg-cta strong { font-size: 1.2rem; }
.so-rsg-cta i { font-size: 1.6rem; font-style: normal; }
.so-tool-release-actions { display: grid; margin-top: 40px; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.so-tool-release-actions .so-rsg-cta { min-width: 0; margin-top: 0; }
.so-tool-release-actions .so-rsg-cta strong { line-height: 1.25; }

.so-news-single:has(.so-md1cs014-news) { max-width: 1180px; }
.so-md1cs014-news { margin-top: 10px; }
.so-md1cs014-intro { display: grid; margin: 0 0 clamp(70px,9vw,110px); grid-template-columns: minmax(0,.86fr) minmax(420px,1.14fr); align-items: center; gap: clamp(38px,7vw,88px); }
.so-md1cs014-intro h2,.so-md1cs014-features header h2,.so-md1cs014-models-head h2 { margin: 18px 0 24px !important; font-size: clamp(2.35rem,5vw,4.65rem); line-height: .94; letter-spacing: -.052em; }
.so-md1cs014-intro > div > p,.so-md1cs014-models-head > p { color: var(--so-slate); line-height: 1.8; }
.so-md1cs014-intro figure { position: relative; margin: 0; }
.so-md1cs014-intro figure::before { position: absolute; z-index: -1; width: 72%; height: 72%; right: -22px; bottom: -22px; border-radius: 18px; background: var(--so-red); content: ""; opacity: .08; }
.so-md1cs014-intro img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 18px; box-shadow: 0 28px 70px rgba(16,20,23,.18); }
.so-md1cs014-intro figcaption { margin-top: 13px; color: #78838a; font-size: .72rem; line-height: 1.55; }
.so-md1cs014-features { margin-bottom: clamp(70px,9vw,110px); padding: clamp(30px,5vw,58px); border-radius: 22px; background: #11171a; color: #fff; }
.so-md1cs014-features > header { max-width: 820px; }
.so-md1cs014-features > header h2 { color: #fff !important; }
.so-md1cs014-feature-grid { display: grid; margin-top: 42px; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid rgba(255,255,255,.12); }
.so-md1cs014-feature-grid article { min-height: 230px; padding: 28px 25px 8px; border-right: 1px solid rgba(255,255,255,.12); border-bottom: 1px solid rgba(255,255,255,.12); }
.so-md1cs014-feature-grid article:nth-child(3n+1) { padding-left: 0; }
.so-md1cs014-feature-grid article:nth-child(3n) { padding-right: 0; border-right: 0; }
.so-md1cs014-feature-grid article:nth-last-child(-n+3) { border-bottom: 0; }
.so-md1cs014-feature-grid article > span { color: #ff3341; font-size: .68rem; font-weight: 900; letter-spacing: .13em; }
.so-md1cs014-feature-grid h3 { margin: 54px 0 13px !important; color: #fff !important; font-size: 1.25rem; line-height: 1.12; }
.so-md1cs014-feature-grid p { margin: 0; color: rgba(255,255,255,.6); font-size: .83rem; line-height: 1.65; }
.so-md1cs014-models-head { max-width: 880px; margin-bottom: 42px; }
.so-md1cs014-model-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 15px; }
.so-md1cs014-model-card { overflow: hidden; border: 1px solid var(--so-line); border-radius: 18px; background: #fff; box-shadow: 0 14px 38px rgba(16,20,23,.055); }
.so-md1cs014-model-card header { display: flex; padding: 28px 30px; align-items: flex-end; justify-content: space-between; gap: 20px; border-bottom: 1px solid var(--so-line); background: linear-gradient(145deg,#fff,#f3f6f7); }
.so-md1cs014-model-card header span { color: var(--so-red); font-size: .7rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.so-md1cs014-model-card header h3 { margin: 0 !important; font-size: 1.35rem; }
.so-md1cs014-model-card ul { margin: 0; padding: 0; list-style: none; }
.so-md1cs014-model-card li { display: grid; padding: 19px 30px; grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr); column-gap: 18px; border-bottom: 1px solid var(--so-line); }
.so-md1cs014-model-card li:last-child { border-bottom: 0; }
.so-md1cs014-model-card li strong { color: var(--so-ink); font-size: .98rem; }
.so-md1cs014-model-card li > span { justify-self: end; color: var(--so-slate); font-size: .76rem; font-weight: 750; text-align: right; }
.so-md1cs014-model-card li small { margin-top: 5px; grid-column: 1 / -1; color: var(--so-red-dark); font-size: .69rem; font-weight: 850; line-height: 1.5; }
.so-md1cs014-model-card--performance { border-color: #2a3236; background: #151b1f; box-shadow: 0 18px 45px rgba(16,20,23,.16); }
.so-md1cs014-model-card--performance header { border-color: #2d363b; background: linear-gradient(145deg,#1e2529,#11171a); }
.so-md1cs014-model-card--performance header h3,.so-md1cs014-model-card--performance li strong { color: #fff !important; }
.so-md1cs014-model-card--performance li { border-color: #2d363b; }
.so-md1cs014-model-card--performance li > span { color: #9eaaaf; }
.so-md1cs014-model-card--performance li small { color: #ff6771; }
.so-md1cs014-note { display: grid; margin-top: 16px; padding: 27px 30px; grid-template-columns: minmax(190px,.36fr) minmax(0,1fr); gap: 30px; border: 1px solid rgba(226,11,23,.22); border-radius: 16px; background: rgba(226,11,23,.045); }
.so-md1cs014-note > span { align-self: start; color: var(--so-red); font-size: .72rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.so-md1cs014-note strong { color: var(--so-ink); }
.so-md1cs014-note p { margin: 5px 0 0; color: var(--so-slate); font-size: .83rem; line-height: 1.65; }

.so-news-single:has(.so-mg1-release-news) { max-width: 1180px; }
.so-mg1-release-news { margin-top: 10px; }
.so-mg1-intro { display: grid; margin: 0 0 clamp(70px,9vw,110px); grid-template-columns: minmax(0,.82fr) minmax(430px,1.18fr); align-items: center; gap: clamp(40px,7vw,90px); }
.so-mg1-intro h2,.so-mg1-brands > header h2,.so-mg1-process > header h2 { margin: 18px 0 24px !important; font-size: clamp(2.35rem,5vw,4.65rem); line-height: .94; letter-spacing: -.052em; }
.so-mg1-intro > div > p { color: var(--so-slate); line-height: 1.8; }
.so-mg1-intro figure { position: relative; margin: 0; }
.so-mg1-intro figure::after { position: absolute; z-index: -1; width: 70%; height: 70%; right: -22px; bottom: -22px; border-radius: 18px; background: var(--so-red); content: ""; opacity: .08; }
.so-mg1-intro img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 18px; box-shadow: 0 28px 70px rgba(16,20,23,.18); }
.so-mg1-intro figcaption { margin-top: 13px; color: #78838a; font-size: .72rem; line-height: 1.55; }
.so-mg1-brands { margin-bottom: clamp(70px,9vw,110px); }
.so-mg1-brands > header { max-width: 850px; margin-bottom: 42px; }
.so-mg1-brand-strip { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 12px; }
.so-mg1-brand-strip article { position: relative; min-height: 255px; padding: 25px 22px; overflow: hidden; border: 1px solid var(--so-line); border-radius: 16px; background: linear-gradient(145deg,#fff,#f3f6f7); box-shadow: 0 12px 32px rgba(16,20,23,.045); }
.so-mg1-brand-strip article::after { position: absolute; width: 70px; height: 3px; right: 22px; bottom: 0; background: var(--so-red); content: ""; }
.so-mg1-brand-strip span { color: var(--so-red); font-size: .68rem; font-weight: 900; letter-spacing: .13em; }
.so-mg1-brand-strip h3 { margin: 78px 0 13px !important; font-size: 1.2rem; line-height: 1.05; overflow-wrap: anywhere; }
.so-mg1-brand-strip p { margin: 0; color: var(--so-slate); font-size: .79rem; line-height: 1.58; }
.so-mg1-process { margin-bottom: clamp(70px,9vw,110px); padding: clamp(30px,5vw,58px); border-radius: 22px; background: #11171a; color: #fff; }
.so-mg1-process > header { max-width: 850px; }
.so-mg1-process > header h2 { color: #fff !important; }
.so-mg1-process > div { display: grid; margin-top: 42px; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid rgba(255,255,255,.12); }
.so-mg1-process article { min-height: 225px; padding: 28px 28px 5px; border-right: 1px solid rgba(255,255,255,.12); }
.so-mg1-process article:first-child { padding-left: 0; }
.so-mg1-process article:last-child { padding-right: 0; border-right: 0; }
.so-mg1-process article > span { color: #ff3341; font-size: .68rem; font-weight: 900; letter-spacing: .13em; }
.so-mg1-process h3 { margin: 58px 0 13px !important; color: #fff !important; font-size: 1.25rem; line-height: 1.12; }
.so-mg1-process p { margin: 0; color: rgba(255,255,255,.6); font-size: .83rem; line-height: 1.65; }
.so-mg1-list-head { margin-top: 0; }
.so-mg1-compatibility-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.so-mg1-brand-card { min-height: 0; padding: 0; overflow: hidden; }
.so-mg1-brand-card--wide { grid-column: 1 / -1; }
.so-mg1-brand-card header { margin: 0; padding: 26px 28px; align-items: flex-start; justify-content: flex-start; border-bottom: 1px solid var(--so-line); background: linear-gradient(145deg,#fff,#f3f6f7); }
.so-mg1-brand-card header > span { min-width: 42px; padding-top: 4px; }
.so-mg1-brand-card header div { display: grid; gap: 4px; }
.so-mg1-brand-card header small { color: #7b878e; font-size: .66rem; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.so-mg1-brand-card header h3 { font-size: 1.5rem; }
.so-mg1-card-section { padding: 24px 28px; border-bottom: 1px solid var(--so-line); }
.so-mg1-card-section:last-child { border-bottom: 0; }
.so-mg1-card-section > strong { display: block; margin-bottom: 15px; color: var(--so-ink); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.so-mg1-model-tags,.so-mg1-engine-list { margin: 0; padding: 0; list-style: none; }
.so-mg1-model-tags { display: flex; flex-wrap: wrap; gap: 7px; }
.so-mg1-model-tags li { padding: 7px 9px; border-radius: 7px; background: rgba(226,11,23,.075); color: var(--so-red-dark); font-size: .74rem; font-weight: 800; line-height: 1.35; }
.so-mg1-engine-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 22px; }
.so-mg1-brand-card--wide .so-mg1-engine-list { grid-template-columns: repeat(3,minmax(0,1fr)); }
.so-mg1-engine-list li { position: relative; padding: 9px 0 9px 15px; border-bottom: 1px solid var(--so-line); color: var(--so-slate); font-size: .78rem; line-height: 1.45; }
.so-mg1-engine-list li::before { position: absolute; width: 5px; height: 5px; top: 16px; left: 0; border-radius: 50%; background: var(--so-red); content: ""; }

.so-news-single:has(.so-rs3-release-news) { max-width: 1180px; }
.so-rs3-release-news { margin-top: 10px; }
.so-rs3-intro { display: grid; margin: 0 0 clamp(70px,9vw,110px); grid-template-columns: minmax(0,.84fr) minmax(430px,1.16fr); align-items: center; gap: clamp(40px,7vw,90px); }
.so-rs3-intro h2,.so-rs3-vehicles > header h2,.so-rs3-capabilities > header h2 { margin: 18px 0 24px !important; font-size: clamp(2.35rem,5vw,4.65rem); line-height: .94; letter-spacing: -.052em; }
.so-rs3-intro > div > p { color: var(--so-slate); line-height: 1.8; }
.so-rs3-intro figure { position: relative; margin: 0; }
.so-rs3-intro figure::after { position: absolute; z-index: -1; width: 70%; height: 70%; right: -22px; bottom: -22px; border-radius: 18px; background: var(--so-red); content: ""; opacity: .08; }
.so-rs3-intro img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 18px; box-shadow: 0 28px 70px rgba(16,20,23,.18); }
.so-rs3-intro figcaption { margin-top: 13px; color: #78838a; font-size: .72rem; line-height: 1.55; }
.so-rs3-vehicles { margin-bottom: clamp(70px,9vw,110px); }
.so-rs3-vehicles > header { max-width: 900px; margin-bottom: 42px; }
.so-rs3-vehicles > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.so-rs3-vehicle-card { position: relative; min-height: 390px; padding: clamp(28px,4vw,44px); overflow: hidden; border: 1px solid var(--so-line); border-radius: 20px; background: linear-gradient(145deg,#fff,#f3f6f7); box-shadow: 0 16px 45px rgba(16,20,23,.07); }
.so-rs3-vehicle-card::after { position: absolute; width: 190px; height: 190px; right: -72px; bottom: -72px; border: 1px solid rgba(226,11,23,.13); border-radius: 50%; content: ""; box-shadow: 0 0 0 38px rgba(226,11,23,.035); }
.so-rs3-vehicle-card > span { color: var(--so-red); font-size: .69rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.so-rs3-vehicle-card h3 { max-width: 390px; margin: 92px 0 30px !important; color: var(--so-ink); font-size: clamp(2rem,4vw,3.4rem); line-height: .94; letter-spacing: -.045em; }
.so-rs3-vehicle-card dl { display: grid; margin: 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; border-top: 1px solid var(--so-line); }
.so-rs3-vehicle-card dl div { padding: 18px 16px 0 0; }
.so-rs3-vehicle-card dt { margin-bottom: 6px; color: #849097; font-size: .63rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.so-rs3-vehicle-card dd { margin: 0; color: var(--so-slate); font-size: .82rem; font-weight: 760; }
.so-rs3-vehicle-card--audi { border-color: #2a3236; background: #151b1f; box-shadow: 0 18px 45px rgba(16,20,23,.16); }
.so-rs3-vehicle-card--audi h3 { color: #fff !important; }
.so-rs3-vehicle-card--audi dl { border-color: #323b40; }
.so-rs3-vehicle-card--audi dd { color: #b7c0c4; }
.so-rs3-capabilities { margin-bottom: 18px; padding: clamp(30px,5vw,58px); border-radius: 22px; background: #11171a; color: #fff; }
.so-rs3-capabilities > header { max-width: 820px; }
.so-rs3-capabilities > header h2 { color: #fff !important; }
.so-rs3-capabilities > div { display: grid; margin-top: 42px; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid rgba(255,255,255,.12); }
.so-rs3-capabilities article { min-height: 235px; padding: 28px 28px 5px; border-right: 1px solid rgba(255,255,255,.12); }
.so-rs3-capabilities article:first-child { padding-left: 0; }
.so-rs3-capabilities article:last-child { padding-right: 0; border-right: 0; }
.so-rs3-capabilities article > span { color: #ff3341; font-size: .68rem; font-weight: 900; letter-spacing: .13em; }
.so-rs3-capabilities h3 { margin: 58px 0 13px !important; color: #fff !important; font-size: 1.28rem; line-height: 1.12; }
.so-rs3-capabilities p { margin: 0; color: rgba(255,255,255,.6); font-size: .83rem; line-height: 1.65; }
.so-rs3-ecu-note { display: grid; margin-top: 16px; padding: 27px 30px; grid-template-columns: minmax(210px,.36fr) minmax(0,1fr); gap: 30px; border: 1px solid rgba(226,11,23,.22); border-radius: 16px; background: rgba(226,11,23,.045); }
.so-rs3-ecu-note > span { align-self: start; color: var(--so-red); font-size: .72rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.so-rs3-ecu-note strong { color: var(--so-ink); }
.so-rs3-ecu-note p { margin: 5px 0 0; color: var(--so-slate); font-size: .83rem; line-height: 1.65; }

.so-anniversary-origin { display: grid; margin: 0 0 clamp(70px,9vw,110px); grid-template-columns: minmax(0,.9fr) minmax(440px,1.1fr); align-items: center; gap: clamp(38px,7vw,90px); }
.so-anniversary-origin__copy h2 { margin: 18px 0 24px !important; font-size: clamp(2.35rem,5vw,4.65rem); line-height: .94; letter-spacing: -.052em; }
.so-anniversary-origin__copy p { color: var(--so-slate); line-height: 1.8; }
.so-anniversary-origin__copy strong { color: var(--so-ink); }
.so-anniversary-origin__names { display: grid; padding: 18px; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: stretch; gap: 12px; border-radius: 22px; background: #11171a; box-shadow: 0 28px 70px rgba(16,20,23,.18); }
.so-anniversary-origin__names > div { display: flex; min-height: 245px; padding: 27px; flex-direction: column; justify-content: space-between; border: 1px solid rgba(255,255,255,.1); border-radius: 15px; background: #181f23; }
.so-anniversary-origin__names small { color: #ff4a55; font-size: .66rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.so-anniversary-origin__names strong { margin-block: 38px; color: #fff; font-size: clamp(1.35rem,2.4vw,2rem); line-height: 1.04; letter-spacing: -.035em; }
.so-anniversary-origin__names span { color: rgba(255,255,255,.55); font-size: .76rem; line-height: 1.5; }
.so-anniversary-origin__names > i { align-self: center; color: #ff3341; font-size: 1.45rem; font-style: normal; }
.so-anniversary-origin__names .so-anniversary-origin__today { border-color: rgba(255,255,255,.15); background: linear-gradient(145deg,#ed101d,#b90812); }
.so-anniversary-origin__today small,.so-anniversary-origin__today span { color: rgba(255,255,255,.76); }

html[data-so-theme="light"] body.so-2026 .so-contact__promise { border: 1px solid #d6dee2; border-left: 4px solid var(--so-red); border-radius: 0 13px 13px 0; background: linear-gradient(135deg,#fff,#f2f5f6); box-shadow: 0 13px 34px rgba(16,20,23,.06); }
html[data-so-theme="light"] body.so-2026 .so-contact__panel { position: relative; overflow: hidden; border-color: #d2dade; background: linear-gradient(145deg,#fff,#f8fafb); box-shadow: 0 28px 75px rgba(16,20,23,.12); }
html[data-so-theme="light"] body.so-2026 .so-contact__panel::before { position: absolute; height: 4px; top: 0; right: 48px; left: 48px; border-radius: 0 0 5px 5px; background: var(--so-red); content: ""; }
html[data-so-theme="light"] body.so-2026 .so-field input,
html[data-so-theme="light"] body.so-2026 .so-field select,
html[data-so-theme="light"] body.so-2026 .so-field textarea { border-color: #cbd4d9; background: #fbfcfd; }
html[data-so-theme="light"] body.so-2026 .so-choice { border-color: #d4dce0; background: rgba(255,255,255,.8); }
html[data-so-theme="light"] body.so-2026 .so-news-card { position: relative; border-color: #d3dce0; background: linear-gradient(145deg,#fff,#f7f9fa); box-shadow: 0 16px 42px rgba(16,20,23,.075); }
html[data-so-theme="light"] body.so-2026 .so-news-card::after { position: absolute; height: 3px; right: 26px; bottom: 0; left: 26px; border-radius: 4px 4px 0 0; background: var(--so-red); content: ""; transform: scaleX(.22); transform-origin: left; transition: transform .25s ease; }
html[data-so-theme="light"] body.so-2026 .so-news-card:hover::after { transform: scaleX(1); }
html[data-so-theme="light"] body.so-2026 .so-empty-state { border-style: solid; border-color: #d3dce0; background: linear-gradient(145deg,#fff,#f3f6f7); box-shadow: 0 16px 42px rgba(16,20,23,.06); }

html[data-so-theme="dark"] body.so-2026 .so-section-heading h1,
html[data-so-theme="dark"] body.so-2026 .so-contact h1,
html[data-so-theme="dark"] body.so-2026 .so-news-single h1,
html[data-so-theme="dark"] body.so-2026 .so-news-card__title a,
html[data-so-theme="dark"] body.so-2026 .so-inquiry-form legend,
html[data-so-theme="dark"] body.so-2026 .so-richtext h2,
html[data-so-theme="dark"] body.so-2026 .so-richtext h3 { color: #f2f5f6; }
html[data-so-theme="dark"] body.so-2026 .so-section-heading p,
html[data-so-theme="dark"] body.so-2026 .so-contact__intro > p,
html[data-so-theme="dark"] body.so-2026 .so-news-card__body p,
html[data-so-theme="dark"] body.so-2026 .so-news-card__meta,
html[data-so-theme="dark"] body.so-2026 .so-news-single__lead,
html[data-so-theme="dark"] body.so-2026 .so-richtext,
html[data-so-theme="dark"] body.so-2026 .so-consent,
html[data-so-theme="dark"] body.so-2026 .so-required-note { color: #9ca8ae; }
html[data-so-theme="dark"] body.so-2026 .so-news-card,
html[data-so-theme="dark"] body.so-2026 .so-contact__panel { border-color: #2c353a; background: #161c20; box-shadow: 0 20px 60px rgba(0,0,0,.24); }
html[data-so-theme="dark"] body.so-2026 .so-contact__promise,
html[data-so-theme="dark"] body.so-2026 .so-empty-state { border-color: #323b40; background: #11171a; }
html[data-so-theme="dark"] body.so-2026 .so-contact__promise a,
html[data-so-theme="dark"] body.so-2026 .so-consent a,
html[data-so-theme="dark"] body.so-2026 .so-back-link,
html[data-so-theme="dark"] body.so-2026 .so-text-link { color: #ff5963; }
html[data-so-theme="dark"] body.so-2026 .so-field label { color: #dce2e5; }
html[data-so-theme="dark"] body.so-2026 .so-field__hint { color: #87939a; }
html[data-so-theme="dark"] body.so-2026 .so-field input,
html[data-so-theme="dark"] body.so-2026 .so-field select,
html[data-so-theme="dark"] body.so-2026 .so-field textarea { border-color: #3a444a; background: #0f1417; color: #f2f5f6; }
html[data-so-theme="dark"] body.so-2026 .so-document-note { border-color: rgba(255,31,45,.34); background: linear-gradient(135deg,rgba(226,11,23,.13),rgba(226,11,23,.045)); }
html[data-so-theme="dark"] body.so-2026 .so-document-note strong { color: #f2f5f6; }
html[data-so-theme="dark"] body.so-2026 .so-document-note p { color: #a3aeb3; }
html[data-so-theme="dark"] body.so-2026 .so-document-status:not([hidden]) { color: #a5e6b9; }
html[data-so-theme="dark"] body.so-2026 .so-document-status::before { background: #173e24; }
html[data-so-theme="dark"] body.so-2026 .so-year-document-reminder:not([hidden]) { border-color: rgba(255,31,45,.32); background: rgba(226,11,23,.1); color: #e5b6b9; }
html[data-so-theme="dark"] body.so-2026 .so-choice { border-color: #343d42; background: #11171a; color: #d5dcdf; }
html[data-so-theme="dark"] body.so-2026 .so-choice:has(input:checked) { border-color: rgba(255,31,45,.62); background: rgba(226,11,23,.1); }
html[data-so-theme="dark"] body.so-2026 .so-pagination .page-numbers { border-color: #343d42; color: #e8edef; }
html[data-so-theme="dark"] body.so-2026 .so-form-notice--success { border-color: #397b4f; background: #11251a; color: #9ae2af; }
html[data-so-theme="dark"] body.so-2026 .so-form-notice--error { border-color: #844145; background: #2a1517; color: #ffafb4; }
html[data-so-theme="dark"] body.so-2026 .so-news-focus article,
html[data-so-theme="dark"] body.so-2026 .so-compatibility-card,
html[data-so-theme="dark"] body.so-2026 .so-rsg-facts article,
html[data-so-theme="dark"] body.so-2026 .so-rsg-brand-card,
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-model-card { border-color: #2c353a; background: #161c20; box-shadow: 0 18px 45px rgba(0,0,0,.16); }
html[data-so-theme="dark"] body.so-2026 .so-news-focus p,
html[data-so-theme="dark"] body.so-2026 .so-compatibility-card dd,
html[data-so-theme="dark"] body.so-2026 .so-rsg-facts p,
html[data-so-theme="dark"] body.so-2026 .so-anniversary-origin__copy p,
html[data-so-theme="dark"] body.so-2026 .so-rsg-explainer > div > p,
html[data-so-theme="dark"] body.so-2026 .so-rsg-models-head > p,
html[data-so-theme="dark"] body.so-2026 .so-rsg-brand-card li small,
html[data-so-theme="dark"] body.so-2026 .so-rsg-generation-note p,
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-intro > div > p,
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-models-head > p,
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-model-card li > span,
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-note p,
html[data-so-theme="dark"] body.so-2026 .so-mg1-intro > div > p,
html[data-so-theme="dark"] body.so-2026 .so-mg1-brand-strip p,
html[data-so-theme="dark"] body.so-2026 .so-mg1-engine-list li,
html[data-so-theme="dark"] body.so-2026 .so-rs3-intro > div > p,
html[data-so-theme="dark"] body.so-2026 .so-rs3-vehicle-card dd,
html[data-so-theme="dark"] body.so-2026 .so-rs3-ecu-note p,
html[data-so-theme="dark"] body.so-2026 .so-news-compatibility-note { color: #9ca8ae; }
html[data-so-theme="dark"] body.so-2026 .so-compatibility-search label,
html[data-so-theme="dark"] body.so-2026 .so-rsg-brand-card header h3,
html[data-so-theme="dark"] body.so-2026 .so-rsg-brand-card li strong,
html[data-so-theme="dark"] body.so-2026 .so-rsg-generation-note strong,
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-model-card header h3,
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-model-card li strong,
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-note strong,
html[data-so-theme="dark"] body.so-2026 .so-mg1-brand-strip h3,
html[data-so-theme="dark"] body.so-2026 .so-mg1-card-section > strong,
html[data-so-theme="dark"] body.so-2026 .so-rs3-vehicle-card h3,
html[data-so-theme="dark"] body.so-2026 .so-rs3-ecu-note strong,
html[data-so-theme="dark"] body.so-2026 .so-anniversary-origin__copy strong,
html[data-so-theme="dark"] body.so-2026 .so-news-compatibility-note strong { color: #e7ecee; }
html[data-so-theme="dark"] body.so-2026 .so-compatibility-search input { border-color: #3a444a; background: #0f1417; color: #f2f5f6; }
html[data-so-theme="dark"] body.so-2026 .so-compatibility-card dl div,
html[data-so-theme="dark"] body.so-2026 .so-rsg-brand-card header,
html[data-so-theme="dark"] body.so-2026 .so-rsg-brand-card li,
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-model-card header,
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-model-card li,
html[data-so-theme="dark"] body.so-2026 .so-mg1-brand-card header,
html[data-so-theme="dark"] body.so-2026 .so-mg1-card-section,
html[data-so-theme="dark"] body.so-2026 .so-mg1-engine-list li,
html[data-so-theme="dark"] body.so-2026 .so-news-compatibility-note { border-color: #30393e; }
html[data-so-theme="dark"] body.so-2026 .so-rsg-brand-card header { background: linear-gradient(145deg,#1b2226,#11171a); }
html[data-so-theme="dark"] body.so-2026 .so-rsg-brand-card li > span { background: rgba(255,51,65,.12); color: #ff6771; }
html[data-so-theme="dark"] body.so-2026 .so-rsg-generation-note { border-color: rgba(255,51,65,.28); background: rgba(226,11,23,.09); }
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-model-card header { background: linear-gradient(145deg,#1b2226,#11171a); }
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-model-card li small { color: #ff6771; }
html[data-so-theme="dark"] body.so-2026 .so-md1cs014-note { border-color: rgba(255,51,65,.28); background: rgba(226,11,23,.09); }
html[data-so-theme="dark"] body.so-2026 .so-mg1-brand-strip article { border-color: #2c353a; background: linear-gradient(145deg,#1b2226,#11171a); box-shadow: 0 18px 45px rgba(0,0,0,.16); }
html[data-so-theme="dark"] body.so-2026 .so-mg1-brand-card header { background: linear-gradient(145deg,#1b2226,#11171a); }
html[data-so-theme="dark"] body.so-2026 .so-mg1-model-tags li { background: rgba(255,51,65,.12); color: #ff6771; }
html[data-so-theme="dark"] body.so-2026 .so-rs3-vehicle-card { border-color: #2c353a; background: #161c20; box-shadow: 0 18px 45px rgba(0,0,0,.16); }
html[data-so-theme="dark"] body.so-2026 .so-rs3-vehicle-card dl { border-color: #30393e; }
html[data-so-theme="dark"] body.so-2026 .so-rs3-ecu-note { border-color: rgba(255,51,65,.28); background: rgba(226,11,23,.09); }

@media (max-width: 900px) {
  .so-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .so-contact { grid-template-columns: 1fr; }
  .so-contact__intro { position: static; }
  .so-news-focus { grid-template-columns: 1fr; }
  .so-news-focus article { min-height: 0; }
  .so-news-focus h3 { margin-top: 35px !important; }
  .so-rsg-facts { grid-template-columns: 1fr; }
  .so-rsg-facts article { min-height: 0; }
  .so-rsg-facts h3 { margin-top: 38px !important; }
  .so-rsg-explainer { grid-template-columns: 1fr; }
  .so-anniversary-origin { grid-template-columns: 1fr; }
  .so-rsg-effect__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .so-rsg-effect__grid article:nth-child(2) { border-right: 0; }
  .so-rsg-effect__grid article:nth-child(3),.so-rsg-effect__grid article:nth-child(4) { border-top: 1px solid rgba(255,255,255,.12); }
  .so-rsg-effect__grid article:nth-child(3) { padding-left: 0; }
  .so-rsg-brand-grid { grid-template-columns: 1fr; }
  .so-md1cs014-intro { grid-template-columns: 1fr; }
  .so-md1cs014-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .so-md1cs014-feature-grid article:nth-child(3n+1) { padding-left: 25px; }
  .so-md1cs014-feature-grid article:nth-child(3n) { padding-right: 25px; border-right: 1px solid rgba(255,255,255,.12); }
  .so-md1cs014-feature-grid article:nth-child(2n+1) { padding-left: 0; }
  .so-md1cs014-feature-grid article:nth-child(2n) { padding-right: 0; border-right: 0; }
  .so-md1cs014-feature-grid article:nth-last-child(-n+3) { border-bottom: 1px solid rgba(255,255,255,.12); }
  .so-md1cs014-feature-grid article:nth-last-child(-n+2) { border-bottom: 0; }
  .so-md1cs014-model-grid { grid-template-columns: 1fr; }
  .so-mg1-intro { grid-template-columns: 1fr; }
  .so-mg1-brand-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .so-mg1-brand-strip article:last-child { grid-column: 1 / -1; }
  .so-mg1-process > div { grid-template-columns: 1fr; }
  .so-mg1-process article,.so-mg1-process article:first-child,.so-mg1-process article:last-child { min-height: 0; padding: 26px 0; border-top: 1px solid rgba(255,255,255,.12); border-right: 0; }
  .so-mg1-process article:first-child { border-top: 0; }
  .so-mg1-process h3 { margin-top: 30px !important; }
  .so-mg1-compatibility-grid { grid-template-columns: 1fr; }
  .so-mg1-brand-card--wide { grid-column: auto; }
  .so-mg1-brand-card--wide .so-mg1-engine-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .so-rs3-intro { grid-template-columns: 1fr; }
  .so-rs3-capabilities > div { grid-template-columns: 1fr; }
  .so-rs3-capabilities article,.so-rs3-capabilities article:first-child,.so-rs3-capabilities article:last-child { min-height: 0; padding: 26px 0; border-top: 1px solid rgba(255,255,255,.12); border-right: 0; }
  .so-rs3-capabilities article:first-child { border-top: 0; }
  .so-rs3-capabilities h3 { margin-top: 30px !important; }
}

@media (max-width: 620px) {
  .so-content-shell { width: min(100% - 28px, 1180px); }
  .so-news-listing, .so-contact, .so-news-single { padding-block: 72px; }
  .so-news-single h1 { font-size: clamp(1.95rem,8.1vw,2.25rem); overflow-wrap: anywhere; }
  .so-news-grid, .so-form-grid, .so-choice-grid { grid-template-columns: 1fr; }
  .so-contact__panel { padding: 20px; border-radius: 16px; }
  .so-document-note { padding: 15px; grid-template-columns: 40px minmax(0,1fr); gap: 12px; }
  .so-document-note__icon { width: 40px; height: 40px; }
  .so-inline-cta { align-items: flex-start; flex-direction: column; padding: 26px; }
  .so-inline-cta .so-button { width: 100%; }
  .so-news-list-head { align-items: stretch; flex-direction: column; }
  .so-compatibility-search { width: 100%; }
  .so-compatibility-grid { grid-template-columns: 1fr; }
  .so-compatibility-card { min-height: 0; padding: 23px; }
  .so-rsg-explainer { gap: 30px; }
  .so-anniversary-origin { gap: 30px; }
  .so-anniversary-origin__copy h2 { font-size: clamp(1.85rem,8vw,2.35rem); overflow-wrap: normal; word-break: normal; }
  .so-anniversary-origin__names { padding: 13px; grid-template-columns: 1fr; }
  .so-anniversary-origin__names > div { min-height: 205px; padding: 23px; }
  .so-anniversary-origin__names > i { justify-self: center; transform: rotate(90deg); }
  .so-rsg-explainer h2,.so-rsg-effect__heading h2,.so-rsg-models-head h2 { font-size: clamp(2.1rem,11vw,3rem); overflow-wrap: anywhere; }
  .so-rsg-effect { padding: 28px 22px; }
  .so-rsg-effect__grid { grid-template-columns: 1fr; }
  .so-rsg-effect__grid article,.so-rsg-effect__grid article:first-child,.so-rsg-effect__grid article:last-child,.so-rsg-effect__grid article:nth-child(3) { min-height: 0; padding: 25px 0; border-top: 1px solid rgba(255,255,255,.12); border-right: 0; }
  .so-rsg-effect__grid article:first-child { border-top: 0; }
  .so-rsg-effect__grid h3 { margin-top: 30px !important; }
  .so-rsg-brand-card header { padding: 23px; align-items: flex-start; flex-direction: column; }
  .so-rsg-brand-card li { padding: 18px 23px; }
  .so-rsg-generation-note { padding: 23px; grid-template-columns: 1fr; gap: 10px; }
  .so-rsg-cta { padding: 24px; }
  .so-tool-release-actions { grid-template-columns: 1fr; }
  .so-md1cs014-intro { gap: 30px; }
  .so-md1cs014-intro h2,.so-md1cs014-features header h2,.so-md1cs014-models-head h2 { font-size: clamp(2.1rem,11vw,3rem); overflow-wrap: anywhere; }
  .so-md1cs014-features { padding: 28px 22px; }
  .so-md1cs014-feature-grid { grid-template-columns: 1fr; }
  .so-md1cs014-feature-grid article,.so-md1cs014-feature-grid article:nth-child(2n+1),.so-md1cs014-feature-grid article:nth-child(2n),.so-md1cs014-feature-grid article:nth-child(3n+1),.so-md1cs014-feature-grid article:nth-child(3n) { min-height: 0; padding: 25px 0; border-top: 1px solid rgba(255,255,255,.12); border-right: 0; border-bottom: 0; }
  .so-md1cs014-feature-grid article:first-child { border-top: 0; }
  .so-md1cs014-feature-grid h3 { margin-top: 30px !important; }
  .so-md1cs014-model-card header { padding: 23px; align-items: flex-start; flex-direction: column; }
  .so-md1cs014-model-card li { padding: 18px 23px; }
  .so-md1cs014-note { padding: 23px; grid-template-columns: 1fr; gap: 10px; }
  .so-mg1-intro { gap: 30px; }
  .so-mg1-intro h2,.so-mg1-brands > header h2,.so-mg1-process > header h2 { font-size: clamp(2.1rem,11vw,3rem); overflow-wrap: anywhere; }
  .so-mg1-brand-strip { grid-template-columns: 1fr; }
  .so-mg1-brand-strip article,.so-mg1-brand-strip article:last-child { min-height: 0; grid-column: auto; }
  .so-mg1-brand-strip h3 { margin-top: 38px !important; }
  .so-mg1-process { padding: 28px 22px; }
  .so-mg1-brand-card header,.so-mg1-card-section { padding: 22px; }
  .so-mg1-engine-list,.so-mg1-brand-card--wide .so-mg1-engine-list { grid-template-columns: 1fr; }
  .so-rs3-intro { gap: 30px; }
  .so-rs3-intro h2,.so-rs3-vehicles > header h2,.so-rs3-capabilities > header h2 { font-size: clamp(2.1rem,11vw,3rem); overflow-wrap: anywhere; }
  .so-rs3-vehicles > div { grid-template-columns: 1fr; }
  .so-rs3-vehicle-card { min-height: 0; padding: 27px 23px; }
  .so-rs3-vehicle-card h3 { margin-top: 48px !important; }
  .so-rs3-vehicle-card dl { grid-template-columns: 1fr; }
  .so-rs3-vehicle-card dl div { padding-top: 14px; }
  .so-rs3-capabilities { padding: 28px 22px; }
  .so-rs3-ecu-note { padding: 23px; grid-template-columns: 1fr; gap: 10px; }
}
