/* =========================================
   PÁGINAS INTERNAS — versión audaz
   Mismo lenguaje que la portada: títulos serif en cursiva, rótulos en mayúsculas espaciadas,
   negro + amarillo, y grandes marcas de agua tipográficas.
   ========================================= */

/* ---------- Encabezado de página ---------- */
.usb-page-hero{
  position:relative;overflow:hidden;
  padding:clamp(56px,9vw,120px) 0 clamp(48px,7vw,90px);
  border-bottom:10px solid var(--usb-yellow);
  background:radial-gradient(900px 420px at 88% -10%,rgba(255,204,0,.20),transparent 62%),var(--usb-black);
}
.usb-page-hero .container{position:relative;z-index:1}
.usb-page-hero h1{
  font-family:var(--font-serif);font-style:italic;font-weight:400;
  font-size:clamp(2.6rem,7.5vw,6rem);line-height:1.02;letter-spacing:-.01em;
  margin:6px 0 0;max-width:20ch;text-wrap:balance;
}
.usb-ph__hl{font-style:italic;color:var(--usb-yellow)}
.usb-page-hero .offer-subtitle{
  display:inline-block;background:var(--usb-yellow);color:#000;
  font-size:12px;font-weight:800;letter-spacing:.2em;padding:7px 14px;margin:0 0 18px;
}
.usb-page-hero .usb-breadcrumbs ol{font-size:13px;letter-spacing:.03em;margin-bottom:26px}
.usb-ph__lead{
  font-size:clamp(1.05rem,2vw,1.4rem);line-height:1.55;max-width:44ch;margin:22px 0 0;
  border-left:4px solid var(--usb-yellow);padding-left:18px;color:rgba(255,255,255,.88);
}
/* Palabra gigante de fondo (decorativa) */
.usb-ph__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,.075);pointer-events:none;user-select:none;
}
.usb-ph--yellow{background:var(--usb-yellow);border-bottom-color:var(--usb-black)}
.usb-ph--yellow .usb-ph__hl{color:var(--usb-black);text-decoration:underline;text-decoration-thickness:.07em;text-underline-offset:.12em}
.usb-ph--yellow .offer-subtitle{background:var(--usb-black);color:var(--usb-yellow)}
.usb-ph--yellow .usb-ph__lead{border-left-color:var(--usb-black);color:rgba(0,0,0,.85)}
.usb-ph--yellow .usb-ph__mark{color:rgba(0,0,0,.07)}

/* ---------- Secciones en bandas ---------- */
.usb-sec,.usb-sec + .usb-sec{padding-top:clamp(56px,8vw,100px);padding-bottom:clamp(56px,8vw,100px)}
.usb-sec--white{background:var(--white);color:#333}
.usb-sec--gray{background:var(--light-gray);color:#333}
.usb-sec--dark{background:var(--usb-black);color:#d8d8d8}
.usb-sec--yellow{background:var(--usb-yellow);color:#111}

.usb-sec .offer-header,.usb-block .offer-header{margin-bottom:clamp(30px,5vw,56px)}
.usb-sec .offer-subtitle,.usb-block .offer-subtitle{
  display:inline-block;font-size:12px;font-weight:800;letter-spacing:.2em;
  padding-bottom:10px;border-bottom:4px solid var(--usb-yellow);margin-bottom:18px;
}
.usb-sec .offer-header h2,.usb-block .offer-header h2{font-size:clamp(2.2rem,5.2vw,4rem);line-height:1.05}
.usb-sec--dark .offer-header h2,.usb-block--dark .offer-header h2{color:#fff}
.usb-sec--dark .offer-subtitle,.usb-block--dark .offer-subtitle{color:var(--usb-yellow)}
.usb-sec--yellow .offer-subtitle,.usb-block--yellow .offer-subtitle{border-bottom-color:#000}

/* ---------- Bloque de contenido ---------- */
.usb-block{overflow:hidden;padding:clamp(56px,8vw,100px) 0}
.usb-block__text{font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.8;max-width:62ch}
.usb-block--white .usb-block__text > p:first-child,
.usb-block--gray .usb-block__text > p:first-child{font-size:1.15em;color:#000}
.usb-block__media{position:relative}
.usb-block__media::before{content:"";position:absolute;inset:18px -18px -18px 18px;background:var(--usb-yellow)}
.usb-block--img-left .usb-block__media::before{inset:18px 18px -18px -18px}
.usb-block--yellow .usb-block__media::before{background:var(--usb-black)}
.usb-block__media img{position:relative;z-index:1;border-radius:0;box-shadow:0 20px 40px rgba(0,0,0,.18)}

/* ---------- Personas ---------- */
.usb-person{border:0;box-shadow:0 1px 0 rgba(0,0,0,.08);position:relative;padding-bottom:30px;text-align:left}
.usb-person__photo{
  aspect-ratio:4/5;margin-bottom:22px;
  filter:grayscale(1) contrast(1.05);transition:filter .22s var(--usb-ease-out,ease-out);
}
[class*="elementor-widget-usb_"] .usb-person__photo img{width:100%;height:100%;max-width:none;object-fit:cover;display:block}
.usb-person:hover .usb-person__photo,.usb-person:focus-visible .usb-person__photo{filter:none}
.usb-person__photo--empty{background:var(--usb-black);color:var(--usb-yellow);filter:none}
.usb-person::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:var(--usb-yellow);
  transform:scaleX(0);transform-origin:left;transition:transform .22s var(--usb-ease-out,ease-out);
}
.usb-person:hover::after,.usb-person:focus-visible::after{transform:scaleX(1)}
.usb-person h3{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(1.45rem,2.3vw,1.9rem);line-height:1.15;margin:0 22px 10px;color:var(--usb-black)}
.usb-person__role{display:inline-block;background:var(--usb-black);color:var(--usb-yellow);padding:5px 10px;margin:0 22px;font-size:11px;letter-spacing:.14em}
.usb-person p{margin:14px 22px 0}
.usb-sec--dark .usb-person{background:#111;box-shadow:none;border:1px solid #262626}
.usb-sec--dark .usb-person h3{color:#fff}
.usb-sec--dark .usb-person p{color:#bbb}
.usb-sec--dark .usb-person__role{background:var(--usb-yellow);color:#000}

/* ---------- Documentos ---------- */
.usb-docs{counter-reset:usbdoc;gap:0;border-top:3px solid var(--usb-black)}
.usb-doc{
  counter-increment:usbdoc;position:relative;gap:clamp(14px,3vw,34px);
  background:transparent;border:0;border-bottom:1px solid rgba(0,0,0,.16);border-radius:0;
  padding:26px 8px;
  transition:background-color .2s var(--usb-ease-out,ease-out),color .2s var(--usb-ease-out,ease-out),padding .2s var(--usb-ease-out,ease-out);
}
.usb-doc::before{
  content:counter(usbdoc,decimal-leading-zero);flex:0 0 auto;min-width:2.1ch;
  font-family:var(--font-serif);font-style:italic;font-size:clamp(2rem,4vw,3rem);line-height:1;
  color:rgba(0,0,0,.22);transition:color .2s var(--usb-ease-out,ease-out);
}
.usb-doc__icon{display:none}
.usb-doc:hover{transform:none;box-shadow:none;background:var(--usb-black);color:#fff;padding-left:24px;padding-right:24px}
.usb-doc:hover::before{color:var(--usb-yellow)}
.usb-doc__body h3{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(1.25rem,2.1vw,1.65rem);transition:color .2s}
.usb-doc:hover .usb-doc__body h3{color:#fff}
.usb-doc:hover .usb-doc__body p{color:#cfcfcf}
.usb-doc__meta{background:var(--usb-yellow);color:#000;padding:3px 8px}
.usb-sec--dark .usb-docs{border-top-color:var(--usb-yellow)}
.usb-sec--dark .usb-doc{border-bottom-color:#2a2a2a}
.usb-sec--dark .usb-doc::before{color:rgba(255,204,0,.55)}
.usb-sec--dark .usb-doc__body h3{color:#fff}
.usb-sec--dark .usb-doc__body p{color:#bbb}
.usb-sec--dark .usb-doc:hover{background:#151515}
.usb-sec--dark .usb-doc__soon{color:#999}

/* ---------- Línea de tiempo ---------- */
.usb-tl{--usb-tl-col:clamp(120px,18vw,200px);max-width:none;padding:0}
.usb-tl::before{left:var(--usb-tl-col);top:0;bottom:0;width:4px;background:var(--usb-yellow)}
.usb-tl__item{grid-template-columns:var(--usb-tl-col) 1fr;gap:0;padding:0 0 clamp(30px,5vw,56px)}
.usb-tl__item::before{
  left:calc(var(--usb-tl-col) - 8px);top:10px;width:20px;height:20px;
  background:var(--usb-yellow);border:4px solid var(--usb-black);
}
.usb-tl__year{
  text-align:right;padding-right:38px;
  font-family:var(--font-serif);font-style:italic;font-weight:400;
  font-size:clamp(2rem,5vw,3.8rem);line-height:1;color:var(--usb-black);
}
.usb-tl__body{padding-left:38px}
.usb-tl__body h3{font-size:clamp(1rem,1.6vw,1.2rem);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--usb-black)}
.usb-tl__body p{font-size:clamp(1rem,1.5vw,1.15rem);max-width:56ch}
.usb-sec--dark .usb-tl__year{color:#fff}
.usb-sec--dark .usb-tl__body h3{color:var(--usb-yellow)}
.usb-sec--dark .usb-tl__body p{color:#bbb}
@media (max-width:600px){
  .usb-tl::before{left:9px}
  .usb-tl__item{grid-template-columns:1fr;padding-left:38px}
  .usb-tl__item::before{left:0}
  .usb-tl__year{text-align:left;padding:0 0 6px}
  .usb-tl__body{padding-left:0}
}
