/* V11.49 — Rediseño visual exclusivo de la ficha pública de seminuevos. */
body.vehicles { background: #f1f3f7; }
.detail-shell.seminuevo-detail { max-width: 1450px; margin: 28px auto 75px; padding: 0 24px; background: transparent; }
.seminuevo-layout { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); gap: 20px; align-items: stretch; }
.seminuevo-gallery-card, .seminuevo-commercial-card { min-width: 0; background: #fff; border-radius: 20px; padding: 16px; box-shadow: 0 12px 30px rgba(18,29,50,.10); }
.seminuevo-photo-stage { height: 440px; position: relative; overflow: hidden; border-radius: 14px; background: #edf0f4; display: flex; align-items: center; justify-content: center; }
.seminuevo-photo-stage > img { width: 100%; height: 100%; object-fit: contain; }
.seminuevo-badge { position: absolute; z-index: 2; left: 16px; top: 18px; padding: 11px 17px; color: white; background: linear-gradient(125deg,#f01d27,#bd000a); border-radius: 8px; font-size: 14px; font-weight: 900; letter-spacing: .04em; box-shadow: 0 5px 12px #0003; }
.seminuevo-arrow, .seminuevo-expand { position: absolute; z-index: 3; border: 0; cursor: pointer; display: grid; place-items: center; box-shadow: 0 3px 12px #0003; }
.seminuevo-arrow { top: 50%; transform: translateY(-50%); width: 42px; height: 42px; border-radius: 50%; background: #fff; color: #222; font-size: 22px; }
.seminuevo-arrow-prev { left: 12px; } .seminuevo-arrow-next { right: 12px; }
.seminuevo-expand { top: 14px; right: 14px; width: 37px; height: 37px; border-radius: 9px; background: #17202bd9; color: #fff; font-size: 22px; }
.seminuevo-thumbnails { display: flex; gap: 10px; overflow-x: auto; padding: 12px 3px 2px; scrollbar-width: thin; }
.seminuevo-thumb { border: 3px solid transparent; padding: 0; background: #e9edf1; border-radius: 12px; flex: 0 0 118px; height: 83px; overflow: hidden; cursor: pointer; }
.seminuevo-thumb.is-active { border-color: #e10b16; } .seminuevo-thumb img { width: 100%; height: 100%; object-fit: cover; }
.seminuevo-commercial-card { padding: 24px; display: flex; flex-direction: column; }
.seminuevo-heading { border-left: 5px solid #d71920; padding-left: 19px; margin: 2px 0 24px; }
.seminuevo-brand { font-size: 17px; text-transform: uppercase; color: #555; letter-spacing: .04em; }
.seminuevo-heading h1 { font-size: clamp(31px,3.2vw,49px); margin: 3px 0 6px; line-height: 1.02; font-weight: 900; overflow-wrap: anywhere; }
.seminuevo-heading p { margin: 0; font-size: 19px; color: #555; }
.seminuevo-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.seminuevo-feature { display: flex; align-items: center; gap: 10px; padding: 12px 9px; min-height: 70px; border-radius: 13px; background: linear-gradient(135deg,#fff,#f1f3f7); box-shadow: 0 2px 7px #1b27370b; }
.seminuevo-feature-icon { flex: 0 0 27px; font-size: 24px; text-align: center; color: #cf0c17; }
.seminuevo-feature small, .seminuevo-feature strong { display: block; overflow-wrap: anywhere; } .seminuevo-feature small { color: #555; font-size: 11px; } .seminuevo-feature strong { font-size: 13px; line-height: 1.3; }
.seminuevo-price { margin-top: 20px; background: #fff0f1; border-radius: 14px; padding: 16px 20px; }
.seminuevo-price span { display: block; font-size: 13px; font-weight: 700; } .seminuevo-price strong { display: block; color: #c9000e; font-size: clamp(34px,3.6vw,49px); line-height: 1.1; font-weight: 900; }
.interest-btn.seminuevo-primary-cta { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 16px 0 0; border: 0; border-radius: 13px; background: linear-gradient(180deg,#f01823,#b9000b); color: #fff; padding: 18px; font-size: 16px; cursor: pointer; box-shadow: 0 5px 12px #bd00182a; }
.seminuevo-primary-cta:hover { filter: brightness(1.06); }
.seminuevo-assurance { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 21px; text-align: center; font-size: 12px; font-weight: 700; }
.seminuevo-assurance > div { padding: 0 6px; border-right: 1px solid #d6d6d6; } .seminuevo-assurance > div:last-child { border-right: 0; }
.seminuevo-assurance span { display: block; color: #c9000e; font-size: 23px; margin-bottom: 5px; }
.seminuevo-description { background: #fff; border-radius: 17px; padding: 25px 30px; margin-top: 20px; box-shadow: 0 8px 22px #1220330b; }
.seminuevo-description h2 { margin: 0 0 14px; font-size: 21px; } .seminuevo-description h2 span { color: #d71920; margin-right: 8px; }
.seminuevo-description p { margin: 0; white-space: normal; line-height: 1.65; }
.seminuevo-no-photo { color: #777; font-weight: 700; }
.seminuevo-photo-stage.is-expanded { position: fixed; inset: 0; width: 100vw; height: 100dvh; border-radius: 0; background: #111e; z-index: 10010; }
.seminuevo-photo-stage.is-expanded > img { object-fit: contain; padding: 22px; }
.seminuevo-photo-stage.is-expanded .seminuevo-badge { display: none; }
@media(max-width:1050px) { .seminuevo-layout { grid-template-columns: 1fr; } .seminuevo-photo-stage { height: min(60vw,520px); } }
@media(max-width:650px) { .detail-shell.seminuevo-detail { margin: 14px auto 42px; padding: 0 12px; } .seminuevo-layout { gap: 13px; } .seminuevo-gallery-card { padding: 9px; border-radius: 15px; } .seminuevo-commercial-card { padding: 19px 15px; border-radius: 15px; } .seminuevo-photo-stage { height: 310px; } .seminuevo-badge { font-size: 11px; padding: 9px 12px; } .seminuevo-thumb { flex-basis: 88px; height: 67px; } .seminuevo-heading { margin-bottom: 18px; } .seminuevo-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; } .seminuevo-feature { padding: 10px 8px; } .seminuevo-price { margin-top: 17px; } .interest-btn.seminuevo-primary-cta { font-size: 14px; padding: 16px 11px; } .seminuevo-assurance { font-size: 10px; } .seminuevo-description { padding: 20px 17px; } }
@media(max-width:370px) { .seminuevo-feature-icon { display: none; } .seminuevo-photo-stage { height: 260px; } }
