/* Portada: estilos limitados a esta página. */
body.usi-home { background: #f6f4ee; color: #171714; }
body.usi-home #publicApp { min-height: 0; background: #f6f4ee; color: #171714; }
body.usi-home .site-header { position: relative; max-width: 1280px; margin: auto; padding: 24px 40px; background: transparent; border: 0; box-shadow: none; backdrop-filter: none; }
body.usi-home .brand { color: #171714; }
body.usi-home .brand-symbol { width: 36px; height: 36px; }
body.usi-home .site-nav a { color: #171714; background: #fffdf8; border: 1px solid #e4e3da; border-radius: 10px; padding: 10px 20px; min-height: 44px; }
body.usi-home #publicApp .usi-home-hero { max-width: 1280px; min-height: 0; margin: auto; padding: 64px 40px 80px; display: grid; grid-template-columns: 1.1fr 1fr; gap: 72px; align-items: center; background: none; }
body.usi-home #publicApp .usi-home-hero::after, body.usi-home #publicApp .usi-home-hero::before { display: none; }
.usi-home .usi-kicker { display: flex; align-items: center; gap: 8px; margin: 0; color: #595b50; font-size: 11px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; }
.usi-home-copy > .usi-kicker > span { width: 8px; height: 8px; background: #3f6f5b; border-radius: 50%; }
body.usi-home #publicApp .usi-home-hero h1 { max-width: none; margin: 25px 0; color: #171714; font-size: clamp(40px, 4.6vw, 66px); line-height: 1.07; letter-spacing: -.065em; font-weight: 750; }
body.usi-home #publicApp .usi-home-hero h1 span { color: #3f6f5b; }
.usi-home .usi-home-lead { max-width: 440px; margin: 0; font-size: 18px; line-height: 1.7; color: #67675e; }
.usi-home-actions { margin-top: 30px; }
.usi-home .usi-home-button { display: inline-flex; justify-content: center; align-items: center; gap: 20px; padding: 15px 22px; min-height: 50px; background: #171714; color: #fffdf8; border: 1px solid #171714; border-radius: 11px; font-size: 14px; line-height: 1.4; font-weight: 650; text-decoration: none; transition: background .15s; }
.usi-home .usi-home-button:hover { background: #34372c; }
.usi-home-button span { font-size: 20px; }
.usi-home .usi-home-assurance { margin: 13px 0 0; color: #67675e; font-size: 12px; }
.usi-home .usi-home-method { display: inline-flex; align-items: center; gap: 18px; margin-top: 28px; min-height: 44px; color: #171714; font-size: 14px; text-decoration: underline; text-underline-offset: 5px; }
.usi-preview { background: #fffdf8; border: 1px solid #e4e3da; border-radius: 23px; padding: 25px; box-shadow: 0 24px 70px #302b2210; transform: rotate(2deg); }
.usi-preview-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 20px; border-bottom: 1px solid #e4e3da; font-size: 13px; font-weight: 650; }
.usi-preview-header > span:first-child { display: flex; align-items: center; gap: 8px; }
.usi-preview-header img { width: 26px; height: 26px; object-fit: contain; }
.usi-example-label { color: #67675e; font-size: 10px; border: 1px solid #e4e3da; border-radius: 20px; padding: 4px 8px; font-weight: 500; }
.usi-preview-intro { padding: 22px 0; }
.usi-preview-intro > span { font-size: 10px; color: #67675e; letter-spacing: 1px; }
.usi-home .usi-preview-intro h2 { margin: 8px 0 0; font-size: 26px; line-height: 1.15; letter-spacing: -1px; color: #171714; }
.usi-preview-task { border-radius: 16px; background: #f2c400; padding: 25px; }
.usi-home .usi-preview-task .usi-kicker { color: #494016; font-size: 10px; }
.usi-home .usi-preview-task h3 { margin: 16px 0 8px; font-size: 26px; line-height: 1.18; color: #171714; letter-spacing: -.8px; }
.usi-home .usi-preview-task p { margin: 0; font-size: 13px; color: #494016; }
.usi-preview-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 20px 0; }
.usi-preview-tags span { padding: 4px 8px; background: #ffffff60; border-radius: 20px; font-size: 11px; }
.usi-preview-task .usi-home-button { width: 100%; font-size: 12px; min-height: 46px; padding: 10px 14px; }
.usi-home .usi-preview-disclaimer { font-size: 10px; margin: 16px 0 0; color: #67675e; text-align: center; }
.usi-home-process { max-width: 1200px; margin: auto; border-top: 1px solid #e4e3da; padding: 60px 0; scroll-margin-top: 24px; }
.usi-process-heading { text-align: center; }
.usi-process-heading .usi-kicker { justify-content: center; }
.usi-home .usi-process-heading h2, .usi-home .usi-home-ending h2 { color: #171714; font-size: clamp(29px, 3.2vw, 42px); line-height: 1.16; letter-spacing: -1.6px; margin: 15px 0; }
.usi-home .usi-process-heading > p:last-child { color: #67675e; font-size: 15px; }
.usi-process-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 35px; margin-top: 45px; }
.usi-process-grid article { padding: 0 20px; }
.usi-step { display: inline-grid; place-items: center; width: 35px; height: 35px; background: #eaf0e9; color: #3f6f5b; border-radius: 10px; font-size: 12px; font-weight: 700; }
.usi-home .usi-process-grid h3 { font-size: 17px; color: #171714; margin: 18px 0 10px; line-height: 1.4; }
.usi-home .usi-process-grid p { color: #67675e; font-size: 14px; line-height: 1.75; margin: 0; }
.usi-home-ending { display: flex; align-items: center; justify-content: space-between; gap: 30px; max-width: 1200px; margin: 0 auto 50px; padding: 40px 50px; border-radius: 22px; background: #f2c400; }
.usi-home .usi-home-ending .usi-kicker, .usi-home .usi-home-ending p { color: #494016; }
body.usi-home .site-footer { display: flex; flex-wrap: wrap; gap: 24px 40px; align-items: center; justify-content: space-between; background: #f6f4ee; color: #67675e; border-top: 1px solid #e4e3da; padding: 30px 40px; }
.usi-footer-brand { display: grid; gap: 4px; font-size: 13px; }
.usi-footer-brand strong { color: #171714; }
.usi-footer-brand span { font-size: 12px; }
body.usi-home .site-footer nav { display: flex; flex-wrap: wrap; gap: 12px 22px; }
body.usi-home .site-footer a { display: inline-flex; align-items: center; min-height: 44px; font-size: 13px; }
body.usi-home .site-footer a { color: #67675e; }
body.usi-home .site-footer a:hover { color: #171714; }
.usi-home a:focus-visible, .usi-home button:focus-visible { outline: 3px solid #153d63; outline-offset: 4px; }
.usi-skip { position: fixed; top: -100px; left: 16px; z-index: 999; padding: 12px; background: #fffdf8; }
.usi-skip:focus { top: 12px; }
@media (max-width: 1250px) { .usi-home-process, .usi-home-ending { margin-left: 40px; margin-right: 40px; } }
@media (max-width: 950px) { body.usi-home #publicApp .usi-home-hero { gap: 35px; padding-top: 40px; } .usi-preview { padding: 20px; transform: none; } .usi-home .usi-home-lead { font-size: 16px; } .usi-process-grid { gap: 15px; } .usi-process-grid article { padding: 0 8px; } }
@media (max-width: 700px) {
  body.usi-home .site-header { padding: 18px 22px; gap: 12px; }
  body.usi-home .brand { font-size: 14px; gap: 8px; }
  body.usi-home .brand > span { display: inline; font-size: 12px; }
  body.usi-home .brand-symbol { width: 28px; height: 28px; }
  body.usi-home .site-nav a { padding: 8px 12px; font-size: 12px; }
  body.usi-home #publicApp .usi-home-hero { grid-template-columns: 1fr; padding: 40px 22px 45px; gap: 35px; }
  body.usi-home #publicApp .usi-home-hero h1 { font-size: clamp(35px, 8.5vw, 52px); letter-spacing: -2px; line-height: 1.1; margin: 22px 0; }
  .usi-home .usi-home-lead { max-width: 450px; }
  .usi-home-actions .usi-home-button { width: 100%; }
  .usi-home-method { margin-top: 15px; }
  .usi-preview { max-width: 460px; width: 100%; margin: auto; }
  .usi-home-process { padding: 35px 0; margin: 0 22px; }
  .usi-process-heading { text-align: left; }
  .usi-process-heading .usi-kicker { justify-content: flex-start; font-size: 10px; }
  .usi-process-grid { grid-template-columns: 1fr; gap: 26px; margin-top: 30px; }
  .usi-process-grid article { padding: 0; }
  .usi-home .usi-process-grid h3 { margin-top: 12px; }
  .usi-home-ending { flex-direction: column; align-items: stretch; padding: 26px; margin: 0 22px 30px; gap: 20px; }
  body.usi-home .site-footer { padding: 24px 22px; }
}
@media (prefers-reduced-motion: reduce) { .usi-home .usi-home-button { transition: none; } }

/* Experiencia de portada, sin dependencias ni acceso a datos privados. */
body.usi-home #publicApp .usi-home-hero { padding-top: 76px; padding-bottom: 100px; gap: 64px; }
body.usi-home #publicApp .usi-home-hero h1 { font-size: clamp(42px,5.2vw,74px); }
.usi-home .usi-preview { transform: none; position: relative; box-shadow: 0 28px 80px #302b2214; }
.usi-home .usi-preview::before { content: ''; position: absolute; inset: -35px; border-radius: 50%; background: radial-gradient(ellipse,#f2c40025,transparent 70%); z-index: -1; }
.usi-demo-tabs { display: flex; gap: 6px; margin-top: 20px; padding: 5px; background: #f0efe8; border-radius: 12px; }
.usi-home .usi-demo-tabs button { flex: 1; border: 0; background: transparent; border-radius: 8px; padding: 12px 4px; color: #595b50; font: inherit; font-size: 12px; cursor: pointer; min-height: 44px; }
.usi-home .usi-demo-tabs button[aria-pressed="true"] { background: #fffdf8; color: #171714; box-shadow: 0 2px 8px #1717140a; }
.usi-demo-panel { min-height: 390px; }
.usi-demo-panel[hidden] { display: none; }
.usi-demo-choices { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 16px; }
.usi-home .usi-demo-choices button { font: inherit; font-size: 11px; background: #ffffff45; color: #171714; border: 1px solid #17171422; border-radius: 20px; padding: 8px 10px; min-height: 44px; cursor: pointer; }
.usi-home .usi-demo-choices button[aria-pressed="true"] { background: #171714; color: #fffdf8; }
.usi-home button.usi-home-button { cursor: pointer; font-family: inherit; width: 100%; }
.usi-home .usi-demo-focus { text-align: center; background: #eaf0e9; border-radius: 16px; padding: 22px; }
.usi-demo-orbit { width: 124px; height: 124px; margin: 0 auto 16px; border: 7px solid #3f6f5b; border-right-color: #f2c400; border-radius: 50%; display: grid; place-items: center; position: relative; }
.usi-demo-orbit span { font-size: 38px; font-weight: 700; letter-spacing: -2px; color: #171714; }
.usi-demo-orbit small { display: block; font-size: 11px; font-weight: 500; letter-spacing: 0; }
.usi-home .usi-demo-focus h3 { color: #171714; font-size: 17px; line-height: 1.4; margin: 12px 0; }
.usi-home .usi-demo-focus p, .usi-home .usi-demo-progress p { font-size: 12px; line-height: 1.6; color: #595b50; }
.usi-demo-progress { padding: 24px; background: #eaf0e9; border-radius: 16px; }
.usi-demo-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.usi-demo-metrics strong { display: block; font-size: 34px; letter-spacing: -1px; color: #171714; }
.usi-demo-metrics strong small { font-size: 13px; }
.usi-demo-metrics div > span { font-size: 11px; color: #595b50; }
.usi-demo-bars { display: flex; align-items: flex-end; gap: 10px; height: 108px; padding-bottom: 20px; margin: 20px 0 0; }
.usi-demo-bars span { flex: 1; height: var(--bar); background: #3f6f5b; border-radius: 6px 6px 2px 2px; color: #595b50; font-size: 10px; text-align: center; position: relative; display: flex; align-items: flex-end; justify-content: center; padding-bottom: 2px; line-height: 1; }
.usi-demo-bars span:nth-child(odd) { background: #f2c400; }
.usi-home-possibility { max-width: 1200px; margin: 20px auto 80px; display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; padding: 48px; background: #eaf0e9; border-radius: 24px; }
.usi-home .usi-home-possibility h2 { font-size: clamp(28px,3vw,40px); line-height: 1.15; letter-spacing: -1.5px; color: #171714; margin: 18px 0; }
.usi-home .usi-home-possibility p { color: #595b50; font-size: 14px; line-height: 1.7; }
.usi-home-calculator label { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; font-size: 13px; color: #171714; }
.usi-home-calculator output { font-weight: 700; }
.usi-home-calculator input { width: 100%; margin: 18px 0 24px; accent-color: #3f6f5b; min-height: 28px; cursor: pointer; }
.usi-home-estimate strong { display: block; font-size: clamp(36px,4vw,50px); font-weight: 700; color: #171714; letter-spacing: -2px; }
.usi-home-estimate > span { font-size: 12px; color: #595b50; }
.usi-estimate-track { height: 8px; background: #3f6f5b20; border-radius: 20px; margin-top: 20px; overflow: hidden; }
.usi-estimate-track span { display: block; height: 100%; background: #3f6f5b; border-radius: inherit; transition: width .2s; }
.usi-home .usi-home-calculator > p { font-size: 11px; }
.usi-home .usi-process-grid article { padding: 24px; border: 1px solid #e4e3da; border-radius: 18px; background: #fffdf880; transition: transform .2s,background .2s; }
@media (hover:hover) { .usi-home .usi-process-grid article:hover { transform: translateY(-5px); background: #fffdf8; } }
@keyframes usi-enter { from { transform: translateY(18px); opacity: .35; } to { transform: translateY(0); opacity: 1; } }
@keyframes usi-glow { 0%,100% { box-shadow: 0 0 0 0 #3f6f5b22; } 50% { box-shadow: 0 0 0 8px #3f6f5b00; } }
@media (prefers-reduced-motion:no-preference) {
  .usi-home-copy, .usi-home .usi-preview { animation: usi-enter .7s ease both; }
  .usi-home .usi-preview { animation-delay: .12s; }
  .usi-home-copy > .usi-kicker > span { animation: usi-glow 3s ease-in-out infinite; }
  .usi-demo-panel:not([hidden]) { animation: usi-enter .3s ease; }
  .usi-in-view { animation: usi-enter .65s ease both; }
  .usi-process-grid article:nth-child(2).usi-in-view { animation-delay: .08s; }
  .usi-process-grid article:nth-child(3).usi-in-view { animation-delay: .16s; }
}
@media (max-width:1250px) { .usi-home-possibility { margin-left:40px; margin-right:40px; gap:35px; } }
@media (max-width:950px) { body.usi-home #publicApp .usi-home-hero { gap:30px; padding-top:45px; padding-bottom:60px; } .usi-home-possibility { padding:32px; } }
@media (max-width:700px) { body.usi-home #publicApp .usi-home-hero { gap:32px; padding:40px 22px 50px; } body.usi-home #publicApp .usi-home-hero h1 { font-size:clamp(38px,10vw,58px); } .usi-demo-panel { min-height:390px; } .usi-home-possibility { grid-template-columns:1fr; margin:10px 22px 35px; padding:26px; gap:20px; } .usi-home .usi-process-grid article { padding:22px; } }
@media (prefers-reduced-motion:reduce) { .usi-home *, .usi-home *::before, .usi-home *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
/* Portada viva: scroll nativo, contenido visible y movimiento opcional. */
.usi-home-actions { display:flex; flex-wrap:wrap; gap:12px; }
.usi-home .usi-home-secondary { background:transparent; color:#171714; border-color:#d0d2c8; }
.usi-scroll-story,.usi-explore,.usi-home-situations { max-width:1200px; margin:70px auto; }
.usi-scroll-story { display:grid; grid-template-columns:1fr 1.2fr; gap:70px; align-items:start; padding:55px 0; border-top:1px solid #e4e3da; }
.usi-story-intro { position:sticky; top:50px; padding:25px 0; }
.usi-home .usi-story-intro h2,.usi-home .usi-explore h2,.usi-home .usi-home-situations h2 { color:#171714; font-size:clamp(30px,3.5vw,46px); letter-spacing:-1.8px; line-height:1.12; margin:18px 0; }
.usi-home .usi-story-intro > p:last-of-type,.usi-home .usi-home-situations p { font-size:15px; line-height:1.7; color:#67675e; }
.usi-story-line { margin-top:30px; width:150px; height:6px; background:#e4e3da; border-radius:10px; overflow:hidden; }
.usi-story-line span { display:block; width:45%; height:100%; background:#3f6f5b; }
.usi-story-steps { display:grid; gap:28px; }
.usi-story-steps article { display:grid; grid-template-columns:35px 1fr; gap:18px; padding:32px; border:1px solid #e4e3da; border-radius:24px; background:#fffdf8; transition:border-color .4s,box-shadow .4s,transform .4s; }
.usi-story-steps article.usi-story-active { border-color:#3f6f5b70; box-shadow:0 18px 40px #302b2209; }
.usi-story-number { color:#3f6f5b; font-size:14px; font-weight:700; }
.usi-home .usi-story-steps h3 { color:#171714; font-size:clamp(23px,2.5vw,30px); line-height:1.2; letter-spacing:-1px; margin:14px 0; }
.usi-home .usi-story-steps p:not(.usi-kicker) { color:#67675e; font-size:14px; line-height:1.7; }
.usi-story-drawing { padding:22px; background:#eaf0e9; border-radius:16px; display:grid; gap:10px; margin-top:22px; font-size:13px; }
.usi-muted-task { color:#76796d; text-decoration:line-through; }
.usi-story-drawing strong { color:#171714; }
.usi-story-focus { justify-items:center; padding:30px 15px; }
.usi-story-focus > span:last-child { color:#595b50; font-size:11px; }
.usi-focus-dot { width:38px; height:38px; border:9px solid #f2c400; background:#3f6f5b; border-radius:50%; }
.usi-story-mini-bars { display:flex; align-items:flex-end; height:130px; gap:8px; flex-wrap:wrap; }
.usi-story-mini-bars i { flex:1; background:#3f6f5b; height:30px; border-radius:6px 6px 0 0; }
.usi-story-mini-bars i:nth-child(2) { height:50px; }.usi-story-mini-bars i:nth-child(3) { height:35px; }.usi-story-mini-bars i:nth-child(4) { height:65px; background:#f2c400; }.usi-story-mini-bars i:nth-child(5) { height:48px; }
.usi-story-mini-bars strong { flex-basis:100%; font-size:12px; }
.usi-explore-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; }
.usi-slide-controls { display:flex; gap:8px; margin-bottom:18px; }
.usi-home .usi-slide-controls button { width:48px; height:48px; border-radius:50%; border:1px solid #d0d2c8; background:#fffdf8; color:#171714; font-size:20px; cursor:pointer; }
.usi-explore-track { display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; padding:20px 0 25px; scrollbar-color:#3f6f5b #e4e3da; scrollbar-width:thin; }
.usi-explore-track article { flex:0 0 330px; scroll-snap-align:start; padding:30px; background:#eaf0e9; border-radius:24px; display:flex; flex-direction:column; align-items:flex-start; min-height:365px; }
.usi-explore-track article:nth-child(even) { background:#f2c40030; }
.usi-explore-symbol { font-size:42px; color:#3f6f5b; margin-bottom:25px; }
.usi-home .usi-explore-track h3 { color:#171714; font-size:28px; line-height:1.15; letter-spacing:-1px; margin:14px 0; }
.usi-home .usi-explore-track p:not(.usi-kicker) { color:#595b50; font-size:14px; line-height:1.7; }
.usi-home .usi-explore-track a { color:#171714; margin-top:auto; padding-top:20px; min-height:44px; font-size:13px; text-underline-offset:5px; }
.usi-slide-hint { font-size:12px; color:#67675e; }
.usi-home-situations { display:grid; grid-template-columns:1fr 1.2fr; gap:70px; padding:48px; border:1px solid #e4e3da; border-radius:24px; background:#fffdf8; }
.usi-situation-buttons { display:flex; flex-wrap:wrap; gap:8px; }
.usi-home .usi-situation-buttons button { font:inherit; font-size:12px; padding:12px; min-height:44px; border-radius:20px; border:1px solid #d0d2c8; background:transparent; color:#171714; cursor:pointer; }
.usi-home .usi-situation-buttons button[aria-pressed="true"] { background:#171714; color:#fffdf8; }
.usi-situation-result { margin-top:24px; border-left:3px solid #f2c400; padding:8px 0 8px 20px; }
.usi-situation-result > span { color:#3f6f5b; font-size:11px; text-transform:uppercase; letter-spacing:1px; }
.usi-home .usi-situation-result h3 { color:#171714; font-size:25px; line-height:1.2; letter-spacing:-.8px; margin:12px 0; }
@keyframes usi-story-drift { 0%,100%{transform:translateX(0)} 50%{transform:translateX(80px)} }
@media(prefers-reduced-motion:no-preference) { html:has(body.usi-home) { scroll-behavior:smooth; } .usi-story-line span { animation:usi-story-drift 5s ease-in-out infinite; } .usi-story-active .usi-focus-dot { animation:usi-glow 2.8s ease-in-out infinite; } .usi-story-active .usi-story-drawing { animation:usi-enter .6s ease; } .usi-explore-track article { transition:transform .25s; } }
@media(hover:hover) { .usi-explore-track article:hover { transform:translateY(-5px); } }
@media(max-width:1250px) { .usi-scroll-story,.usi-explore,.usi-home-situations { margin-left:40px; margin-right:40px; } }
@media(max-width:950px) { .usi-scroll-story,.usi-home-situations { gap:30px; } .usi-home-situations { padding:32px; } .usi-story-steps article { padding:24px; gap:12px; } }
@media(max-width:700px) { .usi-home-actions .usi-home-button { width:auto; flex:1 1 auto; } .usi-scroll-story,.usi-explore,.usi-home-situations { margin:40px 22px; } .usi-scroll-story,.usi-home-situations { grid-template-columns:1fr; gap:24px; } .usi-story-intro { position:static; padding:0; } .usi-story-steps article { padding:22px 18px; grid-template-columns:25px 1fr; } .usi-explore-heading { align-items:flex-start; flex-direction:column; gap:0; } .usi-slide-controls { margin:0; } .usi-explore-track article { flex-basis:85%; padding:26px; } .usi-home-situations { padding:26px; } }
.usi-home .usi-explore-track:focus-visible,.usi-home input:focus-visible { outline:3px solid #153d63; outline-offset:4px; }

/* Ilustraciones editoriales: tamaños reservados y carga diferida. */
.usi-study-scene { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border-radius:24px; margin-top:30px; box-shadow:0 20px 45px #302b2212; }
.usi-progress-scene { display:block; width:100%; max-height:220px; aspect-ratio:3/2; object-fit:cover; border-radius:18px; margin-bottom:24px; }
@media(max-width:700px) { .usi-study-scene { margin-top:24px; } .usi-progress-scene { max-height:none; } }

/* Profundidad de portada, conservando la demostración real y sus controles. */
body.usi-home { background:#f6f4ee; }
body.usi-home .site-header { color:#fffdf8; position:relative; z-index:2; }
body.usi-home .site-header .brand,body.usi-home .site-header .site-nav a { color:#fffdf8; }
body.usi-home .site-header .site-nav { background:#ffffff0d; border:1px solid #ffffff20; border-radius:40px; padding:8px 12px; gap:20px; }
body.usi-home #publicApp { background:transparent; }
body.usi-home::before { content:""; position:absolute; inset:0 0 auto; height:1050px; background:radial-gradient(ellipse at 78% 35%,#52795b88,transparent 48%),linear-gradient(180deg,#102c27 0%,#183c32 62%,#f6f4ee 100%); pointer-events:none; }
body.usi-home #publicApp .usi-home-hero { position:relative; padding-top:65px; padding-bottom:110px; gap:70px; align-items:center; }
body.usi-home #publicApp .usi-home-hero h1 { color:#fffdf8; font-size:clamp(46px,5.1vw,72px); line-height:1.07; letter-spacing:-3px; }
body.usi-home #publicApp .usi-home-hero h1 span { color:#f2c400; }
body.usi-home .usi-home-copy > .usi-kicker { color:#ecd968; }
body.usi-home .usi-home-lead { color:#d3ddd5; max-width:470px; }
body.usi-home .usi-home-copy .usi-home-button { background:#f2c400; color:#172b23; border-color:#f2c400; border-radius:30px; box-shadow:0 10px 30px #00000020; }
body.usi-home .usi-home-copy .usi-home-secondary { background:#ffffff08; color:#fffdf8; border-color:#ffffff55; box-shadow:none; }
body.usi-home .usi-home-assurance,body.usi-home .usi-home-method { color:#d3ddd5; }
.usi-product-scene { position:relative; padding:18px 22px 30px 0; isolation:isolate; min-width:0; }
.usi-home .usi-product-scene .usi-preview { position:relative; z-index:2; border:7px solid #24382f; border-radius:32px; box-shadow:12px 20px 0 #0c201b,25px 45px 65px #00000045; transform:rotate(-4deg); padding:23px; background:#fffdf8; }
.usi-home .usi-product-scene .usi-preview::before { display:none; }
.usi-home .usi-home-process { position:relative; background:#173b30; color:#fffdf8; border-radius:28px; padding:36px; box-shadow:0 20px 40px #16392c18; }
.usi-home .usi-process-heading h2 { color:#fffdf8; }.usi-home .usi-process-heading p { color:#cedbd0; }
.usi-home .usi-home-process .usi-kicker { color:#f2c400; }
.usi-home .usi-process-grid article { background:#ffffff08; border-color:#ffffff18; }
.usi-home .usi-process-grid article h3 { color:#fffdf8; }.usi-home .usi-process-grid article p { color:#cedbd0; }.usi-home .usi-process-grid .usi-step { color:#f2c400; }
.usi-home .usi-process-grid article:hover { background:#ffffff12; }
.usi-home .usi-story-steps article.usi-story-active { background:#e8eee3; border-color:#c2d3bd; box-shadow:0 22px 45px #213b2515; }
.usi-home .usi-explore-track article { box-shadow:inset 0 1px 0 #ffffffaa,0 12px 25px #203c2910; background:linear-gradient(145deg,#eaf0e9,#cbdac8); }
.usi-home .usi-explore-track article:nth-child(even) { background:linear-gradient(145deg,#fff3b4,#e9d568); }
@media(min-width:701px) and (max-width:1100px) { body.usi-home #publicApp .usi-home-hero { gap:30px; grid-template-columns:1fr 1fr; } .usi-device-back { right:-10px; width:220px; } .usi-home .usi-product-scene .usi-preview { transform:rotate(-2deg); padding:18px; } }
@media(max-width:700px) { body.usi-home::before { height:1450px; background:radial-gradient(ellipse at 70% 40%,#52795b66,transparent 45%),linear-gradient(180deg,#102c27,#183c32 78%,#f6f4ee); } body.usi-home .site-header .site-nav { padding:8px 12px; }.usi-header-discover { display:none!important; } body.usi-home #publicApp .usi-home-hero { padding:35px 22px 65px; gap:35px; } body.usi-home #publicApp .usi-home-hero h1 { font-size:clamp(40px,10vw,58px); letter-spacing:-2px; }.usi-product-scene { padding:10px 0 38px; }.usi-device-back { display:none; }.usi-home .usi-product-scene .usi-preview { transform:none; padding:18px; border-width:4px; box-shadow:0 9px 0 #0c201b,0 22px 35px #00000030; }.usi-scene-note { right:12px; bottom:0; padding:12px 16px; }.usi-home .usi-home-process { padding:26px; border-radius:24px; } }
body.usi-home .site-header .site-nav { flex:0 0 auto; width:auto; margin-left:auto; }
body.usi-home .site-header .site-nav a { background:transparent; border:0; padding:10px 14px; }
body.usi-home .site-header .site-nav a:last-child { background:#fffdf8; color:#173b30; border-radius:24px; }
.usi-home .usi-product-scene .usi-preview { animation:none; }

/* Inicio inmersivo: escena CSS ligera, sin vídeos ni dependencias. */
body.usi-home::before { display:none; }
body.usi-home .site-header { position:absolute; inset:0 0 auto; width:100%; }
body.usi-home .site-header .brand { position:relative; z-index:2; }
body.usi-home #publicApp .usi-immersive-hero { max-width:none; min-height:800px; min-height:100svh; padding:160px 24px 75px; display:grid; grid-template-columns:1fr; gap:0; overflow:hidden; background:#081e19; isolation:isolate; }
.usi-immersive-hero .usi-home-copy { position:relative; z-index:1; max-width:850px; margin:auto; text-align:center; }
body.usi-home #publicApp .usi-immersive-hero h1 { font-size:clamp(55px,7.3vw,104px); line-height:1.02; letter-spacing:-5px; margin:25px 0; }
.usi-immersive-hero .usi-home-copy > .usi-kicker { justify-content:center; }
body.usi-home .usi-immersive-hero .usi-home-lead { max-width:510px; margin:0 auto; font-size:18px; color:#d9e3d9; }
.usi-immersive-hero .usi-home-actions { justify-content:center; }
body.usi-home .usi-immersive-hero .usi-home-method { color:#e3e9df; margin-top:42px; }
.usi-focus-portal { position:absolute; inset:0; z-index:0; pointer-events:none; background:radial-gradient(ellipse at 50% 50%,#40694a44,transparent 58%); }
.usi-focus-portal i { position:absolute; left:50%; top:51%; width:min(1000px,105vw); height:min(1000px,105vw); border-radius:50%; border:1px solid #f2c40024; box-shadow:inset 0 0 75px #718c4c17,0 0 100px #7b995a0c; transform:translate(-50%,-50%) rotateX(24deg); }
.usi-focus-portal i:nth-child(2) { width:min(790px,85vw); height:min(790px,85vw); border-width:22px; border-color:#47614816; box-shadow:0 0 70px #889c5125,inset 0 0 55px #ced38c14; }
.usi-focus-portal i:nth-child(3) { width:min(1150px,125vw); height:min(1150px,125vw); border-width:90px; border-color:#03151190; filter:blur(14px); }
.usi-focus-portal > span { position:absolute; width:9px; height:9px; border-radius:50%; background:#f2c400; left:73%; top:29%; box-shadow:0 0 45px 18px #f2c40022; }
.usi-product-showcase { display:grid; grid-template-columns:1fr 1fr; gap:80px; max-width:1200px; margin:0 auto; padding:100px 0; align-items:center; scroll-margin-top:30px; }
.usi-home .usi-showcase-copy h2 { font-size:clamp(34px,4vw,52px); letter-spacing:-2px; line-height:1.1; color:#172b23; margin:22px 0; }
.usi-showcase-copy h2 span { color:#3f6f5b; }.usi-showcase-copy > p:last-of-type { color:#67675e; line-height:1.8; max-width:410px; }
.usi-showcase-route { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }.usi-showcase-route span { padding:10px 14px; border:1px solid #d5ddcf; border-radius:30px; color:#3f6f5b; font-size:12px; }
.usi-home .usi-product-showcase .usi-preview { transform:none; border:1px solid #d5ddcf; box-shadow:0 24px 65px #173b3018; border-radius:26px; }
.usi-product-showcase .usi-device-back,.usi-product-showcase .usi-scene-note { display:none; }
.usi-product-showcase .usi-product-scene { padding:0; }
@keyframes usi-portal-breathe { 0%,100%{opacity:.5;transform:translate(-50%,-50%) scale(.97) rotateX(24deg)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.04) rotateX(24deg)} }
@media(prefers-reduced-motion:no-preference) { .usi-focus-portal i { animation:usi-portal-breathe 12s ease-in-out infinite; }.usi-focus-portal i:nth-child(2){animation-delay:-6s;} }
@media(max-width:1250px) { .usi-product-showcase { margin:0 40px; gap:50px; } }
@media(max-width:700px) { body.usi-home #publicApp .usi-immersive-hero { min-height:100svh; padding:135px 22px 65px; } body.usi-home #publicApp .usi-immersive-hero h1 { font-size:clamp(44px,11vw,65px); letter-spacing:-2.5px; } body.usi-home .usi-immersive-hero .usi-home-lead { font-size:16px; }.usi-focus-portal i { width:170vw;height:170vw; }.usi-focus-portal i:nth-child(2){width:130vw;height:130vw;}.usi-focus-portal i:nth-child(3){width:220vw;height:220vw;}.usi-product-showcase { grid-template-columns:1fr; margin:0 22px; padding:65px 0; gap:30px; }.usi-home .usi-showcase-copy h2 { font-size:36px; }.usi-showcase-route { gap:6px; }.usi-showcase-route span { font-size:11px; padding:8px 10px; } }
body.usi-home #publicApp .usi-immersive-hero { width:100%; margin:0; border-radius:0; }

/* Una sola escena para dar espacio al mensaje y al cuadro. */
.usi-attention-story { position:relative; max-width:1200px; margin:85px auto; overflow:hidden; border-radius:28px; background:#081e19; min-height:560px; display:grid; grid-template-columns:1fr 1fr; align-items:center; }
.usi-attention-story > img { display:block; width:100%; height:100%; min-height:560px; object-fit:cover; object-position:57% center; }
.usi-attention-copy { padding:55px; }
.usi-home .usi-attention-copy .usi-kicker { color:#d8c45d; }
.usi-home .usi-attention-copy h2 { color:#fffdf8; font-size:clamp(34px,4vw,52px); line-height:1.1; letter-spacing:-2px; margin:24px 0; }
.usi-home .usi-attention-copy > p:not(.usi-kicker) { color:#d3ddd5; font-size:17px; line-height:1.8; max-width:340px; margin-bottom:30px; }
.usi-home .usi-attention-copy .usi-home-button { background:#f2c400; border-color:#f2c400; color:#173b30; border-radius:30px; }
@media(max-width:1250px) { .usi-attention-story { margin:65px 40px; } .usi-attention-copy { padding:35px; } }
@media(max-width:700px) { .usi-attention-story { margin:45px 22px; grid-template-columns:1fr; min-height:0; border-radius:24px; }.usi-attention-story > img { min-height:0; height:auto; aspect-ratio:3/2; }.usi-attention-copy { padding:30px 25px 35px; }.usi-home .usi-attention-copy h2 { font-size:36px; }.usi-home .usi-attention-copy > p:not(.usi-kicker) { font-size:16px; } }

/* Footer y precios: continuidad con la nueva portada. */
body.usi-home .site-footer { padding:55px max(24px,calc((100vw - 1200px)/2)); background:#081e19; border-top:1px solid #294639; color:#cbd8cd; gap:35px; align-items:flex-start; }
.usi-footer-brand { grid-template-columns:40px 1fr; column-gap:14px; align-items:center; }
.usi-footer-brand img { grid-row:1/3; object-fit:contain; }
body.usi-home .usi-footer-brand strong { color:#fffdf8; font-size:16px; }
body.usi-home .usi-footer-brand span { color:#aebfaf; }
body.usi-home .site-footer nav { display:grid; gap:6px; }
body.usi-home .site-footer a { color:#d5dfd4; font-size:14px; }
body.usi-home .site-footer a:hover { color:#f2c400; }
body.usi-home .site-footer a:focus-visible { outline-color:#f2c400; }
.pricing-page { max-width:1280px; padding:40px clamp(20px,4vw,50px) 75px; color:#172b23; }
.pricing-page .pricing-header { padding:65px 30px; border-radius:28px; background:radial-gradient(ellipse at 80% 20%,#4a725955,transparent 60%),#102f26; }
.pricing-page .pricing-header h1 { color:#fffdf8; font-size:clamp(34px,4.5vw,60px); line-height:1.08; letter-spacing:-2px; margin:20px 0; }
.pricing-page .pricing-header .eyebrow { color:#f2c400; }
.pricing-page .pricing-intro { color:#d3ddd5; }
.pricing-page .pricing-section { margin-top:55px; }
.pricing-page .pricing-section h2 { color:#173b30; letter-spacing:-1px; }
.pricing-page .pricing-section-desc { color:#626e61; }
.pricing-page .pricing-card { border-radius:22px; border:1px solid #d7e0d0; background:#fffdf8; box-shadow:0 12px 32px #173b300a; padding:28px; }
.pricing-page .pricing-card-featured { background:linear-gradient(160deg,#f5e9a4,#fffdf8 60%); border-color:#ceb445; box-shadow:0 14px 35px #173b3012; }
.pricing-page .pricing-amount { color:#173b30; }
.pricing-page .pricing-section-dark { background:#eaf0e5; border-color:#d7e0d0; border-radius:24px; box-shadow:none; }
.pricing-page .button { border-radius:30px; box-shadow:none; }
.pricing-page .button.primary { color:#173b30; background:#f2c400; border-color:#f2c400; }
.pricing-page .button.secondary { color:#173b30; background:transparent; border-color:#acbba5; }
@media(max-width:700px) { body.usi-home .site-footer { padding:35px 24px; display:grid; grid-template-columns:1fr 1fr; gap:24px; }.usi-footer-brand { grid-column:1/-1; }.pricing-page { padding:22px 18px 45px; }.pricing-page .pricing-header { padding:40px 22px; }.pricing-page .pricing-header h1 { letter-spacing:-1px; } }

/* Test inicial: una pregunta protagonista, misma escala y puntuación. */
#privateApp .test-screen { min-height:100svh; padding:35px 24px 60px; background:radial-gradient(ellipse at 15% 50%,#3f6f5b38,transparent 60%),#081e19; color:#fffdf8; }
#privateApp .test-screen .auth-brand { color:#fffdf8; margin-bottom:28px; }
#privateApp .test-screen .test-card { width:min(100%,850px); max-width:850px; background:#102b23; border:1px solid #36503d; border-radius:28px; box-shadow:0 30px 90px #00000030; padding:clamp(24px,5vw,55px); }
#privateApp .test-screen .test-card h1 { color:#fffdf8; font-size:clamp(30px,4vw,48px); letter-spacing:-1.6px; line-height:1.1; }
#privateApp .test-screen .test-card > p:not(.eyebrow) { color:#c8d7cb; line-height:1.7; }
#privateApp .test-screen .eyebrow { color:#f2c400; letter-spacing:1.5px; }
#privateApp .test-screen .test-progress { color:#b8cab8; margin:30px 0; }
#privateApp .test-screen .test-progress > div { background:#294537; height:6px; border-radius:20px; overflow:hidden; }
#privateApp .test-screen .test-progress i { background:#f2c400; border-radius:20px; }
#privateApp .test-screen .likert-question { padding:0; background:transparent; border:0; box-shadow:none; }
#privateApp .test-screen .question-title { align-items:flex-start; color:#fffdf8; gap:16px; }
#privateApp .test-screen .question-title > span { background:#f2c400; color:#173b30; border-radius:50%; flex-shrink:0; }
#privateApp .test-screen .question-title p { color:#fffdf8; font-size:clamp(23px,3vw,32px); line-height:1.35; letter-spacing:-.7px; }
#privateApp .test-screen .likert-options { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin-top:28px; }
#privateApp .test-screen .likert-options span { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; min-height:100px; padding:14px 5px; border:1px solid #52634f; border-radius:16px; background:#1b382c; color:#e7eee1; }
#privateApp .test-screen .likert-options b { font-size:24px; }#privateApp .test-screen .likert-options small { font-size:11px; }
#privateApp .test-screen .likert-options input:checked + span { background:#f2c400; color:#173b30; border-color:#f2c400; box-shadow:0 0 0 3px #f2c40022; }
#privateApp .test-screen .likert-options input:focus-visible + span { outline:3px solid #fffdf8; outline-offset:4px; }
#privateApp .test-screen .initial-test-scale { color:#a5bca8; font-size:12px; }
#privateApp .test-screen .button { border-radius:24px; min-height:48px; }
#privateApp .test-screen .button.primary { background:#f2c400; color:#173b30; border-color:#f2c400; }
#privateApp .test-screen .button.secondary { background:transparent; color:#fffdf8; border-color:#64745d; }
#privateApp .test-screen .initial-test-contact h2 { color:#fffdf8; }#privateApp .test-screen .initial-test-contact :is(label,.muted-copy) { color:#c8d7cb; }
@media(prefers-reduced-motion:no-preference) { #privateApp .test-screen .initial-test-step { animation:usi-enter .35s ease both; } }
@media(max-width:600px) { #privateApp .test-screen { padding:22px 16px 40px; } #privateApp .test-screen .test-card { padding:24px 20px; border-radius:22px; } #privateApp .test-screen .likert-options { gap:5px; } #privateApp .test-screen .likert-options span { min-height:90px; } #privateApp .test-screen .likert-options small { font-size:10px; line-height:1.3; text-align:center; } }

/* Choreographed entrance; no dependencies or layout changes. */
@keyframes usi-text-arrive {
  from { opacity:0; transform:translateY(38px) scale(.96); }
  75% { opacity:1; transform:translateY(-3px) scale(1.005); }
  to { opacity:1; transform:none; }
}
@keyframes usi-title-reveal {
  from { opacity:0; clip-path:inset(0 0 100% 0); transform:translateY(55px) rotate(2deg); }
  72% { opacity:1; clip-path:inset(-10% -5% -15% -5%); transform:translateY(-5px) rotate(-.3deg); }
  to { opacity:1; clip-path:inset(-10% -5% -15% -5%); transform:none; }
}
@keyframes usi-button-arrive {
  from { opacity:0; transform:translateY(22px) scale(.9); }
  70% { opacity:1; transform:translateY(-3px) scale(1.03); }
  to { opacity:1; transform:none; }
}
@keyframes usi-discover-nudge { 0%,80%,100% { transform:translateY(0); } 90% { transform:translateY(6px); } }
body.usi-home #publicApp .usi-immersive-hero #home-title .usi-title-first { color:#fffdf8; }
.usi-immersive-hero #home-title > span { display:inline-block; transform-origin:50% 100%; }
@media (prefers-reduced-motion:no-preference) {
  .usi-immersive-hero .usi-home-copy > .usi-kicker { animation:usi-text-arrive .65s cubic-bezier(.22,1,.36,1) both; }
  .usi-immersive-hero #home-title > .usi-title-first { animation:usi-title-reveal .95s cubic-bezier(.22,1,.36,1) .08s both; }
  .usi-immersive-hero #home-title > .usi-title-second { animation:usi-title-reveal 1s cubic-bezier(.22,1,.36,1) .25s both; }
  .usi-immersive-hero .usi-home-lead { animation:usi-text-arrive .8s cubic-bezier(.22,1,.36,1) .38s both; }
  .usi-immersive-hero .usi-home-actions > a { animation:usi-button-arrive .7s cubic-bezier(.22,1,.36,1) .48s both; }
  .usi-immersive-hero .usi-home-actions > a:nth-child(2) { animation-delay:.58s; }
  .usi-immersive-hero .usi-home-assurance { animation:usi-text-arrive .7s cubic-bezier(.22,1,.36,1) .65s both; }
  .usi-immersive-hero .usi-home-method { animation:usi-text-arrive .7s cubic-bezier(.22,1,.36,1) .75s both; }
  .usi-immersive-hero .usi-home-method span { display:inline-block; animation:usi-discover-nudge 3s ease-in-out 1.5s 4; }
  .usi-home .usi-copy-pending { opacity:0; transform:translateY(42px) rotate(1deg) scale(.97); transform-origin:left center; transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1); }
  .usi-home .usi-copy-pending.usi-copy-visible { opacity:1; transform:none; }
}
@media (prefers-reduced-motion:reduce) {
  .usi-home .usi-copy-pending { opacity:1; transform:none; transition:none; }
}
