/* AAG Exotics: shared legal, accessibility and card rules. Linked last in every page head. */
@font-face{font-family:"Montserrat Fallback";src:local("Arial"),local("Helvetica"),local("Liberation Sans");size-adjust:112.83%;ascent-override:85.79%;descent-override:22.25%;line-gap-override:0%}
body{font-family:"Montserrat","Montserrat Fallback",system-ui,sans-serif}
:root{--red-text:#ff5c70;--fine:#b4b4bc}

/* Nav: every item stays on one line */
nav.main-nav a{white-space:nowrap}
@media (min-width:981px) and (max-width:1280px){nav.main-nav{gap:20px}nav.main-nav a{font-size:13px;letter-spacing:.1em}.nav-row{gap:14px}.header-inner{gap:24px}}
@media (min-width:981px) and (max-width:1120px){nav.main-nav{gap:15px}nav.main-nav a{font-size:12px;letter-spacing:.07em}.nav-row .nav-dot{display:none}}

/* Cards: dark photo placeholder, fade-in, two-line titles, red price box + black button */
.card-photo{background:#1a1a1e}
.card-photo img.card-img{opacity:0;transition:opacity .35s ease}
.card-photo img.card-img.is-in{opacity:1}
.card-title .ct-name{display:flex;align-items:center;justify-content:center;min-height:2.5em;line-height:1.25}
.card:not(.is-sold) .card-price{background:linear-gradient(180deg,#e0233f,#c8102e);color:#fff}
.card:not(.is-sold) .card-price .cp-amt{color:#fff;font-weight:700}
.card:not(.is-sold) .card-price .cp-call,.card:not(.is-sold) .card-price .cp-call:hover{color:#fff}
.card:not(.is-sold) .card-price .cp-call:hover{text-decoration:underline}
.card:not(.is-sold) .card-details{background:#0a0a0a;color:#fff;border:1px solid #3a3a42;display:flex;align-items:center;justify-content:center;text-align:center;transition:background .18s ease,border-color .18s ease}
.card:not(.is-sold) .card-details:hover{background:#000;border-color:#fff}
.card-disc{font-size:12px;color:var(--fine)}

/* Price, payment, offer and photo disclosures */
.price-disclosure{font-size:12px;line-height:1.6;color:var(--fine);margin:20px 0 0;max-width:980px;text-wrap:pretty}
.price-disclosure.center{margin-left:auto;margin-right:auto;text-align:center}
.pay-assume{display:block;font-size:12px;line-height:1.55;color:var(--fine);margin:8px 0 0;text-wrap:pretty}
.offer-terms{font-size:12px;line-height:1.55;color:#c6c6cc;margin:12px 0 0;text-wrap:pretty}
.offer-terms.boxed{border:1px solid var(--border);border-radius:3px;padding:10px 12px;margin:0 0 18px;background:rgba(255,255,255,.03)}
.studio-note{font-size:12px;line-height:1.5;color:var(--fine);margin:10px 0 0}
.vh-studio{background:var(--near-black)}
.vh-studio .shell{padding-top:8px;padding-bottom:10px}
.credit-note{font-size:13px;line-height:1.55;color:#c6c6cc;margin:14px 0 0;text-wrap:pretty}
details.p65{margin-top:12px;font-size:12px;line-height:1.6;color:var(--fine)}
details.p65 summary{cursor:pointer;color:#fff;font-weight:600;display:inline-flex;align-items:center;gap:8px;min-height:32px;list-style:none}
details.p65 summary::-webkit-details-marker{display:none}
details.p65 summary::before{content:"+";display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:1px solid #6a6a72;border-radius:2px;font-size:12px;line-height:1}
details.p65[open] summary::before{content:"\2212"}
details.p65 p{margin:6px 0 0;max-width:980px;text-wrap:pretty}
.vt-right details.p65{max-width:360px;margin-left:auto;text-align:right}
.vt-right details.p65 p{text-align:left}
@media (max-width:860px){.vt-right details.p65{margin-left:0;text-align:left}}

/* Form consent + agreement */
.field.consent{margin:4px 0 16px}
.field label.chk,label.chk{display:flex;align-items:flex-start;gap:10px;margin:0;font-size:12px;line-height:1.5;letter-spacing:0;text-transform:none;color:#c6c6cc;font-weight:400;cursor:pointer;text-align:left}
.field .chk input,.chk input{width:18px;height:18px;min-width:18px;padding:0;margin:1px 0 0;flex:none;accent-color:var(--red)}
.form-agree{font-size:12px;line-height:1.5;color:var(--fine);text-align:center;margin:12px 0 0}
.form-agree a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.form-agree a:hover{color:var(--red-text)}

/* Footer legal block */
footer .legal{display:block;padding:22px 0 28px}
.legal-id{margin:0 0 12px;font-size:13px;line-height:1.6;color:var(--fine);text-wrap:pretty}
.legal-id a{color:#fff}
.legal-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--fine)}
.legal-links{display:flex;gap:18px;flex-wrap:wrap}
.legal-links a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.legal-links a:hover{color:var(--red-text)}

/* Accessibility: visible focus, readable small red text */
:focus-visible{outline:2px solid #fff;outline-offset:2px}
summary:focus-visible,label:focus-within>.sw{outline:2px solid #fff;outline-offset:2px}
.svc a,.lnk,.vt-est .u,.field .err,.card-utility button.active,.vt-actions button.active,.vt-actions button:hover,.breadcrumb .bc-arrow,.svc a:hover,.info-row a.val:hover,.contact-card .cc-row a.val:hover,.footer-grid ul a:hover,.breadcrumb a:hover,.card-utility button.active .lbl-txt,.sp-call a:hover,.sp-choice .go,.inv-count .ic-sold,.so-link,.fin-copy a.lnk{color:var(--red-text)}
.lnk:hover{color:#fff}
.so-steps .n,ol .n,span.n,a.tradelink,.card.is-sold .card-price .cp-sold,.hl-name2,nav.main-nav a[aria-current="page"],nav.main-nav .nav-dd>a.on,.drawer a[aria-current="page"],.nav-dd-list a[aria-current="page"]{color:var(--red-text)!important}
.sp-choice.on .go{color:#fff}
#inquiry-form label span,.field label em{color:var(--text-2)!important}
::placeholder,.field input::placeholder,.field textarea::placeholder{color:#8e8e96}

/* Legal pages */
.legal-page{padding:56px 0 90px}
.legal-page .shell{max-width:860px}
.legal-page h1{font-size:38px;font-weight:600;line-height:1.15;margin:8px 0 10px}
.legal-page .lp-date{color:var(--fine);font-size:14px;margin:0 0 36px}
.legal-page h2{font-size:20px;font-weight:600;margin:38px 0 12px;line-height:1.3}
.legal-page p,.legal-page li{color:#d4d4da;font-size:15px;line-height:1.75;text-wrap:pretty}
.legal-page p{margin:0 0 14px}
.legal-page ul{margin:0 0 16px;padding-left:22px}
.legal-page li{margin:0 0 6px}
.legal-page a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.legal-page a:hover{color:var(--red-text)}
.legal-page .lp-contact{border:1px solid var(--border);border-radius:4px;padding:18px 20px;background:var(--card);margin:16px 0 0}
.legal-page .lp-contact p{margin:0}

/* Phones: 12px minimum text, 44px tap targets on the sell page */
@media (max-width:768px){
.eyebrow,.ct-sub,.badge-pill,.status-pill,.card-specs .spec .lbl,.info-row .lbl,.contact-card .cc-row .lbl,.tk-label,.qs-tabs button,.qs-field label,.field label,.flabel,.vt-plabel,.vt-disc,.vt-terms,.vt-specs,.hl-pill,.spec-row .k,.pay-out .k,.m-bar a,.m-bar button,.ftr-label,.va-label,.card-disc,.ifl>span,.inv-sort label,.so-fine,.dm-fine,.pay-note,.calc-note,.so-progress span,.sp-choice .go,.vs-card .k,.footer-grid h4,.legal,.dm-car,.err,.seg span,.utility,.utility a,.utility span,.card-utility button,.wa-nudge a,.inv-soldtog,.qs-toggle .qs-tc,.eta,.drop small,.so-opt,.dm-opt,.inq-opt,.sd-sr{font-size:12px!important}
.m-bar a,.m-bar button{letter-spacing:.04em!important}
.sp-all{display:inline-flex;align-items:center;min-height:44px}
.sp-car-t{display:flex;align-items:center;min-height:44px}
.legal-page h1{font-size:30px}
}
@media (prefers-reduced-motion:reduce){.card-photo img.card-img{transition:none;opacity:1}}

/* Trust bar */
.trust-bar{background:var(--bg-dark);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.tb-list{list-style:none;margin:0;padding:16px 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
.tb-list li{display:flex;align-items:center;gap:12px;min-width:0}
.tb-list li[hidden]{display:none}
.tb-list svg{width:24px;height:24px;flex:none;fill:none;stroke:var(--red-text);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.tb-list span{display:flex;flex-direction:column;gap:2px;font-size:12px;line-height:1.35;color:var(--fine);text-wrap:pretty}
.tb-list b{font-size:13px;font-weight:600;color:#fff}
.tb-list .tb-langs{display:block}.tb-list .tb-langs span{display:inline;font-size:inherit;color:inherit}
.tb-list .tb-sold{visibility:hidden}
.tb-list .tb-sold.ready{visibility:visible}
.tb-list .tb-sold a{display:flex;align-items:center;gap:12px;color:inherit}
.tb-list .tb-sold b span{display:inline;color:inherit;font-size:inherit}
.tb-list .tb-sold a:hover b{color:var(--red-text)}
.tb-list .tb-sold a>span{color:var(--red-text)}
@media (max-width:1100px){.tb-list{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:14px}}
@media (max-width:768px){.tb-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:20px;padding:14px 18px;margin:0 -18px;scrollbar-width:none}.tb-list::-webkit-scrollbar{display:none}.tb-list li{flex:0 0 auto;max-width:250px;scroll-snap-align:start}.tb-list span{font-size:12px!important}}

/* Delivery section */
#delivery .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}
.dl-link{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff;border-bottom:1px solid var(--red);padding-bottom:3px;white-space:nowrap}
.dl-link:hover{color:var(--red-text)}
.dl-grid{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.dl-grid li{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:26px 24px}
.dl-grid svg{width:30px;height:30px;fill:none;stroke:var(--red-text);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;margin-bottom:16px}
.dl-grid h3{font-size:18px;font-weight:600;margin:0 0 8px;line-height:1.3}
.dl-grid p{margin:0;color:#d4d4da;font-size:15px;line-height:1.6;text-wrap:pretty}
@media (max-width:1000px){.dl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.dl-grid{grid-template-columns:minmax(0,1fr);gap:14px}.dl-grid li{padding:20px}}

/* New arrivals signup */
.na-band[hidden]{display:none!important}
.na-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:48px;align-items:start}
.na-copy h2{font-size:30px;font-weight:600;line-height:1.15;margin:8px 0 12px}
.na-copy p{margin:0;color:#d4d4da;font-size:16px;text-wrap:pretty}
.na-form[hidden],.na-done[hidden]{display:none}
.na-form .field select{width:100%}
.na-btn{width:100%;justify-content:center;padding:15px;font-size:14px}
.na-done{border:1px solid var(--border);border-radius:4px;background:var(--card);padding:24px}
.na-done h3{font-size:22px;margin:0 0 8px}
.na-done p{margin:0;color:#d4d4da}
.inv-main .na-band{margin-top:60px}
.inv-main:has(#arrivals:not([hidden])){padding-bottom:0}
@media (max-width:860px){.na-grid{grid-template-columns:minmax(0,1fr);gap:22px}.na-copy h2{font-size:24px}}

/* Footer: compact signup */
.footer-na{border-top:1px solid var(--border);margin-top:36px;padding:28px 0 4px}
.na-compact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:10px 36px;align-items:center}
.fna-copy h4{margin:0 0 4px}
.fna-copy p{margin:0;font-size:13px;color:var(--fine)}
.fna-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto;gap:8px}
.fna-row input,.fna-row select{width:100%;height:46px;background:var(--bg);border:1px solid var(--border);color:#fff;font:inherit;font-size:14px;padding:0 12px;border-radius:3px}
.fna-row select{appearance:none;-webkit-appearance:none;background:var(--bg) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' stroke='%23a0a0a8' stroke-width='2' fill='none'/></svg>") no-repeat right 12px center;padding-right:32px;cursor:pointer}
.fna-row input:focus,.fna-row select:focus{border-color:var(--red);outline:none}
.fna-row input::placeholder{color:#8e8e96}
.fna-row .btn{height:46px;padding:0 22px;justify-content:center}
.na-compact .fna-err{display:none;grid-column:2;color:var(--red-text);font-size:12px}
.na-compact.invalid .fna-err{display:block}
.na-compact.invalid .fna-row input[type="email"]{border-color:var(--red)}
.na-compact .form-agree{grid-column:2;text-align:left;margin:0}
.footer-na .na-done{padding:16px 18px}
.footer-na .na-done h3{font-size:17px;margin:0 0 4px}
.footer-na .na-done p{font-size:14px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:860px){.na-compact{grid-template-columns:minmax(0,1fr)}.na-compact .fna-err,.na-compact .form-agree{grid-column:1}.fna-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.fna-row input{grid-column:1/-1}}

/* Walkaround video */
.vh-video{position:absolute;right:24px;bottom:76px;z-index:5;gap:8px;background:rgba(10,10,10,.72);color:#fff;border:1px solid rgba(255,255,255,.55)}
.vh-video:hover{background:#0a0a0a;border-color:#fff}
.vh-video[hidden],.gal-video[hidden]{display:none!important}
.vh-video svg,.gv-btn svg,.card-video svg{width:14px;height:14px;fill:currentColor;flex:none}
.gal-video{position:relative;aspect-ratio:16/9;background:#0a0a0a;border-radius:4px;overflow:hidden;margin:0 0 18px}
.gal-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.gal-video.gv-file video{position:absolute;inset:0;width:100%;height:100%;background:#0a0a0a;object-fit:contain}
.gal-video.gv-file video::-webkit-media-controls-mute-button,.gal-video.gv-file video::-webkit-media-controls-volume-slider,.gal-video.gv-file video::-webkit-media-controls-volume-control-container{display:none!important}
.gv-play{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:#0a0a0a;cursor:pointer}
.gv-play img{width:100%;height:100%;object-fit:cover;filter:brightness(.62)}
.gv-btn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:10px;background:var(--red);color:#fff;padding:15px 24px;border-radius:3px;font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 10px 30px rgba(0,0,0,.5);transition:background .18s ease}
.gv-play:hover .gv-btn{background:var(--red-hover)}
.card-video{position:absolute;left:12px;bottom:12px;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(10,10,10,.8);color:#fff;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;line-height:1}
@media (max-width:768px){.vh-video{right:14px;top:14px;bottom:auto;padding:10px 14px;font-size:12px}}

/* Delivery included (per car) + airport line in test drive form */
.card-deliv{margin:0;padding:10px 16px 0;font-size:12px;line-height:1.45;color:#e6e6ea;text-align:center}
.vt-deliv{margin:8px 0 0;font-size:13px;font-weight:600;color:#fff}
.vt-deliv[hidden]{display:none}
.dm-air{margin:0 0 16px;padding:11px 14px;border:1px solid var(--border);border-radius:3px;background:rgba(255,255,255,.03);font-size:13px;line-height:1.5;color:#e2e2e6}

/* Footer Instagram link with logo */
.ft-ig{display:inline-flex;align-items:center;gap:4px}
.ft-ig svg{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8}
.tb-list span span[lang]{display:inline;font-size:inherit}

.lead-err{margin:12px 0 0;color:#ff5a6e;font-size:14px;font-weight:600;line-height:1.45}.lead-err[hidden]{display:none}
button[aria-busy="true"]{opacity:.65;cursor:progress}
