/* Original campaign design, scoped to this layout. Font files already exist in the project. */
@font-face{font-family:"Audi Type";src:url("../fonts/AudiType-Web-2(woff)/AudiType-Normal_08.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Audi Type";src:url("../fonts/AudiType-Web-2(woff)/AudiType-Bold_08.woff") format("woff");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Audi Type Extended";src:url("../fonts/AudiType-Web-2(woff)/AudiType-ExtendedNormal_08.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Audi Type Extended";src:url("../fonts/AudiType-Web-2(woff)/AudiType-ExtendedBold_08.woff") format("woff");font-weight:700;font-style:normal;font-display:swap}
.christmas-campaign { --ink:#171719;--red:#df2033;--line:#dcdcdc;--muted:#666;--paper:#fff;--pale:#f6f5f3;scroll-behavior:smooth }
.christmas-campaign * { box-sizing:border-box }
.christmas-campaign { margin:0;font-family:"Audi Type",Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.5 }
.christmas-campaign a { color:inherit;text-decoration:none }
.christmas-campaign button,
.christmas-campaign select { font:inherit;color:inherit }
.christmas-campaign button,
.christmas-campaign a,
.christmas-campaign select { -webkit-tap-highlight-color:transparent }
.christmas-campaign button,
.christmas-campaign a.button { cursor:pointer }
.christmas-campaign button { border:0 }
.christmas-campaign a:focus-visible,
.christmas-campaign button:focus-visible,
.christmas-campaign select:focus-visible { outline:3px solid #1674c5;outline-offset:4px }
.christmas-campaign .skip { position:fixed;top:-80px;left:15px;background:#fff;padding:14px;z-index:20 }
.christmas-campaign .skip:focus { top:15px }
.christmas-campaign header { height:100px;padding:0 5.3%;display:flex;align-items:center;justify-content:space-between;background:white }
.christmas-campaign .brand { width:min(34%,350px);display:block }
.christmas-campaign .brand img { display:block;width:100%;height:auto }
.christmas-campaign nav { display:flex;gap:34px;align-items:center;font-size:14px }
.christmas-campaign nav a:hover { text-decoration:underline;text-underline-offset:5px }
.christmas-campaign .phone { padding-left:25px;border-left:1px solid var(--line) }
.christmas-campaign .phone span { margin-left:15px }
.christmas-campaign .hero { position:relative;overflow:hidden;isolation:isolate }
.christmas-campaign .hero-image { display:block;width:100%;height:auto }
.christmas-campaign .hero-copy { position:absolute;left:6%;top:10%;max-width:48% }
.christmas-campaign .eyebrow { font-size:11px;letter-spacing:2px;font-weight:bold;margin:0 0 22px }
.christmas-campaign h1 { font-size:clamp(30px,4.4vw,76px);font-weight:600;line-height:1.05;letter-spacing:-2px;margin:0 0 18px }
.christmas-campaign .campaign-line { font-size:clamp(24px,3vw,47px);line-height:1.13;letter-spacing:-1px;margin:0 0 28px }
.christmas-campaign .campaign-line span { color:var(--red);font-weight:600 }
.christmas-campaign .button { display:inline-flex;align-items:center;justify-content:center;gap:35px;min-height:52px;padding:15px 26px;font-size:14px;border-radius:0;transition:background .2s,color .2s }
.christmas-campaign .primary { color:white;background:var(--ink) }
.christmas-campaign .primary:hover { background:#39393c }
.christmas-campaign .secondary { border:1px solid var(--ink);background:transparent }
.christmas-campaign .secondary:hover { background:var(--ink);color:#fff }
.christmas-campaign .hero-note { position:absolute;bottom:14px;right:20px;font-size:9px;color:#444;background:#ffffffc9;padding:2px 5px }
.christmas-campaign .intro-strip { display:flex;justify-content:space-between;align-items:center;padding:22px 6%;border-bottom:1px solid var(--line) }
.christmas-campaign .intro-strip p { font-size:18px;margin:0 }
.christmas-campaign .intro-strip>span { font-size:12px;color:#555 }
.christmas-campaign .dot { display:inline-block;width:3px;height:3px;background:#a0a0a0;border-radius:50%;margin:0 18px;vertical-align:middle }
.christmas-campaign .inventory { padding:80px 6% 65px;scroll-margin-top:20px }
.christmas-campaign .section-heading { display:flex;align-items:end;justify-content:space-between;margin-bottom:38px }
.christmas-campaign .section-heading h2,
.christmas-campaign .contact h2 { font-size:clamp(32px,3.3vw,48px);line-height:1.12;font-weight:400;letter-spacing:-1.5px;margin:0 }
.christmas-campaign .section-heading>p { color:var(--muted);font-size:14px;line-height:1.7;margin:0 0 3px }
.christmas-campaign .section-heading .eyebrow { margin-bottom:17px }
.christmas-campaign .filters { display:grid;grid-template-columns:repeat(4,1fr) 130px;gap:22px;padding:24px;background:var(--pale) }
.christmas-campaign label { display:block;font-size:11px;font-weight:600 }
.christmas-campaign select { display:block;border:0;border-bottom:1px solid #aaa;border-radius:0;background:transparent;width:100%;height:38px;padding:4px 20px 4px 0;font-size:14px;font-weight:400;cursor:pointer }
.christmas-campaign .reset { align-self:end;background:transparent;text-decoration:underline;text-underline-offset:4px;font-size:12px;height:38px }
.christmas-campaign .reset span { margin-left:8px }
.christmas-campaign .results-bar { display:flex;justify-content:space-between;align-items:center;margin:28px 0 22px }
.christmas-campaign .results-bar p { font-size:14px;margin:0 }
.christmas-campaign .sort { display:flex;gap:12px;align-items:center;color:#555;font-weight:400;white-space:nowrap }
.christmas-campaign .sort select { width:190px;font-size:12px;height:32px;border-color:#ddd }
.christmas-campaign .grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 25px }
.christmas-campaign .car { border:1px solid #e4e4e4;display:flex;flex-direction:column;min-width:0;transition:box-shadow .2s }
.christmas-campaign .car:hover { box-shadow:0 7px 24px #17171910 }
.christmas-campaign .car-photo { position:relative;aspect-ratio:4/3;overflow:hidden;background:#eeefed }
.christmas-campaign .car-photo>.vehicle { width:100%;height:100%;object-fit:contain;display:block }
.christmas-campaign .car-photo .bow { position:absolute;width:var(--bow-width,30%);height:auto;left:var(--roof-x,55%);top:var(--roof-y,36%);transform:translate(-50%,-53%);pointer-events:none;filter:drop-shadow(0 2px 1px #0002) }
.christmas-campaign .stock { position:absolute;left:15px;bottom:13px;background:#fffffff0;padding:4px 9px;font-size:10px;letter-spacing:.4px }
.christmas-campaign .stock:before { content:'';display:inline-block;width:5px;height:5px;background:#50765d;border-radius:50%;margin-right:6px;vertical-align:middle }
.christmas-campaign .car-info { padding:22px 22px 0;flex:1 }
.christmas-campaign .car h3 { font-size:24px;font-weight:400;line-height:1.1;margin:0 0 8px;letter-spacing:-.6px }
.christmas-campaign .engine { font-size:13px;line-height:1.4;margin:0 0 18px;min-height:37px }
.christmas-campaign .specs { display:flex;flex-wrap:wrap;gap:5px 12px;font-size:11px;color:var(--muted);padding-bottom:15px;border-bottom:1px solid var(--line) }
.christmas-campaign .color { font-size:11px;color:#777;margin:12px 0 18px }
.christmas-campaign .prices { display:flex;gap:8px;align-items:end;justify-content:space-between }
.christmas-campaign .prices small { display:block;font-size:10px;color:#666 }
.christmas-campaign .old { font-size:13px;color:#777;text-decoration:line-through;margin:3px 0 6px }
.christmas-campaign .price { font-size:28px;letter-spacing:-.7px;line-height:1.25;margin:3px 0 0 }
.christmas-campaign .saving { text-align:right;color:#a01b29;padding-bottom:3px }
.christmas-campaign .saving small { font-size:10px;color:#a01b29 }
.christmas-campaign .saving strong { font-size:13px;font-weight:500 }
.christmas-campaign .card-actions { padding:20px 22px 22px;display:flex;gap:12px }
.christmas-campaign .card-actions .button { width:100%;padding:12px 10px;min-height:43px;font-size:12px;gap:20px }
.christmas-campaign .emissions { font-size:9px;line-height:1.6;color:#777;margin:18px 0 0 }
.christmas-campaign .load { text-align:center;margin-top:38px }
.christmas-campaign .load p { font-size:11px;color:#777;margin:15px 0 0 }
.christmas-campaign .price-note { font-size:11px;line-height:1.8;color:#777;max-width:850px;margin:40px auto 0;text-align:center }
.christmas-campaign .empty { padding:60px;text-align:center;background:var(--pale) }
.christmas-campaign .empty h3 { font-weight:400;font-size:26px }
.christmas-campaign .empty p { color:#666;font-size:14px }
.christmas-campaign .contact { background:var(--ink);color:white;padding:65px 8%;display:grid;grid-template-columns:1.3fr 1fr;gap:70px }
.christmas-campaign .contact .eyebrow { color:#b8b8ba }
.christmas-campaign .contact h2 { font-size:46px }
.christmas-campaign .contact p { font-size:14px;color:#bcbcbc;line-height:1.8 }
.christmas-campaign .contact .button { margin-top:18px }
.christmas-campaign .light { background:white;color:var(--ink) }
.christmas-campaign .light:hover { background:#ddd }
.christmas-campaign .contact address { border-left:1px solid #555;padding:20px 0 0 55px;font-style:normal;display:flex;flex-direction:column;align-items:start }
.christmas-campaign .contact address h3 { font-size:19px;font-weight:400;margin:0 0 10px }
.christmas-campaign .contact address p { margin:0 0 25px }
.christmas-campaign .contact address>a { font-size:14px;margin-bottom:8px }
.christmas-campaign .contact a:hover { text-decoration:underline;text-underline-offset:5px }
.christmas-campaign .contact .route { border-top:1px solid #555;padding-top:20px;margin-top:20px;display:block;width:100% }
.christmas-campaign .route span { float:right }
.christmas-campaign footer { padding:35px 6%;background:#f5f5f5 }
.christmas-campaign .footer-top { display:flex;justify-content:space-between;font-size:13px;margin-bottom:25px }
.christmas-campaign .footer-top strong { font-weight:500 }
.christmas-campaign footer p { font-size:10px;line-height:1.8;color:#777;max-width:1100px }
.christmas-campaign .legal-links { display:flex;gap:25px;font-size:11px;margin-top:22px }
.christmas-campaign .legal-links a:hover { text-decoration:underline }
.christmas-campaign dialog { border:0;padding:0;width:min(920px,94vw);max-height:92vh;box-shadow:0 25px 80px #0005 }
.christmas-campaign dialog::backdrop { background:#0009 }
.christmas-campaign .close { position:absolute;right:12px;top:12px;z-index:2;width:38px;height:38px;font-size:29px;background:white;border:1px solid #ddd;line-height:1;cursor:pointer }
.christmas-campaign #detail-content { display:grid;grid-template-columns:1fr 1fr }
.christmas-campaign .detail-photo { align-self:start }
.christmas-campaign .detail-text { padding:55px 32px 30px }
.christmas-campaign .detail-text h2 { font-size:28px;font-weight:400;line-height:1.2;margin:0 0 12px }
.christmas-campaign .detail-text dl { display:grid;grid-template-columns:90px 1fr;font-size:12px;gap:9px;margin:25px 0 }
.christmas-campaign .detail-text dt { color:#777 }
.christmas-campaign .detail-text dd { margin:0 }
.christmas-campaign .detail-text .button { width:100%;margin-top:12px;font-size:12px;gap:10px }
.christmas-campaign .detail-id { font-size:10px;color:#777 }
.christmas-campaign .detail-price { border-top:1px solid #ddd;padding-top:20px }
.christmas-campaign .detail-price .price { font-size:32px }
.christmas-campaign [hidden] { display:none!important }
@media(prefers-reduced-motion:reduce) {
.christmas-campaign { scroll-behavior:auto }
.christmas-campaign * { transition:none!important }
}
@media(min-width:1800px) {
.christmas-campaign .hero-copy { top:15% }
.christmas-campaign .hero-copy .button { margin-top:15px }
.christmas-campaign .inventory { max-width:1680px;margin:auto }
.christmas-campaign .grid { grid-template-columns:repeat(4,minmax(0,1fr)) }
}
@media(max-width:1100px) {
.christmas-campaign header { height:85px }
.christmas-campaign .brand { width:290px }
.christmas-campaign nav { gap:23px }
.christmas-campaign .phone { display:none }
.christmas-campaign .hero-copy { top:8% }
.christmas-campaign .eyebrow { font-size:9px;letter-spacing:1.4px;margin-bottom:14px }
.christmas-campaign h1 { letter-spacing:-1px }
.christmas-campaign .campaign-line { margin-bottom:19px }
.christmas-campaign .hero .button { min-height:43px;padding:12px 18px;font-size:12px }
.christmas-campaign .intro-strip { padding:18px 5% }
.christmas-campaign .intro-strip p { font-size:15px }
.christmas-campaign .intro-strip>span { font-size:10px }
.christmas-campaign .inventory { padding:60px 5% }
.christmas-campaign .filters { gap:15px;padding:20px;grid-template-columns:repeat(4,1fr) }
.christmas-campaign .reset { grid-column:1/-1;text-align:right;height:20px }
.christmas-campaign .section-heading>p { max-width:260px;font-size:13px }
.christmas-campaign .grid { gap:25px 18px }
.christmas-campaign .car-info { padding:18px 16px 0 }
.christmas-campaign .card-actions { padding:18px 16px }
.christmas-campaign .car h3 { font-size:22px }
.christmas-campaign .price { font-size:24px }
.christmas-campaign .saving strong { font-size:11px }
}
@media(max-width:780px) {
.christmas-campaign header { height:78px;padding:0 5% }
.christmas-campaign .brand { width:260px;max-width:62% }
.christmas-campaign nav { gap:16px;font-size:11px }
.christmas-campaign .hero-image { aspect-ratio:1.15;object-fit:cover;object-position:70% center }
.christmas-campaign .hero-copy { position:relative;top:auto;left:auto;padding:30px 6%;max-width:none;order:-1;background:#fbfaf8 }
.christmas-campaign .hero { display:flex;flex-direction:column }
.christmas-campaign .hero h1 { font-size:43px;margin-bottom:12px }
.christmas-campaign .campaign-line { font-size:31px;margin-bottom:23px }
.christmas-campaign .campaign-line br { display:none }
.christmas-campaign .hero-copy .eyebrow { font-size:9px }
.christmas-campaign .hero .button { font-size:13px }
.christmas-campaign .hero-note { font-size:8px;bottom:10px }
.christmas-campaign .intro-strip { flex-direction:column;align-items:start;gap:8px;padding:20px 6% }
.christmas-campaign .intro-strip p { font-size:17px }
.christmas-campaign .intro-strip>span { font-size:11px }
.christmas-campaign .dot { margin:0 9px }
.christmas-campaign .inventory { padding:48px 6% }
.christmas-campaign .section-heading { display:block;margin-bottom:25px }
.christmas-campaign .section-heading h2 { font-size:34px }
.christmas-campaign .section-heading>p { max-width:none;margin-top:18px }
.christmas-campaign .filters { grid-template-columns:1fr 1fr;gap:15px 20px;padding:20px }
.christmas-campaign .reset { text-align:left }
.christmas-campaign .results-bar { align-items:start;gap:15px }
.christmas-campaign .results-bar p { font-size:12px;margin-top:8px }
.christmas-campaign .sort { font-size:0;gap:0 }
.christmas-campaign .sort select { font-size:11px;width:165px }
.christmas-campaign .grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 15px }
.christmas-campaign .car h3 { font-size:22px }
.christmas-campaign .car-info { padding:17px 14px 0 }
.christmas-campaign .engine { font-size:12px;min-height:34px }
.christmas-campaign .specs { font-size:10px;gap:5px 8px }
.christmas-campaign .prices { display:block }
.christmas-campaign .price { font-size:25px }
.christmas-campaign .saving { text-align:left;margin-top:10px }
.christmas-campaign .saving small { display:inline;margin-right:6px }
.christmas-campaign .card-actions { padding:16px 14px }
.christmas-campaign .color { min-height:32px }
.christmas-campaign .contact { grid-template-columns:1fr;gap:40px;padding:48px 6% }
.christmas-campaign .contact h2 { font-size:38px }
.christmas-campaign .contact address { border-left:0;border-top:1px solid #555;padding:30px 0 0 }
.christmas-campaign .contact p br { display:none }
.christmas-campaign .footer-top { font-size:12px;gap:15px }
.christmas-campaign #detail-content { grid-template-columns:1fr }
.christmas-campaign .detail-text { padding:30px }
.christmas-campaign .detail-photo { width:100%;aspect-ratio:4/3 }
.christmas-campaign .detail-photo>.vehicle { object-fit:contain }
.christmas-campaign .detail-text dl { grid-template-columns:90px 1fr }
}
@media(max-width:470px) {
.christmas-campaign nav a:first-child { display:none }
.christmas-campaign .brand { max-width:75%;width:250px }
.christmas-campaign .hero h1 { font-size:38px }
.christmas-campaign .campaign-line { font-size:27px }
.christmas-campaign .grid { grid-template-columns:1fr;gap:27px }
.christmas-campaign .car-info { padding:22px 22px 0 }
.christmas-campaign .card-actions { padding:20px 22px 22px }
.christmas-campaign .car h3 { font-size:26px }
.christmas-campaign .engine { min-height:0 }
.christmas-campaign .specs { font-size:11px }
.christmas-campaign .color { min-height:0 }
.christmas-campaign .prices { display:flex }
.christmas-campaign .saving { text-align:right }
.christmas-campaign .saving small { display:block;margin:0 }
.christmas-campaign .price { font-size:30px }
.christmas-campaign .filters { gap:15px }
.christmas-campaign .sort select { width:158px }
.christmas-campaign .intro-strip>span { font-size:10px }
.christmas-campaign .inventory { padding-left:5%;padding-right:5% }
.christmas-campaign .footer-top { display:block }
.christmas-campaign .footer-top a { display:block;margin-top:10px }
}
.christmas-campaign h1,
.christmas-campaign .campaign-line,
.christmas-campaign .section-heading h2,
.christmas-campaign .contact h2,
.christmas-campaign .car h3,
.christmas-campaign .detail-text h2 { font-family:"Audi Type Extended","Audi Type",Arial,sans-serif }
.christmas-campaign h1 { font-weight:700;font-size:clamp(30px,4vw,69px);letter-spacing:-1.5px }
.christmas-campaign .campaign-line { font-size:clamp(23px,2.65vw,43px);letter-spacing:-.6px }
.christmas-campaign .car h3 { font-size:22px;letter-spacing:-.4px }
.christmas-campaign .price { font-variant-numeric:tabular-nums }
.christmas-campaign .hero-copy { max-width:51% }
.christmas-campaign .detail-photo { width:100% }
@media(max-width:780px) {
.christmas-campaign .hero-copy { max-width:none }
.christmas-campaign .hero h1 { font-size:38px }
.christmas-campaign .campaign-line { font-size:28px }
.christmas-campaign .car h3 { font-size:21px }
}
@media(max-width:470px) {
.christmas-campaign .hero h1 { font-size:33px;letter-spacing:-1px }
.christmas-campaign .campaign-line { font-size:25px }
.christmas-campaign .car h3 { font-size:24px }
.christmas-campaign .hero-copy .eyebrow { letter-spacing:1px }
}
@media(max-width:470px) {
.christmas-campaign .hero h1 { font-size:clamp(27px,8vw,33px) }
}
.christmas-campaign input,
.christmas-campaign textarea { font:inherit;color:inherit }
.christmas-campaign dialog.inquiry-dialog { width:min(1080px,94vw) }
.christmas-campaign .inquiry-dialog #inquiry-content { grid-template-columns:.85fr 1.15fr }
.christmas-campaign .inquiry-summary { background:#f4f3f1;min-width:0 }
.christmas-campaign .inquiry-summary .car-photo { width:100%;aspect-ratio:4/3 }
.christmas-campaign .inquiry-summary-text { padding:28px 30px }
.christmas-campaign .inquiry-summary-text .eyebrow { margin-bottom:13px }
.christmas-campaign .inquiry-summary-text h3 { font-family:"Audi Type Extended","Audi Type",sans-serif;font-size:24px;font-weight:400;line-height:1.25;margin:0 0 12px }
.christmas-campaign .inquiry-color { font-size:12px;color:#666 }
.christmas-campaign .inquiry-summary-text .prices { margin-top:28px }
.christmas-campaign .inquiry-availability { font-size:11px;color:#777;margin-top:22px }
.christmas-campaign .inquiry-panel { padding:38px 38px 30px;min-width:0 }
.christmas-campaign .inquiry-panel>.eyebrow { font-size:9px;margin-bottom:12px }
.christmas-campaign .inquiry-panel h2 { font-family:"Audi Type Extended","Audi Type",sans-serif;font-size:32px;font-weight:400;letter-spacing:-.7px;line-height:1.2;margin:0 0 12px }
.christmas-campaign .inquiry-intro { font-size:13px;color:#666;margin:0 0 20px }
.christmas-campaign .preview-notice { font-size:11px;color:#5c4d2d;border-left:2px solid #a18a61;background:#f8f5ee;padding:10px 12px;line-height:1.6;margin:0 0 22px }
.christmas-campaign #inquiry-form>label { margin-bottom:18px }
.christmas-campaign .inquiry-fields { display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-bottom:18px }
.christmas-campaign .inquiry-fields label:first-child { grid-column:1/-1 }
.christmas-campaign #inquiry-form label { font-size:12px;font-weight:400 }
.christmas-campaign #inquiry-form input,
.christmas-campaign #inquiry-form textarea { display:block;width:100%;min-height:43px;border:1px solid #bbb;border-radius:0;background:white;margin-top:7px;padding:10px 11px;font-size:14px;line-height:1.4 }
.christmas-campaign #inquiry-form textarea { resize:vertical;min-height:90px }
.christmas-campaign #inquiry-form input:focus-visible,
.christmas-campaign #inquiry-form textarea:focus-visible { outline:2px solid #171719;outline-offset:1px }
.christmas-campaign #inquiry-form select { font-size:12px;text-overflow:ellipsis;overflow:hidden;margin-top:6px }
.christmas-campaign .inquiry-privacy { font-size:10px;line-height:1.7;color:#777;margin:15px 0 }
.christmas-campaign .inquiry-privacy a { text-decoration:underline;text-underline-offset:3px }
.christmas-campaign .inquiry-required { font-size:10px;color:#777;margin:8px 0 }
.christmas-campaign .inquiry-submit { width:100%;margin-top:8px }
.christmas-campaign .inquiry-submit:disabled { cursor:wait;opacity:.6 }
.christmas-campaign .inquiry-status { font-size:12px;color:#5c4d2d;line-height:1.6;margin:0 }
.christmas-campaign .inquiry-status:not(:empty) { padding:12px 0 }
.christmas-campaign .inquiry-status.error { color:#a01b29 }
.christmas-campaign .inquiry-contact { display:flex;flex-wrap:wrap;gap:5px 18px;border-top:1px solid #ddd;margin-top:24px;padding-top:18px;font-size:11px;overflow-wrap:anywhere }
.christmas-campaign .inquiry-contact span { width:100%;color:#777;font-size:10px;margin-bottom:4px }
.christmas-campaign .inquiry-contact a:hover { text-decoration:underline }
.christmas-campaign .inquiry-general { padding:90px 32px }
.christmas-campaign .inquiry-general h3 { font-family:"Audi Type Extended","Audi Type",sans-serif;font-size:31px;line-height:1.25;font-weight:400;margin:0 0 25px }
.christmas-campaign .inquiry-general>p:last-child { font-size:13px;color:#666;line-height:1.8 }
.christmas-campaign .inquiry-success { padding:20px 0 40px }
.christmas-campaign .inquiry-success:focus { outline:none }
.christmas-campaign .inquiry-success>span { display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#50765d;color:#fff;font-size:24px;line-height:1 }
.christmas-campaign .inquiry-success h3 { font-size:24px;font-weight:400;margin:20px 0 10px }
.christmas-campaign .inquiry-success p { font-size:14px;color:var(--muted);margin:0 }
.christmas-campaign .form-trap { position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden }
.christmas-campaign .inquiry-dialog .close { position:sticky;display:block;float:none;top:10px;right:auto;margin:10px 10px -48px auto }
@media(max-width:780px) {
.christmas-campaign .inquiry-dialog #inquiry-content { display:flex;flex-direction:column }
.christmas-campaign .inquiry-summary .car-photo { display:none }
.christmas-campaign .inquiry-summary-text { padding:24px }
.christmas-campaign .inquiry-summary-text .eyebrow { margin-bottom:9px }
.christmas-campaign .inquiry-summary-text h3 { font-size:20px;max-width:90% }
.christmas-campaign .inquiry-summary-text .prices { margin-top:17px;display:flex }
.christmas-campaign .inquiry-summary-text .price { font-size:25px }
.christmas-campaign .inquiry-summary-text .saving { text-align:right }
.christmas-campaign .inquiry-availability { margin-bottom:0 }
.christmas-campaign .inquiry-panel { padding:28px 24px }
.christmas-campaign .inquiry-general { padding:28px 24px }
.christmas-campaign .inquiry-general h3 { font-size:26px;margin-bottom:12px }
.christmas-campaign .inquiry-general h3 br { display:none }
.christmas-campaign .inquiry-general>p:last-child { margin:0 }
.christmas-campaign .inquiry-fields { grid-template-columns:1fr }
.christmas-campaign .inquiry-panel h2 { font-size:28px }
.christmas-campaign .inquiry-summary-text .color { min-height:0 }
}

/* Yii ActiveForm uses the existing project validation and consent handling. */
.christmas-campaign { font-size:16px; }
.christmas-campaign .inquiry-panel .form-group { margin:0 0 18px; }
.christmas-campaign .inquiry-fields .form-group { margin:0; }
.christmas-campaign .inquiry-fields .form-group:first-child { grid-column:1/-1; }
.christmas-campaign .inquiry-fields label:first-child { grid-column:auto; }
.christmas-campaign #inquiry-form label { margin:0; }
.christmas-campaign #inquiry-form .help-block { font-size:12px; color:#a01b29; margin:5px 0 0; }
.christmas-campaign #inquiry-form .has-error input,
.christmas-campaign #inquiry-form .has-error textarea,
.christmas-campaign #inquiry-form .has-error select { border-color:#a01b29; }
.christmas-campaign #inquiry-form .inquiry-consent { font-size:10px; line-height:1.7; color:#777; }
.christmas-campaign #inquiry-form .inquiry-consent input { display:inline-block; width:auto; min-height:0; margin:0 6px 0 0; padding:0; vertical-align:middle; }
.christmas-campaign #inquiry-form .inquiry-consent a { text-decoration:underline; }
.christmas-campaign #inquiry-content { display:grid; grid-template-columns:.85fr 1.15fr; }
.christmas-campaign .inquiry-dialog .close { opacity:1; font-weight:400; text-shadow:none; }
.christmas-campaign dialog { color:var(--ink); }
@media(max-width:780px) { .christmas-campaign #inquiry-content { display:flex; flex-direction:column; } }

.christmas-campaign-page { scroll-behavior:smooth; }
@media(prefers-reduced-motion:reduce) { .christmas-campaign-page { scroll-behavior:auto; } }

/* Keep the enquiry below Google's external reCAPTCHA challenge layer. */
.christmas-campaign.inquiry-open { overflow:hidden; }
.christmas-campaign .inquiry-backdrop { position:fixed; inset:0; background:#0009; z-index:1000; }
.christmas-campaign dialog.inquiry-dialog { position:fixed; inset:50% auto auto 50%; margin:0; transform:translate(-50%,-50%); overflow:auto; overscroll-behavior:contain; z-index:1001; }
