/* ============================================================
   "DISEÑEMOS TU PRÓXIMO VIAJE" (/cotizacion/) · Dirección C
   Reutiliza las utilidades de home.css (.vce-eyebrow, .vce-script,
   .vce-aurora, .vce-grain, .vce-c .vce-btn), que se encola
   también en esta ruta (inc/enqueues.php).
   ============================================================ */
.vce-cotiza__hero { position: relative; overflow: hidden; background: var(--vce-yale); color: var(--vce-hueso); padding: 8.5rem 0 4rem; }
.vce-cotiza__hero-inner { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 1rem; max-width: 52rem; }
.vce-cotiza__title { font-family: var(--vce-font-display); font-weight: 600; letter-spacing: -.03em; font-size: clamp(2.5rem, 1.5rem + 3.5vw, 4.5rem); line-height: .96; margin: 0; color: var(--vce-hueso); text-wrap: balance; }
.vce-cotiza__sub { font-size: 1.0625rem; line-height: 1.6; color: rgba(247,247,242,.82); margin: 0; max-width: 40rem; font-weight: 300; }

.vce-cotiza__grid { display: grid; grid-template-columns: 1fr; gap: 2rem; padding-block: clamp(2.5rem, 5vw, 4.5rem); align-items: start; }
@media (min-width: 960px) { .vce-cotiza__grid { grid-template-columns: minmax(0, 1fr) 320px; gap: 2.5rem; } }

/* Formulario */
.vce-cotiza-form { background: var(--vce-blanco); border-radius: 28px; padding: clamp(1.5rem, 3vw, 2.5rem); box-shadow: 0 30px 80px rgba(0,48,117,.08); }
.vce-cotiza-form__grid { display: grid; grid-template-columns: 1fr; gap: 1.1rem 1.25rem; }
@media (min-width: 640px) { .vce-cotiza-form__grid { grid-template-columns: 1fr 1fr; } .vce-cotiza-form__grid .vce-field--full { grid-column: 1 / -1; } }
.vce-cotiza-form .vce-field { display: flex; flex-direction: column; gap: .4rem; }
.vce-cotiza-form .vce-field > label, .vce-cotiza-form fieldset > legend { font-size: .8125rem; font-weight: 600; color: var(--vce-yale); letter-spacing: .01em; }
.vce-cotiza-form abbr { text-decoration: none; color: var(--vce-bronce); }
.vce-cotiza-form input:not([type="checkbox"]):not([type="radio"]), .vce-cotiza-form select, .vce-cotiza-form textarea {
  width: 100%; min-height: 50px; padding: .75rem 1rem; border: 1px solid rgba(0,48,117,.18); border-radius: 14px;
  font-size: 1rem; font-family: var(--vce-font-body); background: var(--vce-hueso); color: var(--vce-gris-oscuro);
  transition: border-color .2s, box-shadow .2s, background .2s;
}
.vce-cotiza-form textarea { min-height: 140px; resize: vertical; }
.vce-cotiza-form input::placeholder, .vce-cotiza-form textarea::placeholder { color: var(--vce-gris-medio); }
.vce-cotiza-form input:focus-visible, .vce-cotiza-form select:focus-visible, .vce-cotiza-form textarea:focus-visible { outline: none; border-color: var(--vce-picton); box-shadow: 0 0 0 3px rgba(71,164,221,.28); background: var(--vce-blanco); }
.vce-cotiza-form fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.vce-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Casillas "¿Qué necesitas?" como chips */
.vce-chips { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .25rem; }
.vce-chip { position: relative; cursor: pointer; }
.vce-chip input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.vce-chip span { display: inline-flex; align-items: center; min-height: 44px; padding: 0 1.1rem; border-radius: 999px; border: 1px solid rgba(0,48,117,.2); font-size: .875rem; font-weight: 500; color: var(--vce-yale); background: var(--vce-hueso); transition: background .2s, border-color .2s, color .2s; }
.vce-chip input:checked + span { background: var(--vce-yale); border-color: var(--vce-yale); color: var(--vce-hueso); }
.vce-chip input:focus-visible + span { outline: 3px solid var(--vce-picton); outline-offset: 2px; }

/* Consentimiento */
.vce-check { display: flex; align-items: flex-start; gap: .75rem; font-size: .875rem; line-height: 1.5; color: #4A4F55; cursor: pointer; }
.vce-check input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--vce-indigo); flex: none; }
.vce-check a { color: var(--vce-indigo); text-decoration: underline; text-underline-offset: 3px; }

/* Errores */
.vce-cotiza-form .vce-field--error input, .vce-cotiza-form .vce-field--error select, .vce-cotiza-form .vce-field--error textarea { border-color: var(--vce-rojo); box-shadow: 0 0 0 3px rgba(179,38,30,.15); }
.vce-cotiza-form .vce-field--error > label, .vce-cotiza-form .vce-field--error .vce-check { color: var(--vce-rojo); }

.vce-cotiza-form__bar { display: flex; gap: 1rem; align-items: center; justify-content: flex-end; flex-wrap: wrap; margin-top: 1.75rem; }
.vce-cotiza-form__msg { margin-right: auto; font-size: .875rem; }
.vce-cotiza-form__msg.is-ok { color: var(--vce-verde); font-weight: 600; }
.vce-cotiza-form__msg.is-err { color: var(--vce-rojo); }

/* Aside */
.vce-cotiza__aside { display: flex; flex-direction: column; gap: 1rem; position: sticky; top: 6rem; }
.vce-cotiza__card { background: var(--vce-blanco); border-radius: 24px; padding: 1.5rem; display: flex; flex-direction: column; gap: 1rem; border: 1px solid var(--vce-color-border); }
.vce-cotiza__card--dark { background: var(--vce-yale); color: var(--vce-hueso); border-color: transparent; align-items: flex-start; }
.vce-cotiza__pasos { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .9rem; }
.vce-cotiza__pasos li { display: flex; gap: .875rem; font-size: .9rem; line-height: 1.55; color: #4A4F55; }
.vce-cotiza__num { font-family: var(--vce-font-display); font-size: 1.5rem; font-weight: 300; line-height: 1.1; color: var(--vce-bronce); flex: none; }
.vce-cotiza__cert { display: flex; align-items: center; gap: .625rem; font-size: .8125rem; color: #6B7075; padding: 0 .5rem; }

@media (max-width: 640px) {
  .vce-cotiza__hero { padding-top: 6.5rem; }
  .vce-cotiza-form { border-radius: 20px; }
  .vce-cotiza-form__bar .vce-btn { width: 100%; }
  .vce-cotiza__aside { position: static; }
}

.vce-cotiza-form select { appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23004F77' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 1rem center; padding-right: 2.5rem; cursor: pointer; }

/* ============================================================
   RECORRIDO "DISEÑA TU VIAJE" (v0.13.0) · 5 pasos + pase de abordar
   ============================================================ */
.vce-cotiza__hero--w { padding-bottom: 7.5rem; }
.vce-cotiza__meta { list-style: none; margin: .5rem 0 0; padding: 0; display: flex; gap: 1.75rem; flex-wrap: wrap; font-size: .82rem; color: rgba(247,247,242,.75); }
.vce-cotiza__meta b { display: block; font-family: var(--vce-font-display); font-size: 1.05rem; font-weight: 600; color: var(--vce-hueso); }

.vce-wiz { display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: start; margin-top: -4.5rem; position: relative; z-index: 2; padding-bottom: clamp(3rem, 6vw, 5rem); }
@media (min-width: 960px) { .vce-wiz { grid-template-columns: minmax(0, 7.2fr) minmax(0, 4.8fr); gap: 2.5rem; } }
.vce-wiz__form { background: var(--vce-blanco); border-radius: 28px; padding: clamp(1.5rem, 3vw, 2.25rem); box-shadow: 0 30px 70px rgba(0,48,117,.14); }

/* Botones propios del recorrido */
.vce-cotiza .vce-btn--yale { background: var(--vce-yale); color: var(--vce-hueso); }
.vce-cotiza .vce-btn--yale:hover { background: #00265E; color: var(--vce-hueso); transform: translateY(-2px); box-shadow: 0 8px 20px rgba(0,48,117,.22); }
.vce-cotiza .vce-btn.vce-btn--outline { border-color: var(--vce-color-border); color: var(--vce-yale); }
.vce-cotiza .vce-btn.vce-btn--outline:hover { border-color: var(--vce-yale); background: transparent; }
.vce-cotiza .vce-btn--wa { background: #25D366; color: #fff; }
.vce-cotiza .vce-btn--wa:hover { background: #1EBE5A; color: #fff; transform: translateY(-2px); box-shadow: 0 10px 24px rgba(37,211,102,.35); }
.vce-cotiza .vce-btn[disabled] { opacity: .45; cursor: not-allowed; transform: none; box-shadow: none; }
.vce-wiz [hidden] { display: none !important; }

/* Ruta de progreso */
.vce-wiz__ruta { list-style: none; margin: 0 0 .5rem; padding: 0; display: flex; position: relative; }
.vce-wiz__pt { flex: 1; display: flex; flex-direction: column; align-items: center; gap: .35rem; position: relative; z-index: 1; font-family: var(--vce-font-display); font-size: .68rem; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; color: var(--vce-gris-medio); transition: color .3s; }
.vce-wiz__pt i { width: 12px; height: 12px; border-radius: 50%; background: var(--vce-columbia); border: 2px solid #fff; box-shadow: 0 0 0 2px var(--vce-columbia); transition: background .3s, box-shadow .3s; }
.vce-wiz__pt.is-on, .vce-wiz__pt.is-done { color: var(--vce-yale); }
.vce-wiz__pt.is-on i, .vce-wiz__pt.is-done i { background: var(--vce-bronce); box-shadow: 0 0 0 2px var(--vce-bronce); }
.vce-wiz__line { position: absolute; left: 10%; right: 10%; top: 5px; height: 2px; background: var(--vce-columbia); z-index: 0; }
.vce-wiz__line b { display: block; height: 100%; width: 0; background: var(--vce-bronce); transition: width .5s cubic-bezier(.23,1,.32,1); }
.vce-wiz__plane { position: absolute; top: -9px; left: calc(10% - 11px); z-index: 2; color: var(--vce-yale); pointer-events: none; line-height: 0; transition: left .5s cubic-bezier(.23,1,.32,1); }
.vce-wiz__stepn { margin: 0 0 1.2rem; font-size: .8rem; color: var(--vce-gris-medio); }
@media (prefers-reduced-motion: reduce) { .vce-wiz__line b, .vce-wiz__plane { transition: none; } }

/* Pasos */
.vce-wiz__step { border: 0; padding: 0; margin: 0; min-width: 0; display: none; }
.vce-wiz__step.is-on { display: block; animation: vce-wiz-in .4s ease; }
html:not(.vce-wiz-js) .vce-wiz__step { display: block; margin-bottom: 2rem; }
@keyframes vce-wiz-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .vce-wiz__step.is-on { animation: none; } }
.vce-wiz__q { font-family: var(--vce-font-display); font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2rem); font-weight: 600; letter-spacing: -.02em; color: var(--vce-yale); line-height: 1.1; margin: 0 0 .25rem; padding: 0; outline: none; }
.vce-wiz__hint { margin: 0 0 1.4rem; font-size: .95rem; color: var(--vce-gris-medio); font-weight: 300; }
.vce-wiz__group { border: 0; padding: 0; margin: 1.2rem 0 0; min-width: 0; }
.vce-wiz__lbl { display: block; font-family: var(--vce-font-display); font-weight: 500; font-size: .85rem; color: var(--vce-yale); margin: 0 0 .5rem; padding: 0; }
.vce-wiz .vce-field { display: flex; flex-direction: column; gap: .4rem; margin-top: 1.2rem; }
.vce-wiz .vce-field > label { font-family: var(--vce-font-display); font-weight: 500; font-size: .85rem; color: var(--vce-yale); }
.vce-wiz .vce-field--half { max-width: 380px; }
.vce-wiz abbr { text-decoration: none; color: var(--vce-bronce); }
.vce-wiz input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]), .vce-wiz select, .vce-wiz textarea {
  width: 100%; min-height: 50px; padding: .75rem 1rem; border: 1.5px solid var(--vce-color-border); border-radius: 14px;
  font-size: 1rem; font-family: var(--vce-font-body); background: #FBFBF8; color: var(--vce-gris-oscuro); transition: border-color .2s, box-shadow .2s, background .2s;
}
.vce-wiz textarea { min-height: 110px; resize: vertical; }
.vce-wiz input::placeholder, .vce-wiz textarea::placeholder { color: var(--vce-gris-medio); }
.vce-wiz input:focus-visible, .vce-wiz select:focus-visible, .vce-wiz textarea:focus-visible { outline: none; border-color: var(--vce-picton); box-shadow: 0 0 0 4px rgba(71,164,221,.2); background: var(--vce-blanco); }
.vce-wiz .vce-field--error input, .vce-wiz .vce-field--error textarea { border-color: var(--vce-rojo); box-shadow: 0 0 0 3px rgba(179,38,30,.15); }
.vce-wiz .vce-field--error > label, .vce-wiz .vce-field--error .vce-check { color: var(--vce-rojo); }

/* Tarjetas de destino */
.vce-wiz__tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; }
.vce-tile { position: relative; display: block; border-radius: 18px; overflow: hidden; aspect-ratio: 4 / 3; cursor: pointer; background: var(--vce-yale); color: #fff; box-shadow: 0 10px 24px rgba(0,48,117,.1); transition: transform .2s, box-shadow .2s; outline: 3px solid transparent; outline-offset: 2px; }
.vce-tile:hover { transform: translateY(-3px); }
.vce-tile input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.vce-tile__bg { position: absolute; inset: 0; background-size: cover; background-position: center; opacity: .9; transition: transform .5s; }
.vce-tile:hover .vce-tile__bg { transform: scale(1.05); }
.vce-tile--mexico .vce-tile__bg { background-image: linear-gradient(135deg, #1F6E8C, #2E8B57); }
.vce-tile--playa .vce-tile__bg { background-image: linear-gradient(135deg, #47A4DD, #F2C879); }
.vce-tile--europa .vce-tile__bg { background-image: linear-gradient(135deg, #7A4B94, #C18536); }
.vce-tile--asia .vce-tile__bg { background-image: linear-gradient(135deg, #B23A48, #F08A5D); }
.vce-tile--crucero .vce-tile__bg { background-image: linear-gradient(135deg, #004F77, #47A4DD); }
.vce-tile--sorpresa .vce-tile__bg { background-image: linear-gradient(135deg, #003075, #C18536); }
.vce-tile__sh { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,48,117,.05), rgba(0,48,117,.82)); }
.vce-tile__txt { position: absolute; left: .9rem; right: .9rem; bottom: .8rem; font-family: var(--vce-font-display); font-weight: 600; font-size: 1rem; text-shadow: 0 2px 8px rgba(0,0,0,.4); line-height: 1.2; }
.vce-tile__txt small { display: block; font-family: var(--vce-font-body); font-weight: 400; font-size: .75rem; opacity: .9; margin-top: .15rem; }
.vce-tile__chk { position: absolute; top: .7rem; right: .7rem; width: 26px; height: 26px; border-radius: 50%; background: rgba(255,255,255,.25); border: 2px solid #fff; display: grid; place-items: center; font-size: .8rem; opacity: 0; transform: scale(.6); transition: all .2s; }
.vce-tile:has(input:checked) { outline-color: var(--vce-bronce); }
.vce-tile:has(input:checked) .vce-tile__chk { opacity: 1; transform: none; background: var(--vce-bronce); border-color: var(--vce-bronce); }
.vce-tile:has(input:focus-visible) { outline-color: var(--vce-picton); }

/* Chips (radios y casillas) */
.vce-tchips { display: flex; flex-wrap: wrap; gap: .5rem; }
.vce-tchip { position: relative; cursor: pointer; }
.vce-tchip input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.vce-tchip span { display: inline-flex; align-items: center; min-height: 44px; padding: 0 1rem; border-radius: 999px; border: 1.5px solid var(--vce-color-border); background: var(--vce-blanco); font-family: var(--vce-font-display); font-weight: 500; font-size: .9rem; color: var(--vce-yale); transition: background .18s, border-color .18s, color .18s; }
.vce-tchip:hover span { border-color: var(--vce-picton); }
.vce-tchip input:checked + span { background: var(--vce-yale); border-color: var(--vce-yale); color: var(--vce-hueso); }
.vce-tchip input:focus-visible + span { outline: 3px solid var(--vce-picton); outline-offset: 2px; }
.vce-tchip.is-off span { opacity: .45; }
.vce-tchip.is-off { cursor: not-allowed; }

/* Contadores y edades */
.vce-wiz__people { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; }
.vce-wiz__people .vce-field { margin-top: 0; }
.vce-stp { display: flex; align-items: center; justify-content: space-between; gap: 1rem; border: 1.5px solid var(--vce-color-border); border-radius: 16px; padding: .8rem 1rem; background: #FBFBF8; }
.vce-stp b { display: block; font-family: var(--vce-font-display); color: var(--vce-yale); font-weight: 600; }
.vce-stp small { color: var(--vce-gris-medio); font-size: .78rem; }
.vce-stp__ctl { display: flex; align-items: center; gap: .6rem; }
.vce-stp__ctl button { width: 44px; height: 44px; border-radius: 50%; border: 1.5px solid var(--vce-yale); background: var(--vce-blanco); color: var(--vce-yale); font-size: 1.25rem; line-height: 1; cursor: pointer; font-family: var(--vce-font-display); transition: background .15s, color .15s; }
.vce-stp__ctl button:hover { background: var(--vce-yale); color: var(--vce-hueso); }
.vce-stp__ctl button:focus-visible { outline: 3px solid var(--vce-picton); outline-offset: 2px; }
.vce-stp__ctl output { font-family: var(--vce-font-display); font-weight: 600; font-size: 1.2rem; color: var(--vce-yale); min-width: 1.5ch; text-align: center; }
.vce-wiz__ages { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: .6rem; }
.vce-wiz .vce-wiz__ages select { width: auto; min-height: 44px; padding: .5rem 2.2rem .5rem .8rem; border-radius: 10px; }

/* Ritmo */
.vce-wiz__range { display: grid; grid-template-columns: auto 1fr auto; gap: 1rem; align-items: center; font-size: .85rem; color: var(--vce-gris-medio); }
.vce-wiz__range input[type="range"] { accent-color: var(--vce-bronce); width: 100%; min-height: 44px; }

/* Navegación */
.vce-wiz__nav { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; margin-top: 2rem; padding-top: 1.4rem; border-top: 1px solid var(--vce-color-border); }
.vce-wiz__nav-r { display: flex; gap: 1rem; align-items: center; margin-left: auto; }
.vce-wiz__skip { font: inherit; font-size: .85rem; color: var(--vce-gris-medio); background: none; border: 0; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; min-height: 44px; }
.vce-wiz__skip:hover { color: var(--vce-yale); }
.vce-wiz .vce-cotiza-form__msg { margin: 0; flex-basis: 100%; order: 3; }
.vce-wiz__form.is-sent .vce-wiz__nav-r { display: none; }

/* Pase de abordar */
.vce-wiz__side { position: sticky; top: 6rem; display: flex; flex-direction: column; gap: 1rem; }
.vce-pass { position: relative; overflow: hidden; background: var(--vce-yale); color: var(--vce-hueso); border-radius: 28px; padding: 1.75rem; box-shadow: 0 30px 70px rgba(0,48,117,.22); }
.vce-pass::before { content: ""; position: absolute; inset: -40% -30% auto auto; width: 70%; height: 90%; background: radial-gradient(closest-side, rgba(71,164,221,.45), transparent 70%); }
.vce-pass > * { position: relative; }
.vce-pass__title { font-family: var(--vce-font-display); font-weight: 600; font-size: 1.45rem; letter-spacing: -.02em; margin: .4rem 0 1.1rem; line-height: 1.15; color: var(--vce-hueso); }
.vce-pass__row { display: grid; grid-template-columns: 1fr 1fr; gap: .9rem 1rem; margin: 0; padding: 1rem 0; border-top: 1px dashed rgba(247,247,242,.3); }
.vce-pass__row--1 { grid-template-columns: 1fr; }
.vce-pass__row dt { font-family: var(--vce-font-display); font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; color: rgba(247,247,242,.6); }
.vce-pass__row dd { margin: .15rem 0 0; font-size: .98rem; font-weight: 500; color: #fff; line-height: 1.35; }
.vce-pass__row dd.is-empty { color: rgba(247,247,242,.38); font-weight: 300; }
.vce-pass__foot { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-top: .4rem; padding-top: .9rem; border-top: 1px dashed rgba(247,247,242,.3); font-size: .76rem; color: rgba(247,247,242,.7); }
.vce-pass__code { font-family: var(--vce-font-display); font-weight: 600; letter-spacing: .1em; color: #E9C48A; }
.vce-pass__notch { position: absolute; width: 26px; height: 26px; border-radius: 50%; background: var(--vce-hueso); bottom: 44px; z-index: 3; }
.vce-pass__notch--l { left: -13px; } .vce-pass__notch--r { right: -13px; }
.vce-wiz__dulce { display: flex; gap: .9rem; align-items: center; background: var(--vce-blanco); border-radius: 20px; padding: .9rem 1rem; box-shadow: 0 14px 34px rgba(0,48,117,.08); }
.vce-wiz__av { width: 52px; height: 52px; border-radius: 50%; flex: none; background: linear-gradient(135deg, var(--vce-columbia), #8FB3C6) center/cover; }
.vce-wiz__dulce b { display: block; font-family: var(--vce-font-display); color: var(--vce-yale); font-size: .92rem; }
.vce-wiz__dulce small { display: block; color: var(--vce-gris-medio); font-size: .8rem; line-height: 1.35; }
.vce-wiz__trust { list-style: none; margin: 0; padding: 0; display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; font-size: .78rem; color: var(--vce-gris-medio); }
.vce-wiz__trust li::before { content: "✓ "; color: var(--vce-bronce); font-weight: 700; }

@media (max-width: 960px) { .vce-wiz__side { position: static; } }
@media (max-width: 640px) {
  .vce-wiz { margin-top: -3rem; }
  .vce-wiz__tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vce-wiz__people { grid-template-columns: 1fr; }
  .vce-wiz__pt { font-size: .58rem; }
  .vce-wiz__nav-r { width: 100%; justify-content: space-between; }
  .vce-wiz__nav .vce-btn { flex: 1; justify-content: center; }
}

/* Visayorkina · preguntas frecuentes (v0.12.2) */
.vce-visa-faq { display: flex; flex-direction: column; gap: .6rem; margin: .5rem 0 1.5rem; }
.vce-visa-faq__title { font-family: var(--vce-font-display); font-size: var(--vce-fs-lg); font-weight: 600; letter-spacing: -.02em; color: var(--vce-yale); margin: 0 0 .4rem; }
.vce-visa-faq__item { border: 1px solid var(--vce-color-border); border-radius: 16px; background: var(--vce-hueso); }
.vce-visa-faq__item summary { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.15rem; font-weight: 600; color: var(--vce-yale); min-height: 44px; }
.vce-visa-faq__item summary::-webkit-details-marker { display: none; }
.vce-visa-faq__item summary::after { content: ""; flex: none; width: 10px; height: 10px; border-right: 1.5px solid var(--vce-bronce); border-bottom: 1.5px solid var(--vce-bronce); transform: rotate(45deg) translateY(-3px); transition: transform var(--vce-transition-base); }
.vce-visa-faq__item[open] summary::after { transform: rotate(-135deg) translateY(-2px); }
.vce-visa-faq__item summary:focus-visible { outline: 3px solid var(--vce-picton); outline-offset: 2px; border-radius: 16px; }
.vce-visa-faq__a { padding: 0 1.15rem 1rem; line-height: 1.65; color: var(--vce-gris-oscuro); }
.vce-visa-faq__a p { margin: 0 0 .6rem; }
.vce-visa-faq__a p:last-child { margin-bottom: 0; }
@media (prefers-reduced-motion: reduce) { .vce-visa-faq__item summary::after { transition: none; } }
