﻿
/* Carry PRO skin — scoped */
#carry-app-root.imf-app{
  --imf-accent:#f28c28;
  --imf-accent-2:#d86f14;
  --imf-bg:#f6f7f9;
  --imf-card:#ffffff;
  --imf-text:#1f2937;
  --imf-muted:#6b7280;
  --imf-border:rgba(17,24,39,.12);
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
  color: var(--imf-text);
}

/* Breakout del contenedor del theme para ocupar ancho completo */
#carry-app-root{
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  overflow-x: hidden;
}
#carry-app-root .imf-v2-wrap{background:transparent;}
/* Topbar compact */
#carry-app-root .imf-topbar{
  position: sticky; top: 0; z-index: 50;
  background: rgba(246,247,249,.92);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--imf-border);
  padding: 10px 14px;
  min-height: 56px;
}

/* Orange accent line (Carry) */
#carry-app-root .imf-topbar::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:-1px;
  height:2px;
  background: linear-gradient(90deg, rgba(249,115,22,0) 0%, rgba(249,115,22,.95) 18%, rgba(234,88,12,.95) 82%, rgba(249,115,22,0) 100%);
  pointer-events:none;
}
#carry-app-root .imf-topbar .imf-tarifa strong{color:var(--imf-accent);}
#carry-app-root .imf-btn-primary,
#carry-app-root button.imf-btn-primary,
#carry-app-root .imf-btn-solicitar{
  background: var(--imf-accent) !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  color:#fff !important;
  border-radius: 12px !important;
  padding: 10px 16px !important;
  font-weight: 700 !important;
  letter-spacing:.2px;
  box-shadow: 0 8px 18px rgba(242,140,40,.20);
}
#carry-app-root .imf-btn-primary:hover,
#carry-app-root .imf-btn-solicitar:hover{ background: var(--imf-accent-2) !important; transform: translateY(-1px); }

/* One-screen layout (desktop) */
#carry-app-root .imf-app-single{
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
#carry-app-root .imf-shell{
  display: grid;
  /* Wider left panel so service buttons fit without clipping */
  grid-template-columns: 520px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  padding: 14px 24px;
}
#carry-app-root .imf-left{
  height: auto !important;
  min-height: 0 !important;  
  overflow: visible !important;
  background: var(--imf-card);
  border: 1px solid var(--imf-border);
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
}
#carry-app-root .imf-right{
  overflow: visible !important;	
  height: auto !important;
  background: var(--imf-card);
  border: 1px solid var(--imf-border);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
}
#carry-app-root .imf-right .imf-map{
  height: 100%;
  min-height: 520px;
}
#carry-app-root input[type="text"],
#carry-app-root input[type="tel"],
#carry-app-root input[type="email"],
#carry-app-root textarea,
#carry-app-root select{
  border: 1px solid var(--imf-border) !important;
  border-radius: 12px !important;
  padding: 10px 12px !important;
  background:#fff !important;
  color: var(--imf-text) !important;
}
#carry-app-root input::placeholder,
#carry-app-root textarea::placeholder{color: rgba(107,114,128,.85) !important;}
#carry-app-root input:focus,
#carry-app-root textarea:focus,
#carry-app-root select:focus{
  outline: none !important;
  border-color: rgba(242,140,40,.55) !important;
  box-shadow: 0 0 0 4px rgba(242,140,40,.15) !important;
}

/* Vehicle cards selection (remove blue) */
#carry-app-root .imf-card-choice.is-active,
#carry-app-root .imf-choice.active,
#carry-app-root .imf-vui-card.active{
  border-color: rgba(242,140,40,.65) !important;
  box-shadow: 0 0 0 4px rgba(242,140,40,.14) !important;
}
#carry-app-root .imf-pill,
#carry-app-root .imf-chip{
  border-radius: 999px !important;
  border: 1px solid var(--imf-border) !important;
}
#carry-app-root .imf-chip.active{ background: rgba(242,140,40,.10) !important; border-color: rgba(242,140,40,.45) !important; color: var(--imf-text) !important; }

/* Mobile */
@media (max-width: 980px){
  #carry-app-root .imf-shell{ grid-template-columns: 1fr; }
  #carry-app-root .imf-left, #carry-app-root .imf-right{ height: auto; }
  #carry-app-root .imf-right .imf-map{ height: 360px; }
}

/* Service buttons: always wrap nicely (no overflow) */
#carry-app-root .imf-svc-row,
#carry-app-root .imf-service-row,
#carry-app-root .imf-services{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}
#carry-app-root .imf-svc-btn,
#carry-app-root .imf-service,
#carry-app-root .imf-service-card,
#carry-app-root .imf-service-btn{
  flex: 1 1 150px !important;
  min-width: 150px !important;
  max-width: 260px !important;
  white-space: nowrap !important;
}

/* === Carry buttons: more life (no blue) === */
#carry-app-root .imf-svc-btn,
#carry-app-root .imf-vehmode-btn,
#carry-app-root .imf-btn-mini,
#carry-app-root .imf-topbar__btn,
#carry-app-root .imf-topbar__btn,
#carry-app-root .imf-submit,
#carry-app-root #im-enviar{
  position: relative;
  overflow: hidden;
  transform: translateZ(0);
}

#carry-app-root .imf-svc-btn{
  background:#F3F4F6;
  color: var(--imf-text);
  border: 2px solid rgba(17,24,39,.08);
  border-radius: 14px;
  padding: 12px 14px;
  font-weight: 800;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}
#carry-app-root .imf-svc-btn:hover{
  background:#FFE8D9;
  border-color: rgba(249,115,22,.30);
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(17,24,39,.08);
}
#carry-app-root .imf-svc-btn.is-selected{
  background: var(--imf-accent);
  color:#fff;
  border-color: rgba(249,115,22,.95);
  box-shadow: 0 14px 34px rgba(249,115,22,.28);
}

#carry-app-root .imf-vehmode-btn{
  background:#FFF7ED;
  color: var(--imf-accent-2);
  border: 2px solid rgba(249,115,22,.35);
  border-radius: 14px;
  padding: 11px 14px;
  font-weight: 900;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}
#carry-app-root .imf-vehmode-btn:hover{
  background:#FFE8D9;
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(234,88,12,.16);
}
#carry-app-root .imf-vehmode-btn.is-selected{
  background: var(--imf-accent-2);
  color:#fff;
  border-color: rgba(234,88,12,.95);
  box-shadow: 0 14px 34px rgba(234,88,12,.26);
}

#carry-app-root .imf-btn-mini{
  background:#fff;
  border: 2px solid rgba(17,24,39,.10);
  border-radius: 12px;
  padding: 10px 12px;
  font-weight: 800;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
#carry-app-root .imf-btn-mini:hover{
  transform: translateY(-2px);
  border-color: rgba(249,115,22,.35);
  box-shadow: 0 12px 26px rgba(17,24,39,.08);
}

#carry-app-root .imf-topbar__btn{
  background: var(--imf-accent) !important;
  border: 2px solid rgba(249,115,22,.70) !important;
  color:#fff !important;
  border-radius: 14px !important;
  font-weight: 900 !important;
  letter-spacing: .35px;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
  box-shadow: 0 14px 34px rgba(249,115,22,.28);
}
#carry-app-root .imf-topbar__btn:hover{
  background: var(--imf-accent-2) !important;
  transform: translateY(-2px);
  box-shadow: 0 18px 44px rgba(234,88,12,.30);
}

#carry-app-root .imf-submit,
#carry-app-root #im-enviar{
  background: #1F2937 !important;
  color:#fff !important;
  border: 2px solid rgba(17,24,39,.12) !important;
  border-radius: 16px !important;
  font-weight: 900 !important;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
#carry-app-root .imf-submit:hover,
#carry-app-root #im-enviar:hover{
  background: #111827 !important;
  transform: translateY(-2px);
  box-shadow: 0 18px 44px rgba(17,24,39,.22);
}

/* Ripple ink */
#carry-app-root .imf-has-ripple{ isolation:isolate; }
#carry-app-root .imf-ripple-ink{
  position:absolute;
  border-radius:999px;
  background: rgba(255,255,255,.45);
  transform: scale(0);
  animation: imfRipple .52s ease-out;
  pointer-events:none;
  z-index: 0;
}
@keyframes imfRipple{
  to{ transform: scale(2.2); opacity:0; }
}

/* Mode switch micro animation */
#carry-app-root .imf-fade-in{ animation: imfFadeIn .26s ease-out; }
@keyframes imfFadeIn{
  from{ opacity:0; transform: translateY(6px); }
  to{ opacity:1; transform: translateY(0); }
}

/* Vehicle choices: stronger highlight + orange, avoid blue from other skins */
#carry-app-root .imf-v2-choice{
  border-radius: 16px !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
#carry-app-root .imf-v2-choice:hover{
  transform: translateY(-2px);
  border-color: rgba(249,115,22,.28) !important;
  box-shadow: 0 14px 34px rgba(17,24,39,.08);
}
#carry-app-root .imf-v2-choice.is-selected{
  border-color: rgba(249,115,22,.75) !important;
  box-shadow: 0 0 0 4px rgba(249,115,22,.14), 0 18px 44px rgba(17,24,39,.10) !important;
  background: rgba(249,115,22,.06) !important;
}

/* Wider grids (so text is readable) */
#carry-app-root #imf_vehicle_cat.imf-v2-grid{ grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important; }
#carry-app-root #imf_vehicle_size.imf-v2-grid,
#carry-app-root #imf_vehicle_variant.imf-v2-grid{ grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important; }


/* Very large screens: use more space (avoid 'centered block' feeling) */
@media (min-width: 1400px){
  #carry-app-root .imf-shell{ padding-left: 32px; padding-right: 32px; }
}


/* === 4.4.8: Mini stats en topbar (estilo Fletalo) === */
#carry-app-root .imf-topbar__cta{ display:flex; align-items:center; gap:12px; }
#carry-app-root .imf-mini-stats--top{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  font-size:12.5px;
  color: var(--imf-muted);
  padding: 6px 10px;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 999px;
  background: rgba(255,255,255,.7);
}
#carry-app-root .imf-mini-stats--top b{ color: var(--imf-text); font-weight: 800; }
@media (max-width: 520px){
  #carry-app-root .imf-mini-stats--top{ display:none; } /* en móvil queda el botón + scroll */
}



/* Vehículo: modo "Sugerime / Lo elijo yo" */
.imf-vehmode{
  display:flex;
  gap:10px;
  margin: 10px 0 12px;
  flex-wrap: wrap;
}
.imf-vehmode-btn{
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  border-radius: 12px;
  padding: 10px 12px;
  font-weight: 700;
  cursor:pointer;
}
.imf-vehmode-btn.is-selected{
  border-color: rgba(255,140,64,.65);
  box-shadow: 0 0 0 3px rgba(255,140,64,.18);
}
.imf-veh-auto{
  border:1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  padding: 12px;
  background: rgba(0,0,0,.02);
}


/* === 4.4.18 Mobile hardening + CTA fijo === */
@media (max-width: 820px){

  /* Mobile full-bleed: salir del container del tema (evita margen enorme y cards "aplastadas") */
  #carry-app-root.imf-app{
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    overflow-x: hidden !important;
  }
  #carry-app-root .imf-v2-wrap{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }
  /* Evitar "app shell" con scroll interno que en mobile se rompe */
  #carry-app-root .imf-v2-main{
    display:block !important;
    height:auto !important;
    overflow:visible !important;
    padding-bottom: 92px !important; /* deja espacio a la barra fija */
  }
  #carry-app-root .imf-v2-left{
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: 100% !important;
    height:auto !important;
    overflow:visible !important;
    padding-right: 0 !important;
  }
  #carry-app-root .imf-v2-right{
    width: 100% !important;
    height:auto !important;
    overflow: hidden !important;
    margin-top: 12px !important;
  }
  #carry-app-root .imf-mapcard{ border-radius: 16px !important; }
  #carry-app-root .imf-v2-map,
  #carry-app-root #im-map-canvas{
    height: 320px !important;
    min-height: 320px !important;
  }

  /* Cards: que no se "corten" y el texto baje */
  #carry-app-root .imf-v2-choice,
  #carry-app-root .imf-choice,
  #carry-app-root .imf-vui-card{
    padding: 14px 14px !important;
  }
  #carry-app-root .imf-v2-choice__meta,
  #carry-app-root .imf-vui-meta{
    font-size: 13px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }

  /* Grids a 1 columna en mobile para lectura */
  #carry-app-root #imf_vehicle_cat.imf-v2-grid,
  #carry-app-root #imf_vehicle_size.imf-v2-grid,
  #carry-app-root #imf_vehicle_variant.imf-v2-grid{
    grid-template-columns: 1fr !important;
  }

  /* Topbar: forzar fija en viewport (sticky falla con 100vh/scroll containers) */
  #carry-app-root .imf-topbar{
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
  }
  #carry-app-root .imf-v2-wrap{ padding-top: 64px !important; } /* compensa topbar fija */
}

/* Barra fija inferior “Solicitar” (fina, no tapa) */
#carry-app-root .imf-mobilebar{
  display:none;
}
@media (max-width: 820px){
  #carry-app-root .imf-mobilebar{
    display:block;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 60;
    padding: 8px 12px calc(8px + env(safe-area-inset-bottom));
    background: rgba(255,255,255,.92);
    backdrop-filter: blur(10px);
    border-top: 1px solid rgba(17,24,39,.10);
  }
  #carry-app-root .imf-mobilebar__inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap: 10px;
    max-width: 980px;
    margin: 0 auto;
  }
  #carry-app-root .imf-mobilebar__meta{
    display:flex;
    flex-direction:column;
    line-height:1.05;
  }
  #carry-app-root .imf-mobilebar__label{
    font-size: 11px;
    color: rgba(31,41,55,.65);
    font-weight: 700;
    letter-spacing:.2px;
  }
  #carry-app-root .imf-mobilebar__value{
    font-size: 16px;
    font-weight: 900;
    color: var(--imf-accent-2);
  }
  #carry-app-root .imf-mobilebar__btn{
    background: var(--imf-accent) !important;
    color:#fff !important;
    border: 0 !important;
    border-radius: 14px !important;
    padding: 10px 14px !important;
    font-weight: 900 !important;
    min-width: 128px;
    box-shadow: 0 14px 34px rgba(249,115,22,.28);
  }
}


/* --- V2: Head + Contraer secciones (solo seleccionado) --- */
.im-carry-proto .imf-v2-block__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin: 0 0 10px;
}
.im-carry-proto .imf-v2-block__title{
  font-weight: 800;
}
.im-carry-proto .imf-v2-change{
  border: 1px solid rgba(15,23,42,.14);
  background: rgba(255,255,255,.8);
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  cursor: pointer;
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.im-carry-proto .imf-v2-change:hover{
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(15,23,42,.10);
  background: #fff;
}


/* VUI collapse: show only selected option with 'Cambiar' */
.imf-v2-choice{ position:relative; }
.imf-change-btn{
  position:absolute;
  right:14px;
  top:14px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  font-weight:700;
  font-size:13px;
  cursor:pointer;
}

/* When collapsed (only selected option visible), don't overlay content */
.imf-wrap--collapsed .imf-v2-choice{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
.imf-wrap--collapsed .imf-v2-choice .imf-change-btn{
  position:static !important;
  margin-left:auto !important;
  white-space:nowrap !important;
}
@media (max-width: 768px){
  .imf-wrap--collapsed .imf-v2-choice{
    flex-direction:column !important;
    align-items:stretch !important;
  }
  .imf-wrap--collapsed .imf-v2-choice .imf-change-btn{
    width:100% !important;
    margin-left:0 !important;
  }
}
.imf-change-btn:hover{ filter:brightness(0.98); }
.imf-wrap--collapsed .imf-v2-choice{ margin-bottom:0; }


/* ===== SELECCION DESTACADA ROJO PRO ===== */
.carry-card.active,
.carry-option.active,
.carry-card.selected,
.carry-option.selected {
    border: 2px solid #D72638 !important;
    background: rgba(215, 38, 56, 0.06) !important;
    box-shadow: 0 0 0 3px rgba(215, 38, 56, 0.15);
    transition: all 0.25s ease;
}

.carry-card.active:hover,
.carry-option.active:hover {
    border-color: #FF4D5A !important;
}

/* --- FIX mobile: botón "Ver mas opciones" no debe tapar el PNG (solo en Paso Familia) --- */
@media (max-width: 560px){
  #imf_vehicle_cat.imf-wrap--collapsed .imf-v2-choice{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
    gap:10px !important;
    padding-bottom: 14px !important;
  }
  #imf_vehicle_cat.imf-wrap--collapsed .imf-choice-ico{
    flex: 0 0 auto !important;
    width: 180px !important;
    height: 124px !important;
    border-radius: 18px !important;
  }
  #imf_vehicle_cat.imf-wrap--collapsed .imf-choice-ico img{
    width: 160px !important;
    height: 110px !important;
    object-fit: contain !important;
  }
  #imf_vehicle_cat.imf-wrap--collapsed .imf-change-btn{
    position: static !important;
    right:auto !important;
    top:auto !important;
    margin-top: 10px !important;
    align-self:center !important;
  }
}


/* --- IMF PATCH: larger PNG thumbs in all states --- */
.imf-choice-ico{
  width: 180px !important;
  height: 124px !important;
  border-radius: 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.imf-choice-ico img{
  width: 160px !important;
  height: 110px !important;
  object-fit: contain !important;
}
@media (max-width: 560px){
  .imf-choice-ico{
    width: 150px !important;
    height: 110px !important;
  }
  .imf-choice-ico img{
    width: 135px !important;
    height: 95px !important;
  }
}


/* Faltantes en rojo */
#imf_v2_warn.imf-warn--error{
  color:#b42318 !important;
  background:#fef3f2 !important;
  border:1px solid #f04438 !important;
  border-radius:12px;
  padding:10px 12px;
  font-weight:700;
}
.imf-missing{
  border-color:#f04438 !important;
  box-shadow:0 0 0 2px rgba(240,68,56,.12) !important;
}
.imf-missing-label{
  color:#b42318 !important;
  font-weight:700 !important;
}



/* === Mobile typography refresh (Carry) === */
#carry-app-root.imf-app,
#carry-app-root,
#carry-app-root input,
#carry-app-root textarea,
#carry-app-root select,
#carry-app-root button{
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
}

@media (max-width: 980px){
  #carry-app-root{
    -webkit-text-size-adjust: 100%;
  }

  #carry-app-root .imf-topbar,
  #carry-app-root .imf-v2-header{
    padding: 12px 14px !important;
  }

  /* Título principal */
  #carry-app-root .imf-v2-header h2,
  #carry-app-root .imf-title-main,
  #carry-app-root .imf-page-title,
  #carry-app-root h1:first-of-type{
    font-size: 24px !important;
    line-height: 30px !important;
    font-weight: 700 !important;
    letter-spacing: -.01em !important;
  }

  /* Subtítulo / ayuda inicial */
  #carry-app-root .imf-v2-header .sub,
  #carry-app-root .imf-subtitle,
  #carry-app-root .imf-note,
  #carry-app-root .imf-muted{
    font-size: 14px !important;
    line-height: 20px !important;
  }

  /* Títulos de sección */
  #carry-app-root .imf-sec__title,
  #carry-app-root .imf-v2-q,
  #carry-app-root .q,
  #carry-app-root .imf-section-title,
  #carry-app-root h2,
  #carry-app-root h3{
    font-size: 20px !important;
    line-height: 26px !important;
    font-weight: 700 !important;
    letter-spacing: -.01em !important;
  }

  /* Labels */
  #carry-app-root label,
  #carry-app-root .imf-label,
  #carry-app-root .imf-field label,
  #carry-app-root .imev-field label{
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
    color: #111827 !important;
  }

  /* Inputs / selects / textareas */
  #carry-app-root input[type="text"],
  #carry-app-root input[type="tel"],
  #carry-app-root input[type="email"],
  #carry-app-root input[type="number"],
  #carry-app-root input[type="date"],
  #carry-app-root textarea,
  #carry-app-root select{
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 500 !important;
    padding: 12px 14px !important;
    min-height: 48px !important;
  }

  #carry-app-root textarea{
    min-height: 92px !important;
  }

  #carry-app-root input::placeholder,
  #carry-app-root textarea::placeholder,
  #carry-app-root select{
    color: rgba(75,85,99,.92) !important;
  }

  /* Radios / opciones clave */
  #carry-app-root .imf-radio,
  #carry-app-root .imf-radios label,
  #carry-app-root input[type="radio"] + span,
  #carry-app-root .imf-v2-btn,
  #carry-app-root .imf-vehmode-btn,
  #carry-app-root .imf-svc-btn{
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 600 !important;
  }

  /* Botones */
  #carry-app-root .imf-btn-primary,
  #carry-app-root .imf-btn-solicitar,
  #carry-app-root .imf-submit,
  #carry-app-root #im-enviar,
  #carry-app-root button{
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 700 !important;
  }

  /* Cards y títulos de vehículo */
  #carry-app-root .imf-vui-card strong,
  #carry-app-root .imf-card-choice strong,
  #carry-app-root .imf-choice strong,
  #carry-app-root .imf-veh-title,
  #carry-app-root .imf_vehicle_title{
    font-size: 18px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
  }

  /* Descripciones y ayudas */
  #carry-app-root .imf-v2-helper,
  #carry-app-root .imf-help,
  #carry-app-root .imf-hint,
  #carry-app-root small,
  #carry-app-root .description{
    font-size: 14px !important;
    line-height: 20px !important;
  }

  /* Chips */
  #carry-app-root .imf-pill,
  #carry-app-root .imf-chip,
  #carry-app-root .imf-v2-pill{
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
    padding: 6px 10px !important;
  }

  /* Tarifa / valor destacado */
  #carry-app-root .imf-tarifa,
  #carry-app-root .imf-price,
  #carry-app-root .imf-price strong,
  #carry-app-root .imf-v2-price,
  #carry-app-root .imev-modal__price span{
    font-size: 20px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
  }

  /* Ajuste general mobile */
  #carry-app-root .imf-left,
  #carry-app-root .imf-right,
  #carry-app-root .imf-v2-card{
    border-radius: 14px !important;
  }
}



/* === MOBILE TYPOGRAPHY FIX REAL v4.4.85 === */
@media (max-width: 980px){
  #carry-app-root,
  #carry-app-root.imf-app,
  #carry-app-root .im-carry-proto,
  #carry-app-root .imf-v2-wrap,
  #carry-app-root .imf-app-single,
  #carry-app-root input,
  #carry-app-root textarea,
  #carry-app-root select,
  #carry-app-root button,
  #carry-app-root label{
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
  }

  #carry-app-root .imf-brand__title,
  #carry-app-root .imf-v2-header h2,
  #carry-app-root .imf-title-main,
  #carry-app-root .imf-page-title,
  #carry-app-root h1{
    font-size: 24px !important;
    line-height: 30px !important;
    font-weight: 700 !important;
    letter-spacing: -.01em !important;
  }

  #carry-app-root .imf-brand__sub,
  #carry-app-root .imf-v2-header .sub,
  #carry-app-root .imf-note,
  #carry-app-root .imf-muted,
  #carry-app-root .imf-v2-helper,
  #carry-app-root small,
  #carry-app-root .description{
    font-size: 14px !important;
    line-height: 20px !important;
  }

  #carry-app-root .imf-sec__title,
  #carry-app-root .imf-v2-q,
  #carry-app-root .q,
  #carry-app-root h2,
  #carry-app-root h3,
  #carry-app-root .imf-section-title{
    font-size: 20px !important;
    line-height: 26px !important;
    font-weight: 700 !important;
    letter-spacing: -.01em !important;
  }

  #carry-app-root label,
  #carry-app-root .imf-label,
  #carry-app-root .imf-field label,
  #carry-app-root .imev-field label{
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
    color: #111827 !important;
  }

  #carry-app-root input[type="text"],
  #carry-app-root input[type="tel"],
  #carry-app-root input[type="email"],
  #carry-app-root input[type="number"],
  #carry-app-root input[type="date"],
  #carry-app-root textarea,
  #carry-app-root select{
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 500 !important;
    padding: 12px 14px !important;
    min-height: 48px !important;
  }

  #carry-app-root textarea{ min-height: 92px !important; }

  #carry-app-root input::placeholder,
  #carry-app-root textarea::placeholder{
    font-size: 14px !important;
    line-height: 20px !important;
    color: rgba(75,85,99,.92) !important;
  }

  #carry-app-root .imf-radio,
  #carry-app-root .imf-radios label,
  #carry-app-root .imf-v2-btn,
  #carry-app-root .imf-vehmode-btn,
  #carry-app-root .imf-svc-btn,
  #carry-app-root .imf-service-btn,
  #carry-app-root .imf-service-card{
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 600 !important;
  }

  #carry-app-root .imf-btn-primary,
  #carry-app-root .imf-btn-solicitar,
  #carry-app-root .imf-submit,
  #carry-app-root #im-enviar,
  #carry-app-root button{
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 700 !important;
  }

  #carry-app-root .imf-vui-card strong,
  #carry-app-root .imf-card-choice strong,
  #carry-app-root .imf-choice strong,
  #carry-app-root .imf-veh-title,
  #carry-app-root .imf_vehicle_title{
    font-size: 18px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
  }

  #carry-app-root .imf-pill,
  #carry-app-root .imf-chip,
  #carry-app-root .imf-v2-pill{
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
    padding: 6px 10px !important;
  }

  #carry-app-root .imf-tarifa,
  #carry-app-root .imf-price,
  #carry-app-root .imf-price strong,
  #carry-app-root .imf-v2-price,
  #carry-app-root .imev-modal__price span{
    font-size: 20px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
  }
}



/* === MOBILE LEGIBILIDAD TEXTOS v4.4.86 === */
@media (max-width: 980px){
  /* Subtítulos de sección: "Elegí una opción para cotizar", etc. */
  #carry-app-root .imf-sec__sub,
  #carry-app-root .imf-v2-header .sub,
  #carry-app-root .sub,
  #carry-app-root .imf-subtitle{
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
  }

  /* Texto guía dentro del flujo: familia/tamaño/tipo, mapa, programación, detalles, whatsapp */
  #carry-app-root .helper,
  #carry-app-root .imf-v2-helper,
  #carry-app-root .imf-note,
  #carry-app-root .imf-muted,
  #carry-app-root .muted,
  #carry-app-root .imf-v2-hint,
  #carry-app-root .description,
  #carry-app-root small{
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
  }

  /* "1) Familia 2) Tamaño 3) Tipo carrocería" y pasos similares */
  #carry-app-root .q,
  #carry-app-root .imf-v2-q,
  #carry-app-root .imf-veh-step{
    font-size: 17px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
    color: #111827 !important;
  }

  /* Descripción de tipos de vehículo: "Ideal para cargas livianas..." */
  #carry-app-root .imf-choice-sub,
  #carry-app-root .imf-card-sub,
  #carry-app-root .imf-v2-hint,
  #carry-app-root .imf-choice .muted,
  #carry-app-root .imf-vui-card .imf-muted,
  #carry-app-root .imf-vui-card small{
    font-size: 15px !important;
    line-height: 22px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
  }
}



/* === MOBILE CONTRASTE AJUSTE v4.4.87 === */
@media (max-width: 980px){

  /* Subtítulos y ayudas con menor contraste */
  #carry-app-root .imf-sec__sub,
  #carry-app-root .imf-v2-header .sub,
  #carry-app-root .sub,
  #carry-app-root .imf-subtitle,
  #carry-app-root .imf-note,
  #carry-app-root .imf-muted,
  #carry-app-root .imf-v2-helper,
  #carry-app-root .helper,
  #carry-app-root small,
  #carry-app-root .description{

    color: rgba(75,85,99,0.75) !important; /* antes más fuerte */
    font-weight: 400 !important; /* baja un poco el peso */
  }

}



/* === MOBILE VEHICULOS TEXTO MÁS GRANDE v4.4.88 === */
@media (max-width: 980px){

  /* Nombre del vehículo (PICK UP, UTILITARIO, etc) */
  #carry-app-root .imf-vui-card strong,
  #carry-app-root .imf-card-choice strong,
  #carry-app-root .imf-choice strong,
  #carry-app-root .imf-veh-title,
  #carry-app-root .imf_vehicle_title{
    font-size: 20px !important;
    line-height: 26px !important;
    font-weight: 800 !important;
  }

  /* Descripción del vehículo */
  #carry-app-root .imf-choice-sub,
  #carry-app-root .imf-card-sub,
  #carry-app-root .imf-v2-hint,
  #carry-app-root .imf-choice .muted,
  #carry-app-root .imf-vui-card .imf-muted,
  #carry-app-root .imf-vui-card small{
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 500 !important;
  }

}



/* === MOBILE VEHICLE TITLES/DESCRIPTIONS REAL FIX v4.4.89 === */
@media (max-width: 980px){
  #carry-app-root .imf-v2-choice .t,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice .t,
  #carry-app-root #imf_vehicle_size .imf-v2-choice .t,
  #carry-app-root #imf_vehicle_variant .imf-v2-choice .t{
    font-size: 20px !important;
    line-height: 26px !important;
    font-weight: 800 !important;
    color: #111827 !important;
  }

  #carry-app-root .imf-v2-choice .s,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice .s,
  #carry-app-root #imf_vehicle_size .imf-v2-choice .s,
  #carry-app-root #imf_vehicle_variant .imf-v2-choice .s{
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 500 !important;
    color: rgba(75,85,99,.78) !important;
  }
}



/* === PARADAS INTERMEDIAS IGUAL QUE ORIGEN/DESTINO v4.4.90 === */
#carry-app-root .imf-stops__title{
  font-size: 12px;
  line-height: 20px;
  font-weight: 700;
  color: rgba(20,23,28,.72);
}

@media (max-width: 980px){
  #carry-app-root .imf-stops__title{
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
    color: #111827 !important;
  }
}


/* === FIX botón "Agregar parada" en mobile v4.4.91 === */
@media (max-width: 980px){
  #carry-app-root .imf-stops__head{
    display:flex;
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    gap:8px !important;
  }
  #carry-app-root .imf-stops__title{
    flex:1 1 100%;
  }
  #carry-app-root .imf-btn-mini{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    padding:10px 12px !important;
    box-sizing:border-box !important;
    white-space:normal !important;
  }
}


/* === TARIFA MÁS GRANDE MOBILE v4.4.92 === */
@media (max-width: 980px){
  #carry-app-root .imf-mobilebar__value,
  #carry-app-root .imf-tarifa,
  #carry-app-root .imf-price{
    font-size: 26px !important;
    line-height: 30px !important;
    font-weight: 900 !important;
  }

  #carry-app-root .imf-mobilebar__label{
    font-size: 14px !important;
  }
}



/* === SEPARACIÓN REAL botón Volver a Pick Up v4.4.96 === */
#carry-app-root #imf_vehicle_reset.imf-link{
  margin-top: 14px !important;
  display: inline-flex !important;
}

@media (max-width: 768px){
  #carry-app-root #imf_vehicle_reset.imf-link{
    margin-top: 14px !important;
    display: inline-flex !important;
  }
}


/* === FIX REAL ICONOS VEHICULOS v4.4.98 === */
.imf-v2-choice__icon{
  width:80px !important;
  height:80px !important;
}
.imf-v2-choice__icon img{
  width:68px !important;
  height:68px !important;
}

/* Badge recomendado */
.imf-badge-rec{
  display:inline-block;
  margin-top:6px;
  font-size:11px;
  font-weight:700;
  color:#fff;
  background:#f97316;
  padding:4px 10px;
  border-radius:999px;
}


/* === REAL FIX iconos + recomendado pickup v4.4.99 === */
.imf-badge-rec{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-top:6px !important;
  padding:4px 10px !important;
  border-radius:999px !important;
  background:#f97316 !important;
  color:#fff !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
}

@media (max-width: 980px){
  #carry-app-root #familyGrid .imf-v2-choice--family,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice--family,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice{
    padding:16px 14px 14px !important;
    min-height: 172px !important;
  }

  #carry-app-root #familyGrid .imf-v2-choice--family .imf-v2-choice__icon,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice--family .imf-v2-choice__icon,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice .imf-v2-choice__icon{
    width:100% !important;
    height:110px !important;
    border-radius:16px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
  }

  #carry-app-root #familyGrid .imf-v2-choice--family .imf-v2-choice__icon img,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice--family .imf-v2-choice__icon img,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice .imf-v2-choice__icon img{
    width:132px !important;
    height:88px !important;
    max-width:none !important;
    object-fit:contain !important;
    display:block !important;
  }

  #carry-app-root #familyGrid .imf-v2-choice--family .imf-v2-choice__label,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice--family .imf-v2-choice__label,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice .imf-v2-choice__label{
    font-size:20px !important;
    line-height:26px !important;
    font-weight:800 !important;
    margin-top:8px !important;
  }

  #carry-app-root #familyGrid .imf-v2-choice--family .imf-v2-choice__sub,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice--family .imf-v2-choice__sub,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice .imf-v2-choice__sub{
    font-size:16px !important;
    line-height:24px !important;
    font-weight:500 !important;
    margin-top:8px !important;
  }
}


/* === BADGE RECOMENDADO CSS REAL v5.0.0 === */
#familyGrid .imf-v2-choice[data-id="Pickup"] .imf-v2-choice__label::after,
#familyGrid .imf-v2-choice[data-id="pickup"] .imf-v2-choice__label::after,
#imf_vehicle_cat .imf-v2-choice[data-imf-value="Pickup"] .t::after,
#imf_vehicle_cat .imf-v2-choice[data-imf-value="pickup"] .t::after{
  content:"RECOMENDADO";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:8px;
  padding:4px 10px;
  border-radius:999px;
  background:#f97316;
  color:#fff;
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:.02em;
}

#familyGrid .imf-v2-choice[data-id="Pickup"] .imf-v2-choice__label,
#familyGrid .imf-v2-choice[data-id="pickup"] .imf-v2-choice__label,
#imf_vehicle_cat .imf-v2-choice[data-imf-value="Pickup"] .t,
#imf_vehicle_cat .imf-v2-choice[data-imf-value="pickup"] .t{
  display:flex;
  flex-direction:column;
  align-items:center;
}


/* === DESKTOP AJUSTE INTEGRAL v5.1.0 === */
@media (min-width: 981px){

  /* Base tipográfica escritorio */
  #carry-app-root,
  #carry-app-root.imf-app,
  #carry-app-root .im-carry-proto,
  #carry-app-root .imf-v2-wrap,
  #carry-app-root .imf-app-single,
  #carry-app-root input,
  #carry-app-root textarea,
  #carry-app-root select,
  #carry-app-root button,
  #carry-app-root label{
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
  }

  /* Contenedor general con más aire */
  #carry-app-root .imf-shell{
    gap: 24px !important;
    padding: 22px 30px !important;
  }
  #carry-app-root .imf-left,
  #carry-app-root .imf-right,
  #carry-app-root .imf-v2-card,
  #carry-app-root .imf-mapcard{
    border-radius: 18px !important;
  }

  /* Header / topbar */
  #carry-app-root .imf-topbar{
    padding: 16px 22px !important;
    min-height: 72px !important;
  }
  #carry-app-root .imf-brand__title,
  #carry-app-root .imf-v2-header h2,
  #carry-app-root .imf-title-main,
  #carry-app-root .imf-page-title,
  #carry-app-root h1{
    font-size: 30px !important;
    line-height: 36px !important;
    font-weight: 800 !important;
    letter-spacing: -.02em !important;
  }
  #carry-app-root .imf-brand__sub,
  #carry-app-root .imf-v2-header .sub{
    font-size: 16px !important;
    line-height: 24px !important;
    color: rgba(75,85,99,.82) !important;
  }

  /* Secciones */
  #carry-app-root .imf-sec{
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }
  #carry-app-root .imf-sec__title,
  #carry-app-root .imf-v2-q,
  #carry-app-root .q,
  #carry-app-root .imf-section-title,
  #carry-app-root h2,
  #carry-app-root h3{
    font-size: 24px !important;
    line-height: 30px !important;
    font-weight: 800 !important;
    letter-spacing: -.015em !important;
    margin-bottom: 8px !important;
  }
  #carry-app-root .imf-sec__sub,
  #carry-app-root .sub,
  #carry-app-root .imf-subtitle,
  #carry-app-root .helper,
  #carry-app-root .imf-v2-helper,
  #carry-app-root .imf-note,
  #carry-app-root .imf-muted,
  #carry-app-root .muted,
  #carry-app-root small,
  #carry-app-root .description{
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 400 !important;
    color: rgba(75,85,99,.78) !important;
  }

  /* Labels */
  #carry-app-root label,
  #carry-app-root .imf-label,
  #carry-app-root .imf-field label,
  #carry-app-root .imev-field label,
  #carry-app-root .imf-stops__title{
    font-size: 15px !important;
    line-height: 22px !important;
    font-weight: 700 !important;
    color: #111827 !important;
  }

  /* Inputs y selects */
  #carry-app-root input[type="text"],
  #carry-app-root input[type="tel"],
  #carry-app-root input[type="email"],
  #carry-app-root input[type="number"],
  #carry-app-root input[type="date"],
  #carry-app-root input[type="time"],
  #carry-app-root textarea,
  #carry-app-root select,
  #carry-app-root .imf-field,
  #carry-app-root .imf-v2-input,
  #carry-app-root .imf-v2-select,
  #carry-app-root .imf-v2-textarea{
    font-size: 17px !important;
    line-height: 26px !important;
    font-weight: 500 !important;
    padding: 13px 16px !important;
    min-height: 52px !important;
    border-radius: 14px !important;
  }
  #carry-app-root textarea,
  #carry-app-root .imf-v2-textarea{
    min-height: 110px !important;
  }
  #carry-app-root input::placeholder,
  #carry-app-root textarea::placeholder{
    font-size: 15px !important;
    line-height: 22px !important;
    color: rgba(107,114,128,.88) !important;
  }

  /* Radios, pills y controles secundarios */
  #carry-app-root .imf-radio,
  #carry-app-root .imf-radios label,
  #carry-app-root .imf-check,
  #carry-app-root .imf-v2-pill,
  #carry-app-root .imf-pill,
  #carry-app-root .imf-chip{
    font-size: 15px !important;
    line-height: 22px !important;
  }

  /* Botones */
  #carry-app-root .imf-btn-primary,
  #carry-app-root .imf-btn-solicitar,
  #carry-app-root .imf-submit,
  #carry-app-root #im-enviar,
  #carry-app-root .imf-svc-btn,
  #carry-app-root .imf-vehmode-btn,
  #carry-app-root .imf-btn-mini,
  #carry-app-root .imf-change-btn,
  #carry-app-root button{
    font-size: 17px !important;
    line-height: 22px !important;
    font-weight: 700 !important;
    border-radius: 14px !important;
  }
  #carry-app-root .imf-btn-mini{
    padding: 10px 14px !important;
  }

  /* Tarifa / precio */
  #carry-app-root .imf-mobilebar__label,
  #carry-app-root .imf-tarifa-label{
    font-size: 15px !important;
    line-height: 20px !important;
  }
  #carry-app-root .imf-mobilebar__value,
  #carry-app-root .imf-tarifa,
  #carry-app-root .imf-price,
  #carry-app-root .imf-price strong,
  #carry-app-root .imf-v2-price,
  #carry-app-root .imev-modal__price span{
    font-size: 34px !important;
    line-height: 38px !important;
    font-weight: 900 !important;
    letter-spacing: -.02em !important;
  }

  /* Grids con más respiración */
  #carry-app-root .imf-grid-2,
  #carry-app-root .imf-row,
  #carry-app-root .imf-v2-row{
    gap: 14px !important;
  }

  /* Tarjetas de familia (desktop) */
  #carry-app-root #familyGrid.imf-v2-grid,
  #carry-app-root #imf_vehicle_cat.imf-v2-grid{
    gap: 18px !important;
  }
  #carry-app-root #familyGrid .imf-v2-choice--family,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice--family,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice{
    min-height: 170px !important;
    padding: 18px 18px 16px !important;
    border-radius: 18px !important;
  }
  #carry-app-root #familyGrid .imf-v2-choice--family .imf-v2-choice__icon,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice--family .imf-v2-choice__icon,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice .imf-v2-choice__icon{
    height: 118px !important;
    border-radius: 18px !important;
  }
  #carry-app-root #familyGrid .imf-v2-choice--family .imf-v2-choice__icon img,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice--family .imf-v2-choice__icon img,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice .imf-v2-choice__icon img{
    width: 148px !important;
    height: 96px !important;
    object-fit: contain !important;
  }
  #carry-app-root #familyGrid .imf-v2-choice--family .imf-v2-choice__label,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice--family .imf-v2-choice__label,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice .imf-v2-choice__label{
    font-size: 26px !important;
    line-height: 32px !important;
    font-weight: 800 !important;
    margin-top: 10px !important;
  }
  #carry-app-root #familyGrid .imf-v2-choice--family .imf-v2-choice__sub,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice--family .imf-v2-choice__sub,
  #carry-app-root #imf_vehicle_cat .imf-v2-choice .imf-v2-choice__sub{
    font-size: 18px !important;
    line-height: 27px !important;
    font-weight: 500 !important;
    margin-top: 10px !important;
    color: rgba(75,85,99,.82) !important;
  }

  /* Tipos y carrocerías */
  #carry-app-root #variantGrid.imf-v2-grid,
  #carry-app-root #imf_vehicle_size.imf-v2-grid,
  #carry-app-root #imf_vehicle_variant.imf-v2-grid{
    gap: 14px !important;
  }
  #carry-app-root #variantGrid .imf-v2-choice,
  #carry-app-root #imf_vehicle_size .imf-v2-choice,
  #carry-app-root #imf_vehicle_variant .imf-v2-choice{
    padding: 16px 18px !important;
    min-height: 108px !important;
    border-radius: 16px !important;
  }
  #carry-app-root #variantGrid .imf-v2-choice .t,
  #carry-app-root #imf_vehicle_size .imf-v2-choice .t,
  #carry-app-root #imf_vehicle_variant .imf-v2-choice .t{
    font-size: 20px !important;
    line-height: 26px !important;
    font-weight: 800 !important;
  }
  #carry-app-root #variantGrid .imf-v2-choice .s,
  #carry-app-root #imf_vehicle_size .imf-v2-choice .s,
  #carry-app-root #imf_vehicle_variant .imf-v2-choice .s{
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 500 !important;
    color: rgba(75,85,99,.78) !important;
  }

  /* Resumen de vehículo */
  #carry-app-root .imf-veh-info,
  #carry-app-root .vehcard,
  #carry-app-root .imf-v2-card .kv{
    font-size: 16px !important;
    line-height: 24px !important;
  }

  /* Badge recomendado */
  #carry-app-root .imf-badge-rec,
  #familyGrid .imf-v2-choice[data-id="Pickup"] .imf-v2-choice__label::after,
  #familyGrid .imf-v2-choice[data-id="pickup"] .imf-v2-choice__label::after{
    font-size: 12px !important;
    padding: 5px 12px !important;
    margin-top: 10px !important;
  }
}



/* === FIX BOTÓN DISTRIBUCIÓN DESKTOP v5.1.1 === */
@media (min-width: 981px){
  #carry-app-root .imf-svc-btn{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    padding:12px 18px !important;
    min-width:220px !important;
    white-space:nowrap !important;
  }

  #carry-app-root .imf-svc-btn span,
  #carry-app-root .imf-svc-btn{
    white-space:nowrap !important;
  }

  #carry-app-root .imf-svc-row{
    flex-wrap:wrap !important;
    gap:12px !important;
  }
}


/* === ICONOS ORIGEN / DESTINO v5.1.5 === */
#carry-app-root .imf-label{
  display:flex;
  align-items:center;
  gap:8px;
}
#carry-app-root .imf-label.origen::before{
  content:"📍";
  font-size:16px;
}
#carry-app-root .imf-label.destino::before{
  content:"🏁";
  font-size:16px;
}
