/* =========================================
   WIDGETS PARA PÁGINAS INTERNAS
   FAQ · Pestañas · CTA · Cita · Galería · Vídeo · Pasos · Contacto · Tabla · Accesos rápidos
   Mismo lenguaje que la portada: serif en cursiva, rótulos en mayúsculas, negro y amarillo.
   ========================================= */

/* ---- Variables por banda (todos los componentes las usan) ---- */
.usb-sec--white,.usb-sec--gray{--ux-fg:#1a1a1a;--ux-muted:#555;--ux-line:rgba(0,0,0,.16);--ux-card:#fff;--ux-ink:#000;--ux-num:rgba(0,0,0,.25);--ux-zebra:rgba(0,0,0,.035)}
.usb-sec--dark{--ux-fg:#fff;--ux-muted:#bdbdbd;--ux-line:rgba(255,255,255,.18);--ux-card:#141414;--ux-ink:var(--usb-yellow);--ux-num:rgba(255,204,0,.8);--ux-zebra:rgba(255,255,255,.04)}
.usb-sec--yellow{--ux-fg:#111;--ux-muted:#2b2b2b;--ux-line:rgba(0,0,0,.28);--ux-card:#fff;--ux-ink:#000;--ux-num:rgba(0,0,0,.4);--ux-zebra:rgba(0,0,0,.06)}
@keyframes usb-fade{from{opacity:0;transform:translateY(8px)}}

/* ---- Botón único del tema (mismo diseño del botón del hero) ---- */
.usb-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 36px;
  font-family:var(--font-main);font-weight:800;font-size:.95rem;line-height:1.2;letter-spacing:1px;text-transform:uppercase;text-decoration:none;
  border:2px solid transparent;border-radius:8px;cursor:pointer;
  background-color:var(--usb-black);color:var(--usb-yellow);box-shadow:0 10px 20px rgba(0,0,0,.2);
  transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),background-color .22s ease-out,color .22s ease-out,border-color .22s ease-out;
}
.usb-btn:hover,.usb-btn:focus-visible{transform:translateY(-5px);box-shadow:0 15px 30px rgba(0,0,0,.3)}
.usb-btn:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.usb-btn span:not(.usb-btn__ar){display:inline-block}
.usb-btn span,.usb-btn__ar{display:inline-block;overflow:hidden;white-space:nowrap;width:1.15em;text-align:left;font-size:1.2em}
.usb-btn:hover span,.usb-btn:focus-visible span{animation:arrow-text-through .38s both}
.usb-btn--s{padding:11px 24px;font-size:.8rem}
.usb-btn--l{padding:20px 52px;font-size:1.05rem}
.usb-btn--dark:hover,.usb-btn--dark:focus-visible{background-color:#222}
.usb-btn--yellow,.usb-btn--primary{background-color:var(--usb-yellow);color:#000}
.usb-btn--yellow:hover,.usb-btn--primary:hover,.usb-btn--yellow:focus-visible,.usb-btn--primary:focus-visible{background-color:#000;color:var(--usb-yellow)}
.usb-btn--ghost{background-color:transparent;color:inherit;border-color:currentColor;box-shadow:none}
.usb-btn--ghost:hover,.usb-btn--ghost:focus-visible{background-color:var(--usb-yellow);color:#000;border-color:var(--usb-yellow)}
.usb-btnw{display:block}
.usb-btnw--full .usb-btn{display:flex;width:100%}
/* Texto y título sueltos (para usar dentro de contenedores y tarjetas) */
.usb-text{font-family:var(--font-main);line-height:1.7}
.usb-text>*:first-child{margin-top:0}.usb-text>*:last-child{margin-bottom:0}
.usb-text a{color:inherit;text-decoration:underline;text-decoration-color:var(--usb-yellow);text-underline-offset:3px;text-decoration-thickness:2px}
.usb-heading__eyebrow{display:block;font-weight:800;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;margin-bottom:.6em;opacity:.75}
.usb-heading__t{margin:0;font-family:var(--font-serif,"Times New Roman",serif);font-style:italic;font-weight:400;line-height:1.1}
.usb-heading--rule .usb-heading__t::after{content:"";display:block;width:56px;height:3px;background:var(--usb-yellow);margin-top:.6em}
@media (max-width:600px){.usb-btn{padding:15px 28px}}

/* =============== 1. PREGUNTAS FRECUENTES =============== */
.usb-faq{max-width:920px;border-top:3px solid var(--ux-ink)}
.usb-faq__item{border-bottom:1px solid var(--ux-line);transition:background-color .2s var(--usb-ease-out,ease-out)}
.usb-faq__item summary{list-style:none;display:flex;align-items:center;gap:clamp(14px,3vw,30px);padding:24px 8px;cursor:pointer;color:var(--ux-fg)}
.usb-faq__item summary::-webkit-details-marker{display:none}
.usb-faq__n{flex:0 0 auto;min-width:2.1ch;font-family:var(--font-serif);font-style:italic;font-size:clamp(1.6rem,3.4vw,2.4rem);line-height:1;color:var(--ux-num);transition:color .2s}
.usb-faq__q{flex:1;font-family:var(--font-serif);font-style:italic;font-size:clamp(1.25rem,2.4vw,1.8rem);line-height:1.25}
.usb-faq__i{flex:0 0 auto;position:relative;width:36px;height:36px;border-radius:50%;background:var(--usb-yellow);transition:transform .22s var(--usb-ease-out,ease-out)}
.usb-faq__i::before,.usb-faq__i::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;margin:-1px 0 0 -7px;background:#000}
.usb-faq__i::after{transform:rotate(90deg)}
.usb-faq__item[open]{background:rgba(255,204,0,.12);box-shadow:inset 5px 0 0 var(--usb-yellow)}
.usb-faq__item[open] .usb-faq__i{transform:rotate(45deg)}
.usb-faq__item[open] .usb-faq__n{color:var(--ux-ink)}
.usb-faq__item summary:hover .usb-faq__q{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.usb-faq__a{padding:0 64px 30px calc(2.1ch + clamp(14px,3vw,30px) + 16px);color:var(--ux-muted);font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.75;animation:usb-fade .22s ease-out}
.usb-faq__a p{margin:0 0 1em}
@media (max-width:600px){.usb-faq__a{padding:0 12px 26px}.usb-faq__n{display:none}}

/* =============== 2. PESTAÑAS =============== */
.usb-tabs__list{display:none}
html.usb-js .usb-tabs__list{display:flex;overflow-x:auto;border-bottom:4px solid var(--ux-ink);scrollbar-width:thin}
.usb-tabs__tab{flex:0 0 auto;appearance:none;border:0;background:transparent;color:var(--ux-fg);font:800 13px/1 var(--font-main);letter-spacing:.16em;text-transform:uppercase;padding:22px clamp(18px,3vw,32px);cursor:pointer;white-space:nowrap;transition:background-color .2s var(--usb-ease-out,ease-out),color .2s}
.usb-tabs__tab:hover{background:rgba(255,204,0,.3)}
.usb-tabs__tab[aria-selected="true"]{background:var(--usb-yellow);color:#000}
.usb-tabs__panel{display:grid;gap:clamp(24px,4vw,60px);align-items:center;padding:clamp(30px,5vw,56px) 0 0}
.usb-tabs__panel--img{grid-template-columns:1.15fr 1fr}
.usb-tabs__panel:not([hidden]){animation:usb-fade .22s ease-out}
.usb-tabs__ph{display:block;margin:28px 0 8px;font:800 12px/1 var(--font-main);letter-spacing:.2em;text-transform:uppercase;color:var(--ux-ink)}
html.usb-js .usb-tabs__ph{display:none}
.usb-tabs__panel h3{margin:0 0 16px;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(1.8rem,3.6vw,2.9rem);line-height:1.1;color:var(--ux-fg)}
.usb-tabs__body{color:var(--ux-muted);font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.8}
.usb-tabs__media{position:relative}
.usb-tabs__media::before{content:"";position:absolute;inset:16px -16px -16px 16px;background:var(--usb-yellow)}
.usb-tabs__media img{position:relative;display:block;width:100%;height:auto;max-width:100%}
@media (max-width:800px){.usb-tabs__panel--img{grid-template-columns:1fr}.usb-tabs__media{margin-right:16px}}

/* =============== 3. LLAMADA A LA ACCIÓN =============== */
.usb-cta{position:relative;overflow:hidden;padding:clamp(64px,10vw,130px) 0;background:radial-gradient(900px 420px at 90% -10%,rgba(255,204,0,.22),transparent 62%),var(--usb-black);color:#fff}
.usb-cta--yellow{background:var(--usb-yellow);color:#000}
.usb-cta .container{position:relative;z-index:1;display:grid;gap:clamp(26px,4vw,48px);align-items:center}
.usb-cta--left .container{grid-template-columns:minmax(0,1.6fr) auto}
.usb-cta--center .container{text-align:center;justify-items:center}
.usb-cta__label{display:inline-block;margin:0 0 18px;padding:7px 14px;background:var(--usb-yellow);color:#000;font:800 12px/1 var(--font-main);letter-spacing:.2em}
.usb-cta--yellow .usb-cta__label{background:#000;color:var(--usb-yellow)}
.usb-cta h2{margin:0;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(2.4rem,6.4vw,5rem);line-height:1.02;letter-spacing:-.01em;text-wrap:balance}
.usb-cta h2 em{color:var(--usb-yellow)}
.usb-cta--yellow h2 em{color:#000;text-decoration:underline;text-decoration-thickness:.07em;text-underline-offset:.12em}
.usb-cta p{max-width:52ch;margin:22px 0 0;font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.6;opacity:.9}
.usb-cta--center p{margin-left:auto;margin-right:auto}
.usb-cta__actions{display:flex;flex-wrap:wrap;gap:14px}
.usb-cta--center .usb-cta__actions{justify-content:center}
.usb-cta--yellow .usb-btn--primary{background:#000;color:var(--usb-yellow)}
.usb-cta--yellow .usb-btn--primary:hover{background:#fff;color:#000;border-color:#000}
.usb-cta--yellow .usb-btn--ghost:hover{background:#000;color:var(--usb-yellow);border-color:#000}
.usb-cta__mark{position:absolute;right:-1vw;bottom:-.16em;z-index:0;font-family:var(--font-main);font-weight:900;text-transform:uppercase;letter-spacing:-.02em;font-size:clamp(6rem,19vw,17rem);line-height:.8;white-space:nowrap;color:rgba(255,204,0,.08);pointer-events:none;user-select:none}
.usb-cta--yellow .usb-cta__mark{color:rgba(0,0,0,.07)}
@media (max-width:900px){.usb-cta--left .container{grid-template-columns:1fr}}

/* =============== 4. MENSAJE / CITA =============== */
.usb-quote{padding:clamp(64px,9vw,120px) 0;overflow:hidden;background:var(--usb-black);color:#fff}
.usb-quote--yellow{background:var(--usb-yellow);color:#000}
.usb-quote--white{background:#fff;color:#1a1a1a}
.usb-quote--gray{background:var(--light-gray);color:#1a1a1a}
.usb-quote__fig{margin:0;display:grid;grid-template-columns:minmax(220px,360px) minmax(0,1fr);gap:clamp(28px,6vw,80px);align-items:center}
.usb-quote--img-none .usb-quote__fig{grid-template-columns:minmax(0,1fr)}
.usb-quote--img-right .usb-quote__fig{grid-template-columns:minmax(0,1fr) minmax(220px,360px)}
.usb-quote--img-right .usb-quote__photo{order:2}
.usb-quote__photo{position:relative;margin-right:18px}
.usb-quote--img-right .usb-quote__photo{margin:0 0 0 18px}
.usb-quote__photo::before{content:"";position:absolute;inset:18px -18px -18px 18px;background:var(--usb-yellow)}
.usb-quote--yellow .usb-quote__photo::before{background:#000}
.usb-quote__photo img{position:relative;display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.usb-quote blockquote{position:relative;margin:0}
.usb-quote blockquote::before{content:"\201C";display:block;height:.55em;font-family:var(--font-serif);font-size:clamp(8rem,18vw,15rem);line-height:.8;color:var(--usb-yellow)}
.usb-quote--yellow blockquote::before{color:#000}
.usb-quote--white blockquote::before,.usb-quote--gray blockquote::before{color:var(--usb-yellow);-webkit-text-stroke:2px #000}
.usb-quote blockquote p{margin:0 0 28px;font-family:var(--font-serif);font-style:italic;font-size:clamp(1.6rem,3.4vw,2.9rem);line-height:1.2;text-wrap:balance}
.usb-quote__name{display:block;font-style:normal;font-weight:800;font-size:14px;letter-spacing:.16em;text-transform:uppercase}
.usb-quote__role{display:block;margin-top:6px;font-size:15px;opacity:.75}
@media (max-width:800px){.usb-quote__fig,.usb-quote--img-right .usb-quote__fig{grid-template-columns:minmax(0,1fr)}.usb-quote--img-right .usb-quote__photo{order:0}.usb-quote__photo{max-width:320px}}

/* =============== 5. GALERÍA =============== */
.usb-gallery{--usb-gcols:var(--usb-gcols-d,3);display:grid;grid-template-columns:repeat(var(--usb-gcols),minmax(0,1fr));grid-auto-rows:clamp(150px,22vw,270px);gap:clamp(10px,1.6vw,18px)}
.usb-gallery--mosaic .usb-gallery__item:nth-child(7n+1){grid-column:span 2;grid-row:span 2}
.usb-gallery--mosaic .usb-gallery__item:nth-child(7n+4){grid-row:span 2}
.usb-gallery__item{position:relative;display:block;overflow:hidden;background:#222}
[class*="elementor-widget-usb_"] .usb-gallery__item img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;transition:transform .35s var(--usb-ease-out,ease-out)}
.usb-gallery__item:hover img,.usb-gallery__item:focus-visible img{transform:scale(1.05)}
.usb-gallery__cap{position:absolute;left:0;right:0;bottom:0;padding:40px 16px 14px;color:#fff;font-size:14px;line-height:1.4;background:linear-gradient(transparent,rgba(0,0,0,.82));transform:translateY(100%);transition:transform .22s var(--usb-ease-out,ease-out)}
.usb-gallery__item:hover .usb-gallery__cap,.usb-gallery__item:focus-visible .usb-gallery__cap{transform:none}
@media (hover:none){.usb-gallery__cap{transform:none}}
@media (max-width:900px){.usb-gallery{--usb-gcols:2}}
.usb-lightbox{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#fff}
.usb-lightbox::backdrop{background:rgba(0,0,0,.93)}
.usb-lightbox__stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:56px 64px}
.usb-lightbox figure{margin:0;max-width:100%;text-align:center}
.usb-lightbox figure img{display:block;margin:0 auto;max-width:min(92vw,1400px);max-height:78vh;width:auto;height:auto;object-fit:contain}
.usb-lightbox figcaption{margin-top:14px;font-size:15px;line-height:1.5;color:#ddd}
.usb-lightbox__btn{position:absolute;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:0;border-radius:50%;background:var(--usb-yellow);color:#000;font-size:18px;cursor:pointer;transition:transform .2s var(--usb-ease-out,ease-out)}
.usb-lightbox__btn:hover{transform:scale(1.08)}
.usb-lightbox__close{top:14px;right:14px}
.usb-lightbox__prev{left:12px;top:50%;margin-top:-24px}
.usb-lightbox__next{right:12px;top:50%;margin-top:-24px}
@media (max-width:600px){.usb-lightbox__stage{padding:64px 12px 56px}.usb-lightbox__prev,.usb-lightbox__next{top:auto;bottom:10px;margin:0}.usb-lightbox__prev{left:calc(50% - 56px)}.usb-lightbox__next{right:calc(50% - 56px)}}

/* =============== 6. VÍDEO =============== */
.usb-sec--video{overflow:hidden}
.usb-video{max-width:1000px;margin:0 auto}
.usb-video__frame{position:relative;aspect-ratio:16/9;background:#000;box-shadow:18px 18px 0 var(--usb-yellow);margin-right:18px}
.usb-sec--yellow .usb-video__frame{box-shadow:18px 18px 0 #000}
[class*="elementor-widget-usb_"] .usb-video__frame img,.usb-video__frame iframe,.usb-video__frame video{position:absolute;inset:0;width:100%;height:100%;max-width:none;border:0;object-fit:cover}
.usb-video__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border:0;background:rgba(0,0,0,.28);cursor:pointer;transition:background-color .22s var(--usb-ease-out,ease-out)}
.usb-video__play:hover{background:rgba(0,0,0,.12)}
.usb-video__play span{display:flex;align-items:center;justify-content:center;width:clamp(64px,9vw,104px);height:clamp(64px,9vw,104px);border-radius:50%;background:var(--usb-yellow);color:#000;font-size:clamp(1.4rem,3vw,2.2rem);padding-left:.12em;transition:transform .22s var(--usb-ease-out,ease-out)}
.usb-video__play:hover span{transform:scale(1.08)}
.usb-video__cap{margin:34px 0 0;font-family:var(--font-serif);font-style:italic;font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.4;color:var(--ux-fg)}
.usb-video__note{margin:14px 0 0;font-size:12px;color:var(--ux-muted)}

/* =============== 7. PASOS =============== */
.usb-steps{list-style:none;margin:0;padding:0}
.usb-steps.usb-dyn{--usb-gap:30px;row-gap:42px}
.usb-step{position:relative;padding:28px 6px 6px 0;border-top:4px solid var(--ux-ink)}
.usb-step::before{content:"";position:absolute;top:-4px;left:0;width:64px;height:4px;background:var(--usb-yellow)}
.usb-step__n{display:block;margin-bottom:14px;font-family:var(--font-serif);font-style:italic;font-size:clamp(4rem,8vw,6.5rem);line-height:.9;color:transparent;-webkit-text-stroke:2px var(--ux-ink);transition:color .22s var(--usb-ease-out,ease-out)}
.usb-step:hover .usb-step__n{color:var(--usb-yellow)}
.usb-step__tag{display:inline-block;margin-bottom:12px;padding:4px 10px;background:var(--usb-yellow);color:#000;font:800 11px/1.4 var(--font-main);letter-spacing:.14em;text-transform:uppercase}
.usb-step h3{margin:0 0 10px;font:800 clamp(1rem,1.5vw,1.2rem)/1.3 var(--font-main);letter-spacing:.08em;text-transform:uppercase;color:var(--ux-fg)}
.usb-step p{margin:0;color:var(--ux-muted);font-size:clamp(1rem,1.4vw,1.1rem);line-height:1.7}
@media (max-width:900px){.usb-steps.usb-dyn.usb-dyn{--usb-cols:2}}
@media (max-width:600px){.usb-steps.usb-dyn.usb-dyn{--usb-cols:1}}

/* =============== 8. CONTACTO =============== */
.usb-contacts.usb-dyn{--usb-gap:24px;row-gap:24px}
.usb-contact{background:var(--ux-card);border:1px solid var(--ux-line);border-top:6px solid var(--usb-yellow);padding:30px 28px 28px;color:var(--ux-fg);transition:transform .22s var(--usb-ease-out,ease-out),box-shadow .22s var(--usb-ease-out,ease-out)}
.usb-contact:hover{transform:translateY(-6px);box-shadow:0 18px 35px rgba(0,0,0,.16)}
.usb-contact h3{margin:0 0 8px;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.15;color:inherit}
.usb-contact__text{margin:0 0 18px;color:var(--ux-muted);line-height:1.6}
.usb-contact ul{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:14px}
.usb-contact li{display:flex;gap:14px;align-items:flex-start;font-size:15px;line-height:1.5}
.usb-contact li i{flex:0 0 34px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--usb-yellow);color:#000;font-size:14px}
.usb-contact li > span{padding-top:5px;min-width:0;overflow-wrap:anywhere}
.usb-contact a{color:inherit;text-underline-offset:3px}
.usb-contact__map{display:inline-flex;align-items:center;gap:10px;margin-top:22px;font:800 12px/1 var(--font-main);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border-bottom:3px solid var(--usb-yellow);padding-bottom:6px}
.usb-contact__map span{display:inline-block;overflow:hidden;white-space:nowrap;width:1.15em}
.usb-contact__map:hover span{animation:arrow-text-through .38s both}
@media (max-width:1024px){.usb-contacts.usb-dyn.usb-dyn{--usb-cols:2}}
@media (max-width:600px){.usb-contacts.usb-dyn.usb-dyn{--usb-cols:1}}

/* =============== 9. TABLA =============== */
.usb-table-wrap{border-top:4px solid var(--ux-ink)}
.usb-table{width:100%;border-collapse:collapse;font-size:clamp(.95rem,1.4vw,1.1rem);color:var(--ux-fg)}
.usb-table thead th{padding:16px 20px;background:var(--usb-black);color:var(--usb-yellow);text-align:left;font:800 12px/1.3 var(--font-main);letter-spacing:.16em;text-transform:uppercase}
.usb-sec--dark .usb-table thead th{background:var(--usb-yellow);color:#000}
.usb-table td,.usb-table tbody th{padding:17px 20px;border-bottom:1px solid var(--ux-line);text-align:left;vertical-align:top}
.usb-table tbody th{font-weight:800}
.usb-table tbody tr:nth-child(even) > *{background:var(--ux-zebra)}
.usb-table tbody tr{transition:background-color .2s}
.usb-table tbody tr:hover > *{background:rgba(255,204,0,.22)}
@media (max-width:700px){
  .usb-table thead{position:absolute;left:-9999px}
  .usb-table,.usb-table tbody,.usb-table tr,.usb-table td,.usb-table tbody th{display:block;width:100%}
  .usb-table tr{margin-bottom:16px;border:1px solid var(--ux-line);border-left:5px solid var(--usb-yellow)}
  .usb-table td,.usb-table tbody th{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--ux-line);padding:12px 16px}
  .usb-table td::before,.usb-table tbody th::before{content:attr(data-label);flex:0 0 38%;font:800 11px/1.5 var(--font-main);letter-spacing:.12em;text-transform:uppercase;color:var(--ux-muted)}
  .usb-table td:last-child{border-bottom:0}
}

/* =============== 10. ACCESOS RÁPIDOS =============== */
.usb-ql-grid.usb-dyn{--usb-gap:16px;row-gap:16px}
.usb-ql{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:40px;min-height:230px;padding:28px 26px;overflow:hidden;background:var(--usb-black);color:#fff;text-decoration:none;
  transition:background-color .22s var(--usb-ease-out,ease-out),color .22s var(--usb-ease-out,ease-out),transform .22s var(--usb-ease-out,ease-out)}
.usb-sec--dark .usb-ql{background:var(--ux-card);border:1px solid #2a2a2a}
.usb-sec--yellow .usb-ql{background:#000}
.usb-ql > i{font-size:2.3rem;color:var(--usb-yellow);transition:color .22s var(--usb-ease-out,ease-out)}
.usb-ql__txt{display:block}
.usb-ql__txt strong{display:block;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(1.4rem,2.3vw,2rem);line-height:1.15}
.usb-ql__txt span{display:block;margin-top:8px;font-size:15px;line-height:1.5;opacity:.8}
.usb-ql__arrow{position:absolute;top:22px;right:24px;display:inline-block;overflow:hidden;white-space:nowrap;width:1.15em;font-size:1.5rem;font-weight:800;color:var(--usb-yellow);transition:color .22s}
a.usb-ql:hover,a.usb-ql:focus-visible{background:var(--usb-yellow);color:#000;transform:translateY(-6px)}
a.usb-ql:hover > i,a.usb-ql:hover .usb-ql__arrow,a.usb-ql:focus-visible > i{color:#000}
a.usb-ql:hover .usb-ql__arrow,a.usb-ql:focus-visible .usb-ql__arrow{animation:arrow-text-through .38s both}
.usb-sec--dark a.usb-ql:hover{background:var(--usb-yellow)}
@media (max-width:1024px){.usb-ql-grid.usb-dyn.usb-dyn{--usb-cols:2}}
@media (max-width:600px){.usb-ql-grid.usb-dyn.usb-dyn{--usb-cols:1}.usb-ql{min-height:170px}}

/* =============== 11. ICONOS Y BENEFICIOS =============== */
.usb-features.usb-dyn{--usb-gap:26px;row-gap:26px}
.usb-feature{position:relative;display:block;overflow:hidden;padding:42px 28px 32px;background:var(--ux-card);color:var(--ux-muted);border:1px solid var(--ux-line);text-decoration:none;
  transition:transform .22s var(--usb-ease-out,ease-out),box-shadow .22s var(--usb-ease-out,ease-out)}
.usb-feature::before{content:"";position:absolute;left:0;top:0;right:0;height:6px;background:var(--usb-yellow)}
a.usb-feature:hover,a.usb-feature:focus-visible,div.usb-feature:hover{transform:translateY(-6px);box-shadow:0 18px 35px rgba(0,0,0,.16)}
.usb-feature__icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin-bottom:22px;border-radius:50%;background:#000;color:var(--usb-yellow);font-size:26px;
  transition:background-color .22s var(--usb-ease-out,ease-out),color .22s var(--usb-ease-out,ease-out)}
.usb-sec--dark .usb-feature__icon{background:var(--usb-yellow);color:#000}
.usb-feature:hover .usb-feature__icon{background:var(--usb-yellow);color:#000}
.usb-feature h3{margin:0 0 10px;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(1.4rem,2.2vw,1.85rem);line-height:1.15;color:var(--ux-fg)}
.usb-feature p{margin:0;font-size:1rem;line-height:1.65}
@media (max-width:1024px){.usb-features.usb-dyn.usb-dyn{--usb-cols:2}}
@media (max-width:600px){.usb-features.usb-dyn.usb-dyn{--usb-cols:1}}

/* =============== 12. FICHA DE DATOS =============== */
.usb-facts{margin:0}
.usb-facts.usb-dyn{--usb-gap:30px;row-gap:6px}
.usb-fact{padding:28px 26px 30px 0;border-bottom:1px solid var(--ux-line)}
.usb-fact dt{display:inline-block;margin:0 0 14px;padding-bottom:7px;border-bottom:3px solid var(--usb-yellow);font:800 12px/1.2 var(--font-main);letter-spacing:.2em;text-transform:uppercase;color:var(--ux-fg)}
.usb-fact dd{margin:0;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(1.8rem,3.4vw,2.9rem);line-height:1.1;color:var(--ux-fg)}
.usb-fact__note{display:block;margin-top:10px;font-family:var(--font-main);font-style:normal;font-size:14px;line-height:1.5;color:var(--ux-muted)}
@media (max-width:900px){.usb-facts.usb-dyn.usb-dyn{--usb-cols:2}}
@media (max-width:560px){.usb-facts.usb-dyn.usb-dyn{--usb-cols:1}}

/* =============== 13. VALORES (tarjetas + ventana) =============== */
.usb-vals{--usb-ico:30px;--g:clamp(16px,2vw,28px);--c:var(--usb-vcols-d,5);display:flex;flex-wrap:wrap;justify-content:center;gap:calc(var(--g) + 8px) var(--g)}
@media (max-width:1099px){.usb-vals{--c:min(var(--usb-vcols-d,5),2)}}
@media (max-width:599px){.usb-vals{--c:var(--usb-vcols-m,2);--g:12px}}

/* Tarjetas como las del home: blancas, sombra suave, trazado negro al pasar el cursor, flecha en la esquina.
   Prefijo .usb-vals para ganarle a los estilos de botón del kit de Elementor */
.usb-vals .usb-val{
  --r:12px;
  position:relative;flex:0 0 calc((100% - (var(--c) - 1) * var(--g)) / var(--c));min-width:0;box-sizing:border-box;
  display:flex;flex-direction:column;align-items:flex-start;gap:0;
  padding:clamp(24px,2.4vw,30px) clamp(20px,2vw,26px) 76px;
  appearance:none;font:inherit;text-align:left;text-transform:none;letter-spacing:normal;cursor:pointer;
  color:#000;background:#fff;border:0;border-radius:var(--r);
  box-shadow:0 2px 6px rgba(0,0,0,.07),0 20px 36px -20px rgba(0,0,0,.35);
  transition:transform .3s var(--usb-ease-out,cubic-bezier(.23,1,.32,1)),box-shadow .3s var(--usb-ease-out,ease-out);
  -webkit-tap-highlight-color:transparent;
}
.usb-vals .usb-val:hover,.usb-vals .usb-val:focus-visible{transform:translateY(-8px) scale(1.03);box-shadow:0 2px 6px rgba(0,0,0,.1),0 30px 46px -20px rgba(0,0,0,.5)}
.usb-vals .usb-val:focus-visible{outline:3px solid #000;outline-offset:5px}
@supports selector(:has(*)){.usb-vals:has(.usb-val:hover) .usb-val:not(:hover){transform:scale(.98)}}


/* Icono: círculo amarillo con el SVG en negro; al pasar el cursor gira y se invierte */
.usb-val__ico{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:calc(var(--usb-ico) * 1.9);height:calc(var(--usb-ico) * 1.9);margin-bottom:18px;border-radius:50%;background:var(--usb-yellow);color:#000;font-size:var(--usb-ico);
  transition:transform .5s cubic-bezier(.34,1.56,.64,1),background-color .22s ease-out,color .22s ease-out}
.usb-vals .usb-val:hover .usb-val__ico,.usb-vals .usb-val:focus-visible .usb-val__ico{transform:rotate(-12deg) scale(1.12);background:#000;color:var(--usb-yellow)}
.usb-vals--color .usb-val__ico{background:#fff;box-shadow:0 0 0 2px var(--usb-yellow)}
.usb-vals--color .usb-val:hover .usb-val__ico,.usb-vals--color .usb-val:focus-visible .usb-val__ico{background:#fff;box-shadow:0 0 0 3px #000}
.usb-val__mask{display:block;width:var(--usb-ico);height:var(--usb-ico);background:currentColor;-webkit-mask:var(--usb-svg) center/contain no-repeat;mask:var(--usb-svg) center/contain no-repeat}
.usb-val__ico img{display:block;width:var(--usb-ico);height:var(--usb-ico);max-width:none;object-fit:contain}
.usb-vals--color .usb-val__ico img{width:calc(var(--usb-ico) * 1.25);height:calc(var(--usb-ico) * 1.25)}

.usb-val__t{position:relative;z-index:1;font-family:var(--font-serif);font-weight:700;font-size:clamp(1.2rem,1.7vw,1.5rem);line-height:1.15;color:#000;overflow-wrap:anywhere}
.usb-val__t::after{content:"";display:block;width:36px;height:4px;margin:12px 0 0;background:var(--usb-yellow);transition:width .5s var(--usb-ease-out,cubic-bezier(.23,1,.32,1))}
.usb-vals .usb-val:hover .usb-val__t::after{width:72px}
.usb-val__d{position:relative;z-index:1;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;margin-top:12px;font-size:clamp(.88rem,1.05vw,.96rem);line-height:1.6;color:#4a4a4a}

/* Flecha del home: cuadro pegado a la esquina; sale por la derecha y vuelve por la izquierda */
.usb-val__go{position:absolute;right:0;bottom:0;z-index:2;display:flex;align-items:center;justify-content:center;width:45px;height:45px;overflow:hidden;border-radius:0 0 var(--r) 0;background:#000;color:#fff;box-shadow:0 5px 15px rgba(0,0,0,.12);transition:background-color .25s,color .25s}
.usb-val__go svg{width:20px;height:20px;stroke-width:3}
.usb-vals .usb-val:hover .usb-val__go,.usb-vals .usb-val:focus-visible .usb-val__go{background:var(--usb-yellow);color:#000}
.usb-vals .usb-val:hover .usb-val__go svg,.usb-vals .usb-val:focus-visible .usb-val__go svg{animation:arrow-through .38s both}
@media (hover:none){.usb-vals .usb-val:active{transform:translateY(-4px)}}
@media (max-width:599px){
  .usb-vals .usb-val{--r:10px;padding:20px 14px 70px}
  .usb-val__ico{width:calc(var(--usb-ico) * 1.6);height:calc(var(--usb-ico) * 1.6);margin-bottom:14px}
}
@media (prefers-reduced-motion:reduce){.usb-vals .usb-val,.usb-vals .usb-val *{transition-duration:.01s!important;animation:none!important}.usb-vals .usb-val:hover{transform:none}}

/* Sin JavaScript o sin <dialog>: los textos completos se muestran debajo */
.usb-vals__details{display:none}
html:not(.usb-js) .usb-vals__details[hidden],.usb-vals--inline .usb-vals__details[hidden]{display:block;flex:0 0 100%;margin-top:26px;color:var(--ux-muted);line-height:1.7}

/* Ventana emergente */
html.usb-modal-open{overflow:hidden}
@keyframes usb-pop{from{opacity:0;transform:translateY(14px) scale(.96)}}
.usb-valmodal{position:fixed;inset:0;margin:auto;width:min(780px,calc(100vw - 28px));height:fit-content;max-height:min(90vh,880px);padding:0;border:0;background:transparent;overflow:visible;color:#1a1a1a}
.usb-valmodal::backdrop{background:rgba(0,0,0,.84)}
.usb-valmodal[open]{animation:usb-pop .24s cubic-bezier(.23,1,.32,1)}
.usb-valmodal__panel{position:relative;max-height:min(90vh,880px);overflow:auto;background:#fff;border-top:10px solid var(--usb-yellow);border-radius:28px;text-align:center;
  padding:clamp(34px,5vw,58px) clamp(22px,5vw,64px) clamp(28px,4vw,44px);box-shadow:0 30px 80px rgba(0,0,0,.45)}
.usb-valmodal__num{display:block;margin-bottom:22px;font:800 12px/1 var(--font-main);letter-spacing:.22em;color:#777}
.usb-valmodal__ico{display:flex;align-items:center;justify-content:center;width:100px;height:100px;margin:0 auto 24px;border-radius:50%;background:var(--usb-yellow);color:#000;font-size:46px}
.usb-valmodal__ico .usb-val__mask{width:50px;height:50px}
.usb-valmodal__ico img{width:50px;height:50px;max-width:none;object-fit:contain}
.usb-valmodal__title{margin:0;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(2.5rem,7vw,4.8rem);line-height:1.02;color:#000;text-wrap:balance;overflow-wrap:anywhere}
.usb-valmodal__title::after{content:"";display:block;width:72px;height:5px;margin:24px auto 26px;background:var(--usb-yellow)}
.usb-valmodal__body{max-width:60ch;margin:0 auto;text-align:left;font-size:clamp(1.02rem,1.5vw,1.2rem);line-height:1.8;color:#444;text-wrap:pretty}
.usb-valmodal__body p{margin:0 0 1em}
.usb-valmodal__body > :last-child{margin-bottom:0}
.usb-valmodal .usb-valmodal__close{position:absolute;top:16px;right:16px;display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border:0;border-radius:50%;background:#000;color:var(--usb-yellow);font-size:18px;cursor:pointer;transition:transform .2s var(--usb-ease-out,ease-out)}
.usb-valmodal .usb-valmodal__close:hover{transform:scale(1.08)}
.usb-valmodal__nav{display:flex;justify-content:center;gap:12px;margin-top:32px}
.usb-valmodal .usb-valmodal__btn{display:flex;align-items:center;justify-content:center;width:50px;height:50px;padding:0;border:2px solid #000;border-radius:50%;background:var(--usb-yellow);color:#000;font-size:16px;cursor:pointer;transition:background-color .2s var(--usb-ease-out,ease-out),color .2s var(--usb-ease-out,ease-out)}
.usb-valmodal .usb-valmodal__btn:hover{background:#000;color:var(--usb-yellow)}
.usb-valmodal__nav[hidden]{display:none}

/* Valores: iconos con sus colores originales */
.usb-valmodal__ico img{display:block;width:64px;height:64px;object-fit:contain}
.usb-vals--color .usb-valmodal__ico{background:#fff;box-shadow:0 0 0 3px var(--usb-yellow)}

/* Valores · ventana: esquinas discretas, todo alineado a la izquierda, icono pequeño */
.usb-valmodal{width:min(860px,calc(100vw - 28px))}
.usb-valmodal__panel{border-radius:8px;text-align:left;padding:clamp(30px,5vw,56px) clamp(22px,5vw,60px) clamp(26px,4vw,44px)}
.usb-valmodal__num{margin-bottom:18px}
.usb-valmodal__ico,.usb-vals--color .usb-valmodal__ico{width:56px;height:56px;margin:0 0 20px;border-radius:12px;font-size:26px;box-shadow:none}
.usb-valmodal__ico .usb-val__mask{width:30px;height:30px}
.usb-valmodal__ico img,.usb-vals--color .usb-valmodal__ico img{width:40px;height:40px}
.usb-vals--color .usb-valmodal__ico{background:transparent}
.usb-valmodal__title{padding-right:56px;font-size:clamp(2.8rem,8vw,5.6rem);text-wrap:pretty}
.usb-valmodal__title::after{margin:22px 0 28px}
.usb-valmodal__body{max-width:none;margin:0;font-size:clamp(1.02rem,1.4vw,1.15rem);line-height:1.85}
.usb-valmodal__nav{justify-content:flex-start;margin-top:34px}
.usb-valmodal .usb-valmodal__close{border-radius:8px}
.usb-valmodal .usb-valmodal__btn{border-radius:8px}

/* ============ 14. ENCABEZADO MANIFIESTO (dos líneas + rótulos) ============ */
.usb-mh{--mh-fg:#000;--mh-hl:#000;--mh-ul:var(--usb-yellow);--mh-lab:#000;background:#fff;color:var(--mh-fg);overflow:hidden;
  padding:clamp(54px,9vw,120px) 0 clamp(54px,8vw,110px)}
.usb-mh--dark{--mh-fg:#fff;--mh-hl:var(--usb-yellow);--mh-ul:var(--usb-yellow);--mh-lab:#fff;background:#000}
.usb-mh--yellow{--mh-fg:#000;--mh-hl:#000;--mh-ul:#000;--mh-lab:#000;background:var(--usb-yellow)}
.usb-mh .usb-breadcrumbs{margin-bottom:28px}
.usb-mh__stack{--fs:clamp(2.6rem,6.6vw,6.6rem);--ind:calc(var(--fs) * 3.9);position:relative}
.usb-mh__title{margin:0;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:var(--fs);line-height:.98;letter-spacing:-.015em;color:var(--mh-fg)}
.usb-mh__l1,.usb-mh__l2{display:block;will-change:transform}
.usb-mh__l1{padding-bottom:.04em}
.usb-mh__l2{margin-left:var(--ind);color:var(--mh-hl);text-decoration:underline;text-decoration-color:var(--mh-ul);text-decoration-thickness:.045em;text-underline-offset:.1em}
.usb-mh--light .usb-mh__l2{text-decoration-color:var(--usb-yellow)}
.usb-mh__labels{position:absolute;left:0;width:var(--ind);top:calc(var(--fs) * 1.5);transform:translateY(-50%);margin:0;padding:0 clamp(12px,1.6vw,26px) 0 0;list-style:none;text-align:right}
.usb-mh__labels li{margin:0;padding:.34em 0}
.usb-mh__label{display:inline-block;font:700 clamp(.7rem,1.05vw,.95rem)/1.2 var(--font-main);letter-spacing:.42em;text-transform:uppercase;color:var(--mh-lab);text-decoration:none;margin-right:-.42em}
a.usb-mh__label{transition:color .2s}
a.usb-mh__label:hover,a.usb-mh__label:focus-visible{color:var(--mh-hl);text-decoration:underline;text-decoration-color:var(--usb-yellow);text-underline-offset:.35em;text-decoration-thickness:2px}
.usb-mh--dark a.usb-mh__label:hover{color:var(--usb-yellow)}
@media (max-width:760px){
  .usb-mh__stack{--fs:clamp(2.5rem,13vw,4.6rem);--ind:calc(var(--fs) * 1.4)}
  .usb-mh__labels{position:static;transform:none;width:auto;margin-top:26px;padding:0;text-align:left}
  .usb-mh__label{margin-right:0;letter-spacing:.3em}
}

/* Entrada: línea 1 y rótulos de izquierda a derecha; línea 2 de derecha a izquierda */
@keyframes usb-mh-from-left{from{opacity:0;transform:translateX(-14vw)}to{opacity:1;transform:none}}
@keyframes usb-mh-from-right{from{opacity:0;transform:translateX(14vw)}to{opacity:1;transform:none}}
.usb-mh--anim .usb-mh__l1{animation:usb-mh-from-left .95s cubic-bezier(.16,1,.3,1) .05s both}
.usb-mh--anim .usb-mh__l2{animation:usb-mh-from-right .95s cubic-bezier(.16,1,.3,1) .3s both}
.usb-mh--anim .usb-mh__labels li{animation:usb-mh-from-left .85s cubic-bezier(.16,1,.3,1) calc(.55s + var(--i) * .14s) both}
@media (prefers-reduced-motion:reduce){.usb-mh--anim .usb-mh__l1,.usb-mh--anim .usb-mh__l2,.usb-mh--anim .usb-mh__labels li{animation:none}}
@media (min-width:761px){.usb-mh__l1{white-space:nowrap}}

/* Encabezado Acerca de Nosotros: título centrado (por defecto) */
.usb-mh--center .usb-mh__stack{width:max-content;max-width:100%;margin-inline:auto}
.usb-mh--center .usb-breadcrumbs{justify-content:center;text-align:center}
@media (max-width:760px){
  .usb-mh--center .usb-mh__stack{width:auto}
  .usb-mh--center .usb-mh__title{text-align:center}
  .usb-mh--center .usb-mh__l2{margin-left:0}
  .usb-mh--center .usb-mh__labels{text-align:center}
}

/* ============ 15. PRESENTACIÓN (2 imágenes + 2 textos) ============ */
.usb-id{overflow:hidden}
.usb-id__grid{position:relative;display:grid;gap:0;align-items:center;
  grid-template-columns:minmax(0,1fr) minmax(0,320px) minmax(0,320px) minmax(0,1fr);
  grid-template-rows:230px 150px 230px;
  grid-template-areas:"t1 i1 . ." "t1 i1 i2 t2" ". . i2 t2"}
.usb-id__i1{grid-area:i1;margin:0;height:100%;border-radius:999px 999px 0 0;overflow:hidden;aspect-ratio:auto}
.usb-id__i2{grid-area:i2;margin:0;height:100%;border-radius:0 999px 999px 0;overflow:hidden}
.usb-id__i1 img,.usb-id__i2 img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--usb-ease-out,cubic-bezier(.23,1,.32,1))}
.usb-id__grid:hover .usb-id__i1 img,.usb-id__grid:hover .usb-id__i2 img{transform:scale(1.05)}
.usb-id__ph{background:linear-gradient(160deg,#1a3a73,#0a1f45)}
.usb-id__t{font-size:clamp(.98rem,1.25vw,1.1rem);line-height:1.8;color:var(--ux-muted,#444);max-width:34ch}
.usb-id__t > :first-child{margin-top:0}.usb-id__t > :last-child{margin-bottom:0}
.usb-id__t1{grid-area:t1;justify-self:end;text-align:left;padding-right:clamp(24px,4vw,64px)}
.usb-id__t2{grid-area:t2;justify-self:start;padding-left:clamp(24px,4vw,64px)}
.usb-id__t::before{content:"";display:block;width:44px;height:4px;margin-bottom:18px;background:var(--usb-yellow)}
.usb-id__bar{grid-column:2 / 4;grid-row:1 / 4;justify-self:center;align-self:stretch;width:clamp(22px,3vw,38px);margin-block:-34px -24px;background:var(--usb-yellow);opacity:.86;pointer-events:none;z-index:2;
  transform-origin:top;animation:usb-id-bar 1.1s var(--usb-ease-out,cubic-bezier(.23,1,.32,1)) .2s both}
@keyframes usb-id-bar{from{transform:scaleY(0)}to{transform:none}}
@media (max-width:899px){
  .usb-id__grid{grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-template-areas:"i1" "t1" "i2" "t2";gap:26px;justify-items:center}
  .usb-id__i1,.usb-id__i2{width:min(320px,86%);height:auto;aspect-ratio:4 / 5}
  .usb-id__i1{border-radius:999px 999px 0 0}.usb-id__i2{border-radius:0 999px 999px 0}
  .usb-id__t1,.usb-id__t2{justify-self:start;padding:0;max-width:none}
  .usb-id__bar{display:none}
}
@media (prefers-reduced-motion:reduce){.usb-id__bar{animation:none}.usb-id__i1 img,.usb-id__i2 img{transition:none}}

/* ============ 16. VISIÓN Y MISIÓN ============ */
.usb-vm .usb-vm__block + .usb-vm__block{margin-top:clamp(64px,9vw,120px)}
.usb-vm__head{position:relative}
.usb-vm__line{display:block;width:1px;height:clamp(40px,5vw,64px);background:var(--ux-fg,#000);opacity:.55;margin-bottom:6px}
.usb-vm__title{margin:0;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(3.4rem,10vw,8.4rem);line-height:1;letter-spacing:-.02em;color:var(--ux-fg,#000);opacity:.11}
.usb-vm__label{position:absolute;left:0;right:0;top:50%;margin-top:clamp(14px,2vw,26px);transform:translateY(-50%);font:800 clamp(.7rem,1vw,.85rem)/1 var(--font-main);letter-spacing:.5em;text-transform:uppercase;color:var(--ux-fg,#000)}
.usb-vm__quote{position:relative;margin:0;font-family:var(--font-serif);font-style:italic;font-size:clamp(1.35rem,2.3vw,2rem);line-height:1.5;color:var(--ux-fg,#000)}
.usb-vm__qm{position:absolute;left:-.55em;top:-.35em;font-size:3.2em;line-height:1;color:var(--usb-yellow);font-style:normal;pointer-events:none;z-index:0}
.usb-vm__quote{z-index:1}
.usb-vm__intro{margin:0 0 clamp(30px,4vw,52px);max-width:62ch;font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.75;color:var(--ux-muted,#444)}
.usb-vm__circles{--cd:clamp(160px,17vw,236px);display:flex;align-items:center;margin:0;padding:0;list-style:none}
.usb-vm__circle{position:relative;flex:0 0 var(--cd);width:var(--cd);aspect-ratio:1;margin-left:calc(var(--cd) * -.13);border:1.5px solid var(--ux-fg,#000);border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;padding:calc(var(--cd) * .15);box-sizing:border-box;
  font-size:clamp(.82rem,1vw,.98rem);line-height:1.4;color:var(--ux-fg,#000);transition:transform .45s cubic-bezier(.34,1.56,.64,1),background-color .25s,color .25s,border-color .25s}
.usb-vm__circle:first-child{margin-left:0}
.usb-vm__circle strong{font-weight:800}
.usb-vm__circle:hover{transform:scale(1.07);z-index:3;border-color:var(--usb-yellow);background:var(--usb-yellow);color:#000}
.usb-vm__circle:last-child{background:var(--usb-yellow);border-color:var(--usb-yellow);color:#000}
.usb-vm__circle:last-child:hover{background:#000;border-color:#000;color:var(--usb-yellow)}

/* Alineación como el home: título a la izquierda, contenido a la derecha */
.usb-vm--home .usb-vm__block{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,80px);align-items:start}
.usb-vm--home .usb-vm__label{left:6px;right:auto;transform:none;top:auto;bottom:auto;margin:0;position:static;display:block;margin-top:14px}
.usb-vm--home .usb-vm__title{opacity:1;font-style:normal;font-weight:800;font-size:clamp(3rem,6.4vw,5.4rem);letter-spacing:-.02em}
.usb-vm--home .usb-vm__line{width:38px;height:4px;opacity:1;background:var(--ux-fg,#000);margin-bottom:16px}
.usb-vm--home .usb-vm__body{padding-top:clamp(0px,1.2vw,18px)}
.usb-vm--home .usb-vm__quote{padding-left:clamp(18px,2.6vw,36px);border-left:4px solid var(--usb-yellow)}
.usb-vm--home .usb-vm__qm{display:none}
.usb-vm--home .usb-vm__label::after{content:"";display:inline-block;vertical-align:middle;margin-left:14px;width:46px;height:4px;background:var(--usb-yellow)}
.usb-vm--home .usb-vm__title{position:relative;display:block}

/* Todo centrado (como la referencia) */
.usb-vm--center .usb-vm__block{text-align:center}
.usb-vm--center .usb-vm__line{margin-inline:auto}
.usb-vm--center .usb-vm__body{max-width:860px;margin:clamp(18px,3vw,36px) auto 0}
.usb-vm--center .usb-vm__intro{margin-inline:auto}
.usb-vm--center .usb-vm__circles{justify-content:center}
.usb-vm--center .usb-vm__quote{width:fit-content;max-width:40ch;margin-inline:auto;text-wrap:balance}
.usb-vm--center .usb-vm__qm{left:-.7em;top:-.5em}

@media (max-width:899px){
  .usb-vm--home .usb-vm__block{grid-template-columns:minmax(0,1fr)}
  .usb-vm__circles{flex-direction:column}
  .usb-vm__circle{margin-left:0;margin-top:calc(var(--cd) * -.1)}
  .usb-vm__circle:first-child{margin-top:0}
  .usb-vm--home .usb-vm__circles{align-items:flex-start}
  .usb-vm--center .usb-vm__label{letter-spacing:.32em}
}
@media (prefers-reduced-motion:reduce){.usb-vm__circle{transition:none}}

/* Visión y misión · imagen panorámica y título de Valores */
.usb-vm__fig{position:relative;margin:0;border-radius:clamp(60px,9vw,140px) 0 clamp(60px,9vw,140px) 0;overflow:visible;aspect-ratio:21 / 9;isolation:isolate}
.usb-vm__fig::before{content:"";position:absolute;inset:clamp(12px,1.6vw,22px) calc(clamp(12px,1.6vw,22px) * -1) calc(clamp(12px,1.6vw,22px) * -1) clamp(12px,1.6vw,22px);border-radius:inherit;background:var(--usb-yellow);z-index:-1;transition:transform .6s var(--usb-ease-out,cubic-bezier(.23,1,.32,1))}
.usb-vm__fig img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit;transition:transform .8s var(--usb-ease-out,cubic-bezier(.23,1,.32,1))}
.usb-vm__fig{overflow:hidden}
.usb-vm__fig::before{display:none}
.usb-vm__pic{position:relative}
.usb-vm__pic .usb-vm__fig{box-shadow:clamp(12px,1.6vw,22px) clamp(12px,1.6vw,22px) 0 var(--usb-yellow);overflow:hidden}
.usb-vm__pic:hover .usb-vm__fig img{transform:scale(1.05)}
.usb-vm--home .usb-vm__pic{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,80px)}
.usb-vm--home .usb-vm__pic .usb-vm__fig{grid-column:2}
.usb-vm--home .usb-vm__values .usb-vm__body{padding-top:clamp(0px,1.2vw,18px)}
.usb-vm--center .usb-vm__spacer{display:none}
.usb-vm--center .usb-vm__pic .usb-vm__fig{max-width:1000px;margin-inline:auto}
@media (max-width:899px){
  .usb-vm--home .usb-vm__pic{grid-template-columns:minmax(0,1fr)}
  .usb-vm--home .usb-vm__pic .usb-vm__fig{grid-column:1;aspect-ratio:4 / 3;margin-right:clamp(12px,1.6vw,22px)}
  .usb-vm--center .usb-vm__pic .usb-vm__fig{aspect-ratio:4 / 3;margin-right:clamp(12px,1.6vw,22px)}
}
@media (prefers-reduced-motion:reduce){.usb-vm__fig img{transition:none}}

/* Imagen como fondo en la parte inferior de la misión: a todo el ancho, se funde con la sección y los círculos quedan encima */
.usb-vm{overflow:hidden}
.usb-vm .usb-vm__block.usb-vm__pic{display:block;position:relative;z-index:0;width:100vw;margin-left:calc(50% - 50vw);margin-right:0;margin-top:clamp(-150px,-9vw,-70px);padding:0}
.usb-vm .usb-vm__pic .usb-vm__spacer{display:none}
.usb-vm .usb-vm__pic .usb-vm__fig{grid-column:auto;max-width:none;margin:0;width:100%;aspect-ratio:auto;height:clamp(300px,34vw,500px);border-radius:0;box-shadow:none;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 38%,#000 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 38%,#000 100%)}
.usb-vm .usb-vm__pic .usb-vm__fig img{object-position:center bottom}
.usb-vm .usb-vm__mission{position:relative;z-index:2}
.usb-vm .usb-vm__circle{background:rgba(255,255,255,.94)}
.usb-vm .usb-vm__circle:last-child{background:var(--usb-yellow)}
.usb-vm .usb-vm__circle:hover{background:var(--usb-yellow)}
.usb-vm .usb-vm__circle:last-child:hover{background:#000}
.usb-vm .usb-vm__pic + .usb-vm__block{margin-top:clamp(56px,7vw,96px)}
.usb-vm--dark .usb-vm__circle:not(:last-child){background:rgba(0,0,0,.6);color:#fff}
@media (max-width:899px){
  .usb-vm .usb-vm__pic .usb-vm__fig{height:clamp(220px,52vw,340px);aspect-ratio:auto}
}

/* === Visión y misión · alineación home con el estilo de la referencia (v0.13.3) ===
   Título fantasma + rótulo encima + raya vertical a la izquierda; contenido a la derecha. */
.usb-vm--home .usb-vm__block:not(.usb-vm__pic){grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center}
.usb-vm--home .usb-vm__head{position:relative;text-align:left}
.usb-vm--home .usb-vm__line{width:1px;height:clamp(40px,5vw,64px);background:var(--ux-fg,#000);opacity:.55;margin:0 0 6px 6px}
.usb-vm--home .usb-vm__title{opacity:.11;font-style:italic;font-weight:400;font-size:clamp(3.4rem,8.4vw,7.6rem);letter-spacing:-.02em;line-height:1}
.usb-vm--home .usb-vm__label{position:absolute;left:6px;right:auto;top:50%;bottom:auto;margin:clamp(14px,2vw,26px) 0 0;transform:translateY(-50%);display:block;letter-spacing:.5em;white-space:nowrap}
.usb-vm--home .usb-vm__label::after{display:none}
.usb-vm--home .usb-vm__quote{padding-left:0;border-left:0;max-width:40ch;text-wrap:balance}
.usb-vm--home .usb-vm__qm{display:block;left:-.75em;top:-.45em}
.usb-vm--home .usb-vm__body{padding-top:0}
.usb-vm--home .usb-vm__intro{margin-bottom:clamp(26px,3.4vw,44px)}
.usb-vm--home .usb-vm__circles{justify-content:flex-start}
@media (max-width:900px){
  .usb-vm--home .usb-vm__block:not(.usb-vm__pic){grid-template-columns:minmax(0,1fr);align-items:start}
  .usb-vm--home .usb-vm__label{letter-spacing:.32em}
  .usb-vm--home .usb-vm__qm{left:-.2em;top:-.9em}
  .usb-vm--home .usb-vm__quote{padding-top:.6em}
}
.usb-vm--home .usb-vm__mission{align-items:start}
.usb-vm--home .usb-vm__mission .usb-vm__head{padding-top:clamp(0px,1vw,12px)}
.usb-vm--home .usb-vm__qm{top:-.2em}
.usb-vm--home .usb-vm__block.usb-vm__mission:not(.usb-vm__pic){align-items:start}

/* === v0.13.4 · Presentación en móvil: las 2 imágenes juntas; Visión y misión: imagen bajo el título; círculos juntos === */
@media (max-width:899px){
  .usb-id__grid.usb-id__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"i1 i2" "t1 t1" "t2 t2";gap:22px 8px;justify-items:stretch}
  .usb-id__i1,.usb-id__i2{width:100%;height:auto;aspect-ratio:4 / 5}
  .usb-id__i1{border-radius:999px 999px 0 0}
  .usb-id__i2{border-radius:0 0 999px 999px;margin-top:clamp(18px,6vw,44px)}
  .usb-id__t1,.usb-id__t2{justify-self:start;max-width:none}
}

.usb-vm__side{min-width:0}
.usb-vm .usb-vm__side .usb-vm__fig{position:relative;display:block;width:100%;max-width:none;height:auto;aspect-ratio:4 / 3;margin:clamp(26px,3.4vw,46px) 0 0;
  border-radius:clamp(60px,8vw,120px) 0 clamp(60px,8vw,120px) 0;overflow:hidden;box-shadow:clamp(10px,1.2vw,18px) clamp(10px,1.2vw,18px) 0 var(--usb-yellow);-webkit-mask:none;mask:none}
.usb-vm .usb-vm__side .usb-vm__fig img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit;transition:transform .8s var(--usb-ease-out,cubic-bezier(.23,1,.32,1))}
.usb-vm .usb-vm__side .usb-vm__fig:hover img{transform:scale(1.05)}
.usb-vm--center .usb-vm__side .usb-vm__fig{max-width:min(560px,100%);margin-inline:auto}
.usb-vm .usb-vm__circle,.usb-vm .usb-vm__circle:last-child{background-clip:padding-box}
.usb-vm .usb-vm__circle:not(:last-child){background:#fff}
.usb-vm--dark .usb-vm__circle:not(:last-child){background:rgba(0,0,0,.6)}
.usb-vm--head .usb-vm__block{margin-bottom:clamp(24px,4vw,56px)}
.usb-vm--head .usb-vm__intro{margin-bottom:0}
@media (max-width:899px){
  .usb-vm__circles{--cd:calc((100% + 0px) / 2.74);flex-direction:row;justify-content:center}
  .usb-vm__circle,.usb-vm .usb-vm__circle{margin-left:calc(var(--cd) * -.13);margin-top:0;flex:0 0 var(--cd);width:var(--cd);font-size:clamp(.6rem,2.7vw,.8rem);line-height:1.3;padding:calc(var(--cd) * .12)}
  .usb-vm__circle:first-child{margin-left:0}
  .usb-vm--home .usb-vm__circles{align-items:center}
  .usb-vm .usb-vm__side .usb-vm__fig{aspect-ratio:16 / 10;margin-right:clamp(10px,1.6vw,18px)}
}

/* Valores: flechas del pop-up como las del home (cuadrada 45px, negra, amarilla al pasar el cursor, la flecha atraviesa) */
.usb-valmodal .usb-valmodal__btn{position:relative;width:45px;height:45px;border:0;border-radius:0;background:#000;color:#fff;overflow:hidden;box-shadow:0 5px 15px rgba(0,0,0,.12)}
.usb-valmodal .usb-valmodal__btn svg{width:20px;height:20px;stroke-width:3}
.usb-valmodal .usb-valmodal__btn:hover,.usb-valmodal .usb-valmodal__btn:focus-visible{background:var(--usb-yellow);color:#000}
.usb-valmodal .usb-valmodal__next:hover svg,.usb-valmodal .usb-valmodal__next:focus-visible svg{animation:arrow-through .38s both}
.usb-valmodal .usb-valmodal__prev:hover svg,.usb-valmodal .usb-valmodal__prev:focus-visible svg{animation:arrow-through-left .38s both}
.usb-valmodal .usb-valmodal__nav{gap:10px}
@media (prefers-reduced-motion:reduce){.usb-valmodal .usb-valmodal__btn svg{animation:none!important}}

/* v0.13.5 · Misión: el título sube un poco y queda separado de la imagen */
.usb-vm--home .usb-vm__mission .usb-vm__head{padding-top:0;margin-top:calc(-1 * clamp(8px,2.2vw,32px))}
.usb-vm .usb-vm__side .usb-vm__fig{margin-top:clamp(52px,6.4vw,96px)}
@media (max-width:899px){
  .usb-vm--home .usb-vm__mission .usb-vm__head{margin-top:0}
  .usb-vm .usb-vm__side .usb-vm__fig{margin-top:clamp(34px,9vw,56px)}
}

/* =====================================================================
   17 · Cronología · línea de tiempo vertical alterna (v0.15.0)
   Impares: texto a la izquierda y fecha a la derecha. Pares: al revés.
   ===================================================================== */
.usb-tl2{--tl-p:0;--tl-gap:clamp(22px,4.4vw,72px);--tl-mark:46px;position:relative;list-style:none;margin:clamp(34px,5vw,64px) 0 0;padding:6px 0 0;color:var(--ux-fg)}
/* Eje: pista fina + tramo que se dibuja con el scroll */
.usb-tl2::before,.usb-tl2::after{content:"";position:absolute;left:50%;top:0;bottom:0;transform:translateX(-50%);width:2px;border-radius:2px;pointer-events:none}
.usb-tl2::before{background:repeating-linear-gradient(to bottom,var(--ux-line) 0 6px,transparent 6px 12px)}
.usb-tl2::after{width:4px;background:var(--usb-yellow);box-shadow:0 0 0 1px var(--ux-fg);transform:translateX(-50%) scaleY(var(--tl-p));transform-origin:top;transition:none}
.usb-tl2:not([data-usb-tl-ready])::after{transform:translateX(-50%) scaleY(1)}

.usb-tl2__item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) var(--tl-mark) minmax(0,1fr);column-gap:var(--tl-gap);align-items:start;padding:0 0 clamp(40px,6vw,84px)}
.usb-tl2__item:last-child{padding-bottom:0}
.usb-tl2__item--left .usb-tl2__info{grid-column:1;grid-row:1}
.usb-tl2__item--left .usb-tl2__date{grid-column:3;grid-row:1;text-align:left;align-items:flex-start}
.usb-tl2__item--right .usb-tl2__date{grid-column:1;grid-row:1;text-align:right;align-items:flex-end}
.usb-tl2__item--right .usb-tl2__info{grid-column:3;grid-row:1}
.usb-tl2__mark{grid-column:2;grid-row:1;justify-self:center}

/* Sello sobre el eje: anillo + rombo (como un lacre) */
.usb-tl2__mark{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:var(--tl-mark);height:var(--tl-mark);margin-top:6px;border-radius:50%;background:var(--ux-card,#fff);box-shadow:0 0 0 3px var(--ux-fg),0 0 0 9px var(--ux-card,#fff);transition:background-color .35s,transform .5s cubic-bezier(.34,1.56,.64,1)}
.usb-tl2__mark::before{content:"";position:absolute;inset:6px;border-radius:50%;border:1.5px dashed var(--ux-fg);opacity:.55}
.usb-tl2__mark i{position:relative;display:block;width:14px;height:14px;background:var(--usb-yellow);box-shadow:0 0 0 2px var(--ux-fg);transform:rotate(45deg);transition:transform .6s cubic-bezier(.34,1.56,.64,1),background-color .35s}
.usb-tl2__mark::after{content:"";position:absolute;inset:-3px;border-radius:50%;border:2px solid var(--usb-yellow);opacity:0;pointer-events:none}
.usb-tl2__item.is-active .usb-tl2__mark{background:var(--ux-fg);transform:scale(1.12)}
.usb-tl2__item.is-active .usb-tl2__mark i{transform:rotate(225deg)}
.usb-tl2__item.is-active .usb-tl2__mark::before{border-color:var(--ux-card,#fff)}

/* Fecha: numeral serifado en contorno que se rellena de amarillo */
.usb-tl2__date{display:flex;flex-direction:column;gap:clamp(18px,2.4vw,30px);min-width:0}
.usb-tl2__year{display:block;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(3.2rem,7.4vw,6.6rem);line-height:.95;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:2px var(--ux-fg);paint-order:stroke fill;transition:color .7s ease .35s;overflow-wrap:anywhere}
.usb-tl2__year--long{font-size:clamp(2rem,4.2vw,3.6rem)}
.usb-tl2__item.is-in .usb-tl2__year,.usb-tl2:not([data-usb-tl-ready]) .usb-tl2__year{color:var(--usb-yellow)}
.usb-sec--yellow .usb-tl2__item.is-in .usb-tl2__year,.usb-sec--yellow .usb-tl2:not([data-usb-tl-ready]) .usb-tl2__year{color:#fff}

/* Bloque de descripción */
.usb-tl2__card{position:relative;padding:clamp(22px,2.6vw,34px) clamp(22px,2.6vw,34px) clamp(22px,2.4vw,30px);background:var(--ux-card,#fff);border:1px solid var(--ux-line);border-top:5px solid var(--ux-fg);border-radius:4px;box-shadow:0 2px 6px rgba(0,0,0,.05),0 22px 40px -26px rgba(0,0,0,.38);text-align:left;transition:transform .35s var(--usb-ease-out,cubic-bezier(.23,1,.32,1)),box-shadow .35s}
.usb-tl2__card::before{content:"";position:absolute;top:-5px;left:0;width:56px;height:5px;background:var(--usb-yellow);transition:width .5s var(--usb-ease-out,cubic-bezier(.23,1,.32,1))}
.usb-tl2__card:hover{transform:translateY(-4px);box-shadow:0 2px 6px rgba(0,0,0,.08),0 30px 46px -24px rgba(0,0,0,.5)}
.usb-tl2__card:hover::before{width:112px}
.usb-tl2__card h3{margin:0 0 12px;font-family:var(--font-serif);font-weight:700;font-size:clamp(1.3rem,2.1vw,1.75rem);line-height:1.15;color:var(--ux-fg)}
.usb-tl2__card p{margin:0;font-size:clamp(.95rem,1.2vw,1.05rem);line-height:1.75;color:var(--ux-muted)}
/* Conector entre el sello y el bloque */
.usb-tl2__info{position:relative}
.usb-tl2__info::after{content:"";position:absolute;top:calc(var(--tl-mark) / 2 + 6px);height:2px;width:calc(var(--tl-gap) - 4px);background:var(--ux-fg);transform-origin:var(--o,left)}
.usb-tl2__item--left .usb-tl2__info::after{right:calc(var(--tl-gap) * -1 + 4px);--o:left}
.usb-tl2__item--right .usb-tl2__info::after{left:calc(var(--tl-gap) * -1 + 4px);--o:right}

/* Imagen (opcional) */
.usb-tl2__fig{position:relative;margin:clamp(18px,2vw,26px) 0 0;border-radius:4px;overflow:hidden;aspect-ratio:4 / 3;background:var(--ux-zebra);box-shadow:10px 10px 0 var(--usb-yellow);max-width:min(100%,460px)}
.usb-tl2__date .usb-tl2__fig{margin:0}
.usb-tl2__item--right .usb-tl2__date .usb-tl2__fig{margin-left:auto;box-shadow:-10px 10px 0 var(--usb-yellow)}
.usb-tl2__fig img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--usb-ease-out,cubic-bezier(.23,1,.32,1)),filter .5s}
.usb-tl2--sepia .usb-tl2__fig img{filter:grayscale(1) sepia(.22) contrast(1.06)}
.usb-tl2--sepia .usb-tl2__fig:hover img{filter:none}
.usb-tl2__fig:hover img{transform:scale(1.05)}

/* Estado activo: el hito más cercano al centro de la pantalla */
.usb-tl2__item.is-active .usb-tl2__card{box-shadow:0 2px 6px rgba(0,0,0,.08),0 30px 46px -24px rgba(0,0,0,.5)}
.usb-tl2__item.is-active .usb-tl2__card::before{width:112px}

/* ---- Animación (solo si el JavaScript la armó; sin JS todo se ve) ---- */
.usb-tl2{overflow-x:clip;padding-inline:14px;margin-inline:-14px}
.usb-tl2[data-usb-tl-ready] .usb-tl2__item:not(.is-in) .usb-tl2__card{opacity:0;transform:translateX(-56px)}
.usb-tl2[data-usb-tl-ready] .usb-tl2__item--right:not(.is-in) .usb-tl2__card{transform:translateX(56px)}
.usb-tl2[data-usb-tl-ready] .usb-tl2__item:not(.is-in) .usb-tl2__year{clip-path:inset(-8% -12% 105% -12%);transform:translateY(26px)}
.usb-tl2[data-usb-tl-ready] .usb-tl2__item:not(.is-in) .usb-tl2__fig{clip-path:inset(-24px 100% -24px -24px);opacity:.001}
.usb-tl2[data-usb-tl-ready] .usb-tl2__item--right:not(.is-in) .usb-tl2__fig{clip-path:inset(-24px -24px -24px 100%)}
.usb-tl2[data-usb-tl-ready] .usb-tl2__item:not(.is-in) .usb-tl2__mark{transform:scale(0) rotate(-120deg)}
.usb-tl2[data-usb-tl-ready] .usb-tl2__item:not(.is-in) .usb-tl2__info::after{transform:scaleX(0)}

.usb-tl2__item.is-in .usb-tl2__mark{transform:scale(1) rotate(0);transition:transform .7s cubic-bezier(.34,1.56,.64,1),background-color .35s}
.usb-tl2__item.is-in.is-active .usb-tl2__mark{transform:scale(1.12)}
.usb-tl2__item.is-in .usb-tl2__mark::after{animation:usb-tl-ripple 1.3s ease-out .35s 1 both}
.usb-tl2__item.is-in .usb-tl2__info::after{transform:scaleX(1);transition:transform .55s var(--usb-ease-out,cubic-bezier(.23,1,.32,1)) .3s}
.usb-tl2__item.is-in .usb-tl2__card{opacity:1;transform:none;transition:opacity .7s ease .38s,transform .85s var(--usb-ease-out,cubic-bezier(.23,1,.32,1)) .38s,box-shadow .35s}
.usb-tl2__item.is-in .usb-tl2__card:hover{transform:translateY(-4px);transition-delay:0s}
.usb-tl2__item.is-in .usb-tl2__year{clip-path:inset(-8% -12% -12% -12%);transform:none;transition:clip-path .85s cubic-bezier(.65,0,.25,1) .2s,transform .85s var(--usb-ease-out,cubic-bezier(.23,1,.32,1)) .2s,color .7s ease .75s}
.usb-tl2__item.is-in .usb-tl2__fig{clip-path:inset(-24px -24px -24px -24px);opacity:1;transition:clip-path 1s cubic-bezier(.65,0,.25,1) .5s,opacity .2s .5s}
@keyframes usb-tl-ripple{0%{opacity:.9;transform:scale(1)}100%{opacity:0;transform:scale(2.3)}}

/* ---- Móvil: eje a la izquierda; fecha, luego texto ---- */
@media (max-width:820px){
  .usb-tl2{--tl-mark:36px;--tl-gap:18px}
  .usb-tl2::before,.usb-tl2::after{left:calc(14px + var(--tl-mark) / 2);transform:translateX(-50%)}
  .usb-tl2::after{transform:translateX(-50%) scaleY(var(--tl-p))}
  .usb-tl2:not([data-usb-tl-ready])::after{transform:translateX(-50%) scaleY(1)}
  .usb-tl2__item{grid-template-columns:var(--tl-mark) minmax(0,1fr);row-gap:14px}
  .usb-tl2__mark{grid-column:1;grid-row:1 / span 2;justify-self:start;margin-top:2px;box-shadow:0 0 0 2px var(--ux-fg),0 0 0 7px var(--ux-card,#fff)}
  .usb-tl2__item .usb-tl2__date,.usb-tl2__item--left .usb-tl2__date,.usb-tl2__item--right .usb-tl2__date{grid-column:2;grid-row:1;text-align:left;align-items:flex-start}
  .usb-tl2__item .usb-tl2__info,.usb-tl2__item--left .usb-tl2__info,.usb-tl2__item--right .usb-tl2__info{grid-column:2;grid-row:2}
  .usb-tl2__year{font-size:clamp(2.6rem,13vw,4rem)}
  .usb-tl2__year--long{font-size:clamp(1.8rem,8vw,2.6rem)}
  .usb-tl2__info::after{display:none}
  .usb-tl2__item--right .usb-tl2__date .usb-tl2__fig{margin-left:0;box-shadow:10px 10px 0 var(--usb-yellow)}
  .usb-tl2__fig{max-width:calc(100% - 10px)}
  .usb-tl2[data-usb-tl-ready] .usb-tl2__item:not(.is-in) .usb-tl2__card,.usb-tl2[data-usb-tl-ready] .usb-tl2__item--right:not(.is-in) .usb-tl2__card{transform:translateX(28px)}
  .usb-tl2[data-usb-tl-ready] .usb-tl2__item--right:not(.is-in) .usb-tl2__fig{clip-path:inset(-24px 100% -24px -24px)}
}
@media (prefers-reduced-motion:reduce){
  .usb-tl2 .usb-tl2__card,.usb-tl2 .usb-tl2__year,.usb-tl2 .usb-tl2__fig,.usb-tl2 .usb-tl2__mark,.usb-tl2 .usb-tl2__info::after{opacity:1!important;transform:none!important;clip-path:none!important}
  .usb-tl2 *,.usb-tl2 *::before,.usb-tl2 *::after{transition:none!important;animation:none!important}
  .usb-tl2__year{color:var(--usb-yellow)}
}

/* ==== 18. Contenido libre: contenedores de Elementor dentro de las tarjetas ==== */
/* El contenedor de cada tarjeta: sin relleno propio de Elementor, en columna, con aire entre widgets. */
.usb-tl2--free .usb-tl2__item>.e-con,.usb-people--free .usb-person>.e-con,.usb-contacts--free .usb-contact>.e-con,.usb-features--free .usb-feature>.e-con,.usb-steps--free .usb-step>.e-con{
  --padding-top:0;--padding-right:0;--padding-bottom:0;--padding-left:0;--gap:14px;--row-gap:14px;--column-gap:14px;
  width:100%;max-width:none;min-width:0;margin:0;padding:0;box-sizing:border-box;text-align:left}
/* En la página: si no se soltó nada dentro, el contenedor no ocupa espacio. */
body:not(.elementor-editor-active) :is(.usb-tl2__item,.usb-person,.usb-contact,.usb-feature,.usb-step)>.e-con:not(:has(.elementor-element)){display:none}
/* Tarjetas: lo soltado queda separado del contenido de la tarjeta */
.usb-person>.e-con,.usb-contact>.e-con,.usb-feature>.e-con,.usb-step>.e-con{margin-top:18px}
.usb-person>.e-con{align-items:center;text-align:center}
.usb-feature>.e-con,.usb-step>.e-con{align-items:flex-start}
/* Editor: el contenedor vacío se ve como una zona para soltar widgets, sin romper el diseño */
.elementor-editor-active :is(.usb-tl2__item,.usb-person,.usb-contact,.usb-feature,.usb-step)>.e-con{min-height:44px;outline:1px dashed rgba(0,0,0,.28);outline-offset:-1px}
/* Cronología: el contenedor va debajo de la tarjeta, en la misma columna y unido a ella */
.usb-tl2--free .usb-tl2__item>.e-con{grid-row:2;position:relative;z-index:1;margin-top:-1px;padding:0 clamp(22px,2.6vw,34px) clamp(22px,2.4vw,30px);background:var(--ux-card,#fff);border:1px solid var(--ux-line);border-top:0;border-radius:0 0 4px 4px;box-shadow:0 22px 40px -26px rgba(0,0,0,.38)}
.usb-tl2--free .usb-tl2__item--left>.e-con{grid-column:1}
.usb-tl2--free .usb-tl2__item--right>.e-con{grid-column:3}
.usb-tl2--free .usb-tl2__item.has-slot .usb-tl2__card{border-bottom:0;border-radius:4px 4px 0 0;box-shadow:none;padding-bottom:14px}
.elementor-editor-active .usb-tl2--free .usb-tl2__item>.e-con{outline-offset:-3px}
.usb-tl2[data-usb-tl-ready] .usb-tl2__item:not(.is-in)>.e-con{opacity:0}
.usb-tl2__item.is-in>.e-con{transition:opacity .6s .35s ease}
@media (max-width:820px){
  .usb-tl2--free .usb-tl2__item>.e-con,.usb-tl2--free .usb-tl2__item--left>.e-con,.usb-tl2--free .usb-tl2__item--right>.e-con{grid-column:2;grid-row:3;margin-top:-15px}
  .usb-tl2--free .usb-tl2__mark{grid-row:1 / span 3}
}
/* Botones dentro de tarjetas: ancho natural */
:is(.usb-person,.usb-contact,.usb-feature,.usb-step,.usb-tl2__item)>.e-con .usb-btn{max-width:100%}
/* El botón conserva sus colores aunque la tarjeta defina color para sus enlaces */
.usb-btn.usb-btn--dark,.usb-btn.usb-btn--dark:visited{color:var(--usb-yellow)}
.usb-btn.usb-btn--yellow,.usb-btn.usb-btn--yellow:visited{color:#000}
.usb-btn.usb-btn--yellow:hover,.usb-btn.usb-btn--yellow:focus-visible{color:var(--usb-yellow)}
.usb-btn.usb-btn--ghost:hover,.usb-btn.usb-btn--ghost:focus-visible{color:#000}
