/* Ajustes aprobados de escritorio y móvil · 01/10/2026. */
html{scroll-behavior:auto}
/* Negative tracking must not clip the last glyph at the gradient boundary. */
.hero h1 em,.closing h2 em{display:inline-block;padding-right:.09em;margin-right:-.09em;padding-bottom:.04em;margin-bottom:-.04em;overflow:visible}
.hero-line{animation-duration:1.4s;padding:.14em .12em .22em;margin:-.14em -.12em -.22em;position:relative;overflow:visible}.hero-line:first-child{z-index:2}.hero-line.second{animation-delay:.2s}.hero h1 em{animation-duration:2.1s}.intro-in{animation-duration:1.2s;animation-delay:.45s}
.hero h1{display:flex;flex-direction:column;gap:0}
.hero-bottom{border-top:0}.hero-bottom a{outline-offset:4px}.hero-bottom a span{line-height:1}
.orb{animation-name:orb-breathe;animation-duration:7s}.ring-a{animation-duration:12s}.ring-b{animation-duration:16s}
@keyframes orb-breathe{0%,100%{transform:translateY(0) rotate(-5deg) scale(1);border-radius:38% 62% 68% 32%/47% 32% 68% 53%}50%{transform:translateY(-7px) rotate(8deg) scale(1.055);border-radius:65% 35% 38% 62%/35% 65% 35% 65%}}
.hero-object{bottom:-172px}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;min-height:80px}.hero-bottom .edition{justify-self:end}.hero-bottom a{position:absolute;left:50%;bottom:22px;transform:translate(-50%,50%);margin:0;white-space:nowrap}
@media(min-width:601px){.orbit{width:490px;height:490px}.orb{inset:80px}}
@media(max-width:600px){.hero-object{bottom:-145px}.hero-bottom{display:block;min-height:75px}.hero-bottom a{margin:0}}
/* Synchronized halves: the solid orb naturally occludes the rear arc. */
.orbit .ring-b{inset:40px 34%;transform-style:flat;backface-visibility:visible;transform:translateZ(var(--ring-depth)) rotate(-12deg);animation-name:orbit-vertical;animation-duration:16s}
.orbit .ring-back{--ring-depth:-1px;clip-path:inset(-2px -2px -2px 50%)}
.orbit .ring-front{--ring-depth:1px;clip-path:inset(-2px 50% -2px -2px)}
@keyframes orbit-vertical{0%,100%{transform:translateZ(var(--ring-depth)) rotate(-12deg) scaleX(.96)}50%{transform:translateZ(var(--ring-depth)) rotate(12deg) scaleX(1.04)}}
.media-stage{box-shadow:0 24px 65px #0005,0 0 0 1px #b9a4ff65,0 0 18px #7357ff20,0 0 45px #9d77ff0e}
.video-progress span{transition:none;will-change:transform}
/* Keep chapter controls, player and caption together on desktop. */
@media(min-width:901px){
 .work{padding-top:48px;padding-bottom:34px}
 .work .section-heading{margin:0 2% 24px}.work .section-heading h2{font-size:clamp(36px,3.2vw,50px);margin-top:15px;line-height:1.04}
 .category-tabs{margin:0 auto 18px}.category-tabs button{padding:10px 17px;font-size:12px}
 .media-stage{width:min(100%,calc(clamp(220px,100svh - 455px,450px)*16/9));margin-inline:auto}
 .work-caption{max-width:850px;margin:auto;padding-top:20px}.work-caption h3{font-size:24px}.caption-index{margin-bottom:7px}
 .work-bottom{max-width:850px;margin:auto;padding-top:16px}.work-bottom .arrows button{width:32px;height:32px}
}
.needs{position:relative}.needs:before{content:none}
.work,.comparison{background:radial-gradient(ellipse at 85% 12%,#7357ff22,transparent 48%),#0b0b10}
.compare-row.compare-last p{border-radius:0 0 18px 18px}
.comparison-table{position:relative;isolation:isolate}
.comparison-table:before{content:"";position:absolute;inset:12px 4px 12px 50%;z-index:-1;border-radius:24px;background:linear-gradient(145deg,#7357ff26,#a776ff16);filter:blur(24px);pointer-events:none}
.need-card{box-shadow:0 12px 28px #30224c08,0 6px 26px #7357ff0b}.need-card.selected{box-shadow:0 24px 50px #5434c51c,0 0 30px #9371ff12}
.comparison-head span:last-child{color:#fff;border-color:#a98aff65;background:linear-gradient(110deg,#4a2aba,#7550e2 58%,#9064db);box-shadow:0 -5px 27px #7357ff12}
.compare-row p:last-child{background:linear-gradient(110deg,#35216655,#6540a342);border-color:#a887ef30;box-shadow:5px 0 24px #7357ff09;color:#faf7ff}
.path-art{overflow:visible;margin-left:12px;margin-right:12px}.path-art.one i{left:82%;animation:none}.path-played .path-art.one i{animation:single-delivery 3.8s var(--ease) 1 both}.path-art.one i:before{content:"";position:absolute;right:4px;top:0;width:55px;height:5px;background:linear-gradient(90deg,transparent,#a987ef65);border-radius:10px;filter:blur(2px);opacity:0}.path-played .path-art.one i:before{animation:delivery-trail 3.8s var(--ease) 1 both}
@keyframes single-delivery{0%{left:0;opacity:0}12%{opacity:1}100%{left:82%;opacity:1}}@keyframes delivery-trail{0%,100%{opacity:0}25%,70%{opacity:.8}}
.paths article,.future-list details,.faq details{transition:border-color .45s,box-shadow .45s,background .45s}
.future-list summary>span{transform:perspective(300px) rotateY(-17deg) rotateX(12deg);box-shadow:4px 5px 0 #8065c840,0 12px 25px #7357ff20,inset 1px 1px 0 #fff;transition:transform .6s,box-shadow .6s;background:linear-gradient(135deg,#f6f3ff,#b69cff)}
.future-list details[data-expanded=true],.faq details[open]{border-color:#9e76ed;box-shadow:0 12px 32px #7357ff13,0 0 16px #b18cff0e}
.future-list details[data-expanded=true] summary>span{transform:perspective(300px) rotateY(10deg) rotateX(-5deg) translateY(-4px);box-shadow:-3px 5px 0 #8065c830,0 16px 30px #7357ff25,inset 1px 1px 0 #fff}
@media(hover:hover){.paths article:hover,.future-list details:hover,.faq details:hover{border-color:#a981ef;box-shadow:0 18px 36px #7357ff15,0 0 18px #b18cff12}.future-list details:hover summary>span{transform:perspective(300px) rotateY(10deg) rotateX(-5deg) translateY(-4px);box-shadow:-3px 5px 0 #8065c830,0 16px 30px #7357ff25,inset 1px 1px 0 #fff}}
.paths article:focus-within{border-color:#a981ef;box-shadow:0 18px 36px #7357ff15}.faq details[open] summary span{color:#6633dd}
.chat-progress span{background:var(--brand-gradient)}.chat-option.chosen{background:linear-gradient(110deg,#6950c9,#9771e0);color:white;border-color:#a681e9;opacity:1;box-shadow:0 5px 15px #7357ff18}.chat-option.chosen:after{color:white}.chat-option:disabled:not(.chosen){opacity:.6;cursor:default}
/* Compact method: title, visual, active description, horizontal timeline. */
@media(max-width:900px){
 .method{height:240svh;min-height:1400px}
 .method-sticky{position:sticky;top:0;height:100svh;min-height:600px;max-height:none;display:flex;flex-direction:column;gap:0;padding:82px 6% 22px;overflow:visible}
 .method-copy{flex:none}.method h2{font-size:36px;margin:14px 0}.method-description{font-size:12px;line-height:1.55;max-width:460px}
 .method-visual{overflow:visible;flex:1 1 auto;min-height:200px;max-height:340px;width:100%;max-width:440px;margin:8px auto 0;isolation:isolate}
 .layer-stack{top:50%;margin-top:-28px;height:130px;width:60%;left:20%;transform-origin:center center}
 .layer{transform:translate3d(0,calc(var(--i)*var(--spread)*-6px),calc(var(--i)*7px + var(--i)*var(--spread)*23px));box-shadow:0 3px 0 #a79abb,0 12px 20px #33313c18}.layer strong{font-size:15px}
 .method-current{display:flex;flex:none;min-height:86px;max-width:none;margin:14px 0 0;gap:12px;position:relative;z-index:4}.method-current h3{font-size:21px;margin-bottom:7px}.method-current p{font-size:12px;line-height:1.5;max-width:440px}.method-current>span{padding-top:4px}
 .method-steps{display:flex;position:static;flex:none;gap:8px;margin:7px 0 0;padding:0;flex-wrap:nowrap}.method-steps li{font-size:8px;line-height:1.3;color:#8b8793;min-width:0}.method-steps li.active{color:#30263e}.method-steps li:before{font-size:7px}.phase-description{display:none}
}
@media(max-width:600px){
 .hero-bottom{justify-content:center}.hero-bottom .edition{display:none}.hero-bottom a{margin-inline:auto}
 .method-sticky{padding-top:78px;padding-bottom:20px}.method h2{font-size:33px;margin:12px 0}.method-copy .eyebrow{font-size:8px}.method-description{font-size:12px}.method-steps{padding-right:58px}.method-steps li{font-size:7px}.method-visual{min-height:190px}.layer-stack{width:62%;left:19%;height:124px}.layer strong{font-size:14px}.method-current{padding-right:35px}
 .chat-panel{height:min(490px,70svh);max-height:calc(100dvh - 110px);bottom:84px}.chat-header{padding:16px 20px 13px}.chat-scroll{padding:18px 20px}.chat-question{font-size:21px;margin-bottom:17px}.chat-option{padding:12px 14px}.chat-form input{font-size:16px}.chat-panel.keyboard-open{height:var(--chat-available);max-height:var(--chat-available);bottom:var(--keyboard-lift)}
}
/* Ajuste de contraste: conserva composición y jerarquía de grises. */
.hero-description{color:#68686e}
.needs .soft-ink,.method .soft-ink{color:#818187}
@media(max-width:900px) and (max-height:620px){.method-sticky{position:relative;height:620px;min-height:620px}.method{height:1500px;min-height:1500px}}
@media(prefers-reduced-motion:reduce){.hero-line,.hero h1 em,.intro-in,.orb,.ring,.path-played .path-art.one i,.path-played .path-art.one i:before{animation:none!important}.method{height:auto;min-height:0}.method-sticky{position:relative;height:auto;min-height:0;max-height:none}.method-visual{height:260px;min-height:260px;flex:none}.method-current{display:none}.method-steps{display:grid;grid-template-columns:1fr;gap:18px}.method-steps li{font-size:15px}.phase-description{display:block;font-size:12px;line-height:1.6}.future-list summary>span{transform:none!important}}
