/*
 * sobre-nosotros-vendecarsubastas — escala compacta de "Cómo funciona".
 *
 * Esta página lleva su propio CSS dentro del contenido, guardado en la base
 * de datos. Esta hoja repite esas reglas con las tipografías y los espacios
 * ya ajustados, y se imprime después del contenido para prevalecer sobre él.
 * Generado a partir del CSS publicado; si se reedita la página en WordPress,
 * hay que regenerar este archivo.
 */

/* ==========================================================================
   VendeCar Subastas — Sobre nosotros
   Bloque HTML personalizado, aislado y compatible con el menú global.
   ========================================================================== */

/*
 * ANCHO COMPLETO REAL
 * 1. En navegadores modernos libera los envoltorios de Astra/WordPress.
 * 2. En navegadores sin :has(), usa un fallback full-bleed seguro.
 * 3. Solo afecta a la página que contiene .vc-about-custom.
 */
@supports selector(body:has(.vc-about-custom)){
  body:has(.vc-about-custom){
    overflow-x: clip !important;
    background: #ffffff !important;
  }

  body:has(.vc-about-custom) #page,
  body:has(.vc-about-custom) #content,
  body:has(.vc-about-custom) .site-content,
  body:has(.vc-about-custom) .site-content > .ast-container,
  body:has(.vc-about-custom) #primary,
  body:has(.vc-about-custom) .content-area,
  body:has(.vc-about-custom) .site-main,
  body:has(.vc-about-custom) article.page,
  body:has(.vc-about-custom) article.page > .entry-content,
  body:has(.vc-about-custom) .entry-content,
  body:has(.vc-about-custom) .wp-block-post-content,
  body:has(.vc-about-custom) .wp-block-html{
    display: block !important;
    float: none !important;
    inline-size: 100% !important;
    max-inline-size: none !important;
    min-inline-size: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }


  body:has(.vc-about-custom) .wp-block-html:has(.vc-about-custom),
  body:has(.vc-about-custom) .wp-block-group:has(.vc-about-custom),
  body:has(.vc-about-custom) .wp-block-columns:has(.vc-about-custom),
  body:has(.vc-about-custom) .wp-block-column:has(.vc-about-custom){
    inline-size: 100% !important;
    max-inline-size: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body:has(.vc-about-custom) #secondary,
  body:has(.vc-about-custom) .widget-area,
  body:has(.vc-about-custom) article.page > .entry-header,
  body:has(.vc-about-custom) .entry-header,
  body:has(.vc-about-custom) .post-navigation,
  body:has(.vc-about-custom) .comments-area{
    display: none !important;
  }
}


.vc-about-custom,
.vc-about-custom *,
.vc-about-custom *::before,
.vc-about-custom *::after{
  box-sizing: border-box;
}

.vc-about-custom{
  --vca-blue: #0861e8;
  --vca-blue-strong: #0354d6;
  --vca-blue-deep: #063aa3;
  --vca-blue-soft: #eaf2ff;
  --vca-navy: #071d49;
  --vca-navy-2: #0b285f;
  --vca-text: #17233a;
  --vca-muted: #617087;
  --vca-line: #dce5f1;
  --vca-line-soft: #eaf0f7;
  --vca-soft: #f5f8fd;
  --vca-success: #087a55;
  --vca-whatsapp: #128c5e;
  --vca-shadow-sm: 0 13px 36px rgba(12, 37, 73, .075);
  --vca-shadow-md: 0 25px 72px rgba(12, 37, 73, .13);

  /*
   * FULL BLEED OBLIGATORIO:
   * escapa siempre del ancho del bloque, del editor y del contenedor de Astra.
   * No es "100 % del padre": es el ancho real del viewport.
   */
  position: relative !important;
  left: 50% !important;
  inline-size: 100vw !important;
  width: 100vw !important;
  max-inline-size: 100vw !important;
  max-width: 100vw !important;
  margin-block: 0 !important;
  margin-inline-start: -50vw !important;
  margin-inline-end: 0 !important;
  padding: 0 !important;

  overflow-x: clip;
  background: #ffffff;
  color: var(--vca-text);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

@supports (width: 100dvw){
  .vc-about-custom{
    inline-size: 100dvw !important;
    width: 100dvw !important;
    max-inline-size: 100dvw !important;
    max-width: 100dvw !important;
    margin-inline-start: -50dvw !important;
  }
}

.vc-about-custom > section{
  inline-size: 100% !important;
  width: 100% !important;
  max-inline-size: none !important;
  max-width: none !important;
}

.vc-about-custom a{
  color: inherit;
  text-decoration: none !important;
}

.vc-about-custom img,
.vc-about-custom svg{
  display: block;
  max-width: 100%;
}

.vc-about-custom h1,
.vc-about-custom h2,
.vc-about-custom h3,
.vc-about-custom p,
.vc-about-custom ul{
  margin-top: 0;
}

.vc-about-custom h1,
.vc-about-custom h2,
.vc-about-custom h3{
  color: var(--vca-navy);
  font-weight: 850;
  letter-spacing: -.04em;
  overflow-wrap: anywhere;
}

.vc-about-custom p{
  color: var(--vca-muted);
}

.vc-about-custom :focus-visible{
  outline: 3px solid rgba(8, 97, 232, .3);
  outline-offset: 3px;
}

.vca-hero__grid > *,
.vca-story-grid > *,
.vca-audience-grid > *,
.vca-process-grid > *,
.vca-values-grid > *,
.vca-faq-grid > *,
.vca-identity > *,
.vca-final__inner > *{
  min-inline-size: 0;
}

.vc-about-custom h1,
.vc-about-custom h2,
.vc-about-custom h3,
.vc-about-custom p,
.vc-about-custom li,
.vc-about-custom a,
.vc-about-custom strong,
.vc-about-custom small{
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}

.vc-about-custom button,
.vc-about-custom a,
.vc-about-custom summary{
  -webkit-tap-highlight-color: transparent;
}

.vca-shell{
  inline-size: 100%;
  max-inline-size: none;
  margin-inline: auto;
  padding-inline:
    max(clamp(20px, 4vw, 76px), env(safe-area-inset-left))
    max(clamp(20px, 4vw, 76px), env(safe-area-inset-right));
}

.vca-section{
  inline-size: 100%;
  max-inline-size: none;
  padding: clamp(40px, 7vw, 65px) 0;
}

.vca-section--soft{
  background: linear-gradient(180deg, #f8fbff 0%, #f3f7fc 100%);
}

.vca-icon{
  width: 1.35em;
  height: 1.35em;
  flex: 0 0 auto;
}

.vca-kicker{
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 14px;
  color: var(--vca-blue);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.vca-kicker::before{
  content: "";
  width: 26px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
}

.vca-heading{
  max-width: 830px;
  margin-bottom: clamp(23px, 5vw, 38px);
}

.vca-heading--center{
  margin-inline: auto;
  text-align: center;
}

.vca-heading--center .vca-kicker{
  justify-content: center;
}

.vca-heading h2{
  margin-bottom: 14px;
  font-size: clamp(30px, 4.2vw, 38px);
  line-height: 1.06;
}

.vca-heading p{
  margin-bottom: 0;
  font-size: clamp(15px, 1.45vw, 16px);
  line-height: 1.75;
}

.vca-button{
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 17px;
  border: 1px solid transparent;
  border-radius: 13px;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}

.vca-button:hover{
  transform: translateY(-1px);
}

.vca-button--primary{
  background: linear-gradient(135deg, var(--vca-blue), var(--vca-blue-strong));
  box-shadow: 0 11px 26px rgba(8, 97, 232, .24);
  color: #ffffff !important;
}

.vca-button--secondary{
  border-color: rgba(8, 97, 232, .25);
  background: #ffffff;
  color: var(--vca-blue) !important;
}

.vca-button--whatsapp{
  background: var(--vca-whatsapp);
  box-shadow: 0 11px 26px rgba(18, 140, 94, .22);
  color: #ffffff !important;
}

/* Hero */
.vca-hero{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(41px, 8vw, 67px) 0 clamp(42px, 8vw, 73px);
  border-bottom: 1px solid var(--vca-line-soft);
  background:
    radial-gradient(circle at 92% 5%, rgba(8, 97, 232, .19), transparent 30%),
    radial-gradient(circle at 6% 7%, rgba(8, 97, 232, .075), transparent 27%),
    linear-gradient(180deg, #ffffff 0%, #f4f8ff 100%);
}

.vca-hero::before,
.vca-hero::after{
  content: "";
  position: absolute;
  z-index: -1;
  border: 1px solid rgba(8, 97, 232, .1);
  border-radius: 50%;
  pointer-events: none;
}

.vca-hero::before{
  width: 560px;
  height: 560px;
  right: -300px;
  top: -150px;
}

.vca-hero::after{
  width: 350px;
  height: 350px;
  right: -135px;
  top: -35px;
}

.vca-hero__grid{
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
  align-items: center;
  gap: clamp(28px, 7vw, 58px);
}

.vca-hero__copy,
.vca-hero__visual{
  min-width: 0;
}

.vca-hero h1{
  max-width: 830px;
  margin-bottom: 19px;
  font-size: clamp(34px, 6vw, 48px);
  line-height: .99;
}

.vca-hero h1 span{
  display: block;
  color: var(--vca-blue);
}

.vca-hero__lead{
  max-width: 760px;
  margin-bottom: 22px;
  color: #53627a !important;
  font-size: clamp(14px, 1.65vw, 16px);
  line-height: 1.72;
}

.vca-hero__actions{
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
}

.vca-hero__trust{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 17px;
  margin-top: 20px;
  color: #465872;
  font-size: 12px;
  font-weight: 760;
}

.vca-hero__trust span{
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.vca-hero__trust .vca-icon{
  width: 17px;
  height: 17px;
  color: var(--vca-blue);
}

/* Diagrama */
.vca-map-card{
  position: relative;
  overflow: hidden;
  padding: 22px;
  border: 1px solid rgba(196, 210, 230, .9);
  border-radius: 26px;
  background: rgba(255, 255, 255, .96);
  box-shadow: var(--vca-shadow-md);
}

.vca-map-card::after{
  content: "";
  position: absolute;
  width: 210px;
  height: 210px;
  right: -100px;
  top: -100px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(8, 97, 232, .17), transparent 68%);
}

.vca-map-card__title{
  position: relative;
  z-index: 2;
  display: block;
  margin-bottom: 17px;
  color: var(--vca-navy);
  font-size: 15px;
  font-weight: 850;
}

.vca-map{
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 52px 1fr;
  align-items: center;
  gap: 10px;
}

.vca-map__node{
  padding: 14px;
  border: 1px solid var(--vca-line-soft);
  border-radius: 15px;
  background: #ffffff;
}

.vca-map__node span{
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  margin-bottom: 11px;
  border-radius: 10px;
  background: var(--vca-blue-soft);
  color: var(--vca-blue);
}

.vca-map__node .vca-icon{
  width: 18px;
  height: 18px;
}

.vca-map__node strong,
.vca-map__node small{
  display: block;
}

.vca-map__node strong{
  margin-bottom: 3px;
  color: var(--vca-navy);
  font-size: 13px;
}

.vca-map__node small{
  color: var(--vca-muted);
  font-size: 12px;
  line-height: 1.45;
}

.vca-map__center{
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(145deg, var(--vca-navy), var(--vca-blue));
  box-shadow: 0 12px 26px rgba(8, 97, 232, .24);
  color: #ffffff;
}

.vca-map__center .vca-icon{
  width: 18px;
  height: 18px;
}

.vca-map-card__footer{
  position: relative;
  z-index: 2;
  margin: 18px 0 0 !important;
  padding: 12px 14px;
  border-radius: 13px;
  background: #f2f7ff;
  color: #40516b !important;
  font-size: 12px;
  line-height: 1.55 !important;
}

/* Historia */
.vca-story-grid{
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(330px, .72fr);
  align-items: stretch;
  gap: clamp(20px, 5vw, 41px);
}

.vca-story-copy,
.vca-role-card{
  min-width: 0;
}

.vca-story-copy h2{
  margin-bottom: 15px;
  font-size: clamp(30px, 4.1vw, 37px);
  line-height: 1.06;
}

.vca-story-copy p{
  margin-bottom: 14px;
  font-size: 15px;
  line-height: 1.78;
}

.vca-company-line{
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 22px;
  padding: 15px;
  border: 1px solid rgba(8, 97, 232, .15);
  border-radius: 17px;
  background: #f3f7ff;
}

.vca-company-line__icon{
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  place-items: center;
  border-radius: 10px;
  background: #ffffff;
  color: var(--vca-blue);
  box-shadow: 0 8px 20px rgba(8, 97, 232, .1);
}

.vca-company-line__icon .vca-icon{
  width: 18px;
  height: 18px;
}

.vca-company-line strong{
  display: block;
  margin-bottom: 3px;
  color: var(--vca-navy);
}

.vca-company-line p{
  margin: 0;
  font-size: 12px;
  line-height: 1.6;
}

.vca-role-card{
  position: relative;
  overflow: hidden;
  padding: clamp(22px, 4vw, 31px);
  border-radius: 26px;
  background:
    radial-gradient(circle at 100% 0%, rgba(115, 167, 255, .28), transparent 28%),
    linear-gradient(145deg, var(--vca-navy) 0%, #073b91 62%, var(--vca-blue-deep) 100%);
  box-shadow: var(--vca-shadow-md);
  color: #ffffff;
}

.vca-role-card h3{
  margin-bottom: 13px;
  color: #ffffff;
  font-size: clamp(21px, 3vw, 30px);
  line-height: 1.08;
}

.vca-role-card p{
  color: #dce8ff;
  line-height: 1.72;
}

.vca-role-list{
  display: grid;
  gap: 11px;
  margin: 23px 0 0;
  padding: 0;
  list-style: none;
}

.vca-role-list li{
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #edf4ff;
  font-size: 13px;
}

.vca-role-list .vca-icon{
  width: 18px;
  height: 18px;
  margin-top: 2px;
  color: #9fc1ff;
}

/* Públicos */
.vca-audience-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 19px;
}

.vca-audience-card{
  position: relative;
  overflow: hidden;
  padding: clamp(22px, 4vw, 30px);
  border: 1px solid var(--vca-line);
  border-radius: 24px;
  background: #ffffff;
  box-shadow: var(--vca-shadow-sm);
}

.vca-audience-card::after{
  content: "";
  position: absolute;
  width: 250px;
  height: 250px;
  right: -125px;
  top: -125px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(8, 97, 232, .15), transparent 68%);
}

.vca-audience-card--seller::after{
  background: radial-gradient(circle, rgba(8, 122, 85, .14), transparent 68%);
}

.vca-audience-card__icon{
  position: relative;
  z-index: 2;
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  margin-bottom: 18px;
  border-radius: 10px;
  background: var(--vca-blue-soft);
  color: var(--vca-blue);
}

.vca-audience-card--seller .vca-audience-card__icon{
  background: #eaf8f1;
  color: var(--vca-success);
}

.vca-audience-card__icon .vca-icon{
  width: 18px;
  height: 18px;
}

.vca-audience-card h3,
.vca-audience-card p,
.vca-audience-card ul,
.vca-audience-card .vca-button{
  position: relative;
  z-index: 2;
}

.vca-audience-card h3{
  margin-bottom: 12px;
  font-size: clamp(20px, 3vw, 30px);
  line-height: 1.12;
}

.vca-audience-card > p{
  margin-bottom: 18px;
  line-height: 1.72;
}

.vca-check-list{
  display: grid;
  gap: 11px;
  margin: 0 0 26px;
  padding: 0;
  list-style: none;
}

.vca-check-list li{
  display: flex;
  align-items: flex-start;
  gap: 9px;
  color: #475a73;
  font-size: 13px;
}

.vca-check-list .vca-icon{
  width: 18px;
  height: 18px;
  margin-top: 2px;
  color: var(--vca-blue);
}

.vca-audience-card--seller .vca-check-list .vca-icon{
  color: var(--vca-success);
}

/* Proceso */
.vca-process-grid{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 13px;
}

.vca-process-card{
  position: relative;
  min-width: 0;
  min-height: 270px;
  padding: 19px 18px;
  border: 1px solid var(--vca-line);
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 10px 28px rgba(12, 37, 73, .055);
}

.vca-process-card:not(:last-child)::after{
  content: "→";
  position: absolute;
  z-index: 3;
  top: 48px;
  right: -18px;
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border: 1px solid var(--vca-line);
  border-radius: 50%;
  background: #ffffff;
  color: var(--vca-blue);
  font-weight: 900;
}

.vca-process-card__top{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 11px;
  margin-bottom: 20px;
}

.vca-process-card__number{
  color: #9aa8bc;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
}

.vca-process-card__icon{
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 10px;
  background: var(--vca-blue-soft);
  color: var(--vca-blue);
}

.vca-process-card__icon .vca-icon{
  width: 18px;
  height: 18px;
}

.vca-process-card h3{
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 1.2;
}

.vca-process-card p{
  margin: 0;
  font-size: 12px;
  line-height: 1.67;
}

/* Valores */
.vca-values-grid{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 15px;
}

.vca-value-card{
  min-width: 0;
  padding: 21px 19px;
  border: 1px solid var(--vca-line);
  border-radius: 21px;
  background: #ffffff;
  box-shadow: var(--vca-shadow-sm);
}

.vca-value-card__icon{
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  margin-bottom: 16px;
  border-radius: 10px;
  background: var(--vca-blue-soft);
  color: var(--vca-blue);
}

.vca-value-card__icon .vca-icon{
  width: 18px;
  height: 18px;
}

.vca-value-card h3{
  margin-bottom: 9px;
  font-size: 16px;
  line-height: 1.15;
}

.vca-value-card p{
  margin: 0;
  font-size: 13px;
  line-height: 1.68;
}

/* FAQ */
.vca-faq-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.vca-faq-grid details{
  overflow: hidden;
  border: 1px solid var(--vca-line);
  border-radius: 16px;
  background: #ffffff;
}

.vca-faq-grid summary{
  display: flex;
  min-height: 66px;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 14px 16px;
  color: var(--vca-navy);
  font-size: 14px;
  font-weight: 820;
  cursor: pointer;
  list-style: none;
}

.vca-faq-grid summary::-webkit-details-marker{
  display: none;
}

.vca-faq-grid summary::after{
  content: "+";
  display: grid;
  width: 29px;
  height: 29px;
  flex: 0 0 29px;
  place-items: center;
  border-radius: 50%;
  background: var(--vca-blue-soft);
  color: var(--vca-blue);
  font-size: 16px;
  line-height: 1;
}

.vca-faq-grid details[open] summary::after{
  content: "−";
}

.vca-faq-grid details p{
  margin: 0;
  padding: 0 16px 17px;
  font-size: 13px;
  line-height: 1.72;
}

/* Identidad */
.vca-identity{
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 25px;
  padding: clamp(22px, 4vw, 31px);
  border: 1px solid rgba(8, 97, 232, .15);
  border-radius: 24px;
  background:
    radial-gradient(circle at 90% 20%, rgba(8, 97, 232, .12), transparent 28%),
    linear-gradient(145deg, #ffffff, #f5f9ff);
  box-shadow: var(--vca-shadow-sm);
}

.vca-identity h2{
  margin-bottom: 10px;
  font-size: clamp(22px, 3.4vw, 34px);
  line-height: 1.08;
}

.vca-identity p{
  max-width: 800px;
  margin: 0;
  line-height: 1.72;
}

.vca-identity__facts{
  display: grid;
  gap: 8px;
  min-width: 260px;
  padding: 15px;
  border-radius: 17px;
  background: #ffffff;
  box-shadow: 0 10px 26px rgba(12, 37, 73, .07);
}

.vca-identity__facts span,
.vca-identity__facts strong{
  display: block;
}

.vca-identity__facts span{
  color: var(--vca-muted);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.vca-identity__facts strong{
  color: var(--vca-navy);
  font-size: 14px;
}

/* CTA final */
.vca-final{
  padding: clamp(41px, 8vw, 62px) 0;
  background:
    radial-gradient(circle at 87% 13%, rgba(126, 174, 255, .35), transparent 28%),
    linear-gradient(145deg, var(--vca-navy) 0%, var(--vca-blue) 100%);
}

.vca-final__inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}

.vca-final h2{
  max-width: 780px;
  margin-bottom: 11px;
  color: #ffffff;
  font-size: clamp(30px, 4.5vw, 37px);
  line-height: 1.07;
}

.vca-final p{
  max-width: 760px;
  margin: 0;
  color: #dce8ff;
  font-size: 14px;
}

.vca-final__actions{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 11px;
  flex: 0 0 auto;
}

.vca-final .vca-button--secondary{
  border-color: rgba(255, 255, 255, .46);
  background: rgba(255, 255, 255, .09);
  color: #ffffff !important;
}

@media (max-width: 1120px){
  .vca-process-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .vca-process-card:not(:last-child)::after{
    display: none;
  }

  .vca-values-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px){
  .vca-hero__grid,
  .vca-story-grid{
    grid-template-columns: 1fr;
  }

  .vca-hero__visual,
  .vca-role-card{
    max-width: 760px;
  }

  .vca-identity{
    grid-template-columns: 1fr;
  }

  .vca-identity__facts{
    min-width: 0;
  }

  .vca-final__inner{
    display: grid;
  }

  .vca-final__actions{
    justify-content: flex-start;
  }
}

@media (max-width: 720px){
  .vca-shell{
    padding-inline:
      max(16px, env(safe-area-inset-left))
      max(16px, env(safe-area-inset-right));
  }

  .vca-section{
    padding: 39px 0;
  }

  .vca-hero{
    padding: 31px 0 40px;
  }

  .vca-hero h1{
    font-size: clamp(30px, 12vw, 38px);
  }

  .vca-audience-grid,
  .vca-process-grid,
  .vca-values-grid,
  .vca-faq-grid{
    grid-template-columns: 1fr;
  }

  .vca-process-card{
    min-height: 0;
  }

  .vca-map{
    grid-template-columns: 1fr;
  }

  .vca-map__center{
    margin: auto;
    transform: rotate(90deg);
  }

  .vca-hero__actions,
  .vca-final__actions{
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .vca-button{
    width: 100%;
  }

  .vca-final__inner{
    gap: 22px;
  }
}

@media (max-width: 420px){
  .vca-shell{
    padding-inline:
      max(10px, env(safe-area-inset-left))
      max(10px, env(safe-area-inset-right));
  }

  .vca-map-card,
  .vca-audience-card,
  .vca-role-card,
  .vca-identity{
    padding: 18px 15px;
    border-radius: 20px;
  }

  .vca-company-line{
    display: grid;
  }
}


/* Pantallas grandes y ultrapanorámicas */
@media (min-width: 1600px){
  .vca-hero__grid{
    grid-template-columns: minmax(0, 1.12fr) minmax(440px, .68fr);
  }

  .vca-process-card{
    min-height: 250px;
  }
}

/* Portátiles y tablets grandes */
@media (max-width: 1280px){
  .vca-hero__grid{
    grid-template-columns: minmax(0, 1fr) minmax(340px, .74fr);
    gap: clamp(23px, 5vw, 38px);
  }
}

/* Tablets verticales */
@media (max-width: 820px){
  .vca-hero__grid,
  .vca-story-grid,
  .vca-audience-grid,
  .vca-identity{
    grid-template-columns: 1fr;
  }

  .vca-map-card,
  .vca-role-card{
    max-inline-size: 720px;
  }

  .vca-process-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .vca-values-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Móviles medianos y pequeños */
@media (max-width: 600px){
  .vca-section{
    padding-block: 36px;
  }

  .vca-heading{
    margin-bottom: 23px;
  }

  .vca-heading h2{
    font-size: clamp(22px, 9vw, 34px);
  }

  .vca-hero__trust{
    display: grid;
    gap: 9px;
  }

  .vca-process-grid,
  .vca-values-grid,
  .vca-faq-grid{
    grid-template-columns: 1fr;
  }

  .vca-faq-grid summary{
    min-height: 60px;
    padding: 14px 14px;
  }
}

/* Teléfonos compactos: 320–390 px */
@media (max-width: 390px){
  .vca-hero h1{
    font-size: clamp(30px, 12.5vw, 34px);
  }

  .vca-kicker{
    font-size: 11px;
    letter-spacing: .075em;
  }

  .vca-map-card,
  .vca-audience-card,
  .vca-role-card,
  .vca-value-card,
  .vca-process-card,
  .vca-identity{
    padding: 16px 14px;
  }

  .vca-button{
    min-height: 48px;
    padding-inline: 13px;
  }

  .vca-identity__facts{
    padding: 14px;
  }
}

/* Móviles en horizontal con poca altura */
@media (max-height: 520px) and (orientation: landscape){
  .vca-hero{
    padding-block: 28px 34px;
  }

  .vca-section{
    padding-block: 34px;
  }
}

/* Dispositivos táctiles: evita efectos hover molestos */
@media (hover: none){
  .vca-button:hover{
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce){
  .vc-about-custom *,
  .vc-about-custom *::before,
  .vc-about-custom *::after{
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
