body.dex-event-page { background:#fff; color:#18181b; font-family:'PT Sans',sans-serif; -webkit-font-smoothing:antialiased; }
.dex-event-page #test-drive-app,.dex-event-page #dex-loading { --brand-primary:#18181b; font-family:'PT Sans',sans-serif; }
.dex-event-page #dex-loading { color:#18181b !important; }
.dex-event-page #dex-loading .spinner { border-top-color:#18181b !important; }
.dex-event-page .dex-event-landing h1,.dex-event-page .dex-event-landing h2,.dex-event-page .dex-event-landing h3,.dex-event-page #test-drive-app .dtdt--model-title,.dex-event-page .dex-event-branch__name,.dex-event-page #test-drive-app .wpcf7 { font-family:Poppins,sans-serif; }
.dex-event-page #test-drive-app input,.dex-event-page #test-drive-app select,.dex-event-page #test-drive-app textarea,.dex-event-page #test-drive-app button { font-family:inherit; }
.dex-event-hero { position:relative; height:420px; min-height:340px; background:#15202b; overflow:hidden; color:#fff; }
.dex-event-hero picture { display:block; height:100%; }
.dex-event-hero__image { width:100%; height:100%; object-fit:cover; object-position:center 60%; }
.dex-event-hero::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.6),transparent 35%,rgba(0,0,0,.5)); pointer-events:none; }
.dex-event-header { position:absolute; z-index:2; top:0; left:0; width:100%; display:flex; justify-content:flex-start; align-items:center; min-height:92px; padding:15px max(5%,24px); border-bottom:1px solid rgba(255,255,255,.2); }
.dex-event-logo { color:#fff; }
.dex-event-logo img { display:block; width:124px; height:40px; object-fit:contain; }
.dex-event-home { display:inline-flex; gap:10px; align-items:center; color:#fff; font-size:13px; width:fit-content; }
.dex-event-home:hover { color:#fff; }
.dex-event-home span:first-child { font-size:24px; }
.dex-event-header__brand { justify-self:end; font-size:20px; font-weight:700; letter-spacing:3px; }
.dex-event-hero__copy { position:absolute; z-index:1; left:max(calc((100% - 1180px)/2),5%); bottom:40px; animation:dex-event-enter .8s cubic-bezier(.16,1,.3,1) both; }
.dex-event-eyebrow { font-size:11px; font-weight:700; letter-spacing:2px; }
.dex-event-hero__copy h1 { margin:10px 0; font-size:56px; line-height:1; font-weight:700; letter-spacing:-2px; }
.dex-event-date { display:inline-block; padding:7px 12px; border:1px solid rgba(255,255,255,.55); border-radius:4px; font-size:13px; }
.dex-event-booking { max-width:1240px; margin:auto; padding:52px 30px 70px; }
.dex-event-intro { border-bottom:1px solid #d9dce1; padding-bottom:24px; }
.dex-event-intro .dex-event-eyebrow { color:#6a7079; margin-bottom:12px; }
.dex-event-intro h2 { margin:0 0 10px; font-size:30px; font-weight:400; line-height:1.3; letter-spacing:-.6px; }
.dex-event-intro > p:last-child { color:#6a7079; font-size:15px; margin:0; }
.dex-event-page .dex-event-shortcode-title { display:none; }
.dex-event-page #test-drive-app { max-width:none; padding:0; margin:28px 0 0 !important; }
.dex-event-page #test-drive-app > .row { display:block; margin:0; }
.dex-event-page #test-drive-app > .row > .col-md-2,.dex-event-page #test-drive-app > .row > .col-md-10 { width:100%; max-width:100%; padding:0; }
.dex-event-page #test-drive-app .dextdbkg--steps-line { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding:0; margin:0 0 36px; border:0; align-items:stretch; }
.dex-event-page #test-drive-app .dextdbkg--steps-line::before,.dex-event-page #test-drive-app .timeline-block::before,.dex-event-page #test-drive-app .timeline-block::after { display:none; }
.dex-event-page #test-drive-app .timeline-block { display:flex; justify-content:flex-start; align-items:center; gap:12px; margin:0; padding:15px; border-top:3px solid #e7e9ec; background:#f6f7f8; border-radius:0 0 5px 5px; }
.dex-event-page #test-drive-app .timeline-block.is-current { border-color:#18181b; background:#f4f5f7; }
.dex-event-page #test-drive-app .timeline-block.is-complete { border-color:#18181b; }
.dex-event-page #test-drive-app .marker { flex:none; position:static; width:30px; height:30px; padding:0; margin:0; border:1px solid #d7dbe0; background:#fff; border-radius:50%; color:#737a84; font-size:13px; font-weight:700; box-shadow:none; line-height:28px; opacity:1; }
.dex-event-page #test-drive-app .marker.step-active { background:#18181b; color:#fff; border-color:#18181b; }
.dex-event-page .dex-step-label { font-size:13px; font-weight:600; text-align:left; }
.dex-event-page #dex-step { margin:0 -10px; }
.dex-event-page #dex-step > article { padding:0 10px; }
.dex-event-page #dex-step > article,.dex-event-page #dex-step > .col-12,.dex-event-page #dex-step > .container,.dex-event-branch-grid { animation:dex-event-enter .6s cubic-bezier(.16,1,.3,1); }
.dex-event-page #test-drive-app .dtdt--model-item { display:flex; flex-direction:column; align-items:stretch; padding:28px; border:1px solid #eceef1 !important; border-radius:18px; background:#fff; overflow:hidden; box-shadow:0 2px 4px rgba(21,31,45,.04); }
.dex-event-page #test-drive-app .dtdt--model-image { margin:0; }
.dex-event-page #test-drive-app .dtdt--model-image img { width:100%; max-width:460px; height:220px; object-fit:contain; mix-blend-mode:multiply; transition:transform .3s cubic-bezier(.16,1,.3,1); }
.dex-event-page #test-drive-app .dtdt--model-image small { display:block; font-size:10px; color:#959ba3 !important; margin-top:6px; }
.dex-event-page #test-drive-app .dtdt--model-title { height:auto; min-height:0; margin:22px 0 8px; text-align:left; font-size:30px; line-height:1.1; letter-spacing:-.5px; color:#18181b; }
.dex-event-page #test-drive-app .dtdt--model-title strong { font-weight:700; }
.dex-event-page #test-drive-app .dtdt--model-title span { font-size:inherit; color:inherit; }
.dex-event-page #test-drive-app .dtdt--model-button { width:100%; }
.dex-event-page #test-drive-app .dex-select-model { width:100%; padding:14px 20px; margin:18px 0 0 !important; border:0; border-radius:999px; background:#18181b; color:#fff; text-transform:none; font-size:14px; letter-spacing:0; }
.dex-event-page #test-drive-app .dex-select-model:hover { background:#18181b; }
.dex-event-step-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; width:100%; margin-bottom:24px; }
.dex-event-page #test-drive-app .dex-event-step-heading h3 { font-size:25px; color:#18181b; margin:0 0 8px; letter-spacing:-.4px; }
.dex-event-step-heading p { margin:0; font-size:14px; color:#737a84; }
.dex-event-page #test-drive-app select.dex-event-province { display:block; width:100%; max-width:100%; min-width:0; height:52px; margin:0 0 28px; padding:12px 18px; border:1px solid #e0e3e8; border-radius:12px; background-color:#fff; color:#555b64; font-size:15px; cursor:pointer; box-sizing:border-box; }
.dex-event-branch-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; width:100%; }
.dex-event-branch-grid[hidden] { display:none; }
.dex-event-page #test-drive-app #dex-province-hint { margin:0 0 20px; color:#737a84; font-size:14px; }
.dex-event-page #test-drive-app .dex-event-branch { display:flex; flex-direction:column; align-items:stretch; text-align:left; padding:20px; min-height:205px; border:1px solid #eceef1; border-radius:18px; background:#fff; color:#18181b; box-shadow:0 2px 4px rgba(21,31,45,.04); transition:border-color .18s,box-shadow .18s,transform .18s; }
.dex-event-page #test-drive-app .dex-event-branch:hover { background:#fff; border-color:#d4d4d8; }
.dex-event-branch[hidden] { display:none !important; }
.dex-event-branch__top { display:flex; justify-content:space-between; align-items:center; margin-bottom:18px; color:#7a828e; font-size:11px; }
.dex-event-branch__province { background:#f2f4f6; padding:5px 8px; border-radius:4px; color:#626c79; }
.dex-event-branch__name { display:block; font-size:17px; line-height:1.35; font-weight:700; margin-bottom:9px; }
.dex-event-branch__address { flex:1; font-size:12px; line-height:1.6; color:#7a828e; }
.dex-event-branch__footer { display:flex; flex-direction:column; gap:12px; align-items:stretch; padding-top:0; margin-top:18px; font-size:11px; }
.dex-event-branch__footer > span:last-child { display:block; padding:12px 14px; border-radius:999px; background:#18181b; color:#fff; font-size:13px; font-weight:400; text-align:center; }
.dex-event-page #test-drive-app .flatpickr-calendar.inline { margin:0 auto 20px; box-shadow:none; border:1px solid #e1e6eb; border-radius:10px; }
.dex-event-page #test-drive-app #dex-hora { padding:12px; height:48px; border:1px solid #dce0e5; background:#fff; }
.dex-event-page #test-drive-app #dex-continue-3 { width:100%; padding:14px; margin-top:12px; background:#18181b; border-radius:999px; }
.dex-event-page #test-drive-app #dex-continue-3:disabled { background:#d9dde2; }
.dex-event-page #test-drive-app .dex-event-hour-select[hidden] { display:none !important; }
.dex-event-hours-heading { margin-bottom:24px; }
.dex-event-page #test-drive-app .dex-event-hours-heading h3 { margin:0 0 12px; font-size:25px; color:#18181b; }
.dex-event-hours-heading p { margin:0 0 8px; color:#71717a; font-size:15px; }
.dex-event-hours-date::first-letter { text-transform:uppercase; }
.dex-event-page #test-drive-app #dex-hours-status { font-size:14px; color:#71717a; margin:0 0 16px; }
.dex-event-hour-options { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:22px; }
.dex-event-page #test-drive-app .dex-event-hour { width:100%; margin:0; padding:13px 10px; border:1px solid #e4e4e7; border-radius:999px; background:#fff; color:#18181b; font-size:16px; line-height:1.3; cursor:pointer; transition:background-color .2s,border-color .2s,color .2s; }
.dex-event-page #test-drive-app .dex-event-hour:hover { background:#f4f4f5; border-color:#a1a1aa; }
.dex-event-page #test-drive-app .dex-event-hour.is-selected { background:#18181b; border-color:#18181b; color:#fff; }
.dex-event-page #test-drive-app button:focus-visible,.dex-event-page #test-drive-app select:focus-visible,.dex-event-page a:focus-visible { outline:3px solid #18181b; outline-offset:4px; }
.dex-event-page #test-drive-app .dtdt--model-item,.dex-event-page #test-drive-app .dex-event-branch { transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s cubic-bezier(.16,1,.3,1),border-color .5s cubic-bezier(.16,1,.3,1); }
.dex-event-page #test-drive-app .dex-select-model,.dex-event-page #test-drive-app #dex-continue-3,.dex-event-page #test-drive-app .wpcf7-submit { transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1),background-color .3s; }
.dex-event-page #test-drive-app .wpcf7-form-control.wpcf7-submit { display:inline-block; width:auto; max-width:100%; min-height:52px; margin:12px 0 0; padding:14px 28px; border:0; border-radius:6px; background-color:#18181b !important; background-image:none; color:#fff; font-family:inherit; font-size:14px; font-weight:400; line-height:1.5; letter-spacing:0; text-transform:none; text-align:center; cursor:pointer; -webkit-appearance:none; appearance:none; }
.dex-event-page #test-drive-app .wpcf7-form-control.wpcf7-submit:hover:not(:disabled) { background-color:#18181b !important; }
.dex-event-page #test-drive-app .wpcf7-form-control.wpcf7-submit:disabled { background-color:#d9dde2 !important; cursor:not-allowed; box-shadow:none; transform:none; }
.dex-event-page #test-drive-app .wpcf7-form-control.wpcf7-submit:focus-visible { outline:3px solid #18181b; outline-offset:4px; }
.dex-event-page #test-drive-app .wpcf7-form input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=hidden]),.dex-event-page #test-drive-app .wpcf7-form textarea,.dex-event-page #test-drive-app .wpcf7-form select { border:1px solid #e4e4e7; border-radius:6px; }
.dex-event-page #test-drive-app #dex-hora { border:1px solid #e4e4e7; border-radius:12px; }
@keyframes dex-event-enter { from { opacity:0; transform:translateY(20px); } to { opacity:1; transform:translateY(0); } }
@media(hover:hover) and (pointer:fine) {
    .dex-event-page #test-drive-app .dtdt--model-item:hover,.dex-event-page #test-drive-app .dex-event-branch:hover { transform:translateY(-6px) scale(1.02); box-shadow:0 20px 25px -5px rgba(0,0,0,.15),0 8px 10px -6px rgba(0,0,0,.15); }
    .dex-event-page #test-drive-app .dtdt--model-item:hover .dtdt--model-image img { transform:scale(1.05); }
    .dex-event-page #test-drive-app .dex-select-model:hover,.dex-event-page #test-drive-app #dex-continue-3:not(:disabled):hover,.dex-event-page #test-drive-app .wpcf7-submit:not(:disabled):hover { transform:scale(1.03); box-shadow:0 10px 15px -3px rgba(0,0,0,.15); }
}
.dex-event-page #test-drive-app .dex-select-model:active,.dex-event-page #test-drive-app #dex-continue-3:not(:disabled):active { transform:scale(.97); }
@media(max-width:991px) { .dex-event-branch-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .dex-event-page #test-drive-app .timeline-block { padding:12px 8px; gap:7px; } .dex-event-page .dex-step-label { font-size:12px; } }
@media(max-width:767px) {
    .dex-event-hero { height:330px; min-height:0; }
    .dex-event-hero__image { object-position:56% center; }
    .dex-event-header { min-height:78px; padding:12px 20px; }
    .dex-event-logo img { width:100px; height:32px; }
    .dex-event-home span:last-child { display:none; }
    .dex-event-header__brand { font-size:15px; letter-spacing:2px; }
    .dex-event-hero__copy { left:24px; bottom:28px; }
    .dex-event-hero__copy h1 { font-size:40px; }
    .dex-event-booking { padding:34px 20px 48px; }
    .dex-event-intro h2 { font-size:24px; }
    .dex-event-intro h2 > strong { display:block; }
    .dex-event-page #test-drive-app .dextdbkg--steps-line { gap:5px; margin-bottom:24px; }
    .dex-event-page #test-drive-app .timeline-block { flex-direction:column; gap:8px; padding:12px 4px; }
    .dex-event-page .dex-step-label { font-size:10px; text-align:center; }
    .dex-event-page #test-drive-app .dtdt--model-item { padding:22px; margin-bottom:18px; }
    .dex-event-page #test-drive-app .dtdt--model-image img { height:175px; }
    .dex-event-page #test-drive-app .dtdt--model-title { font-size:27px; }
    .dex-event-step-heading { align-items:stretch; flex-direction:column; gap:16px; }
    .dex-event-province { min-width:0; width:100%; }
    .dex-event-branch-grid { grid-template-columns:1fr; }
    .dex-event-page #test-drive-app .dex-event-branch { min-height:185px; }
    .dex-event-hour-options { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(prefers-reduced-motion:reduce) { .dex-event-page .dex-event-hero__copy,.dex-event-page #test-drive-app * { animation:none !important; transition:none !important; transform:none !important; } }

/* H7 DAY: texto independiente del arte del banner */
.dex-event-page .dex-event-hero__copy { left:auto; right:max(calc((100% - 1180px)/2),5%); text-align:right; max-width:45%; }
.dex-event-page #test-drive-app .wpcf7 { font-family:"PT Sans",sans-serif; }
@media(max-width:767px) { .dex-event-page .dex-event-hero__copy { left:auto; right:24px; max-width:calc(100% - 48px); text-align:right; } }

/* Banner limpio y selector de modelos alineado */
.dex-event-page .dex-event-hero__copy { display:none !important; }
.dex-event-page .dex-event-header { border-bottom:none !important; }
.dex-event-page .dex-event-hero::after { display:none !important; }
.dex-event-page #test-drive-app[data-step="1"] #dex-step { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:0; }
.dex-event-page #test-drive-app[data-step="1"] #dex-step > article { width:100%; max-width:none; padding:0; }
.dex-event-page #test-drive-app[data-step="1"] .dtdt--model-item { height:100%; }
.dex-event-page #test-drive-app[data-step="1"] .dtdt--model-title { min-height:2.2em; }
.dex-event-page #test-drive-app[data-step="1"] .dtdt--model-button { margin-top:auto; }
@media(max-width:991px) { .dex-event-page #test-drive-app[data-step="1"] #dex-step { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) { .dex-event-page #test-drive-app[data-step="1"] #dex-step { grid-template-columns:1fr; } .dex-event-page #test-drive-app[data-step="1"] .dtdt--model-item { margin-bottom:0; } }

/* Solicitudes de otros modelos */
.dex-event-page #test-drive-app .dtdt--model-image img[src$="gwm-logo.svg"] { filter:brightness(0); width:50%; max-width:220px; padding:0; box-sizing:border-box; }
.dex-event-page .dex-other-help { color:#71717a; font-size:13px; margin:0 0 12px; }
.dex-event-page .dex-other-picker { grid-column:1 / -1; padding:0; max-width:100%; }
.dex-event-page .dex-other-picker h3 { margin:0 0 14px; }
.dex-event-page .dex-other-picker label { display:block; margin:20px 0 8px; }
.dex-event-page .dex-other-notice { padding:16px; border:1px solid #e4e4e7; border-radius:6px; background:#f4f4f5; color:#18181b; font-size:14px; line-height:1.65; }
.dex-event-page .dex-other-picker-actions { display:flex; gap:12px; flex-wrap:wrap; margin:24px 0; }
.dex-event-page #test-drive-app .dex-other-picker-actions button { padding:13px 24px; border:1px solid #18181b; border-radius:999px; background:#18181b; color:#fff; font-size:14px; }
.dex-event-page #test-drive-app #dex-other-back { background:#fff; color:#18181b; }
.dex-event-page #test-drive-app #dex-other-next:disabled { background:#d9dde2; border-color:#d9dde2; cursor:not-allowed; }
.dex-event-page .dex-other-success { border:1px solid #e4e4e7; padding:24px; border-radius:12px; }
@media(min-width:992px) { .dex-event-page #test-drive-app[data-step="1"] #dex-step:has(.dex-other-tile) { grid-template-columns:repeat(4,minmax(0,1fr)); } .dex-event-page #test-drive-app[data-step="1"] #dex-step:has(.dex-other-tile) .dtdt--model-title { font-size:21px; } }

/* Separación compacta entre textos y botones en desktop */
@media(min-width:992px) {
 .dex-event-page #test-drive-app[data-step="1"] .dtdt--model-title { min-height:0; margin-bottom:0; }
 .dex-event-page #test-drive-app[data-step="1"] .dtdt--model-button { margin-top:auto !important; padding-top:16px; }
 .dex-event-page #test-drive-app[data-step="1"] .dex-select-model { margin:0 !important; }
 .dex-event-page #test-drive-app[data-step="1"] .dex-other-help { margin:10px 0 0; }
}
