/* =====================================================================
   amc2 — catalog and car pages, Figma «Основа» → amcorp (1920 desktop).
   Dark is the design's theme; the light theme only swaps the tokens.
   ===================================================================== */

.amc2 {
    --a2-bg: #0f1115;
    --a2-bg-deep: #0b0d10;
    --a2-card: #1b1f26;
    --a2-field: #222731;
    --a2-chip-bg: #15181e;
    --a2-line: #2b313b;
    --a2-ink: #ffffff;
    --a2-ink-2: #c9cdd4;
    --a2-ink-3: #d6d9de;
    --a2-muted: #9aa0aa;
    --a2-accent: #e06868;
    --a2-accent-deep: #b94a4a;
    --a2-accent-soft: rgba(224, 104, 104, 0.12);
    --a2-accent-line: rgba(224, 104, 104, 0.35);
    --a2-green: #3ddc84;
    --a2-white-btn: #ffffff;
    --a2-white-btn-ink: #0f1115;
    --a2-glass: rgba(21, 24, 30, 0.82);
    --a2-head: "Manrope", var(--font-family, sans-serif), sans-serif;
    --a2-body: "Inter", var(--font-family, sans-serif), sans-serif;
    --a2-pad: clamp(16px, 6.25vw, 120px);

    padding: 0;
    background: var(--a2-bg);
    color: var(--a2-ink);
    font-family: var(--a2-body);
    font-size: 16px;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

html[data-theme="light"] .amc2 {
    --a2-bg: #f3f4f6;
    --a2-bg-deep: #e9ebef;
    --a2-card: #ffffff;
    --a2-field: #eef0f3;
    --a2-chip-bg: #ffffff;
    --a2-line: #e1e4e9;
    --a2-ink: #111317;
    --a2-ink-2: #3c4049;
    --a2-ink-3: #2d3138;
    --a2-muted: #6b6f78;
    --a2-white-btn: #111317;
    --a2-white-btn-ink: #ffffff;
    --a2-glass: rgba(255, 255, 255, 0.9);
}

/* The hero sits on a photo: keep it dark in both themes. */
.amc2 .amc2-hero {
    --a2-card: #1b1f26;
    --a2-field: #222731;
    --a2-line: #2b313b;
    --a2-ink: #ffffff;
    --a2-ink-2: #c9cdd4;
    --a2-muted: #9aa0aa;
    --a2-white-btn: #ffffff;
    --a2-white-btn-ink: #0f1115;
    --a2-glass: rgba(21, 24, 30, 0.82);
}

.amc2 *,
.amc2 *::before,
.amc2 *::after {
    box-sizing: border-box;
}

:where(.amc2) a {
    color: inherit;
    text-decoration: none;
}

:where(.amc2) p,
:where(.amc2) h1,
:where(.amc2) h2,
:where(.amc2) h3,
:where(.amc2) ul,
:where(.amc2) ol,
:where(.amc2) dl,
:where(.amc2) dd,
:where(.amc2) figure,
:where(.amc2) blockquote {
    margin: 0;
}

:where(.amc2) ul,
:where(.amc2) ol {
    padding: 0;
    list-style: none;
}

:where(.amc2) img {
    max-width: 100%;
    display: block;
}

.amc2 .amc2-wrap {
    width: 100%;
    max-width: calc(1680px + 2 * var(--a2-pad));
    margin: 0 auto;
    padding: 0 var(--a2-pad);
}

/* ---------- icons: monochrome SVG tinted with currentColor ---------- */
.amc2 .amc2-i {
    display: inline-block;
    flex: none;
    width: 1em;
    height: 1em;
    background: currentColor;
    -webkit-mask: var(--i) center / contain no-repeat;
    mask: var(--i) center / contain no-repeat;
}

/* ---------- type ---------- */
.amc2 .amc2-h2 {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: clamp(28px, 1.6vw + 14px, 44px);
    line-height: 1.04;
    letter-spacing: -0.03em;
    color: var(--a2-ink);
}

.amc2 .amc2-h2--48 {
    font-size: clamp(30px, 1.8vw + 14px, 48px);
}

.amc2 .amc2-h2--40 {
    font-size: clamp(26px, 1.4vw + 13px, 40px);
}

.amc2 .amc2-muted {
    color: var(--a2-muted);
}

.amc2 .amc2-sec {
    padding-top: clamp(56px, 4.6vw, 88px);
}

.amc2 .amc2-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px 40px;
    margin-bottom: clamp(20px, 2vw, 32px);
}

.amc2 .amc2-head__text {
    display: flex;
    flex-direction: column;
    gap: 14px;
    max-width: 1200px;
}

.amc2 .amc2-head__text > p,
.amc2 .amc2-head__meta {
    color: var(--a2-muted);
    font-size: clamp(15px, 0.3vw + 13px, 18px);
    line-height: 1.55;
}

.amc2 .amc2-head__meta {
    font-size: 15px;
    white-space: nowrap;
}

.amc2 .amc2-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 16px;
    white-space: nowrap;
    color: var(--a2-ink);
    transition: color 0.15s ease;
}

.amc2 .amc2-link .amc2-i {
    font-size: 18px;
}

.amc2 .amc2-link:hover,
.amc2 .amc2-link--accent {
    color: var(--a2-accent);
}

/* ---------- buttons ---------- */
.amc2 .amc2-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    height: 46px;
    padding: 0 18px;
    border: 0;
    border-radius: 14px;
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
    color: #fff;
    transition: filter 0.15s ease, background-color 0.15s ease, transform 0.15s ease;
}

.amc2 .amc2-btn .amc2-i {
    font-size: 20px;
}

.amc2 .amc2-btn:hover {
    filter: brightness(1.08);
}

.amc2 .amc2-btn:active {
    transform: translateY(1px);
}

.amc2 .amc2-btn--s {
    height: 44px;
    padding: 0 12px;
}

.amc2 .amc2-btn--m {
    height: 52px;
    padding: 0 28px;
    font-size: 15px;
}

.amc2 .amc2-btn--l {
    height: 56px;
    padding: 0 24px;
    font-size: 16px;
}

.amc2 .amc2-btn--xl {
    height: 64px;
    padding: 0 28px;
    font-size: 17px;
}

.amc2 .amc2-btn--block {
    width: 100%;
}

.amc2 .amc2-btn--accent {
    background: var(--a2-accent);
    color: #fff;
}

.amc2 .amc2-btn--soft {
    background: var(--a2-field);
    color: var(--a2-ink);
}

.amc2 .amc2-btn--white {
    background: var(--a2-white-btn);
    color: var(--a2-white-btn-ink);
}

.amc2 .amc2-btn--wa {
    background: #1e9e50;
}

.amc2 .amc2-btn--tg {
    background: #1c86c4;
}

.amc2 .amc2-btn--max {
    background: #5b3df5;
    width: 52px;
    padding: 0;
    flex: none;
}

.amc2 .amc2-btn--max .amc2-i {
    font-size: 26px;
}

/* ---------- chips ---------- */
.amc2 .amc2-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.amc2 .amc2-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    border-radius: 999px;
    font-weight: 500;
    font-size: 13px;
    line-height: 1.2;
    white-space: nowrap;
    color: var(--a2-ink);
    background: var(--a2-field);
}

.amc2 .amc2-chip .amc2-i {
    font-size: 16px;
}

a.amc2-chip,
button.amc2-chip {
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease;
}

a.amc2-chip:hover,
button.amc2-chip:hover {
    background: var(--a2-accent-deep);
    color: #fff;
}

.amc2 .amc2-chip--line {
    background: var(--a2-chip-bg);
    border: 1px solid var(--a2-line);
}

.amc2 .amc2-chip--line.is-extra {
    display: none;
}

.is-expanded .amc2-chip--line.is-extra {
    display: inline-flex;
}

.amc2 .amc2-chip--dark {
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    font-size: 12px;
    padding: 6px 10px;
}

.amc2 .amc2-chip--red {
    background: var(--a2-accent-deep);
    color: #fff;
    font-weight: 600;
    font-size: 12px;
    padding: 6px 10px;
}

.amc2 .amc2-chip--soft {
    color: var(--a2-ink-2);
    font-size: 14px;
    padding: 9px 14px;
}

.amc2 .amc2-chip--meta {
    background: var(--a2-card);
    font-size: 14px;
    padding: 9px 14px;
}

.amc2 .amc2-chip--city {
    font-size: 14px;
    padding: 9px 14px;
}

.amc2 .amc2-chip--city .amc2-i {
    font-size: 14px;
    color: var(--a2-muted);
}

.amc2 .amc2-chip--city.is-accent {
    background: var(--a2-accent-deep);
    color: #fff;
}

.amc2 .amc2-chip--city.is-accent .amc2-i {
    color: #fff;
}

.amc2 .amc2-chip--year {
    font-size: 15px;
    padding: 11px 16px;
}

.amc2 .amc2-chip.is-current {
    background: var(--a2-accent-deep);
    color: #fff;
    font-weight: 700;
}

.amc2 .amc2-stars {
    display: inline-flex;
    gap: 4px;
    color: #ffc93c;
    font-size: 22px;
}

.amc2 .amc2-stars--s {
    gap: 3px;
    font-size: 16px;
}

/* ---------- breadcrumbs ---------- */
.amc2 .amc2-crumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 14px;
    color: var(--a2-muted);
}

.amc2 .amc2-crumbs > * + *::before {
    content: "/";
    margin-right: 8px;
    color: var(--a2-muted);
}

.amc2 .amc2-crumbs a:hover {
    color: var(--a2-ink);
}

.amc2 .amc2-crumbs span:last-child {
    color: var(--a2-ink);
}

/* =====================================================================
   Hero
   ===================================================================== */
.amc2 .amc2-hero {
    position: relative;
    overflow: hidden;
    padding: 150px 0 0;
    min-height: 940px;
    background: #0f1115;
    color: #fff;
}

.amc2 .amc2-hero__bg {
    position: absolute;
    inset: 0 0 auto 0;
    width: 100%;
    height: 1080px;
    max-width: none;
    object-fit: cover;
    pointer-events: none;
}

.amc2 .amc2-hero::before,
.amc2 .amc2-hero::after {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    pointer-events: none;
}

.amc2 .amc2-hero::before {
    top: 0;
    height: 1040px;
    background: linear-gradient(90deg, rgba(15, 17, 21, 0.97) 0%, rgba(15, 17, 21, 0.78) 45%, rgba(15, 17, 21, 0.2) 100%);
}

.amc2 .amc2-hero::after {
    top: 620px;
    height: 320px;
    background: linear-gradient(180deg, rgba(15, 17, 21, 0) 0%, #0f1115 100%);
}

html[data-theme="light"] .amc2 .amc2-hero::after {
    background: linear-gradient(180deg, rgba(15, 17, 21, 0) 0%, #0f1115 85%, var(--a2-bg) 100%);
}

.amc2 .amc2-hero__grid {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 40px;
    padding-bottom: 64px;
}

.amc2 .amc2-hero__offer {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
    width: 100%;
    max-width: 1000px;
}

.amc2 .amc2-live {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 9px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    font-weight: 500;
    font-size: 14px;
}

.amc2 .amc2-live__dot {
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background: var(--a2-green);
    box-shadow: 0 0 0 0 rgba(61, 220, 132, 0.6);
    animation: amc2-pulse 2s infinite;
}

@keyframes amc2-pulse {
    70% {
        box-shadow: 0 0 0 8px rgba(61, 220, 132, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(61, 220, 132, 0);
    }
}

.amc2 .amc2-hero__title {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: clamp(36px, 3.9vw + 9px, 84px);
    line-height: 1;
    letter-spacing: -0.03em;
    color: #fff;
}

.amc2 .amc2-hero__lead {
    max-width: 720px;
    font-size: clamp(16px, 0.35vw + 13px, 19px);
    line-height: 1.55;
    color: #c9cdd4;
}

.amc2 .amc2-search {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 24px;
    border-radius: 24px;
    background: rgba(21, 24, 30, 0.78);
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.amc2 .amc2-search__fields {
    display: grid;
    grid-template-columns: 1fr 1fr 150px 1fr auto;
    gap: 10px;
    align-items: end;
}

.amc2 .amc2-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.amc2 .amc2-field > span {
    font-weight: 500;
    font-size: 12px;
    color: var(--a2-muted);
}

.amc2 .amc2-field select,
.amc2 .amc2-filter select,
.amc2 .amc2-filter input[type="text"],
.amc2 .amc2-select select {
    width: 100%;
    height: 56px;
    padding: 0 40px 0 16px;
    border: 0;
    border-radius: 12px;
    background: var(--a2-field);
    color: var(--a2-ink);
    font-family: var(--a2-body);
    font-weight: 500;
    font-size: 16px;
    appearance: none;
    -webkit-appearance: none;
    outline: none;
    cursor: pointer;
}

.amc2 .amc2-field select:focus-visible,
.amc2 .amc2-filter select:focus-visible,
.amc2 .amc2-filter input:focus-visible {
    box-shadow: 0 0 0 2px var(--a2-accent);
}

.amc2 .amc2-field select:disabled {
    opacity: 0.55;
    cursor: default;
}

/* Caret drawn by CSS so it follows the theme's ink colour. */
.amc2 .amc2-field,
.amc2 .amc2-filter__group {
    position: relative;
}

.amc2 .amc2-field:not(.amc2-field--submit)::after {
    content: "";
    position: absolute;
    right: 16px;
    bottom: 20px;
    width: 16px;
    height: 16px;
    background: var(--a2-ink);
    -webkit-mask: url("../img/amc2/icons/caret-down.svg") center / contain no-repeat;
    mask: url("../img/amc2/icons/caret-down.svg") center / contain no-repeat;
    pointer-events: none;
}

.amc2 .amc2-field--submit .amc2-btn {
    width: 100%;
}

.amc2 .amc2-search__quick {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.amc2 .amc2-search__quick > span {
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-chip--field {
    background: var(--a2-field);
}

.amc2 .amc2-hero__trust {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 28px;
    padding-top: 4px;
}

.amc2 .amc2-hero__trust li {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
    font-size: 15px;
    color: #c9cdd4;
}

.amc2 .amc2-hero__trust .amc2-i {
    font-size: 18px;
    color: var(--a2-accent);
}

/* example calculation card */
.amc2 .amc2-example {
    flex: none;
    width: 440px;
    margin-top: 150px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 26px;
    border-radius: 24px;
    background: rgba(21, 24, 30, 0.82);
    border: 1px solid rgba(255, 255, 255, 0.1);
    filter: drop-shadow(0 24px 30px rgba(0, 0, 0, 0.5));
}

.amc2 .amc2-example__top {
    display: flex;
    align-items: center;
    gap: 12px;
}

.amc2 .amc2-example__top img {
    width: 84px;
    height: 56px;
    border-radius: 10px;
    object-fit: cover;
    flex: none;
}

.amc2 .amc2-example__top span {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.amc2 .amc2-example__top b {
    font-family: var(--a2-head);
    font-size: 15px;
}

.amc2 .amc2-example__top small {
    font-size: 12px;
    color: var(--a2-muted);
}

.amc2 .amc2-example__rows {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.amc2 .amc2-example__rows div {
    display: flex;
    gap: 10px;
    font-size: 14px;
}

.amc2 .amc2-example__rows dt {
    flex: 1;
    color: var(--a2-muted);
}

.amc2 .amc2-example__rows dd {
    font-weight: 600;
    white-space: nowrap;
}

.amc2 .amc2-example__total {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding-top: 14px;
    border-top: 1px solid #2b313b;
}

.amc2 .amc2-example__total span {
    flex: 1;
    font-size: 14px;
    color: var(--a2-muted);
}

.amc2 .amc2-example__total b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 30px;
    letter-spacing: -0.015em;
    white-space: nowrap;
}

/* =====================================================================
   Trust
   ===================================================================== */
.amc2 .amc2-trust {
    padding-top: 24px;
}

.amc2 .amc2-trust__row {
    display: flex;
    gap: 20px;
    height: 460px;
}

.amc2 .amc2-rating {
    flex: none;
    width: 420px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 32px;
    border-radius: 28px;
    background: var(--a2-card);
}

.amc2 .amc2-rating__score {
    display: flex;
    align-items: center;
    gap: 16px;
}

.amc2 .amc2-rating__score > b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 96px;
    line-height: 1;
    letter-spacing: -0.03em;
}

.amc2 .amc2-rating__score > span {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-weight: 600;
    font-size: 15px;
    color: var(--a2-ink-2);
}

.amc2 .amc2-rating > p {
    font-size: 16px;
    line-height: 1.55;
    color: var(--a2-ink-2);
}

.amc2 .amc2-rating blockquote {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-left: 16px;
    border-left: 2px solid var(--a2-accent);
}

.amc2 .amc2-rating blockquote p {
    font-size: 15px;
    line-height: 1.55;
}

.amc2 .amc2-rating cite {
    font-style: normal;
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-rating .amc2-btn {
    margin-top: auto;
    width: 100%;
}

.amc2 .amc2-trust__photos {
    flex: 1;
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.amc2 .amc2-trust__photos figure {
    position: relative;
    border-radius: 24px;
    overflow: hidden;
    background: var(--a2-card);
}

.amc2 .amc2-trust__photos img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.amc2 .amc2-trust__photos figure::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0.55) 100%);
}

.amc2 .amc2-proofs {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-top: 40px;
}

.amc2 .amc2-proof {
    display: flex;
    gap: 16px;
    padding: 24px;
    border-radius: 22px;
    background: var(--a2-card);
}

.amc2 .amc2-proof__ic {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: var(--a2-field);
    color: var(--a2-accent);
    font-size: 24px;
}

.amc2 .amc2-proof > div {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.amc2 .amc2-proof b {
    font-family: var(--a2-head);
    font-size: 18px;
    line-height: 1.25;
}

.amc2 .amc2-proof p {
    font-size: 14px;
    line-height: 1.55;
    color: var(--a2-muted);
}

.amc2 .amc2-proof a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding-top: 4px;
    font-weight: 600;
    font-size: 14px;
    color: var(--a2-accent);
}

.amc2 .amc2-proof a .amc2-i {
    font-size: 14px;
}

/* =====================================================================
   Brands / models
   ===================================================================== */
.amc2 .amc2-brands {
    padding-top: 40px;
}

.amc2 .amc2-tiles {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 12px;
}

.amc2 .amc2-tile {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-height: 126px;
    padding: 20px;
    border-radius: 18px;
    background: var(--a2-card);
    transition: background-color 0.15s ease, transform 0.15s ease;
}

.amc2 .amc2-tile b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 20px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.amc2 .amc2-tile span {
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-tile.is-raised {
    background: var(--a2-field);
}

.amc2 .amc2-tile.is-accent {
    background: var(--a2-accent);
    color: #fff;
}

.amc2 .amc2-tile.is-accent span {
    color: rgba(255, 255, 255, 0.85);
}

.amc2 .amc2-tile:hover {
    transform: translateY(-2px);
}

.amc2 .amc2-brands .amc2-chips {
    margin-top: 32px;
}

.amc2 .amc2-models {
    padding-top: clamp(56px, 5vw, 96px);
}

.amc2 .amc2-models__row {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 12px;
}

.amc2 .amc2-model {
    display: flex;
    flex-direction: column;
    border-radius: 18px;
    overflow: hidden;
    background: var(--a2-card);
    transition: transform 0.15s ease;
}

.amc2 .amc2-model:hover {
    transform: translateY(-2px);
}

.amc2 .amc2-model__img {
    height: 128px;
    background: var(--a2-field);
}

.amc2 .amc2-model__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.amc2 .amc2-model__text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 12px 14px;
}

.amc2 .amc2-model__text b {
    font-family: var(--a2-head);
    font-size: 15px;
}

.amc2 .amc2-model__text small {
    font-size: 12px;
    color: var(--a2-muted);
}

/* =====================================================================
   Catalog
   ===================================================================== */
.amc2 .amc2-catalog {
    padding-top: clamp(56px, 5vw, 96px);
    scroll-margin-top: 80px;
}

.amc2 .amc2-head--catalog {
    margin-bottom: 28px;
}

.amc2 .amc2-head--catalog .amc2-head__text {
    gap: 8px;
}

.amc2 .amc2-head--catalog .amc-filter__found {
    margin: 0;
    font-size: 15px;
    color: var(--a2-muted);
}

.amc2 .amc2-sort {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.amc2 .amc2-sort__chip {
    padding: 9px 14px;
    border-radius: 999px;
    background: var(--a2-card);
    font-weight: 500;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
    transition: background-color 0.15s ease;
}

.amc2 .amc2-sort__chip:hover {
    background: var(--a2-field);
}

.amc2 .amc2-sort__chip.is-current {
    background: var(--a2-white-btn);
    color: var(--a2-white-btn-ink);
    font-weight: 600;
}

.amc2 .amc2-catalog__layout {
    display: grid;
    grid-template-columns: 360px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.amc2 .amc2-filters {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.amc2 .amc2-filter {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 24px;
    border-radius: 24px;
    background: var(--a2-card);
}

.amc2 .amc2-filter__head {
    display: flex;
    align-items: center;
    gap: 10px;
}

.amc2 .amc2-filter__head .amc2-i {
    font-size: 20px;
}

.amc2 .amc2-filter__head b {
    flex: 1;
    font-family: var(--a2-head);
    font-size: 20px;
}

.amc2 .amc2-filter__toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: var(--a2-field);
    color: var(--a2-ink);
    font-size: 16px;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.amc2 .amc2-filter__head a {
    font-size: 13px;
    color: var(--a2-accent);
}

.amc2 .amc2-filter__group {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-top: 16px;
    border-top: 1px solid var(--a2-line);
}

.amc2 .amc2-filter__group > label,
.amc2 .amc2-filter__label {
    font-weight: 600;
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-filter select,
.amc2 .amc2-filter input[type="text"] {
    height: 48px;
    padding: 0 36px 0 14px;
    font-size: 15px;
}

.amc2 .amc2-filter input[type="text"] {
    padding-right: 14px;
    background-image: none;
    cursor: text;
    font-weight: 400;
}

.amc2 .amc2-filter input::placeholder {
    color: var(--a2-muted);
}

.amc2 .amc2-filter__pair {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

/* carets for filter selects */
.amc2 .amc2-filter select {
    background-color: var(--a2-field);
    background-image: linear-gradient(45deg, transparent 50%, var(--a2-muted) 50%), linear-gradient(135deg, var(--a2-muted) 50%, transparent 50%);
    background-position: calc(100% - 20px) 50%, calc(100% - 15px) 50%;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.amc2 .amc2-range {
    position: relative;
    height: 24px;
}

.amc2 .amc2-range::before,
.amc2 .amc2-range span {
    content: "";
    position: absolute;
    top: 50%;
    height: 4px;
    margin-top: -2px;
    border-radius: 2px;
}

.amc2 .amc2-range::before {
    left: 0;
    right: 0;
    background: var(--a2-field);
}

.amc2 .amc2-range span {
    left: var(--lo);
    right: calc(100% - var(--hi));
    background: var(--a2-accent);
}

.amc2 .amc2-range span::before,
.amc2 .amc2-range span::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 16px;
    height: 16px;
    margin-top: -8px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid var(--a2-accent);
}

.amc2 .amc2-range span::before {
    left: -8px;
}

.amc2 .amc2-range span::after {
    right: -8px;
}

.amc2 .amc2-filter__extra {
    display: none;
}

.amc2 .amc2-filter.is-open .amc2-filter__extra {
    display: flex;
}

.amc2 .amc2-filter.is-open .amc2-filter__more {
    display: none;
}

.amc2 .amc2-filter__more {
    align-self: flex-start;
    padding: 0;
    font-weight: 600;
    font-size: 14px;
    color: var(--a2-accent);
    cursor: pointer;
}

.amc2 .amc2-filter__checks {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.amc2 .amc2-check {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
}

.amc2 .amc2-check input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.amc2 .amc2-check span {
    padding: 7px 12px;
    border-radius: 999px;
    background: var(--a2-field);
    font-size: 13px;
    font-weight: 500;
}

.amc2 .amc2-check input:checked + span {
    background: var(--a2-accent);
    color: #fff;
}

.amc2 .amc2-check input:focus-visible + span {
    box-shadow: 0 0 0 2px var(--a2-accent);
}

.amc2 .amc2-check--wide {
    margin-top: 6px;
}

.amc2 .amc2-help {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 20px;
    border-radius: 18px;
    background: var(--a2-accent-soft);
    border: 1px solid rgba(224, 104, 104, 0.4);
}

.amc2 .amc2-help b {
    font-family: var(--a2-head);
    font-size: 17px;
}

.amc2 .amc2-help p {
    font-size: 13px;
    line-height: 1.55;
    color: var(--a2-ink-2);
}

.amc2 .amc2-help__btns {
    display: flex;
    gap: 8px;
}

.amc2 .amc2-help__btns .amc2-btn {
    flex: 1;
    min-width: 0;
}

.amc2 .amc2-help__btns .amc2-btn .amc2-i {
    display: none;
}

.amc2 .amc2-help__btns .amc2-btn--max {
    flex: none;
    width: 44px;
}

.amc2 .amc2-help__btns .amc2-btn--max .amc2-i {
    display: inline-block;
    font-size: 24px;
}

.amc2 .amc2-results {
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-width: 0;
}

.amc2 .amc2-results.is-loading,
.amc-page.is-loading .amc2-results {
    opacity: 0.55;
    transition: opacity 0.2s ease;
}

.amc2 .amc2-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px 20px;
}

.amc2 .amc2-similar .amc2-grid {
    gap: 28px 20px;
}

/* card */
.amc2 .amc2-card {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 20px;
    overflow: hidden;
    background: var(--a2-card);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.amc2 .amc2-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 34px -16px rgba(0, 0, 0, 0.55);
}

.amc2 .amc2-card__photo {
    display: block;
    height: 220px;
    background: var(--a2-field) url("../img/amc2/icons/car-profile.svg") center / 56px no-repeat;
}

.amc2 .amc2-card--big .amc2-card__photo {
    height: 260px;
}

.amc2 .amc2-card__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.amc2 .amc2-card__photo img.is-broken {
    visibility: hidden;
}

.amc2 .amc2-card__tags {
    position: absolute;
    top: 14px;
    left: 14px;
    right: 60px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    pointer-events: none;
}

.amc2 .amc2-card__fav {
    position: absolute;
    top: 14px;
    right: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    font-size: 18px;
    cursor: pointer;
}

.amc2 .amc2-card__fav[aria-pressed="true"],
.amc2 .amc2-act[aria-pressed="true"] {
    color: var(--a2-accent);
}

.amc2 .amc2-card__body {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 18px 20px 20px;
}

.amc2 .amc2-card__head {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.amc2 .amc2-card__title {
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 19px;
    line-height: 1.25;
}

.amc2 .amc2-card__title::after {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 220px;
}

.amc2 .amc2-card--big .amc2-card__title::after {
    height: 260px;
}

.amc2 .amc2-card__grade {
    font-size: 13px;
    color: var(--a2-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.amc2 .amc2-card__specs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.amc2 .amc2-card__specs li {
    padding: 5px 10px;
    border-radius: 999px;
    background: var(--a2-field);
    font-weight: 500;
    font-size: 12px;
    line-height: 1.2;
    color: var(--a2-ink-2);
}

.amc2 .amc2-card__price {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding-top: 12px;
    border-top: 1px solid var(--a2-line);
}

.amc2 .amc2-card__total {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.amc2 .amc2-card__total b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 24px;
    line-height: 1.1;
    letter-spacing: -0.015em;
    white-space: nowrap;
}

.amc2 .amc2-card__total b.is-ask {
    font-size: 18px;
}

.amc2 .amc2-card__total span,
.amc2 .amc2-card__note {
    font-size: 12px;
    color: var(--a2-muted);
}

.amc2 .amc2-card__actions {
    position: relative;
    z-index: 1;
    display: flex;
    gap: 8px;
}

.amc2 .amc2-card__actions .amc2-btn--accent {
    flex: 1;
    min-width: 0;
}

.amc2 .amc2-card__actions .amc2-btn--soft {
    padding: 0 16px;
}

.amc2 .amc2-card__fav,
.amc2 .amc2-card__actions {
    z-index: 2;
}

/* "Пришлём подборку" card in the grid */
.amc2 .amc2-pick {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 28px;
    border-radius: 20px;
    background: var(--a2-accent);
    color: #fff;
}

.amc2 .amc2-pick__text {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.amc2 .amc2-pick__text b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 28px;
    line-height: 1.15;
    letter-spacing: -0.015em;
}

.amc2 .amc2-pick__text p {
    font-size: 15px;
    line-height: 1.55;
    color: rgba(255, 255, 255, 0.9);
}

.amc2 .amc2-pick .wpcf7 {
    margin-top: auto;
}

.amc2 .amc2-empty {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    padding: 40px;
    border-radius: 24px;
    background: var(--a2-card);
    color: var(--a2-ink-2);
}

/* pager */
.amc2 .amc2-pager {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 8px;
    margin: 0;
}

.amc2 .amc2-pager__pages {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-left: auto;
}

.amc2 .amc2-pager .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 10px;
    border-radius: 12px;
    background: var(--a2-card);
    border: 0;
    color: var(--a2-ink);
    font-weight: 600;
    font-size: 15px;
    text-decoration: none;
}

.amc2 .amc2-pager .page-numbers .amc2-i {
    font-size: 18px;
}

.amc2 .amc2-pager .page-numbers.current {
    background: var(--a2-white-btn);
    color: var(--a2-white-btn-ink);
}

.amc2 .amc2-pager .page-numbers.dots {
    background: var(--a2-card);
}

.amc2 .amc2-pager a.page-numbers:hover {
    background: var(--a2-field);
}

/* =====================================================================
   Reviews and video
   ===================================================================== */
.amc2 .amc2-arrows {
    display: flex;
    gap: 8px;
}

.amc2 .amc2-arrows button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 999px;
    background: var(--a2-card);
    color: var(--a2-ink);
    font-size: 20px;
    cursor: pointer;
}

.amc2 .amc2-arrows button.is-light {
    background: var(--a2-white-btn);
    color: var(--a2-white-btn-ink);
}

.amc2 .amc2-reviews__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 32px) / 3);
    gap: 16px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.amc2 .amc2-reviews__track::-webkit-scrollbar {
    display: none;
}

.amc2 .amc2-review {
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-height: 271px;
    padding: 28px;
    border-radius: 22px;
    background: var(--a2-card);
}

.amc2 .amc2-review > p {
    font-size: 16px;
    line-height: 1.6;
    color: var(--a2-ink-3);
}

.amc2 .amc2-review__author {
    margin-top: auto;
    display: flex;
    align-items: center;
    gap: 12px;
}

.amc2 .amc2-review__ava {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 999px;
    background: var(--a2-field);
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 18px;
}

.amc2 .amc2-review__author > span:last-child {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.amc2 .amc2-review__author b {
    font-family: var(--a2-head);
    font-size: 16px;
}

.amc2 .amc2-review__author small {
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-video {
    display: flex;
    gap: 20px;
    height: 440px;
    margin-top: 32px;
}

.amc2 .amc2-video__channel {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 36px;
    border-radius: 24px;
    background: var(--a2-card);
}

.amc2 .amc2-video__head {
    display: flex;
    align-items: center;
    gap: 16px;
}

.amc2 .amc2-video__logo {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 16px;
    background: #ff0033;
    color: #fff;
    font-size: 30px;
}

.amc2 .amc2-video__head h3 {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: clamp(24px, 1vw + 14px, 34px);
    line-height: 1.2;
    letter-spacing: -0.015em;
}

.amc2 .amc2-video__channel > p {
    font-size: 16px;
    line-height: 1.55;
    color: var(--a2-muted);
}

.amc2 .amc2-video__channel ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.amc2 .amc2-video__channel li {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 500;
    font-size: 15px;
}

.amc2 .amc2-video__channel li .amc2-i {
    font-size: 18px;
    color: var(--a2-green);
}

.amc2 .amc2-video__btns {
    margin-top: auto;
    display: flex;
    gap: 10px;
}

.amc2 .amc2-video__yt {
    flex: 1;
}

.amc2 .amc2-video__yt .amc2-i {
    color: #ff0033;
}

.amc2 .amc2-video__btns .amc2-btn--soft {
    padding: 0 22px;
}

.amc2 .amc2-short-video {
    position: relative;
    flex: none;
    width: 248px;
    height: 100%;
    border-radius: 24px;
    overflow: hidden;
    background: var(--a2-card);
}

.amc2 .amc2-short-video > img:first-child {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.amc2 .amc2-short-video:hover > img:first-child {
    transform: scale(1.04);
}

.amc2 .amc2-short-video::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0.85) 100%);
}

.amc2 .amc2-short-video__play {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 64px;
    height: 64px;
    margin: -50px 0 0 -32px;
    z-index: 1;
}

.amc2 .amc2-short-video__cap {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 22px;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

.amc2 .amc2-short-video__cap .amc2-chip {
    background: rgba(0, 0, 0, 0.5);
}

.amc2 .amc2-short-video__cap b {
    font-family: var(--a2-head);
    font-size: 17px;
    line-height: 1.25;
    color: #fff;
}

/* =====================================================================
   Price: answer + breakdown
   ===================================================================== */
.amc2 .amc2-cost__grid {
    display: grid;
    grid-template-columns: 620px minmax(0, 1fr);
    gap: 64px;
    align-items: start;
}

.amc2 .amc2-cost__answer {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}

.amc2 .amc2-cost__answer .amc2-muted {
    font-size: 16px;
    line-height: 1.55;
}

.amc2 .amc2-short {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 24px;
    border-radius: 20px;
    background: rgba(224, 104, 104, 0.1);
    border: 1px solid var(--a2-accent-line);
}

.amc2 .amc2-short span {
    font-weight: 600;
    font-size: 13px;
    color: var(--a2-accent);
}

.amc2 .amc2-short p {
    font-size: 17px;
    line-height: 1.55;
    color: var(--a2-ink);
}

.amc2 .amc2-breakdown {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 36px;
    border-radius: 28px;
    background: var(--a2-card);
}

.amc2 .amc2-breakdown--lot {
    padding: 32px;
    border-radius: 24px;
    scroll-margin-top: 90px;
}

.amc2 .amc2-breakdown__head {
    display: flex;
    align-items: flex-end;
    gap: 16px;
}

.amc2 .amc2-breakdown__head > div {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.amc2 .amc2-breakdown__head h3 {
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 22px;
    line-height: 1.25;
}

.amc2 .amc2-breakdown--lot .amc2-breakdown__head h3 {
    font-size: 24px;
    letter-spacing: -0.015em;
}

.amc2 .amc2-breakdown__head p {
    font-size: 14px;
    color: var(--a2-muted);
}

.amc2 .amc2-breakdown__big {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 36px;
    line-height: 1.2;
    letter-spacing: -0.015em;
    white-space: nowrap;
}

.amc2 .amc2-bar {
    display: flex;
    gap: 3px;
    height: 18px;
    border-radius: 9px;
    overflow: hidden;
}

.amc2 .amc2-breakdown--lot .amc2-bar {
    height: 16px;
    border-radius: 8px;
}

.amc2 .amc2-bar span {
    flex-basis: 0;
    min-width: 3px;
}

.amc2 .amc2-breakdown__rows {
    display: flex;
    flex-direction: column;
}

.amc2 .amc2-breakdown__row {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 13px 0;
    border-top: 1px solid var(--a2-line);
    font-size: 15px;
}

.amc2 .amc2-breakdown--lot .amc2-breakdown__row {
    padding: 13px 14px;
}

.amc2 .amc2-breakdown__row i {
    flex: none;
    width: 10px;
    height: 10px;
    border-radius: 3px;
}

html[data-theme="light"] .amc2 .amc2-breakdown__row i[style*="#ffffff"],
html[data-theme="light"] .amc2 .amc2-bar span[style*="#ffffff"] {
    background: #111317 !important;
}

.amc2 .amc2-breakdown__row span {
    flex: 1;
    color: var(--a2-ink-2);
}

.amc2 .amc2-breakdown__row b {
    font-weight: 600;
    white-space: nowrap;
}

.amc2 .amc2-breakdown__row.is-sub {
    border-top: 0;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.04);
    font-weight: 600;
}

html[data-theme="light"] .amc2 .amc2-breakdown__row.is-sub {
    background: var(--a2-field);
}

.amc2 .amc2-breakdown__row.is-sub span {
    color: var(--a2-ink);
}

.amc2 .amc2-breakdown__notes {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-top: 4px;
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-breakdown__notes li::before {
    content: "• ";
}

.amc2 .amc2-breakdown__total {
    display: flex;
    align-items: baseline;
    gap: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--a2-ink);
}

.amc2 .amc2-breakdown__total span {
    flex: 1;
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 18px;
}

.amc2 .amc2-breakdown__total b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: clamp(28px, 1.5vw + 12px, 40px);
    line-height: 1.04;
    letter-spacing: -0.03em;
    white-space: nowrap;
}

/* =====================================================================
   Steps
   ===================================================================== */
.amc2 .amc2-steps .amc2-head {
    margin-bottom: 40px;
}

.amc2 .amc2-steps__time {
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: clamp(16px, 0.4vw + 13px, 20px);
    color: var(--a2-accent);
    white-space: nowrap;
}

.amc2 .amc2-steps__row {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
}

.amc2 .amc2-step {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-height: 237px;
    padding: 24px;
    border-radius: 20px;
    background: var(--a2-card);
}

.amc2 .amc2-step__top {
    display: flex;
    align-items: center;
    gap: 12px;
}

.amc2 .amc2-step__ic {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.06);
    font-size: 22px;
}

html[data-theme="light"] .amc2 .amc2-step:not(.is-accent) .amc2-step__ic {
    background: var(--a2-field);
}

.amc2 .amc2-step__n {
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 15px;
    color: var(--a2-muted);
}

.amc2 .amc2-step b {
    font-family: var(--a2-head);
    font-size: 20px;
    line-height: 1.25;
}

.amc2 .amc2-step p {
    font-size: 14px;
    line-height: 1.55;
    color: var(--a2-muted);
}

.amc2 .amc2-step.is-accent {
    background: var(--a2-accent);
    color: #fff;
}

.amc2 .amc2-step.is-accent .amc2-step__ic {
    background: rgba(255, 255, 255, 0.2);
}

.amc2 .amc2-step.is-accent .amc2-step__n {
    color: rgba(255, 255, 255, 0.6);
}

.amc2 .amc2-step.is-accent p {
    color: rgba(255, 255, 255, 0.9);
}

/* =====================================================================
   Why + advantages
   ===================================================================== */
.amc2 .amc2-why__grid {
    display: grid;
    grid-template-columns: 820px minmax(0, 1fr);
    gap: 24px;
}

.amc2 .amc2-why__card {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 478px;
    padding: 40px;
    border-radius: 28px;
    overflow: hidden;
    background: #1b1f26;
    color: #fff;
}

.amc2 .amc2-why__card > img {
    position: absolute;
    top: 0;
    left: -17%;
    width: 134%;
    height: 130%;
    max-width: none;
    object-fit: cover;
}

.amc2 .amc2-why__card::before {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    background: linear-gradient(180deg, rgba(15, 17, 21, 0.15) 0%, rgba(15, 17, 21, 0.75) 55%, rgba(15, 17, 21, 0.97) 100%);
}

.amc2 .amc2-why__text {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.amc2 .amc2-why__text .amc2-h2 {
    color: #fff;
}

.amc2 .amc2-why__text p {
    font-size: 16px;
    line-height: 1.55;
    color: #d6d9de;
}

.amc2 .amc2-why__text .amc2-chip {
    background: #222731;
    color: #fff;
}

.amc2 .amc2-why__text .amc2-chip .amc2-i {
    color: var(--a2-green);
}

.amc2 .amc2-why__list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.amc2 .amc2-why__list li {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 22px;
    border-radius: 18px;
    background: var(--a2-card);
}

.amc2 .amc2-why__list li > span {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(224, 104, 104, 0.14);
    color: var(--a2-accent);
    font-size: 22px;
}

.amc2 .amc2-why__list div {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.amc2 .amc2-why__list b {
    font-family: var(--a2-head);
    font-size: 17px;
}

.amc2 .amc2-why__list small {
    font-size: 14px;
    color: var(--a2-muted);
}

/* =====================================================================
   Route / cities
   ===================================================================== */
.amc2 .amc2-route .amc2-head {
    margin-bottom: 28px;
}

.amc2 .amc2-route__addr {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 18px;
    white-space: nowrap;
}

.amc2 .amc2-route__addr .amc2-i {
    font-size: 20px;
    color: var(--a2-accent);
}

.amc2 .amc2-route__grid {
    display: grid;
    grid-template-columns: 620px minmax(0, 1fr);
    gap: 16px;
}

.amc2 .amc2-route__path {
    padding: 32px;
    border-radius: 24px;
    background: var(--a2-card);
}

.amc2 .amc2-route__path li {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 0;
    border-top: 1px solid var(--a2-line);
}

.amc2 .amc2-route__path li:first-child {
    border-top-color: transparent;
}

.amc2 .amc2-route__path li > span {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 999px;
    background: var(--a2-field);
    font-size: 20px;
}

.amc2 .amc2-route__path li.is-accent > span {
    background: var(--a2-accent);
    color: #fff;
}

.amc2 .amc2-route__path div {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.amc2 .amc2-route__path b {
    font-family: var(--a2-head);
    font-size: 18px;
}

.amc2 .amc2-route__path small {
    font-size: 14px;
    color: var(--a2-muted);
}

.amc2 .amc2-route__cities {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 32px;
    border-radius: 24px;
    background: var(--a2-card);
}

.amc2 .amc2-route__cities h3 {
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 20px;
    line-height: 1.25;
}

.amc2 .amc2-route__cities .amc2-muted {
    font-size: 14px;
    line-height: 1.55;
}

/* =====================================================================
   Credit
   ===================================================================== */
.amc2 .amc2-credit__box {
    display: flex;
    align-items: center;
    gap: 48px;
    padding: clamp(24px, 2.5vw, 48px);
    border-radius: 28px;
    background: linear-gradient(90deg, #2a1518 0%, #1b1f26 100%);
    border: 1px solid rgba(224, 104, 104, 0.3);
    color: #fff;
}

html[data-theme="light"] .amc2 .amc2-credit__box {
    background: linear-gradient(90deg, #fbe9e9 0%, #ffffff 100%);
    color: var(--a2-ink);
}

.amc2 .amc2-credit__text {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.amc2 .amc2-credit__text .amc2-h2 {
    color: inherit;
}

.amc2 .amc2-credit__text p {
    font-size: 17px;
    line-height: 1.55;
    color: var(--a2-ink-2);
}

.amc2 .amc2-credit__terms {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.amc2 .amc2-credit__terms li {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 14px 20px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.06);
}

html[data-theme="light"] .amc2 .amc2-credit__terms li {
    background: rgba(0, 0, 0, 0.05);
}

.amc2 .amc2-credit__terms b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 22px;
}

.amc2 .amc2-credit__terms span {
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-credit__calc {
    flex: none;
    width: 520px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 28px;
    border-radius: 20px;
    background: var(--a2-glass);
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.amc2 .amc2-credit__calc > b {
    font-family: var(--a2-head);
    font-size: 17px;
}

.amc2 .amc2-credit__calc dl {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.amc2 .amc2-credit__calc dl div {
    display: flex;
    font-size: 15px;
}

.amc2 .amc2-credit__calc dt {
    flex: 1;
    color: var(--a2-muted);
}

.amc2 .amc2-credit__calc dd {
    font-weight: 600;
}

.amc2 .amc2-credit__pay {
    display: flex;
    align-items: baseline;
    padding-top: 12px;
    border-top: 1px solid var(--a2-line);
}

.amc2 .amc2-credit__pay span {
    flex: 1;
    font-size: 15px;
    color: var(--a2-muted);
}

.amc2 .amc2-credit__pay b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 34px;
    line-height: 1.2;
    letter-spacing: -0.015em;
    color: var(--a2-accent);
    white-space: nowrap;
}

.amc2 .amc2-credit__calc > p {
    font-size: 12px;
    color: var(--a2-muted);
}

/* =====================================================================
   FAQ + SEO
   ===================================================================== */
.amc2 .amc2-faqseo__grid,
.amc2 .amc2-lotfaq__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 620px;
    gap: 64px;
    align-items: start;
}

.amc2 .amc2-lotfaq__grid {
    grid-template-columns: 620px minmax(0, 1fr);
}

.amc2 .amc2-faq .amc2-h2 {
    margin-bottom: 24px;
}

.amc2 .amc2-faq__item {
    border-top: 1px solid var(--a2-line);
}

.amc2 .amc2-faq__item:first-of-type {
    border-top: 2px solid var(--a2-ink);
}

.amc2 .amc2-faq__item summary {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 22px 0;
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: clamp(16px, 0.3vw + 13px, 19px);
    line-height: 1.5;
    list-style: none;
    cursor: pointer;
}

.amc2 .amc2-lotfaq .amc2-faq__item summary {
    padding: 20px 0;
    font-size: clamp(16px, 0.2vw + 14px, 18px);
}

.amc2 .amc2-faq__item summary::-webkit-details-marker {
    display: none;
}

.amc2 .amc2-faq__sign {
    flex: none;
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 999px;
    background: var(--a2-card);
    font-size: 16px;
    transition: background-color 0.15s ease;
}

.amc2 .amc2-faq__sign .is-minus,
.amc2 .amc2-faq__item[open] .amc2-faq__sign .is-plus {
    display: none;
}

.amc2 .amc2-faq__item[open] .amc2-faq__sign .is-minus {
    display: inline-block;
}

.amc2 .amc2-faq__item[open] .amc2-faq__sign {
    background: var(--a2-accent);
    color: #fff;
}

.amc2 .amc2-faq__item p {
    max-width: 760px;
    margin-top: -10px;
    padding-bottom: 22px;
    font-size: 15px;
    line-height: 1.55;
    color: var(--a2-muted);
}

.amc2 .amc2-seo {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 36px;
    border-radius: 24px;
    background: var(--a2-card);
}

.amc2 .amc2-seo__title {
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 22px;
    line-height: 1.25;
}

.amc2 .amc2-seo > p,
.amc2 .amc2-seo__article p,
.amc2 .amc2-seo__article li {
    font-size: 15px;
    line-height: 1.55;
    color: var(--a2-muted);
}

.amc2 .amc2-seo a:not(.amc2-chip),
.amc2 .amc2-seo__article a {
    color: var(--a2-accent);
}

.amc2 .amc2-seo__more summary {
    font-weight: 600;
    font-size: 14px;
    color: var(--a2-accent);
    cursor: pointer;
    list-style: none;
}

.amc2 .amc2-seo__more summary::-webkit-details-marker {
    display: none;
}

.amc2 .amc2-seo__more summary::after {
    content: " ↓";
}

.amc2 .amc2-seo__more[open] summary::after {
    content: " ↑";
}

.amc2 .amc2-seo__article {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 16px;
}

.amc2 .amc2-seo__article h2,
.amc2 .amc2-seo__article h3 {
    margin: 8px 0 0;
    font-family: var(--a2-head);
    font-size: 18px;
    line-height: 1.3;
    color: var(--a2-ink);
}

.amc2 .amc2-seo .amc2-chips .amc2-chip {
    padding: 8px 12px;
}

/* =====================================================================
   Lead form block
   ===================================================================== */
.amc2 .amc2-lead {
    padding-bottom: clamp(56px, 4.6vw, 88px);
}

.amc2 .amc2-lead__box {
    display: flex;
    border-radius: 32px;
    overflow: hidden;
    background: var(--a2-card);
}

.amc2 .amc2-lead__photo {
    position: relative;
    flex: none;
    width: 45%;
    max-width: 760px;
    min-height: 560px;
    background: var(--a2-field);
}

.amc2 .amc2-lead__photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.amc2 .amc2-lead__photo::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(27, 31, 38, 0) 0%, var(--a2-card) 100%);
}

.amc2 .amc2-lead__form {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 16px;
    padding: clamp(24px, 3vw, 56px);
}

.amc2 .amc2-lead__form > p {
    font-size: 16px;
    line-height: 1.55;
    color: var(--a2-muted);
}

/* CF7 forms of the new design */
.amc2 .amc2-cf7 {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.amc2 .amc2-cf7 .wpcf7-form-control-wrap {
    display: block;
    flex: 1;
    min-width: 0;
}

.amc2 .amc2-cf7 input[type="text"],
.amc2 .amc2-cf7 input[type="tel"] {
    width: 100%;
    height: 58px;
    padding: 0 18px;
    border: 0;
    border-radius: 14px;
    background: var(--a2-field);
    color: var(--a2-ink);
    font-family: var(--a2-body);
    font-size: 16px;
    outline: none;
}

.amc2 .amc2-cf7 input::placeholder {
    color: var(--a2-muted);
}

.amc2 .amc2-cf7 input:focus-visible {
    box-shadow: 0 0 0 2px var(--a2-accent);
}

.amc2 .amc2-cf7__pair {
    display: flex;
    gap: 10px;
}

.amc2 .amc2-cf7__stack {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.amc2 .amc2-cf7__row {
    display: flex;
    gap: 10px;
}

.amc2 .amc2-cf7__row .amc2-btn {
    height: 60px;
    padding: 0 22px;
    font-size: 16px;
}

.amc2 .amc2-cf7__row .amc2-btn--max {
    width: 60px;
    padding: 0;
}

.amc2 .amc2-cf7__submit {
    position: relative;
    flex: 1;
    min-width: 0;
}

.amc2 .amc2-cf7__submit .wpcf7-submit {
    width: 100%;
    height: 60px;
    padding: 0 56px 0 28px;
    border: 0;
    border-radius: 14px;
    background: var(--a2-accent);
    color: #fff;
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 16px;
    cursor: pointer;
}

.amc2 .amc2-cf7__submit::after {
    content: "";
    position: absolute;
    top: 50%;
    right: calc(50% - 90px);
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: currentColor;
    color: #fff;
    -webkit-mask: url("../img/amc2/icons/arrow-right.svg") center / contain no-repeat;
    mask: url("../img/amc2/icons/arrow-right.svg") center / contain no-repeat;
    pointer-events: none;
}

.amc2 .amc2-cf7__submit .wpcf7-spinner {
    position: absolute;
    right: 8px;
    top: 50%;
    margin: -12px 0 0;
}

.amc2 .amc2-cf7__policy {
    font-size: 12px;
    color: var(--a2-muted);
}

.amc2 .amc2-cf7__policy a {
    color: inherit;
    text-decoration: underline;
}

.amc2 .amc2-cf7 .wpcf7-not-valid-tip {
    margin-top: 4px;
    font-size: 12px;
}

.amc2 .amc2-cf7 .wpcf7-response-output {
    margin: 4px 0 0 !important;
    padding: 10px 14px !important;
    border-radius: 12px;
    font-size: 14px;
}

.amc2 .amc2-cf7 .smart-captcha,
.amc2 .amc2-cf7 .cfyc-captcha-container {
    min-height: 0 !important;
}

/* pick card: white inputs on the accent card */
.amc2 .amc2-cf7--pick input[type="text"],
.amc2 .amc2-cf7--pick input[type="tel"] {
    height: 50px;
    padding: 0 16px;
    border-radius: 12px;
    background: #fff;
    color: #111317;
    font-size: 15px;
}

.amc2 .amc2-cf7--pick input::placeholder {
    color: #6b7280;
}

.amc2 .amc2-cf7--pick .amc2-cf7__submit .wpcf7-submit {
    height: 52px;
    background: #fff;
    color: #0f1115;
    font-size: 15px;
}

.amc2 .amc2-cf7--pick .amc2-cf7__submit::after {
    color: #0f1115;
    right: calc(50% - 98px);
}

.amc2 .amc2-cf7--pick .wpcf7-response-output {
    background: rgba(255, 255, 255, 0.95);
    color: #111317;
}

/* =====================================================================
   Footer top (rich links)
   ===================================================================== */
.amc2 .amc2-foottop {
    padding: 64px 0 40px;
    background: var(--a2-bg-deep);
}

.amc2 .amc2-foottop__grid {
    display: flex;
    gap: 40px;
}

.amc2 .amc2-foottop__col {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.amc2 .amc2-foottop__col span {
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--a2-muted);
}

.amc2 .amc2-foottop__col a {
    font-size: 14px;
    color: var(--a2-ink-3);
}

.amc2 .amc2-foottop__col a:hover {
    color: var(--a2-accent);
}

.amc2 .amc2-foottop__trust {
    flex: none;
    width: 380px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.amc2 .amc2-foottop__trust li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 12px;
    background: var(--a2-card);
    font-weight: 500;
    font-size: 14px;
}

.amc2 .amc2-foottop__trust .amc2-i {
    font-size: 18px;
    color: var(--a2-accent);
}

/* =====================================================================
   Car page
   ===================================================================== */
.amc2 .amc2-lothead {
    position: relative;
    overflow: hidden;
    padding: 132px 0 32px;
}

.amc2 .amc2-lothead__glow {
    position: absolute;
    top: -380px;
    left: 47%;
    width: 1400px;
    height: 700px;
    max-width: none;
    pointer-events: none;
}

.amc2 .amc2-lothead .amc2-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.amc2 .amc2-lothead__row {
    display: flex;
    align-items: flex-end;
    gap: 24px;
}

.amc2 .amc2-lothead__text {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.amc2 .amc2-lothead__title {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: clamp(30px, 2.6vw + 10px, 64px);
    line-height: 1.04;
    letter-spacing: -0.03em;
}

.amc2 .amc2-lothead__actions {
    flex: none;
    display: flex;
    gap: 8px;
}

.amc2 .amc2-act {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    border-radius: 12px;
    background: var(--a2-card);
    color: var(--a2-ink);
    font-weight: 500;
    font-size: 14px;
    cursor: pointer;
}

.amc2 .amc2-act .amc2-i {
    font-size: 18px;
}

.amc2 .amc2-act.is-done span::after {
    content: " ✓";
}

.amc2 .amc2-lotmain__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 556px;
    gap: 24px;
    align-items: start;
}

.amc2 .amc2-lotmain__left {
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-width: 0;
}

.amc2 .amc2-gallery {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.amc2 .amc2-gallery__main {
    position: relative;
    height: 620px;
    border-radius: 24px;
    overflow: hidden;
    background: var(--a2-card);
}

.amc2 .amc2-gallery__open {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    cursor: zoom-in;
}

.amc2 .amc2-gallery__open img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.amc2 .amc2-gallery__empty {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--a2-muted);
}

.amc2 .amc2-gallery__count {
    position: absolute;
    top: 20px;
    left: 20px;
    padding: 9px 14px;
    font-weight: 600;
    font-size: 13px;
}

.amc2 .amc2-gallery__video {
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 9px 14px;
    font-size: 13px;
    cursor: pointer;
}

.amc2 .amc2-gallery__arrow {
    position: absolute;
    top: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-top: -24px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    font-size: 20px;
    cursor: pointer;
}

.amc2 .amc2-gallery__arrow.is-prev {
    left: 20px;
}

.amc2 .amc2-gallery__arrow.is-next {
    right: 20px;
}

.amc2 .amc2-gallery__thumbs {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 10px;
}

.amc2 .amc2-gallery__thumb {
    position: relative;
    height: 96px;
    padding: 0;
    border-radius: 14px;
    overflow: hidden;
    border: 2px solid transparent;
    background: var(--a2-card);
    cursor: pointer;
}

.amc2 .amc2-gallery__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.amc2 .amc2-gallery__thumb.is-active {
    border-color: var(--a2-accent);
}

.amc2 .amc2-gallery__thumb.is-hidden {
    display: none;
}

.amc2 .amc2-gallery__thumb.is-more span {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 16px;
}

.amc2 .amc2-panel {
    padding: 32px;
    border-radius: 24px;
    background: var(--a2-card);
}

.amc2 .amc2-panel__title {
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 24px;
    line-height: 1.25;
    letter-spacing: -0.015em;
}

.amc2 .amc2-specs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 20px;
}

.amc2 .amc2-specs > div {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 14px;
    align-items: center;
    padding: 16px 4px;
    border-top: 1px solid var(--a2-line);
}

.amc2 .amc2-specs__ic {
    grid-row: 1 / 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--a2-field);
    font-size: 18px;
}

.amc2 .amc2-specs dt {
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-specs dd {
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 17px;
    overflow-wrap: anywhere;
}

.amc2 .amc2-check {
    display: flex;
    gap: 24px;
}

.amc2 .amc2-check__text {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.amc2 .amc2-check__text > p {
    font-size: 15px;
    line-height: 1.55;
    color: var(--a2-muted);
}

.amc2 .amc2-check .amc2-chip {
    font-size: 14px;
    padding: 10px 14px;
}

.amc2 .amc2-check .amc2-chip .amc2-i {
    color: var(--a2-accent);
}

.amc2 .amc2-check__photo {
    flex: none;
    width: 300px;
    height: 200px;
    border-radius: 18px;
    object-fit: cover;
}

.amc2 .amc2-legend summary {
    font-weight: 600;
    font-size: 14px;
    color: var(--a2-accent);
    cursor: pointer;
}

/* sidebar */
.amc2 .amc2-lotside {
    position: sticky;
    top: 90px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.amc2 .amc2-buy {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 32px;
    border-radius: 24px;
    background: var(--a2-card);
    border: 1px solid var(--a2-line);
}

.amc2 .amc2-buy__label {
    font-size: 14px;
    color: var(--a2-muted);
}

.amc2 .amc2-buy__price {
    margin-top: -8px;
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: clamp(36px, 1.5vw + 20px, 52px);
    line-height: 1;
    letter-spacing: -0.03em;
}

.amc2 .amc2-buy__price.is-ask {
    font-size: 28px;
}

.amc2 .amc2-buy__orig {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 500;
    font-size: 15px;
    color: var(--a2-ink-2);
}

.amc2 .amc2-buy__orig .amc2-i {
    font-size: 18px;
}

.amc2 .amc2-buy__credit {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 12px 16px;
    border-radius: 12px;
    background: rgba(61, 220, 132, 0.1);
    color: var(--a2-ink);
    text-align: left;
    cursor: pointer;
}

.amc2 .amc2-buy__credit .amc2-i {
    font-size: 18px;
    color: var(--a2-green);
}

.amc2 .amc2-buy__credit > span:not(.amc2-i) {
    flex: 1;
    font-weight: 600;
    font-size: 15px;
}

.amc2 .amc2-buy__credit em {
    font-style: normal;
    font-size: 13px;
    color: var(--a2-green);
}

html[data-theme="light"] .amc2 .amc2-buy__credit em,
html[data-theme="light"] .amc2 .amc2-buy__credit .amc2-i {
    color: #1a9b56;
}

.amc2 .amc2-buy__city {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.amc2 .amc2-buy__city label {
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-select {
    position: relative;
    display: flex;
    align-items: center;
}

.amc2 .amc2-select > .amc2-i:first-child {
    position: absolute;
    left: 16px;
    font-size: 18px;
    color: var(--a2-accent);
    pointer-events: none;
}

.amc2 .amc2-select select {
    height: 54px;
    padding-left: 44px;
    background-image: none;
}

.amc2 .amc2-select__caret {
    position: absolute;
    right: 16px;
    font-size: 16px;
    pointer-events: none;
}

.amc2 .amc2-buy__cityres {
    font-size: 13px;
    line-height: 1.55;
    color: var(--a2-muted);
}

.amc2 .amc2-buy__cityres b {
    color: var(--a2-ink);
}

.amc2 .amc2-buy__warn {
    padding: 12px 14px;
    border-radius: 12px;
    background: var(--warn-bg, rgba(251, 165, 12, 0.1));
    color: var(--warn-ink, #f2d9a8);
    font-size: 13px;
    line-height: 1.5;
}

.amc2 .amc2-buy__msgr {
    display: flex;
    gap: 8px;
    margin-top: -6px;
}

.amc2 .amc2-buy__msgr .amc2-btn {
    flex: 1;
    height: 52px;
    font-size: 15px;
}

.amc2 .amc2-buy__msgr .amc2-btn--max {
    flex: none;
}

.amc2 .amc2-buy__note {
    font-size: 13px;
    line-height: 1.5;
    color: var(--a2-muted);
}

.amc2 .amc2-sidecard {
    border-radius: 24px;
    overflow: hidden;
    background: var(--a2-card);
}

.amc2 .amc2-sidetrust__rating {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 22px 28px;
}

.amc2 .amc2-sidetrust__rating > b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 40px;
    line-height: 1;
    letter-spacing: -0.03em;
}

.amc2 .amc2-sidetrust__rating > span:not(.amc2-i) {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 13px;
    color: var(--a2-ink-2);
}

.amc2 .amc2-sidetrust__rating > .amc2-i {
    font-size: 18px;
}

.amc2 .amc2-sidetrust__video {
    display: flex;
    gap: 20px;
    padding: 24px 28px;
    border-top: 1px solid var(--a2-line);
}

.amc2 .amc2-sidetrust__thumb {
    position: relative;
    flex: none;
    width: 120px;
    height: 212px;
    border-radius: 16px;
    overflow: hidden;
}

.amc2 .amc2-sidetrust__thumb img:first-child {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.amc2 .amc2-sidetrust__play {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 44px;
    height: 44px;
    margin: -22px 0 0 -22px;
}

.amc2 .amc2-sidetrust__video > div {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.amc2 .amc2-sidetrust__video b {
    font-family: var(--a2-head);
    font-size: 19px;
    line-height: 1.25;
}

.amc2 .amc2-sidetrust__video p {
    font-size: 14px;
    line-height: 1.55;
    color: var(--a2-muted);
}

.amc2 .amc2-sidetrust__video a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    font-size: 14px;
}

.amc2 .amc2-sidetrust__video a .amc2-i {
    color: #ff0033;
    font-size: 16px;
}

.amc2 .amc2-sidetrust__req {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 22px 28px;
    background: var(--a2-field);
    font-weight: 500;
    font-size: 14px;
}

.amc2 .amc2-sidetrust__req .amc2-i {
    font-size: 18px;
    color: var(--a2-green);
}

.amc2 .amc2-guarantees {
    padding: 8px 24px;
    border-radius: 20px;
}

.amc2 .amc2-guarantees li {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 0;
    border-top: 1px solid var(--a2-line);
}

.amc2 .amc2-guarantees li:first-child {
    border-top: 0;
}

.amc2 .amc2-guarantees li > .amc2-i {
    font-size: 20px;
    color: var(--a2-accent);
}

.amc2 .amc2-guarantees div {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.amc2 .amc2-guarantees b {
    font-weight: 600;
    font-size: 15px;
}

.amc2 .amc2-guarantees small {
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-guarantees small a {
    text-decoration: underline;
}

.amc2 .amc2-sidecall {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 20px 24px;
    border-radius: 20px;
    background: var(--a2-accent-soft);
}

.amc2 .amc2-sidecall > .amc2-i {
    font-size: 22px;
    color: var(--a2-accent);
}

.amc2 .amc2-sidecall > span:not(.amc2-i) {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.amc2 .amc2-sidecall b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 20px;
}

.amc2 .amc2-sidecall small {
    font-size: 13px;
    color: var(--a2-muted);
}

.amc2 .amc2-market {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 28px;
    border-radius: 20px;
}

.amc2 .amc2-market > b {
    font-family: var(--a2-head);
    font-size: 19px;
    line-height: 1.25;
}

.amc2 .amc2-market__scale {
    position: relative;
    height: 56px;
}

.amc2 .amc2-market__scale::before {
    content: "";
    position: absolute;
    top: 24px;
    left: 0;
    right: 0;
    height: 8px;
    border-radius: 4px;
    background: linear-gradient(90deg, #3ddc84 0%, #ffcf48 50%, #e06868 100%);
}

.amc2 .amc2-market__scale img {
    position: absolute;
    top: 17px;
    left: calc(var(--pos) - 11px);
    width: 22px;
    height: 22px;
}

.amc2 .amc2-market__label {
    position: absolute;
    top: 0;
    left: var(--pos);
    transform: translateX(-50%);
    font-weight: 600;
    font-size: 12px;
    white-space: nowrap;
}

.amc2 .amc2-market__ends {
    display: flex;
    justify-content: space-between;
}

.amc2 .amc2-market__ends span {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.amc2 .amc2-market__ends span:last-child {
    align-items: flex-end;
}

.amc2 .amc2-market__ends b {
    font-family: var(--a2-head);
    font-size: 15px;
}

.amc2 .amc2-market__ends small {
    font-size: 12px;
    color: var(--a2-muted);
}

.amc2 .amc2-market > p {
    font-size: 13px;
    line-height: 1.55;
    color: var(--a2-muted);
}

/* description + years */
.amc2 .amc2-about {
    padding-top: clamp(56px, 5vw, 96px);
}

.amc2 .amc2-about__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 560px;
    gap: 64px;
    align-items: start;
}

.amc2 .amc2-about__text {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.amc2 .amc2-about__text > p {
    font-size: 17px;
    line-height: 1.65;
    color: var(--a2-ink-2);
}

.amc2 .amc2-about__links {
    display: flex;
    flex-direction: column;
    gap: 22px;
    padding: 32px;
    border-radius: 24px;
    background: var(--a2-card);
}

.amc2 .amc2-about__links h3 {
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 22px;
    line-height: 1.25;
}

.amc2 .amc2-about__links hr {
    width: 100%;
    margin: 0;
    border: 0;
    border-top: 1px solid var(--a2-line);
}

.amc2 .amc2-arrowlink {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 4px 0;
}

.amc2 .amc2-arrowlink b {
    font-family: var(--a2-head);
    font-size: 17px;
}

.amc2 .amc2-arrowlink > span:not(.amc2-i) {
    margin-left: auto;
    font-size: 14px;
    color: var(--a2-muted);
    white-space: nowrap;
}

.amc2 .amc2-arrowlink .amc2-i {
    font-size: 18px;
    color: var(--a2-accent);
}

.amc2 .amc2-arrowlink:hover b {
    color: var(--a2-accent);
}

.amc2 .amc2-similar {
    padding-top: clamp(56px, 5vw, 96px);
}

.amc2 .amc2-lotfaq__short {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.amc2 .amc2-lotfaq .amc2-short p {
    font-size: 16px;
    line-height: 1.6;
}

.amc2 .amc2-more {
    padding-top: 24px;
}

.amc2 .amc2-steps + .amc2-more {
    padding-top: clamp(40px, 3vw, 56px);
}

.amc2 .amc2-more .amc2-h2 {
    margin-bottom: 40px;
}

.amc2 .amc2-more__cols {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.amc2 .amc2-more__col {
    display: flex;
    flex-direction: column;
    padding: 28px 28px 20px;
    border-radius: 24px;
    background: var(--a2-card);
}

.amc2 .amc2-more__col h3 {
    margin-bottom: 14px;
    font-family: var(--a2-head);
    font-weight: 700;
    font-size: 20px;
    line-height: 1.25;
}

.amc2 .amc2-more__col a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 0;
    border-top: 1px solid var(--a2-line);
}

.amc2 .amc2-more__col h3 + a {
    border-top: 0;
}

.amc2 .amc2-more__col a b {
    font-weight: 500;
    font-size: 16px;
}

.amc2 .amc2-more__col a > span:not(.amc2-i) {
    margin-left: auto;
    font-size: 14px;
    color: var(--a2-muted);
    white-space: nowrap;
}

.amc2 .amc2-more__col a .amc2-i {
    font-size: 16px;
    color: var(--a2-accent);
}

.amc2 .amc2-more__col a > b + .amc2-i,
.amc2 .amc2-arrowlink > b + .amc2-i {
    margin-left: auto;
}

.amc2 .amc2-more__col a:hover b {
    color: var(--a2-accent);
}

/* =====================================================================
   Header pill over the dark pages; page height for the fixed header
   ===================================================================== */
.amc2-body .header-a--black-static .amc-navpill {
    background: rgba(16, 18, 24, 0.72);
}

.amc2-body {
    background: #0f1115;
}

html[data-theme="light"] .amc2-body {
    background: #f3f4f6;
}

.amc2 .amc2-chip--warn {
    background: #d98f0b;
    color: #fff;
    font-weight: 600;
    font-size: 12px;
    padding: 6px 10px;
}

.amc2 .amc2-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    align-self: flex-start;
    padding: 10px 16px 10px 12px;
    border-radius: 12px;
    background: var(--a2-card);
    font-weight: 600;
    font-size: 14px;
    color: var(--a2-ink);
    transition: background-color 0.15s ease;
}

.amc2 .amc2-back .amc2-i {
    font-size: 16px;
}

.amc2 .amc2-back:hover {
    background: var(--a2-field);
}

.amc2 .amc2-breakdown__disclaimer {
    font-size: 13px;
    line-height: 1.5;
    color: var(--a2-muted);
}

/* =====================================================================
   Responsive
   ===================================================================== */
@media (max-width: 1600px) {
    .amc2 .amc2-tiles,
    .amc2 .amc2-models__row {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .amc2 .amc2-cost__grid,
    .amc2 .amc2-faqseo__grid,
    .amc2 .amc2-lotfaq__grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 40px;
    }

    .amc2 .amc2-why__grid {
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    }

    .amc2 .amc2-route__grid {
        grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    }

    .amc2 .amc2-lotmain__grid {
        grid-template-columns: minmax(0, 1fr) 460px;
    }

    .amc2 .amc2-specs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .amc2 .amc2-about__grid {
        grid-template-columns: minmax(0, 1fr) 460px;
        gap: 40px;
    }

    .amc2 .amc2-video__channel {
        padding: 28px;
    }

    .amc2 .amc2-short-video {
        width: 200px;
    }
}

@media (max-width: 1400px) {
    .amc2 .amc2-hero__grid {
        flex-direction: column;
    }

    .amc2 .amc2-example {
        width: 100%;
        max-width: 560px;
        margin-top: 0;
    }

    .amc2 .amc2-hero {
        min-height: 0;
    }

    .amc2 .amc2-trust__row {
        flex-direction: column;
        height: auto;
    }

    .amc2 .amc2-rating {
        width: auto;
    }

    .amc2 .amc2-trust__photos {
        height: 360px;
    }

    .amc2 .amc2-proofs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .amc2 .amc2-catalog__layout {
        grid-template-columns: 300px minmax(0, 1fr);
    }

    .amc2 .amc2-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .amc2 .amc2-similar .amc2-grid,
    .amc2 .amc2-grid--3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .amc2 .amc2-steps__row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .amc2 .amc2-video {
        flex-wrap: wrap;
        height: auto;
    }

    .amc2 .amc2-video__channel {
        flex-basis: 100%;
    }

    .amc2 .amc2-short-video {
        flex: 1;
        width: auto;
        height: 380px;
    }

    .amc2 .amc2-credit__box {
        flex-direction: column;
        align-items: stretch;
    }

    .amc2 .amc2-credit__calc {
        width: auto;
    }

    .amc2 .amc2-foottop__grid {
        flex-wrap: wrap;
    }

    .amc2 .amc2-foottop__col {
        flex: 1 1 200px;
    }

    .amc2 .amc2-foottop__trust {
        width: 100%;
        flex-direction: row;
        flex-wrap: wrap;
    }

    .amc2 .amc2-foottop__trust li {
        flex: 1 1 240px;
    }

    .amc2 .amc2-reviews__track {
        grid-auto-columns: calc((100% - 16px) / 2);
    }
}

@media (max-width: 1100px) {
    .amc2 .amc2-search__fields {
        grid-template-columns: 1fr 1fr;
    }

    .amc2 .amc2-field--submit {
        grid-column: 1 / -1;
    }

    .amc2 .amc2-field--submit > span {
        display: none;
    }

    .amc2 .amc2-catalog__layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .amc2 .amc2-filters {
        order: 0;
    }

    .amc2 .amc2-filter__toggle {
        display: flex;
    }

    .amc2 .amc2-filter__head {
        cursor: pointer;
    }

    .amc2 .amc2-filter:not(.is-mopen) > :not(.amc2-filter__head) {
        display: none !important;
    }

    .amc2 .amc2-filter.is-mopen .amc2-filter__toggle {
        transform: rotate(180deg);
    }

    .amc2 .amc2-help {
        display: none;
    }

    .amc2 .amc2-filter__extra {
        display: none;
    }

    .amc2 .amc2-cost__grid,
    .amc2 .amc2-faqseo__grid,
    .amc2 .amc2-lotfaq__grid,
    .amc2 .amc2-why__grid,
    .amc2 .amc2-route__grid,
    .amc2 .amc2-about__grid,
    .amc2 .amc2-lotmain__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .amc2 .amc2-lotside {
        position: static;
        order: 2;
    }

    /* phones and tablets: price box right after the gallery */
    .amc2 .amc2-lotmain__grid {
        display: flex;
        flex-direction: column;
    }

    .amc2 .amc2-lotmain__left {
        display: contents;
    }

    .amc2 .amc2-gallery {
        order: 1;
    }

    .amc2 .amc2-lotmain__left > .amc2-panel,
    .amc2 .amc2-lotmain__left > .amc2-breakdown {
        order: 3;
    }

    .amc2 .amc2-more__cols {
        grid-template-columns: minmax(0, 1fr);
    }

    .amc2 .amc2-lead__box {
        flex-direction: column;
    }

    .amc2 .amc2-lead__photo {
        width: 100%;
        max-width: none;
        min-height: 260px;
    }

    .amc2 .amc2-lead__photo::after {
        background: linear-gradient(180deg, rgba(27, 31, 38, 0) 0%, var(--a2-card) 100%);
    }

    .amc2 .amc2-similar .amc2-grid,
    .amc2 .amc2-grid--3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .amc2 .amc2-lothead__row {
        flex-direction: column;
        align-items: flex-start;
    }

    .amc2 .amc2-gallery__main {
        height: 480px;
    }
}

@media (max-width: 760px) {
    .amc2 {
        --a2-pad: 16px;
    }

    .amc2 .amc2-hero {
        padding-top: 96px;
    }

    .amc2 .amc2-hero__bg {
        height: 100%;
    }

    .amc2 .amc2-hero::before {
        height: 100%;
        background: linear-gradient(180deg, rgba(15, 17, 21, 0.85) 0%, rgba(15, 17, 21, 0.92) 100%);
    }

    .amc2 .amc2-hero__offer {
        gap: 20px;
    }

    .amc2 .amc2-search {
        padding: 16px;
        border-radius: 20px;
    }

    .amc2 .amc2-search__fields {
        grid-template-columns: 1fr;
    }

    .amc2 .amc2-field--year {
        display: none;
    }

    .amc2 .amc2-hero__trust {
        gap: 10px 18px;
    }

    .amc2 .amc2-hero__trust li {
        font-size: 14px;
    }

    .amc2 .amc2-example {
        padding: 20px;
    }

    .amc2 .amc2-head {
        flex-direction: column;
        align-items: flex-start;
    }

    .amc2 .amc2-head__meta {
        white-space: normal;
    }

    .amc2 .amc2-rating {
        padding: 24px;
    }

    .amc2 .amc2-rating__score > b {
        font-size: 72px;
    }

    .amc2 .amc2-trust__photos {
        display: flex;
        height: 300px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        gap: 12px;
        margin-right: calc(-1 * var(--a2-pad));
        padding-right: var(--a2-pad);
    }

    .amc2 .amc2-trust__photos figure {
        flex: 0 0 72%;
        scroll-snap-align: start;
    }

    .amc2 .amc2-proofs {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
        margin-top: 24px;
    }

    .amc2 .amc2-tiles,
    .amc2 .amc2-models__row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .amc2 .amc2-tile {
        min-height: 96px;
        padding: 16px;
    }

    .amc2 .amc2-tile b {
        font-size: 17px;
    }

    .amc2 .amc2-grid,
    .amc2 .amc2-similar .amc2-grid,
    .amc2 .amc2-grid--3 {
        grid-template-columns: minmax(0, 1fr);
    }

    .amc2 .amc2-sort {
        flex-wrap: nowrap;
        overflow-x: auto;
        max-width: 100%;
        scrollbar-width: none;
    }

    .amc2 .amc2-pager {
        flex-direction: column;
        align-items: stretch;
    }

    .amc2 .amc2-pager__pages {
        margin: 0 auto;
    }

    .amc2 .amc2-reviews__track {
        grid-auto-columns: 86%;
    }

    .amc2 .amc2-review {
        padding: 22px;
    }

    .amc2 .amc2-video__channel {
        padding: 22px;
    }

    .amc2 .amc2-video__btns {
        flex-wrap: wrap;
    }

    .amc2 .amc2-video__yt {
        flex-basis: 100%;
    }

    .amc2 .amc2-short-video {
        flex: 0 0 calc((100% - 40px) / 3);
        height: 240px;
        border-radius: 18px;
    }

    .amc2 .amc2-short-video__cap {
        left: 10px;
        right: 10px;
        bottom: 12px;
    }

    .amc2 .amc2-short-video__cap b {
        font-size: 13px;
    }

    .amc2 .amc2-short-video__cap .amc2-chip {
        display: none;
    }

    .amc2 .amc2-short-video__play {
        width: 44px;
        height: 44px;
        margin: -30px 0 0 -22px;
    }

    .amc2 .amc2-breakdown,
    .amc2 .amc2-breakdown--lot,
    .amc2 .amc2-panel,
    .amc2 .amc2-seo,
    .amc2 .amc2-about__links,
    .amc2 .amc2-buy,
    .amc2 .amc2-route__path,
    .amc2 .amc2-route__cities {
        padding: 20px;
        border-radius: 20px;
    }

    .amc2 .amc2-breakdown__head {
        flex-direction: column;
        align-items: flex-start;
    }

    .amc2 .amc2-breakdown--lot .amc2-breakdown__row {
        padding: 12px 4px;
    }

    .amc2 .amc2-breakdown__row {
        font-size: 14px;
    }

    .amc2 .amc2-breakdown__total {
        flex-direction: column;
        gap: 4px;
    }

    .amc2 .amc2-steps__row {
        grid-template-columns: minmax(0, 1fr);
        gap: 10px;
    }

    .amc2 .amc2-step {
        min-height: 0;
    }

    .amc2 .amc2-why__card {
        min-height: 420px;
        padding: 24px;
    }

    .amc2 .amc2-why__list li {
        padding: 14px 16px;
    }

    .amc2 .amc2-route__addr {
        white-space: normal;
    }

    .amc2 .amc2-credit__calc {
        padding: 20px;
    }

    .amc2 .amc2-cf7__pair,
    .amc2 .amc2-cf7__row {
        flex-direction: column;
    }

    .amc2 .amc2-cf7__row .amc2-btn--max {
        width: 100%;
    }

    .amc2 .amc2-foottop {
        padding: 40px 0 24px;
    }

    .amc2 .amc2-foottop__col {
        flex: 1 1 40%;
    }

    .amc2 .amc2-lothead {
        padding-top: 96px;
    }

    .amc2 .amc2-lothead__actions {
        width: 100%;
    }

    .amc2 .amc2-act {
        flex: 1;
        justify-content: center;
    }

    .amc2 .amc2-gallery__main {
        height: 280px;
        border-radius: 18px;
        margin: 0 calc(-1 * var(--a2-pad));
        border-radius: 0;
    }

    .amc2 .amc2-gallery__video span,
    .amc2 .amc2-gallery__video {
        font-size: 12px;
    }

    .amc2 .amc2-gallery__thumbs {
        display: flex;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .amc2 .amc2-gallery__thumb {
        flex: 0 0 96px;
        height: 72px;
    }

    .amc2 .amc2-gallery__thumb.is-hidden {
        display: block;
    }

    .amc2 .amc2-gallery__thumb.is-more span {
        display: none;
    }

    .amc2 .amc2-specs {
        grid-template-columns: minmax(0, 1fr);
    }

    .amc2 .amc2-check {
        flex-direction: column;
    }

    .amc2 .amc2-check__photo {
        width: 100%;
        height: 200px;
    }

    .amc2 .amc2-sidetrust__rating,
    .amc2 .amc2-sidetrust__video,
    .amc2 .amc2-sidetrust__req {
        padding: 18px 20px;
    }

    .amc2 .amc2-sidetrust__thumb {
        width: 96px;
        height: 170px;
    }

    .amc2 .amc2-buy__msgr {
        flex-wrap: wrap;
    }

    .amc2 .amc2-similar .amc2-head .amc2-link {
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .amc2 *,
    .amc2 *::before,
    .amc2 *::after {
        animation: none !important;
        transition: none !important;
    }
}

/* =====================================================================
   Trade-in page (/trade-in/)
   ===================================================================== */
.amc2 .amc2-h2--52 {
    font-size: clamp(30px, 2vw + 13px, 52px);
}

.amc2 .amc2-head__text > p,
.amc2 .amc2-tiproc__lead {
    max-width: 820px;
    font-size: 17px;
    color: var(--a2-muted);
}

.amc2 .amc2-tihero__title {
    font-size: clamp(34px, 2.9vw + 9px, 64px);
    line-height: 1.04;
}

.amc2 .amc2-tihero .amc2-hero__bg {
    height: 100%;
    min-height: 1080px;
}

.amc2 .amc2-tihero::before {
    background: linear-gradient(90deg, rgba(15, 17, 21, 0.97) 0%, rgba(15, 17, 21, 0.85) 42%, rgba(15, 17, 21, 0.25) 68%, rgba(15, 17, 21, 0.05) 100%);
}

.amc2 .amc2-tihero .amc2-hero__offer {
    max-width: 900px;
}

/* hero form: car / year / mileage / phone + "want" chips + submit */
.amc2 .amc2-cf7--tradein .amc2-cf7__ti {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 110px 150px 210px;
    gap: 10px;
}

.amc2 .amc2-cf7--tradein .amc2-cf7__want {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
    font-size: 14px;
    color: var(--a2-muted);
}

.amc2 .amc2-cf7--tradein .wpcf7-radio {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.amc2 .amc2-cf7--tradein .wpcf7-list-item {
    margin: 0;
}

.amc2 .amc2-cf7--tradein .wpcf7-list-item label {
    position: relative;
    display: block;
    cursor: pointer;
}

.amc2 .amc2-cf7--tradein .wpcf7-list-item input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.amc2 .amc2-cf7--tradein .wpcf7-list-item-label {
    display: inline-flex;
    align-items: center;
    height: 38px;
    padding: 0 16px;
    border-radius: 999px;
    background: var(--a2-field);
    border: 1px solid transparent;
    color: #fff;
    font-weight: 500;
    font-size: 14px;
    transition: background 0.15s, border-color 0.15s;
}

.amc2 .amc2-cf7--tradein .wpcf7-list-item input:checked + .wpcf7-list-item-label {
    background: #2a1f22;
    border-color: rgba(224, 104, 104, 0.8);
}

.amc2 .amc2-cf7--tradein .wpcf7-list-item input:focus-visible + .wpcf7-list-item-label {
    box-shadow: 0 0 0 2px var(--a2-accent);
}

.amc2 .amc2-cf7--tradein .amc2-cf7__submit::after {
    right: calc(50% - 110px);
}

/* hero "exchange example" card */
.amc2 .amc2-tiexample .amc2-tiexample__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-family: var(--a2-head);
    font-size: 18px;
}

.amc2 .amc2-tiexample .amc2-example__rows a {
    color: #fff;
    font-weight: 600;
}

.amc2 .amc2-tiexample__total b {
    font-size: 24px;
}

.amc2 .amc2-tiexample__credit {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 14px;
    background: var(--a2-accent-soft);
    font-size: 14px;
    font-weight: 500;
}

.amc2 .amc2-tiexample__credit .amc2-i {
    font-size: 18px;
    color: var(--a2-accent);
}

.amc2 .amc2-tiexample__note {
    font-size: 12px;
    line-height: 1.45;
    color: var(--a2-muted);
}

/* scenarios */
.amc2 .amc2-tiscen,
.amc2 .amc2-tiproc {
    margin-top: clamp(56px, 4.6vw, 88px);
    padding-bottom: clamp(56px, 4.6vw, 88px);
    background: var(--a2-chip-bg);
}

.amc2 .amc2-tiscen__row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.amc2 .amc2-tiscen__card {
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-height: 430px;
    padding: 28px;
    border-radius: 24px;
    background: var(--a2-card);
    border: 1px solid var(--a2-line);
}

.amc2 .amc2-tiscen__card.is-accent {
    background: #b33a3a;
    border-color: #b33a3a;
    color: #fff;
}

.amc2 .amc2-tiscen__head {
    display: flex;
    align-items: center;
    gap: 14px;
}

.amc2 .amc2-tiscen__head > span,
.amc2 .amc2-ticomp__head > span,
.amc2 .amc2-quizres__head > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: var(--a2-accent-soft);
    color: var(--a2-accent);
    font-size: 26px;
}

.amc2 .amc2-tiscen__card.is-accent .amc2-tiscen__head > span {
    background: #fff;
    color: #b33a3a;
}

.amc2 .amc2-tiscen__head h3,
.amc2 .amc2-ticomp__head h3,
.amc2 .amc2-tiaccept h3,
.amc2 .amc2-quizres__head h3 {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 24px;
    letter-spacing: -0.02em;
}

.amc2 .amc2-tiscen__card > p {
    font-size: 15px;
    color: var(--a2-ink-2);
}

.amc2 .amc2-tiscen__card.is-accent > p {
    color: rgba(255, 255, 255, 0.88);
}

.amc2 .amc2-tiscen__card ul {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: auto;
}

.amc2 .amc2-tiscen__card li {
    display: flex;
    gap: 10px;
    font-size: 15px;
    font-weight: 500;
}

.amc2 .amc2-tiscen__card li .amc2-i {
    margin-top: 3px;
    color: var(--a2-accent);
}

.amc2 .amc2-tiscen__card.is-accent li .amc2-i {
    color: #fff;
}

.amc2 .amc2-tiscen__card.is-accent .amc2-btn--white {
    background: #fff;
    color: #0f1115;
}

.amc2 .amc2-tifree {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
    margin-top: 24px;
    padding: 18px 24px;
    border-radius: 20px;
    background: var(--a2-card);
    border: 1px solid var(--a2-line);
}

.amc2 .amc2-tifree b {
    margin-right: 6px;
    font-family: var(--a2-head);
}

.amc2 .amc2-tifree .amc2-i {
    color: var(--a2-accent);
}

/* compare */
.amc2 .amc2-ticomp__cols,
.amc2 .amc2-tiaccept__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.amc2 .amc2-ticomp__col {
    display: flex;
    flex-direction: column;
    gap: 22px;
    padding: 32px;
    border-radius: 24px;
    background: var(--a2-chip-bg);
    border: 1px solid var(--a2-line);
}

.amc2 .amc2-ticomp__col.is-good {
    background: var(--a2-card);
    border-color: rgba(224, 104, 104, 0.6);
}

.amc2 .amc2-ticomp__col:not(.is-good) .amc2-ticomp__head > span {
    background: var(--a2-field);
    color: var(--a2-muted);
}

.amc2 .amc2-ticomp__head {
    display: flex;
    align-items: center;
    gap: 14px;
}

.amc2 .amc2-ticomp__col ul {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.amc2 .amc2-ticomp__col li {
    display: flex;
    gap: 14px;
}

.amc2 .amc2-ticomp__col li > .amc2-i {
    margin-top: 2px;
    font-size: 22px;
    color: var(--a2-muted);
}

.amc2 .amc2-ticomp__col.is-good li > .amc2-i,
.amc2 .amc2-tiaccept li > .amc2-i {
    color: var(--a2-accent);
}

.amc2 .amc2-ticomp__col li div {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.amc2 .amc2-ticomp__col li b {
    font-weight: 600;
    font-size: 17px;
}

.amc2 .amc2-ticomp__col li small {
    font-size: 14px;
    color: var(--a2-muted);
}

/* process */
.amc2 .amc2-tiproc .amc2-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
}

.amc2 .amc2-tiproc__row {
    display: grid;
    grid-template-columns: minmax(0, 560px) minmax(0, 1fr);
    gap: 40px;
    align-items: stretch;
}

.amc2 .amc2-tiproc__photo {
    width: 100%;
    height: 100%;
    min-height: 420px;
    max-height: 640px;
    border-radius: 24px;
    object-fit: cover;
}

.amc2 .amc2-tiproc__steps {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.amc2 .amc2-tiproc__steps li {
    display: flex;
    align-items: center;
    gap: 20px;
    flex: 1;
    padding: 20px 24px;
    border-radius: 20px;
    background: var(--a2-card);
    border: 1px solid var(--a2-line);
}

.amc2 .amc2-tiproc__steps li > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: var(--a2-accent-soft);
    color: var(--a2-accent);
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 20px;
}

.amc2 .amc2-tiproc__steps li div {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.amc2 .amc2-tiproc__steps li b {
    font-family: var(--a2-head);
    font-size: 19px;
}

.amc2 .amc2-tiproc__steps li small {
    font-size: 15px;
    color: var(--a2-muted);
}

.amc2 .amc2-tiproc__steps li.is-accent {
    background: var(--a2-accent);
    border-color: var(--a2-accent);
    color: #fff;
}

.amc2 .amc2-tiproc__steps li.is-accent > span {
    background: #fff;
    color: var(--a2-accent);
}

.amc2 .amc2-tiproc__steps li.is-accent small {
    color: rgba(255, 255, 255, 0.88);
}

/* exchange today: horizontal stock cards */
.amc2 .amc2-titoday__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.amc2 .amc2-tistock {
    display: flex;
    overflow: hidden;
    border-radius: 20px;
    background: var(--a2-card);
    border: 1px solid var(--a2-line);
}

.amc2 .amc2-tistock__photo {
    flex: none;
    width: 230px;
    min-height: 200px;
    background: var(--a2-field);
}

.amc2 .amc2-tistock__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.amc2 .amc2-tistock__body {
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;
    min-width: 0;
    padding: 18px 20px;
}

.amc2 .amc2-tistock__tag {
    align-self: flex-start;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(61, 220, 132, 0.12);
    color: var(--a2-green);
    font-size: 12px;
    font-weight: 600;
}

.amc2 .amc2-tistock__title {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 18px;
    color: var(--a2-ink);
}

.amc2 .amc2-tistock__price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
}

.amc2 .amc2-tistock__price b {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: 22px;
}

.amc2 .amc2-tistock__price button {
    color: var(--a2-accent);
    font-weight: 600;
    font-size: 15px;
    cursor: pointer;
}

/* auction tabs */
.amc2 .amc2-tipick__tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 6px;
    border-radius: 999px;
    background: var(--a2-card);
}

.amc2 .amc2-tipick__tab {
    height: 44px;
    padding: 0 20px;
    border-radius: 999px;
    color: var(--a2-ink-2);
    font-weight: 600;
    font-size: 15px;
    cursor: pointer;
}

.amc2 .amc2-tipick__tab.is-current {
    background: var(--a2-accent);
    color: #fff;
}

.amc2 .amc2-tipick__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.amc2 .amc2-tipick__grid[hidden] {
    display: none;
}

.amc2 .amc2-tipick__foot {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 16px;
    margin-top: 24px;
    padding: 20px 24px;
    border-radius: 20px;
    background: var(--a2-card);
}

.amc2 .amc2-tipick__foot p {
    flex: 1;
    min-width: 260px;
    font-weight: 500;
    font-size: 17px;
}

/* accepted cars */
.amc2 .amc2-tiaccept .amc2-h2 {
    margin-bottom: clamp(20px, 2vw, 32px);
}

.amc2 .amc2-tiaccept .amc2-ticomp__col {
    background: var(--a2-card);
}

.amc2 .amc2-tiaccept__chips {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    gap: 10px !important;
}

.amc2 .amc2-tiaccept__chips li {
    align-items: center;
    gap: 8px !important;
    padding: 10px 14px;
    border-radius: 999px;
    background: var(--a2-field);
    font-weight: 500;
    font-size: 15px;
}

.amc2 .amc2-tiaccept__chips li > .amc2-i {
    margin: 0;
    font-size: 16px;
}

.amc2 .amc2-tiaccept__tips > p {
    font-size: 14px;
    color: var(--a2-muted);
}

/* quiz */
.amc2 .amc2-tiquiz__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 520px;
    gap: 20px;
    align-items: stretch;
}

.amc2 .amc2-quiz,
.amc2 .amc2-quizres {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 32px;
    border-radius: 24px;
    background: var(--a2-card);
    border: 1px solid var(--a2-line);
}

.amc2 .amc2-quizres {
    border-color: rgba(224, 104, 104, 0.7);
}

.amc2 .amc2-quiz__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.amc2 .amc2-quiz__head h2 {
    font-family: var(--a2-head);
    font-weight: 800;
    font-size: clamp(26px, 1.4vw + 13px, 40px);
    letter-spacing: -0.03em;
}

.amc2 .amc2-quiz__bar {
    display: flex;
    gap: 8px;
}

.amc2 .amc2-quiz__bar i {
    flex: 1;
    height: 6px;
    border-radius: 3px;
    background: var(--a2-field);
}

.amc2 .amc2-quiz__bar i.is-on {
    background: var(--a2-accent);
}

.amc2 .amc2-quiz__step {
    margin: 0;
    padding: 0;
    border: 0;
    min-width: 0;
}

.amc2 .amc2-quiz__step[hidden],
.amc2 .amc2-quiz__done[hidden],
.amc2 .amc2-quiz [hidden] {
    display: none !important;
}

.amc2 .amc2-quiz__step legend {
    margin-bottom: 16px;
    padding: 0;
    font-weight: 600;
    font-size: 19px;
}

.amc2 .amc2-quiz__opts {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 12px;
}

.amc2 .amc2-quiz__opt {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 84px;
    padding: 0 20px;
    border-radius: 16px;
    background: var(--a2-field);
    border: 1px solid transparent;
    font-weight: 500;
    font-size: 16px;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

.amc2 .amc2-quiz__opt input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.amc2 .amc2-quiz__opt span::before {
    content: "";
    display: inline-block;
    flex: none;
    width: 20px;
    height: 20px;
    margin-right: 14px;
    vertical-align: -4px;
    border-radius: 50%;
    border: 2px solid var(--a2-muted);
    box-sizing: border-box;
}

.amc2 .amc2-quiz__opt:has(input:checked) {
    background: #2a1f22;
    border-color: rgba(224, 104, 104, 0.8);
}

.amc2 .amc2-quiz__opt input:checked + span::before {
    border: 6px solid var(--a2-accent);
}

.amc2 .amc2-quiz__opt input:focus-visible + span {
    outline: 2px solid var(--a2-accent);
    outline-offset: 4px;
}

html[data-theme="light"] .amc2 .amc2-quiz__opt:has(input:checked) {
    background: var(--a2-accent-soft);
}

.amc2 .amc2-quiz__done b {
    font-family: var(--a2-head);
    font-size: 22px;
}

.amc2 .amc2-quiz__done p {
    margin-top: 8px;
    color: var(--a2-ink-2);
}

.amc2 .amc2-quiz__nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: auto;
}

.amc2 .amc2-quiz__nav p {
    flex: 1;
    min-width: 200px;
    font-size: 14px;
    color: var(--a2-muted);
}

.amc2 .amc2-quiz__nav .amc2-btn[disabled] {
    opacity: 0.45;
    cursor: default;
}

.amc2 .amc2-quizres__head {
    display: flex;
    align-items: center;
    gap: 14px;
}

.amc2 .amc2-quizres ul {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.amc2 .amc2-quizres li {
    display: flex;
    gap: 12px;
    font-weight: 500;
}

.amc2 .amc2-quizres li .amc2-i {
    margin-top: 3px;
    font-size: 20px;
    color: var(--a2-accent);
}

.amc2 .amc2-quizres__promise {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    border-radius: 14px;
    background: var(--a2-accent-soft);
    font-weight: 600;
}

.amc2 .amc2-quizres__promise .amc2-i {
    color: var(--a2-accent);
}

.amc2 .amc2-quizres__ask {
    margin-top: auto;
    font-size: 14px;
    color: var(--a2-muted);
}

.amc2 .amc2-quizres__btns {
    display: flex;
    gap: 10px;
}

.amc2 .amc2-quizres__btns .amc2-btn {
    flex: 1;
    height: 56px;
    gap: 8px;
}

.amc2 .amc2-quizres__btns .amc2-btn--max {
    flex: none;
    width: 56px;
    padding: 0;
}

@media (max-width: 1600px) {
    .amc2 .amc2-tiscen__row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .amc2 .amc2-tiscen__card {
        min-height: 0;
    }

    .amc2 .amc2-tipick__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .amc2 .amc2-tipick__grid > :nth-child(4) {
        display: none;
    }
}

@media (max-width: 1400px) {
    .amc2 .amc2-tiquiz__grid {
        grid-template-columns: minmax(0, 1fr) 420px;
    }
}

@media (max-width: 1100px) {
    .amc2 .amc2-cf7--tradein .amc2-cf7__ti {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .amc2 .amc2-ticomp__cols,
    .amc2 .amc2-tiaccept__grid,
    .amc2 .amc2-titoday__grid,
    .amc2 .amc2-tiquiz__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .amc2 .amc2-tiproc__row {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
    }

    .amc2 .amc2-tiproc__photo {
        min-height: 0;
        height: 320px;
    }

    .amc2 .amc2-tipick__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .amc2 .amc2-tipick__grid > :nth-child(4) {
        display: block;
    }

    .amc2 .amc2-tipick .amc2-head {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 760px) {
    .amc2 .amc2-tiscen__row {
        grid-template-columns: minmax(0, 1fr);
    }

    .amc2 .amc2-tiscen__card,
    .amc2 .amc2-ticomp__col,
    .amc2 .amc2-quiz,
    .amc2 .amc2-quizres {
        padding: 22px 18px;
    }

    .amc2 .amc2-cf7--tradein .amc2-cf7__ti {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .amc2 .amc2-cf7--tradein .amc2-cf7__ti > :first-child,
    .amc2 .amc2-cf7--tradein .amc2-cf7__ti > :last-child {
        grid-column: 1 / -1;
    }

    .amc2 .amc2-tifree {
        padding: 16px;
    }

    .amc2 .amc2-tistock {
        flex-direction: column;
    }

    .amc2 .amc2-tistock__photo {
        width: 100%;
        height: 200px;
        min-height: 0;
    }

    .amc2 .amc2-tiproc__steps li {
        gap: 14px;
        padding: 16px;
    }

    .amc2 .amc2-tiproc__steps li > span {
        width: 42px;
        height: 42px;
        font-size: 17px;
    }

    .amc2 .amc2-tipick__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .amc2 .amc2-tipick__tabs {
        width: 100%;
        border-radius: 18px;
    }

    .amc2 .amc2-tipick__tab {
        flex: 1;
        padding: 0 12px;
    }

    .amc2 .amc2-tipick__foot .amc2-btn {
        width: 100%;
    }

    .amc2 .amc2-quiz__opts {
        grid-template-columns: minmax(0, 1fr);
    }

    .amc2 .amc2-quiz__opt {
        min-height: 62px;
    }

    .amc2 .amc2-quizres__btns {
        flex-wrap: wrap;
    }
}

/* ---------- forms: beat the old theme's dark-mode input rule (html[data-theme] input:not(...)),
   which also catches the submit once the invisible captcha turns it into type=button ---------- */
html[data-theme] .amc2 .amc2-cf7 input.wpcf7-form-control.wpcf7-text {
    background: var(--a2-field);
    color: var(--a2-ink);
    border: 0;
}

html[data-theme] .amc2 .amc2-cf7 .amc2-cf7__submit input.wpcf7-submit {
    background: var(--a2-accent);
    color: #fff;
    border: 0;
}

html[data-theme] .amc2 .amc2-cf7--pick input.wpcf7-form-control.wpcf7-text {
    background: #fff;
    color: #111317;
}

html[data-theme] .amc2 .amc2-cf7--pick .amc2-cf7__submit input.wpcf7-submit {
    background: #fff;
    color: #0f1115;
}

html[data-theme] .amc2 .amc2-cf7 .amc2-cf7__submit input.wpcf7-submit:hover {
    filter: brightness(1.08);
}

/* trade-in "want" chips: undo the old theme's boxed uppercase radio labels */
.amc2 .amc2-cf7--tradein .amc2-cf7__want > .wpcf7-form-control-wrap {
    flex: 1;
    min-width: 0;
}

html[data-theme] .amc2 .amc2-cf7--tradein .wpcf7-list-item label {
    display: block;
    padding: 0;
    background: none;
    border-radius: 0;
    text-align: left;
    text-transform: none;
    letter-spacing: normal;
    font-family: var(--a2-body);
    font-size: 14px;
}

.amc2 .amc2-cf7--tradein .wpcf7-list-item-label {
    white-space: nowrap;
}

html[data-theme="light"] .amc2 .amc2-cf7--tradein .wpcf7-list-item-label {
    color: var(--a2-ink);
}

html[data-theme="light"] .amc2 .amc2-cf7--tradein .wpcf7-list-item input:checked + .wpcf7-list-item-label {
    background: var(--a2-accent-soft);
}

@media (max-width: 760px) {
    .amc2 .amc2-cf7--tradein .amc2-cf7__want {
        flex-direction: column;
        align-items: flex-start;
    }

    .amc2 .amc2-cf7--tradein .amc2-cf7__want > .wpcf7-form-control-wrap {
        flex: none;
        width: 100%;
    }

    .amc2 .amc2-cf7--tradein .wpcf7-list-item-label {
        height: 36px;
        padding: 0 13px;
        font-size: 13px;
    }

    .amc2 .amc2-cf7--tradein input.wpcf7-text {
        height: 52px;
    }

    .amc2 .amc2-tiexample__total b {
        font-size: 20px;
    }

    .amc2 .amc2-tiexample .amc2-example__rows dt {
        min-width: 0;
    }

    /* long stacks become swipeable rows */
    .amc2 .amc2-tiscen__row,
    .amc2 .amc2-titoday__grid,
    .amc2 .amc2-tipick__grid {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        margin: 0 calc(-1 * var(--a2-pad));
        padding: 0 var(--a2-pad) 4px;
        scroll-padding: 0 var(--a2-pad);
    }

    .amc2 .amc2-tiscen__row::-webkit-scrollbar,
    .amc2 .amc2-titoday__grid::-webkit-scrollbar,
    .amc2 .amc2-tipick__grid::-webkit-scrollbar {
        display: none;
    }

    .amc2 .amc2-tipick__grid[hidden] {
        display: none;
    }

    .amc2 .amc2-tiscen__card,
    .amc2 .amc2-tistock,
    .amc2 .amc2-tipick__grid > * {
        flex: 0 0 84%;
        scroll-snap-align: start;
    }

    .amc2 .amc2-tistock__photo {
        height: 180px;
    }

    .amc2 .amc2-tipick__tabs {
        flex-wrap: nowrap;
        gap: 4px;
        padding: 4px;
    }

    .amc2 .amc2-tipick__tab {
        height: 40px;
        padding: 0 8px;
        white-space: nowrap;
        font-size: 14px;
    }

    .amc2 .amc2-tiproc__steps li {
        align-items: flex-start;
    }

    .amc2 .amc2-tiproc__steps li b {
        font-size: 17px;
    }

    .amc2 .amc2-tiproc__steps li small {
        font-size: 14px;
    }

    .amc2 .amc2-ticomp__col {
        gap: 16px;
    }

    .amc2 .amc2-ticomp__col li b {
        font-size: 16px;
    }

    .amc2 .amc2-tiscen__head h3,
    .amc2 .amc2-ticomp__head h3,
    .amc2 .amc2-tiaccept h3,
    .amc2 .amc2-quizres__head h3 {
        font-size: 20px;
    }

    .amc2 .amc2-tiscen__head > span,
    .amc2 .amc2-ticomp__head > span,
    .amc2 .amc2-quizres__head > span {
        width: 44px;
        height: 44px;
        font-size: 22px;
    }

    .amc2 .amc2-quiz__opts {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 8px;
    }

    .amc2 .amc2-quiz__opt {
        min-height: 58px;
        padding: 8px 12px;
        font-size: 14px;
        line-height: 1.3;
    }

    .amc2 .amc2-quiz__opt span {
        display: flex;
        align-items: center;
    }

    .amc2 .amc2-quiz__opt span::before {
        width: 18px;
        height: 18px;
        margin-right: 10px;
    }

    .amc2 .amc2-quiz__step legend {
        font-size: 17px;
    }

    .amc2 .amc2-tiaccept__chips li {
        padding: 8px 12px;
        font-size: 14px;
    }
}

html[data-theme] .amc2 .amc2-cf7--tradein .wpcf7-radio {
    flex-direction: row;
    flex-wrap: wrap;
}

html[data-theme] .amc2 .amc2-cf7--tradein .wpcf7-list-item {
    width: auto;
}
