/* Componentes compartidos del lanzamiento. Estilos limitados a sus bloques. */
[hidden]{display:none!important}
.info-hero{padding:170px 0 86px;background:radial-gradient(circle at 85% 25%,#173f49,transparent 38%),#0b151c}
.info-hero.compact{padding-bottom:55px}
.info-hero h1{max-width:1050px;font-size:clamp(3rem,6.3vw,6.6rem)}
.info-hero h1 em{color:var(--mint)}
.info-lede{max-width:760px;color:#d5dfe1;font-size:1.15rem;line-height:1.65}
.info-section{padding:96px 0}
.info-section h2{max-width:960px;font-size:clamp(2.5rem,4.6vw,4.6rem)}
.info-section h3{line-height:1.15}
.info-section.light em{color:#087d80}
.info-section p{line-height:1.7}
.info-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:40px 0}
.info-cards article{padding:28px;border:1px solid #637579;border-radius:22px}
.info-cards article h3{font-size:1.45rem;letter-spacing:-.035em}
.info-cards article p:last-child{margin-bottom:0}
.info-cards article>b{display:block;margin-bottom:22px;font-size:1.6rem}
.info-section.light .info-cards article{border-color:#aeb7b7;background:rgba(255,255,255,.5)}
.info-section.light p{color:#465655}
.story-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,100px);align-items:start}
.story-layout blockquote{margin:0;font-size:clamp(1.5rem,2.7vw,2.6rem);line-height:1.3;letter-spacing:-.035em}
.story-layout h2{font-size:clamp(2.4rem,4.2vw,4rem)}
.founder-preview blockquote{color:var(--mint);margin-bottom:28px}
.trust-link{margin-top:28px;font-size:.9rem;text-decoration:underline;text-underline-offset:4px}
.reading-width{max-width:900px}
.reading-width details{padding:24px 0;border-top:1px solid #718187}
.reading-width summary{cursor:pointer;font-size:1.1rem;font-weight:700}
.reading-width details p{margin:18px 0 0;color:#d5dfe1}
.reading-width a:not(.button){text-decoration:underline;text-underline-offset:4px}
.small-note{font-size:.85rem;line-height:1.6}
.info-hero .small-note{max-width:700px;color:#c4d1d3}
.city-status-panel{padding:32px;border:1px solid #aeb7b7;border-radius:24px;margin-top:40px}
.city-status-panel h3{margin-bottom:18px}
.city-status-panel .small-note{margin-bottom:0}
.city-entry{display:grid;grid-template-columns:1fr auto;gap:12px;padding:20px 0;border-top:1px solid #aeb7b7}
.city-entry progress{grid-column:1/-1;width:100%;accent-color:#087d80}
.comparison-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}
.comparison-columns article{padding:32px;border:1px solid #718187;border-radius:24px}
.comparison-columns article:last-child{background:var(--mint);color:var(--ink);border-color:var(--mint)}
.comparison-columns h3{font-size:1.6rem}
.product-evidence{display:grid;grid-template-columns:300px minmax(0,480px);justify-content:center;align-items:center;gap:70px;margin-top:55px}
.product-evidence h3{font-size:clamp(2rem,3vw,3rem);line-height:1.1}
.product-evidence p{color:#465655}
.product-evidence figcaption{margin-top:20px;font-size:.85rem;color:#465655}
.mini-test-invite{padding:32px;border:1px solid #aeb7b7;border-radius:24px;background:#fff}
.mini-test-invite .small-note{margin-top:22px;margin-bottom:0}
.home-page .actions{flex-wrap:wrap;gap:20px}
.home-page .actions .text-link{font-size:.9rem}
.home-page .join-form>label,.home-page .join-form legend{display:block;margin:18px 0 7px;font-size:.85rem;font-weight:700}
.home-page .join-form>input{width:100%;height:54px;padding:0 16px;border:1px solid #667760;border-radius:14px;background:#fff;color:#0b151c}
.home-page .join-form fieldset{border:0;margin:0;padding:0}
.home-page .search-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.home-page .search-options label{position:relative;display:flex;min-height:105px;padding:16px 8px;flex-direction:column;align-items:center;justify-content:center;border:1px solid #667760;border-radius:14px;cursor:pointer;text-align:center;background:rgba(255,255,255,.3)}
.home-page .search-options input{position:absolute;opacity:0}
.home-page .search-options label:has(input:checked){border:2px solid #0b151c;background:#fff}
.home-page .search-options label:has(input:focus-visible){outline:3px solid #087d80;outline-offset:3px}
.home-page .search-options strong{font-size:.85rem;font-weight:600;line-height:1.3}
.home-page .option-icon{font-size:1.3rem}
.home-page .join-form>button{display:flex;align-items:center;justify-content:center;gap:20px;min-height:58px;width:100%;margin-top:24px;padding:16px;border-radius:99px;font-weight:800;cursor:pointer}
.home-page .join-form>button:disabled{opacity:.65;cursor:wait}
.home-page .join-form .privacy{font-size:.8rem;line-height:1.6;margin-top:18px;color:#344238}
.home-page .join-form .join-status{font-size:.95rem;line-height:1.6}
.home-page .launch-cta .split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px}
.home-page .launch-cta{scroll-margin-top:24px}
.test-container{max-width:820px}
.test-progress-heading{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px;font-size:.85rem;color:#465655}
#test-progress{display:block;width:100%;height:10px;margin-bottom:32px;accent-color:#087d80}
#test-form fieldset{margin:0;padding:0;border:0;min-width:0}
#test-question{font-size:clamp(1.5rem,3vw,2.3rem);font-weight:700;line-height:1.2;letter-spacing:-.035em;margin-bottom:28px}
.test-options{display:grid;gap:12px}
.test-options label{display:flex;align-items:center;gap:14px;min-height:68px;padding:18px 20px;border:1px solid #8d9d9c;border-radius:16px;background:#fff;cursor:pointer;line-height:1.4}
.test-options label:has(input:checked){border:2px solid #087d80;background:#edffd1;padding:17px 19px}
.test-options label:has(input:focus-visible){outline:3px solid #087d80;outline-offset:3px}
.test-options input{flex:0 0 auto;width:20px;height:20px;accent-color:#087d80}
.test-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:28px}
.test-actions .button,.result-register .button{font:inherit;font-weight:700;cursor:pointer}
.button.secondary{background:transparent;color:#0b151c;border:1px solid #667760}
.test-actions .button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.test-summary{list-style:none;padding:0;display:grid;gap:12px;margin:30px 0}
.test-summary li{padding:18px 22px;border:1px solid #aeb7b7;border-radius:16px;background:#fff;line-height:1.6}
.test-summary strong{display:block;color:#087d80}
.result-register{margin-top:40px;padding-top:32px;border-top:1px solid #aeb7b7}
.result-register h3{font-size:1.7rem}
.action-status{min-height:1.5em;font-size:.9rem;margin-top:16px}
.join-status[data-state="error"],.suggestion-status[data-state="error"]{color:#8b2020!important}
canvas{max-width:100%}
.info-section a:not(.button):not(.text-link){text-decoration:underline;text-underline-offset:3px}
:where(.info-section.light,.home-page .launch-cta,.mini-test-invite) :where(a,button,input,summary):focus-visible{outline:3px solid #087d80;outline-offset:4px}
:where(.info-page,.home-page) summary:focus-visible{outline:3px solid #00d4d8;outline-offset:4px}

@media(max-width:900px){.info-hero{padding:135px 0 65px}.info-section{padding:64px 0}.info-cards{grid-template-columns:1fr}.story-layout{grid-template-columns:1fr;gap:32px}.home-page .launch-cta .split{grid-template-columns:1fr;gap:32px}}
@media(max-width:680px){.info-hero h1{font-size:clamp(2.65rem,11vw,4rem)}.info-lede{font-size:1rem}.comparison-columns{grid-template-columns:1fr}.comparison-columns article{padding:24px}.product-evidence{grid-template-columns:1fr;gap:40px}.product-evidence>div{max-width:440px;margin:auto}.info-cards article{padding:24px}.city-status-panel{padding:24px}.city-entry{grid-template-columns:1fr}.test-progress-heading{flex-direction:column;gap:6px}.test-actions .button{min-height:52px;padding-inline:20px}.home-page .search-options{grid-template-columns:1fr}.home-page .search-options label{min-height:68px}.hero .hero-grid{min-height:0}.test-options label{font-size:.95rem}.info-section h2{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}

/* La imagen abstracta elegida acompaña al slogan sin recortar su espacio central. */
.home-page .hero-simple:has(.hero-art){background:#0b151c}
.home-page .hero-simple .hero-grid:has(.hero-art){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:32px;align-items:center;width:min(1320px,calc(100% - 64px));padding:76px 0 80px}
.home-page .hero-simple:has(.hero-art) h1{font-size:clamp(3rem,4.3vw,4.4rem);line-height:1.04}
.home-page .hero-simple:has(.hero-art) .hero-definition{font-size:1.05rem;max-width:600px}
.hero-art{margin:0;min-width:0}
.hero-art img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:1000px){.home-page .hero-simple .hero-grid:has(.hero-art){grid-template-columns:1fr;gap:28px;max-width:820px;padding:56px 0}.home-page .hero-simple:has(.hero-art) h1{font-size:clamp(2.7rem,6.4vw,4.5rem)}.hero-art{width:100%;max-width:720px;margin:0 auto}}
@media(max-width:600px){.home-page .hero-simple .hero-grid:has(.hero-art){width:calc(100% - 32px);padding:44px 0 32px;gap:24px}.home-page .hero-simple:has(.hero-art) h1{font-size:clamp(2.7rem,10.8vw,3.6rem)}.home-page .hero-simple:has(.hero-art) .hero-definition{font-size:1rem}}

/* Inicio: cada bloque cuenta una parte del recorrido. */
.home-page .hero-simple .hero-grid{display:block;min-height:0;padding:90px 0 84px}
.home-page .hero-simple .hero-copy{max-width:1080px}
.home-page .hero-simple h1{max-width:1080px;margin-bottom:32px;font-size:clamp(3rem,6.4vw,6.25rem);line-height:1.02}
.home-page .hero-simple .hero-definition{max-width:780px;font-size:1.12rem;line-height:1.7}
.home-page .hero-simple .actions{margin:32px 0 0}
.home-page .hero-simple .button{background:var(--turq);border-color:var(--turq)}
.home-page .problem-editorial{padding:100px 0}
.problem-editorial-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr);gap:clamp(40px,7vw,100px);align-items:start}
.problem-editorial h2{font-size:clamp(2.8rem,4.7vw,4.8rem);margin-bottom:0;line-height:1.04}
.problem-context{padding-top:42px}
.problem-lead{font-size:1.12rem;color:#34494a;line-height:1.65}
.everyday-details{margin:28px 0 0}
.everyday-details>div{display:grid;grid-template-columns:105px 1fr;gap:22px;padding:20px 0;border-top:1px solid #b6c4c1}
.everyday-details dt{font-weight:700;color:#087d80}
.everyday-details dd{margin:0;line-height:1.6;color:#465655}
.profile-evidence{grid-template-columns:minmax(0,480px) minmax(0,390px);gap:clamp(36px,7vw,100px);margin-top:55px}
.fictional-profile-example{margin:0;min-width:0}
.fictional-profile{padding:30px;border:1px solid #a4b9b6;border-radius:28px;background:#fff;box-shadow:0 18px 50px rgba(11,21,28,.07)}
.fictional-profile .demo-label{margin:0 0 26px;color:#42605e;font-size:.72rem;font-weight:700;letter-spacing:.08em;line-height:1.6}
.demo-identity{display:flex;align-items:center;gap:20px}
.demo-avatar{display:grid;place-items:center;flex:0 0 72px;height:72px;border-radius:22px;background:var(--turq);color:#0b151c;font-size:2rem;font-weight:800}
.demo-identity h3{margin:0 0 8px;font-size:1.8rem;line-height:1.1;letter-spacing:-.045em}
.demo-identity p{margin:0;font-size:.85rem}
.fictional-profile .demo-bio{margin:24px 0;font-size:.93rem;line-height:1.7;color:#34494a}
.demo-dna{padding:22px;border-radius:18px;background:#f1fadf}
.demo-dna h4{margin:0 0 18px;font-size:1.05rem;line-height:1.3}
.demo-dna dl{margin:0}
.demo-dna dl>div{padding:12px 0;border-top:1px solid #bdccb0}
.demo-dna dt{font-size:.75rem;font-weight:700;color:#42605e}
.demo-dna dd{margin:4px 0 0;font-size:.9rem;line-height:1.45;color:#243c38}
.fictional-profile-example figcaption{max-width:430px;font-size:.78rem;line-height:1.6;color:#526763;margin-top:16px}
.profile-demo-copy h3{font-size:clamp(2.1rem,3vw,3.2rem);line-height:1.05}
.profile-demo-copy .text-link{display:inline-block;margin-top:8px}
.home-page .faq-reading-width{max-width:1000px}
.home-page .home-faq h2{margin-bottom:42px}
.home-page .home-faq details{padding:24px 0}
.home-page .home-faq summary{line-height:1.45;font-size:1.05rem;cursor:pointer}
.home-page .home-faq summary::marker{color:var(--turq)}
.home-page .home-faq details p{margin:18px 0 0;line-height:1.75;font-size:.98rem}
.home-page .city-register-intro{font-size:1.15rem;font-weight:600;margin:28px 0 16px;line-height:1.6}
.home-page .city-register-note{max-width:440px;color:#344238;font-size:1rem;line-height:1.7}
@media(max-width:900px){.home-page .hero-simple .hero-grid{padding:64px 0}.home-page .problem-editorial{padding:72px 0}.problem-editorial-layout{grid-template-columns:1fr;gap:32px}.problem-context{padding-top:0}.profile-evidence{grid-template-columns:minmax(0,480px);gap:36px}.profile-demo-copy{max-width:480px;margin:auto}}
@media(max-width:600px){.home-page .hero-simple .hero-grid{padding:48px 0 56px}.home-page .hero-simple h1{font-size:clamp(2.7rem,10.8vw,3.6rem);margin-bottom:26px}.home-page .hero-simple .hero-definition{font-size:1rem}.everyday-details>div{grid-template-columns:1fr;gap:6px}.problem-editorial h2{font-size:clamp(2.4rem,10vw,3.6rem)}.fictional-profile{padding:22px;border-radius:22px}.demo-avatar{flex-basis:60px;height:60px;border-radius:18px}.demo-identity{gap:14px}.demo-identity h3{font-size:1.6rem}.demo-dna{padding:18px}.home-page .home-faq summary{font-size:1rem}.home-page .hero-simple .eyebrow{font-size:.72rem;letter-spacing:.1em}.home-page .hero-simple .button{width:100%}}
