/* Venta directa: composición clara inspirada en la referencia Rematecom Plus. */
:root { --rc-red:#ff0026; --rc-red-dark:#d90020; --rc-gold:#ffc400; --rc-ink:#101b2c; }
.vd-main-container { width:min(100% - 48px,1220px); margin:20px auto 40px; }
.vd-hero-banner { padding:24px 28px; margin-bottom:30px; color:var(--rc-ink); border:1px solid #edf0f4; border-radius:18px; background:radial-gradient(ellipse at 62% 80%,#fff0ef,transparent 50%),linear-gradient(120deg,#fffefa,#fff 55%,#fff8f8); box-shadow:0 8px 28px #13223808; }
.vd-hero-grid { display:grid; grid-template-columns:1.25fr 1fr .78fr; gap:18px; align-items:center; }
.vd-hero-left,.vd-hero-center,.vd-hero-right { min-width:0; }
.vd-hero-tag { padding:8px 10px; gap:6px; border:0; border-radius:10px; background:linear-gradient(100deg,#ffe68a,#ffc400); color:#332600; font-size:10px; letter-spacing:-.2px; box-shadow:0 4px 12px #ffc40020; }
.vd-hero-tag i { color:#b87a00; }
.vd-hero-tag strong { border-left:1px solid #b9890040; padding-left:8px; white-space:nowrap; }
.vd-hero-left h1 { font-size:clamp(25px,2.7vw,36px); line-height:1.12; letter-spacing:-1.4px; color:var(--rc-ink); margin:17px 0 12px; font-weight:900; }
.vd-hero-left h1 .highlight-gold { color:var(--rc-red); }
.vd-hero-left p { font-size:12px; line-height:1.65; color:#64748b; margin:0 0 22px; display:block; overflow:visible; }
.vd-hero-mini { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.vd-hero-mini span { display:flex; align-items:center; gap:7px; font-size:9px; line-height:1.35; font-weight:700; color:#354052; }
.vd-hero-mini i { font-size:22px; color:var(--rc-red); }
.vd-hero-center { order:0; margin:0 -14px; }
.vd-hero-center img { width:100%; max-width:390px; max-height:none; height:auto; object-fit:contain; filter:none; mix-blend-mode:multiply; }
.vd-hero-right { display:flex; flex-direction:column; gap:12px; }
.vd-glass-pill { gap:10px; padding:13px 10px; border:1px solid #fff; background:#ffffffdb; border-radius:12px; box-shadow:0 4px 16px #26304306; backdrop-filter:none; }
.vd-glass-pill strong { display:block; font-size:11px; line-height:1.3; font-weight:800; color:var(--rc-ink); }
.vd-glass-pill small { display:block; margin-top:4px; color:#64748b; font-size:10px; line-height:1.4; }
.vd-glass-ic { width:38px; height:38px; border-radius:10px; font-size:20px; flex-shrink:0; }
.vd-glass-ic--red { background:#fff0f2; color:var(--rc-red); }
.vd-glass-ic--gold { background:#fff8da; color:#edac00; }
.vd-glass-ic--green { background:#e2f9ee; color:#0cb87e; }
.vd-glass-ic--blue { background:#ebf1ff; color:#3971ff; }
.vd-pricing-sec { margin:0 22px 18px; }
.vd-pricing-head { margin-bottom:24px; text-align:center; }
.vd-pricing-head h2 { font-size:21px; letter-spacing:-.65px; margin-bottom:5px; }
.vd-pricing-head p { font-size:12px; }
.vd-pricing-grid { grid-template-columns:1fr 1fr; gap:24px; }
.vd-price-card { padding:24px; border-radius:15px; border-color:#edf0f4; box-shadow:0 7px 24px #12213806; }
.vd-price-card--featured { border:1.5px solid var(--rc-red); background:linear-gradient(125deg,#fff,#fff7f8); box-shadow:0 8px 25px #ff002611; }
.vd-price-card__header { margin-bottom:16px; gap:14px; }
.vd-price-card__icon { width:54px; height:54px; font-size:25px; border-radius:12px; }
.vd-price-card__icon--gray { color:#152233; background:#eff3f7; }
.vd-price-card__icon--purple { background:var(--rc-red); box-shadow:0 5px 12px #ff002620; }
.vd-price-card__title h3 { font-size:21px; letter-spacing:-.5px; }
.vd-price-card__title span { font-size:12px; font-weight:500; }
.vd-pop-tag { color:#3b2d00; background:linear-gradient(110deg,#ffe477,#ffc400); top:-11px; right:18px; padding:6px 13px; font-size:10px; letter-spacing:0; box-shadow:0 3px 9px #ffc40025; }
.vd-price-card__checklist { gap:9px; margin-bottom:16px; }
.vd-price-card__checklist li { font-size:12px; gap:9px; line-height:1.5; }
.vd-price-card__checklist li.no,.vd-price-card__checklist li.purple-highlight { color:#334155; font-weight:500; }
.vd-price-card__checklist li.purple-highlight b { font-weight:500; }
.vd-price-card__checklist li.ok i,.vd-price-card__checklist li.purple-highlight i { color:#059669; background:#c9f3e1; }
.vd-price-tag-box { background:#ffebef; color:var(--rc-red); padding:8px 13px; margin-bottom:9px; border-radius:8px; font-size:24px; line-height:1.3; }
.vd-price-tag-box small { color:#334155; font-weight:500; font-size:12px; }
.vd-price-btn { min-height:43px; border-radius:8px; padding:11px 14px; font-size:12px; }
.vd-price-btn--purple { background:var(--rc-red); box-shadow:0 4px 12px #ff002619; }
.vd-price-btn--purple:hover { background:var(--rc-red-dark); }
.vd-price-btn--gray { margin-top:auto; background:#f0f4f8; color:#243044; }
.vd-benefits-row { grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0 22px 20px; }
.vd-benefit-card { padding:14px 12px; border:1px solid #edf0f4; border-radius:12px; gap:10px; }
.vd-benefit-icon { width:42px; height:46px; font-size:22px; border-radius:10px; }
.vd-benefit-icon--red { color:var(--rc-red); }
.vd-benefit-text h4 { font-size:11px; }
.vd-benefit-text p { font-size:10px; line-height:1.5; }
.vd-products-section { margin:0 22px; padding:14px; background:#fff; border:1px solid #e9eef3; border-radius:14px; box-shadow:0 5px 20px #16283b03; scroll-margin-top:90px; }
.vd-prod-sec-head { margin-bottom:12px; gap:10px; flex-wrap:wrap; }
.vd-prod-sec-head .ic-tag { width:35px; height:35px; background:var(--rc-red); border-radius:9px; }
.vd-prod-sec-head h2 { font-size:17px; letter-spacing:-.5px; }
.vd-products-link { margin-left:auto; font-size:10px; font-weight:700; color:#334155; white-space:nowrap; }
.vd-products-link:hover { color:var(--rc-red); }
.vd-empty { border:0; box-shadow:none; border-radius:10px; padding:24px; }
.vd-empty--soon { background:linear-gradient(90deg,#ffffff18,#ffffffb8 30%,#ffffffed 50%,#ffffffb8 70%,#ffffff18),url('assets/banners/venta-directa-bodega-20261009.webp') center/cover; }
.vd-empty .ic { width:55px; height:55px; margin:0 auto 5px; border-radius:0; background:none; color:var(--rc-red); font-size:46px; }
.vd-empty h3 { font-size:20px; margin-bottom:6px; letter-spacing:-.5px; }
.vd-empty p { max-width:400px; font-size:12px; line-height:1.6; margin-bottom:14px; }
.vd-empty a { min-width:225px; min-height:42px; justify-content:center; padding:10px 20px; font-size:12px; }
.vd-wide-card { grid-template-columns:190px minmax(0,1fr) minmax(220px,.9fr); gap:20px; padding:18px; border-radius:12px; box-shadow:none; }
.vd-purple-badge { background:#fff0f2; color:var(--rc-red); border-color:#ffd7de; }
.vd-wide-card__title a:hover { color:var(--rc-red); }
.vd-wide-card__img a { display:flex; width:100%; height:100%; align-items:center; justify-content:center; }
.vd-btn-red { background:var(--rc-red); }
.vd-plus-banner { position:relative; display:grid; grid-template-columns:145px 1.1fr 1.2fr 1fr; align-items:center; gap:20px; min-height:145px; margin-top:20px; padding:16px 22px; border:1px solid #ffd9df; border-radius:14px; overflow:hidden; background:linear-gradient(110deg,#fff3f4,#fff 45%,#fff8f3); }
.vd-plus-brand { display:flex; flex-direction:column; align-items:center; }
.vd-plus-brand img { width:140px; height:auto; }
.vd-plus-brand span { margin-top:-5px; margin-left:50px; font-style:italic; font-size:22px; font-weight:900; }
.vd-plus-banner h2 { position:relative; z-index:1; font-size:18px; font-weight:900; line-height:1.25; letter-spacing:-.5px; }
.vd-plus-art { width:100%; height:130px; object-fit:contain; mix-blend-mode:multiply; transform:scale(1.2); }
.vd-plus-action { position:relative; z-index:1; display:flex; flex-direction:column; gap:16px; }
.vd-plus-action .vd-hero-mini { grid-template-columns:repeat(3,1fr); gap:8px; }
.vd-plus-action .vd-hero-mini span { font-size:8px; gap:5px; }
.vd-plus-action .vd-hero-mini i { font-size:19px; }
.vd-plus-cta { display:flex; align-items:center; justify-content:center; gap:12px; min-height:40px; padding:10px 16px; border:0; border-radius:8px; background:#ffc900; color:#292000; font-size:11px; font-weight:800; cursor:pointer; text-decoration:none; box-shadow:0 4px 12px #ffc40025; }
.vd-plus-cta:hover { background:#ffda3d; }
.vd-main-container :is(a,button):focus-visible { outline:3px solid #2563eb; outline-offset:4px; }
.vd-plan input:focus-visible + .vd-plan__inner { outline:3px solid #2563eb; outline-offset:3px; }
.vd-modal__head,.vd-success__crown { background:linear-gradient(135deg,#d80020,#ff2949); }
.vd-modal__head p { color:#ffe4e9; }
.vd-plan input:checked + .vd-plan__inner { border-color:var(--rc-red); background:#fff3f5; }
.vd-plan__name,.vd-modal__hint b,.vd-success__brand { color:#d90020; }
.vd-perk { background:#fff3f5; border-color:#ffdde4; }
.vd-perk i,.vd-perk span { color:#d90020; }
.vd-success__btn { background:var(--rc-red); }
@media(min-width:1500px) { .vd-hero-left h1 { font-size:38px; } }
@media(max-width:1050px) {
 .vd-main-container { width:calc(100% - 32px); }
 .vd-hero-banner { padding:22px; }
 .vd-hero-grid { grid-template-columns:1.2fr 1fr; gap:18px; }
 .vd-hero-right { grid-column:1 / -1; display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
 .vd-glass-pill { padding:10px 8px; gap:7px; }
 .vd-glass-ic { width:30px; height:34px; font-size:17px; }
 .vd-pricing-sec,.vd-benefits-row,.vd-products-section { margin-left:0; margin-right:0; }
 .vd-wide-card { grid-template-columns:170px 1fr; }
 .vd-wide-card__specs { grid-column:1 / -1; grid-template-columns:repeat(4,1fr); }
 .vd-plus-banner { grid-template-columns:110px 1fr 1fr; gap:15px; }
 .vd-plus-brand img { width:110px; }
 .vd-plus-art { position:absolute; right:25%; height:130px; width:180px; opacity:.14; }
 .vd-plus-banner h2 { font-size:17px; }
}
@media(max-width:700px) {
 .vd-main-container { width:calc(100% - 24px); margin:12px auto 28px; }
 .vd-hero-banner { padding:20px 16px 16px; margin-bottom:24px; }
 .vd-hero-grid { grid-template-columns:1fr; gap:12px; }
 .vd-hero-left h1 { font-size:32px; line-height:1.12; letter-spacing:-1.1px; max-width:440px; }
 .vd-hero-left p { font-size:12px; margin-bottom:18px; }
 .vd-hero-tag { font-size:9px; padding:7px 9px; flex-wrap:wrap; }
 .vd-hero-mini { gap:9px; }
 .vd-hero-mini span { font-size:9px; }
 .vd-hero-center { margin:-4px auto; width:100%; max-width:310px; }
 .vd-hero-center img { max-width:310px; max-height:none; }
 .vd-hero-right { grid-template-columns:1fr 1fr; gap:8px; }
 .vd-glass-pill { padding:11px 9px; }
 .vd-glass-pill strong { font-size:10px; }
 .vd-glass-pill small { font-size:9px; }
 .vd-pricing-head h2 { max-width:430px; margin:0 auto 7px; font-size:20px; line-height:1.35; }
 .vd-pricing-head p { font-size:11px; }
 .vd-pricing-grid { grid-template-columns:1fr; gap:22px; }
 .vd-price-card { padding:22px; }
 .vd-price-card__title h3 { font-size:21px; }
 .vd-price-card__title span { font-size:11px; }
 .vd-price-card__checklist li { font-size:12px; }
 .vd-price-card__checklist li i { width:18px; height:18px; font-size:10px; }
 .vd-benefits-row { grid-template-columns:1fr 1fr; gap:8px; margin-top:0; }
 .vd-benefit-card { padding:12px 9px; gap:8px; }
 .vd-benefit-icon { width:33px; height:38px; font-size:20px; }
 .vd-benefit-text h4 { font-size:10px; }
 .vd-benefit-text p { font-size:9px; }
 .vd-products-section { padding:10px; }
 .vd-prod-sec-head h2 { font-size:15px; }
 .vd-products-link { flex-basis:100%; text-align:right; }
 .vd-empty { padding:24px 12px; }
 .vd-empty--soon { background-image:linear-gradient(90deg,#ffffffa8,#ffffffef 50%,#ffffffa8),url('assets/banners/venta-directa-bodega-20261009.webp'); }
 .vd-empty p { font-size:11px; }
 .vd-wide-card { grid-template-columns:95px minmax(0,1fr); padding:10px; gap:12px; }
 .vd-wide-card__specs { grid-template-columns:1fr 1fr; }
 .vd-plus-banner { grid-template-columns:90px 1fr; gap:14px; padding:18px 15px; }
 .vd-plus-brand img { width:90px; }
 .vd-plus-brand span { font-size:17px; margin-left:30px; }
 .vd-plus-banner h2 { font-size:17px; }
 .vd-plus-action { grid-column:1 / -1; flex-direction:row; align-items:center; justify-content:space-between; gap:12px; }
 .vd-plus-action .vd-hero-mini { flex:1; }
 .vd-plus-cta { font-size:10px; padding:10px; }
 .vd-plus-art { display:none; }
}
@media(prefers-reduced-motion:reduce) { .vd-main-container * { transition:none !important; animation:none !important; } }
