:root{--bg:#f5f2eb;--panel:#fffdf8;--text:#172e34;--muted:#526569;--brand:#1d5558;--brand2:#986123;--ink:#102831;--line:#d9ded9;--shadow:0 16px 46px rgba(16,40,49,.055)}
[data-theme=dark]{--bg:#101c20;--panel:#19292d;--text:#f4f1e9;--muted:#b9c7c5;--brand:#8bd0c7;--brand2:#e8bd75;--ink:#f4f1e9;--line:#355057;--shadow:none}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}
.site-header{padding:.85rem max(1.5rem,calc((100vw - 1240px)/2));gap:2rem}
.brand{color:var(--text);text-decoration:none;white-space:nowrap}.brand>span{border-radius:.45rem;background:var(--ink);color:#e8bd75;font-size:.9rem;letter-spacing:-.03em}.brand strong{font-size:1rem;letter-spacing:-.02em}.brand small{font-size:.72rem}
#app-nav{gap:.2rem;align-items:center;justify-content:flex-end}#app-nav a,#app-nav button{border:0;background:transparent;border-radius:.35rem;padding:.5rem .65rem;font-size:.82rem;font-weight:680;white-space:nowrap}#app-nav a:hover,#app-nav button:hover{background:color-mix(in srgb,var(--brand) 12%,transparent);color:var(--text)}#app-nav .nav-contact{background:var(--ink);color:#fff;padding:.65rem .95rem;margin-left:.3rem}#app-nav .nav-contact:hover{background:var(--brand);color:#fff}
.home-page{max-width:1240px;padding-top:0}.home-page>.hero{display:none}.public-home h2{font-size:clamp(2rem,4vw,3.65rem);line-height:1.08;letter-spacing:-.045em;margin:.3rem 0 1.2rem}.public-home h3{letter-spacing:-.025em;line-height:1.18}.public-home p{max-width:65ch}.public-home a:not(.btn){font-weight:750}.public-home .section-kicker{color:var(--brand2);letter-spacing:.15em}.public-home .btn{display:inline-flex;align-items:center;gap:.75rem;border-radius:.35rem;border:1px solid var(--ink);background:var(--ink);color:#fff;font-weight:720;font-size:.95rem;padding:.85rem 1.2rem}.public-home .btn.secondary{background:transparent;color:var(--text)}.public-home .btn:hover{background:var(--brand);color:#fff}
.identity-hero h1{font-size:clamp(3.1rem,6.2vw,6.8rem);line-height:.98;letter-spacing:-.065em;max-width:850px;margin:1.3rem 0}
.hero-portrait{margin:0;position:relative;align-self:stretch;min-height:410px;background:#c8c3bb;overflow:hidden}.hero-portrait img{display:block;width:100%;height:100%;min-height:410px;object-fit:cover;object-position:center 27%}.hero-portrait figcaption{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,rgba(16,40,49,.87));color:#fff;padding:3rem 1.4rem 1.2rem;font-weight:750}.hero-portrait figcaption span{display:block;font-size:.76rem;font-weight:500;color:#e5e8df;margin-top:.2rem}.about-portrait{margin:0;min-height:390px;overflow:hidden;background:#c8c3bb}.about-portrait img{display:block;width:100%;height:390px;object-fit:cover;object-position:center 24%}
.event-teaser{border-left:3px solid #e8bd75;padding:.4rem 0 .4rem 1rem;margin:1.5rem 0;color:#fff}.event-teaser span,.event-teaser strong,.event-teaser a{display:block}.event-teaser span{font-size:.78rem;color:#e8bd75}.event-teaser strong{font-size:1.4rem;margin:.25rem 0}.event-teaser a{color:#fff;font-size:.85rem}.event-upcoming{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:var(--ink);color:var(--panel);padding:2rem;margin:0 0 2.5rem;border-radius:.5rem}.event-upcoming .section-kicker{color:#e8bd75}.event-upcoming h2{margin:.25rem 0}.event-upcoming p{margin:.4rem 0}.event-upcoming .btn{white-space:nowrap;background:#e8bd75;color:#102831;border:0}.curated-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.curated-tools .tool-card{min-width:0}.curated-tools .registration{padding:1rem;border-left:3px solid var(--brand2);background:color-mix(in srgb,var(--panel) 88%,var(--brand2) 12%);font-size:.84rem}.curated-tools .btn{margin-top:auto}.iris-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:2rem;align-items:stretch;margin-bottom:2rem}.iris-domain{display:flex;flex-direction:column;justify-content:space-between;min-height:330px;padding:2rem;background:var(--ink);color:#e8bd75;font:5rem/.9 Georgia,serif;letter-spacing:-.07em}.iris-domain span{font:700 .9rem system-ui;letter-spacing:.08em;color:#fff}
@media(max-width:900px){.curated-tools{grid-template-columns:1fr}.iris-hero{grid-template-columns:1fr}.iris-domain{min-height:180px}.event-upcoming{flex-direction:column;align-items:flex-start}}
.identity-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:3.5rem;align-items:center;padding:6rem 0 5rem}.identity-hero .lead{font-size:clamp(1.25rem,2.1vw,1.75rem);line-height:1.42;color:var(--muted);max-width:720px;margin:1.6rem 0}.identity-hero .hero-footnote{color:var(--muted);font-size:.85rem;margin-top:2rem}.hero-art{min-height:410px;padding:1.8rem;background:#102831;color:#f5f2eb;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.hero-art:after{content:'';position:absolute;width:270px;height:270px;border:1px solid #e8bd75;transform:rotate(30deg);right:-150px;top:20px;opacity:.6}.hero-art .art-top,.hero-art .art-bottom{font-size:.7rem;letter-spacing:.2em;color:#e8bd75}.art-lines{position:relative;z-index:1}.art-lines strong{display:flex;gap:1.3rem;align-items:baseline;border-bottom:1px solid #4c6667;padding:.8rem 0;color:#e8bd75;font-size:.9rem}.art-lines em{font-size:1.3rem;color:#fff;font-style:normal;font-weight:530;letter-spacing:-.03em}
.credibility{display:flex;gap:1.5rem;justify-content:space-between;border-block:1px solid var(--line);padding:1.25rem 0;color:var(--muted);font-size:.86rem;font-weight:700}.credibility p{margin:0}.home-section{padding:6rem 0}.section-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:end;margin-bottom:2.5rem}.section-intro>p{color:var(--muted);font-size:1.06rem}.offer-grid,.project-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.offer-grid article,.project-preview article{padding:2rem;border:1px solid var(--line);background:var(--panel);min-height:305px;display:flex;flex-direction:column}.offer-grid article>span,.project-preview small{font-size:.78rem;letter-spacing:.08em;color:var(--brand2);font-weight:800}.offer-grid h3,.project-preview h3{font-size:1.55rem;margin:1.2rem 0 .2rem}.offer-grid p,.project-preview p{color:var(--muted);font-size:.95rem}.offer-grid a,.project-preview a{margin-top:auto;color:var(--brand)}.home-subnav{display:flex;gap:2rem;margin:2rem 0 0}.home-feature{display:grid;grid-template-columns:1.25fr .75fr;gap:3rem;padding:4rem;background:var(--ink);color:#fff}.home-feature h2{max-width:680px}.home-feature p{color:#d5dfdc}.home-feature .section-kicker{color:#e8bd75}.home-feature .btn{border-color:#e8bd75;background:#e8bd75;color:#102831}.feature-quote{border-left:1px solid #6a8381;padding-left:2rem;align-self:center}.feature-quote span{font-family:Georgia,serif;font-size:5rem;color:#e8bd75;line-height:.7}.feature-quote p{font-family:Georgia,serif;font-size:1.5rem;line-height:1.4}
.home-about{display:grid;grid-template-columns:1.4fr .6fr;gap:3rem;align-items:center;border-block:1px solid var(--line);padding:5rem 0}.home-about p{color:var(--muted)}.initial-mark,.portrait-panel{display:grid;place-items:center;background:linear-gradient(145deg,#1b4c50,#102831);color:#e8bd75;font-family:Georgia,serif;font-size:clamp(4rem,10vw,9rem);min-height:280px}.home-contact{padding:6rem 0;text-align:center}.home-contact p{margin-inline:auto;color:var(--muted)}.home-contact .hero-actions{justify-content:center}
.site-footer{background:#102831;color:#d3dedb;text-align:left;display:grid;grid-template-columns:1fr 1fr;gap:1rem 2rem;padding:3rem max(1.5rem,calc((100vw - 1180px)/2));font-size:.85rem}.site-footer a{color:#f0d29e;margin-right:1.5rem}.site-footer>p{grid-column:1/-1;border-top:1px solid #426164;padding-top:1rem}.portrait-panel{display:flex;flex-direction:column;gap:0;font-size:5rem}.portrait-panel small{font:normal .8rem system-ui;color:#e6d6bd;letter-spacing:.06em}
@media(max-width:1000px){.site-header{display:block}.brand{margin-bottom:.75rem}#app-nav{justify-content:flex-start}.identity-hero{gap:1.5rem}}
@media(max-width:760px){.identity-hero,.section-intro,.home-feature,.home-about{grid-template-columns:1fr}.identity-hero{padding:3.5rem 0}.hero-art{min-height:290px}.credibility{flex-direction:column;gap:.6rem}.offer-grid,.project-preview{grid-template-columns:1fr}.offer-grid article,.project-preview article{min-height:240px}.home-section{padding:3.5rem 0}.home-feature{padding:2rem}.feature-quote{border:0;border-top:1px solid #6a8381;padding:1.5rem 0 0}.home-subnav{flex-direction:column;gap:.7rem}.site-footer{grid-template-columns:1fr}#app-nav{overflow-x:auto;flex-wrap:nowrap;padding-bottom:.25rem}.site-header{padding:1rem}.home-contact{padding:4rem 0}}
.event-upcoming.event-past{background:var(--panel);color:var(--text);border:1px solid var(--line)}.event-upcoming.event-past .section-kicker{color:var(--muted)}.event-upcoming.event-past .btn{background:transparent;color:var(--text);border:1px solid var(--line)}
.mentor-page{display:grid;gap:3.5rem}.mentor-page h2{letter-spacing:-.03em;line-height:1.15}.mentor-block>h2,.mentor-why h2,.mentor-cta h2,.mentor-intro h2{font-size:clamp(1.6rem,3vw,2.4rem);margin:.3rem 0 1rem}
.mentor-intro{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr);gap:2.5rem;align-items:center}.mentor-promise{background:#102831;color:#f4f1e9;border-radius:.6rem;padding:2rem;border-top:4px solid #e8bd75}.mentor-promise>p{margin:0;color:#e8bd75;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.mentor-promise ul{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.9rem}.mentor-promise li{padding-left:1.6rem;position:relative;line-height:1.4}.mentor-promise li:before{content:"✓";position:absolute;left:0;color:#e8bd75;font-weight:900}.mentor-promise strong{color:#fff}
.mentor-situations{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.9rem}.mentor-situations li{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--brand2);border-radius:.4rem;padding:1.1rem 1.2rem;line-height:1.5}
.mentor-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mentor-lines article{background:var(--panel);border:1px solid var(--line);border-radius:.5rem;padding:1.8rem;display:flex;flex-direction:column}.mentor-lines article>span{font-size:.78rem;letter-spacing:.08em;color:var(--brand2);font-weight:800}.mentor-lines h3{font-size:1.4rem;margin:.6rem 0 .4rem}.mentor-lines p{color:var(--muted);margin:.3rem 0}.mentor-lines .mentor-result{margin-top:auto;padding-top:1rem;border-top:1px solid var(--line);color:var(--text)}.mentor-note{color:var(--muted);font-style:italic;margin-top:1rem}
.mentor-why{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:2.5rem;align-items:center;background:#102831;color:#f4f1e9;border-radius:.6rem;padding:clamp(1.6rem,4vw,3rem)}.mentor-why .section-kicker{color:#e8bd75}.mentor-why p{color:#d5dedc}.mentor-why .text-link,.mentor-why a{color:#e8bd75}.mentor-why ul{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}.mentor-why li{border-left:3px solid #e8bd75;padding:.3rem 0 .3rem 1rem;font-weight:700}
.mentor-commit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mentor-commit article{background:var(--panel);border:1px solid var(--line);border-radius:.5rem;padding:1.6rem}.mentor-commit h3{margin:0 0 .5rem;font-size:1.2rem;color:var(--brand)}.mentor-commit li{margin:.45rem 0;color:var(--muted)}
.mentor-faq{display:grid;gap:.6rem}.mentor-faq details{background:var(--panel);border:1px solid var(--line);border-radius:.4rem;padding:1rem 1.2rem}.mentor-faq summary{cursor:pointer;font-weight:750}.mentor-faq p{margin:.7rem 0 0;color:var(--muted)}
.mentor-cta{display:flex;justify-content:space-between;align-items:center;gap:2rem;border:2px solid var(--brand2);border-radius:.6rem;padding:clamp(1.6rem,4vw,2.6rem);background:var(--panel)}.mentor-cta p{color:var(--muted);max-width:640px}.mentor-cta .btn{white-space:nowrap}
.home-mentor{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:3rem;align-items:center;padding:clamp(1.8rem,4vw,3.2rem);border:1px solid var(--line);border-top:4px solid var(--brand2);background:var(--panel);margin:2rem 0}.home-mentor p{color:var(--muted)}.home-mentor ul{list-style:none;padding:0;margin:0;display:grid;gap:.7rem}.home-mentor li{display:flex;gap:1rem;align-items:baseline;font-weight:750;font-size:1.1rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.home-mentor li span{color:var(--brand2);font-size:.78rem;letter-spacing:.08em}
@media(max-width:820px){.mentor-intro,.mentor-lines,.mentor-why,.mentor-commit,.home-mentor{grid-template-columns:1fr}.mentor-cta{flex-direction:column;align-items:flex-start}}
.mentor-page .btn.secondary{background:transparent;color:var(--text);border:1px solid var(--text)}.mentor-page .hero-actions{justify-content:flex-start}.mentor-page .hero-actions .btn{width:auto}
/* Portada v6: prueba verificable, problema, método, recursos abiertos, servicios y galería */
.proof-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-block:1px solid var(--line)}.proof-strip div{padding:1.5rem 1.1rem;border-left:1px solid var(--line)}.proof-strip div:first-child{border-left:0;padding-left:0}.proof-strip strong{display:block;font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:-.05em;line-height:1;color:var(--ink)}.proof-strip span{display:block;margin-top:.55rem;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);line-height:1.4}
.home-problem{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1rem 3.5rem;padding:5.5rem 0 4.5rem;align-items:start}.scenario-list{list-style:none;margin:.6rem 0 0;padding:0}.scenario-list li{position:relative;padding:1.05rem 0 1.05rem 2rem;border-top:1px solid var(--line);font-size:1.07rem;line-height:1.55}.scenario-list li:before{content:'—';position:absolute;left:0;color:var(--brand2)}.problem-close{grid-column:2;font-size:1.12rem;line-height:1.6;color:var(--muted);border-top:1px solid var(--line);padding-top:1.2rem;margin:0}.problem-close strong{color:var(--text)}
.method-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;counter-reset:none}.method-steps li{background:var(--panel);border:1px solid var(--line);border-radius:.5rem;padding:1.4rem}.method-steps span{font-size:.78rem;font-weight:800;letter-spacing:.14em;color:var(--brand2)}.method-steps h3{margin:.6rem 0 .5rem;font-size:1.35rem}.method-steps p{margin:0;color:var(--muted);font-size:.95rem}
.home-resources{background:var(--ink);color:#f5f2eb;border-radius:.6rem;padding:clamp(1.8rem,4.5vw,3.6rem);margin:2rem 0 4rem;scroll-margin-top:5rem}[data-theme=dark] .home-resources{background:#0b1417;border:1px solid var(--line)}.home-resources .section-kicker{color:#e8bd75}.home-resources h2{color:#fff}.resources-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:2rem;align-items:end;margin-bottom:2rem}.resources-head p{color:#c9d3d1}.resource-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#2c4850;border:1px solid #2c4850}.resource-grid a{display:flex;flex-direction:column;gap:.45rem;padding:1.3rem;background:var(--ink);color:#f5f2eb;text-decoration:none;font-weight:400!important;transition:background .15s}[data-theme=dark] .resource-grid a{background:#0b1417}.resource-grid a:hover{background:#1d3d43}.resource-grid small{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#e8bd75}.resource-grid strong{font-size:1.08rem;line-height:1.25}.resource-grid span{font-size:.86rem;color:#b9c7c5;line-height:1.45}
#home-servicios{scroll-margin-top:5rem}.service-list article{display:grid;grid-template-columns:3.5rem minmax(0,1fr) auto;gap:1.5rem;align-items:center;padding:1.4rem 0;border-top:1px solid var(--line)}.service-list article:last-child{border-bottom:1px solid var(--line)}.service-list span{font-weight:800;color:var(--brand2);letter-spacing:.1em}.service-list h3{margin:0 0 .3rem;font-size:1.4rem}.service-list p{margin:0;color:var(--muted)}.service-list a{white-space:nowrap}
.session-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-self:stretch}.session-photo{position:relative;display:block;overflow:hidden;border-radius:.5rem;min-height:300px;background:#2c4850}.session-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s}.session-photo:hover img{transform:scale(1.03)}.session-photo span{position:absolute;inset:auto 0 0;padding:2.5rem 1rem 1rem;background:linear-gradient(transparent,rgba(16,40,49,.9));color:#fff}.session-photo small,.session-photo strong{display:block}.session-photo small{font-size:.72rem;color:#e8bd75;font-weight:600}.session-photo strong{font-size:1rem;line-height:1.25}
.status-dot{display:inline-block;width:.5rem;height:.5rem;border-radius:50%;background:#3fa36b;margin-right:.45rem;vertical-align:middle}.home-faq{max-width:860px;margin:2rem 0 4rem}
@media(max-width:980px){.proof-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-strip div{border-left:0;padding-left:0;border-top:1px solid var(--line)}.method-steps,.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.home-problem,.resources-head{grid-template-columns:1fr}.problem-close{grid-column:1}.service-list article{grid-template-columns:2.5rem minmax(0,1fr)}.service-list a{grid-column:2}.session-gallery{grid-template-columns:1fr}}
@media(max-width:520px){.proof-strip,.method-steps,.resource-grid{grid-template-columns:1fr}}
[data-theme=dark] .public-home .btn:not(.secondary),[data-theme=dark] #app-nav .nav-contact{color:var(--bg)}[data-theme=dark] .public-home .btn:not(.secondary):hover,[data-theme=dark] #app-nav .nav-contact:hover{color:#102831}
.recognitions{display:grid;grid-template-columns:12rem minmax(0,1fr);gap:2rem;align-items:center;padding:1.6rem 0;border-bottom:1px solid var(--line)}.recognitions .section-kicker{margin:0}.recognitions>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.recognitions strong,.recognitions span,.recognitions a{display:block}.recognitions strong{font-size:1.15rem;line-height:1.25}.recognitions span{color:var(--muted);font-size:.88rem;margin:.3rem 0}.recognitions a{font-size:.82rem}
@media(max-width:760px){.recognitions{grid-template-columns:1fr;gap:.8rem}}
/* #app recibe el foco por programa al cambiar de vista (tabindex=-1); no es un control, así que no se dibuja el marco de foco. */
#app:focus,#app:focus-visible{outline:none}
