:root{--ink:#171717;--muted:#626262;--gold:#d8bc86;--pale:#f3f3f1;--line:#d9d9d5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.65;background:#fff}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}img{max-width:100%;display:block;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:600;letter-spacing:-.045em;line-height:1.08}h1{font-size:clamp(2.6rem,5.4vw,5.2rem)}h2{font-size:clamp(2rem,4.1vw,3.8rem);max-width:1000px;margin-bottom:2.5rem}h3{font-size:1.15rem;line-height:1.35;letter-spacing:.01em}p{max-width:65ch}button,a,summary{touch-action:manipulation}:focus-visible{outline:3px solid #987337;outline-offset:5px}.wrap{width:min(1240px,calc(100% - 96px));margin:auto}header{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:24px}header nav{display:flex;gap:26px}header nav a{text-decoration:none;font-size:.9rem}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;white-space:nowrap;font-size:1.7rem;font-weight:700;line-height:1.2;letter-spacing:-.06em}.brand small{display:block;font-size:.7rem;letter-spacing:.2em;font-weight:400;margin-top:7px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:white;border:1px solid var(--ink);padding:16px 24px;text-decoration:none;font-size:.8rem;letter-spacing:.09em;font-weight:600;min-height:48px;line-height:1.4}.button.gold{background:var(--gold);color:#141414;border-color:var(--gold)}.button.outline{background:transparent;border-color:currentColor;color:inherit}.button.small{padding:12px 18px}.button:hover{filter:brightness(.92)}.hero,.dark{background:#111;color:#f6f6f3}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:60px;padding-top:76px;padding-bottom:65px;align-items:center}.hero h1{margin:25px 0 30px}.hero h1 span,.dark h2 span{color:#b9b9b5}.eyebrow{font-size:.78rem;letter-spacing:.19em;font-weight:600;margin-bottom:27px}.hero .eyebrow,.dark .eyebrow{color:var(--gold)}.intro{font-size:1.15rem;color:#c5c5c1;max-width:42ch}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}.hero-foot{font-size:.7rem;letter-spacing:.12em;margin-top:65px;color:#c3c3be}.hero-foot span{display:inline-block;margin-left:20px;color:#94948e}.photo-slot{min-height:480px;aspect-ratio:4/5;border:1px solid #66665f;display:flex;flex-direction:column;justify-content:end;padding:32px;background:#20201e;color:#d6d6cf}.photo-slot span{font-size:.85rem;letter-spacing:.12em}.photo-slot small{font-size:.8rem;max-width:25ch;color:#aaa;line-height:1.5;margin-top:12px}.portrait{width:100%;aspect-ratio:4/5;height:auto}.section{padding:105px 0}.lead{font-size:clamp(1.3rem,2.5vw,1.75rem);line-height:1.45;letter-spacing:-.025em}.copy{max-width:65ch;color:var(--muted);font-size:1.08rem}.pale{background:var(--pale)}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px}.three article{border-top:1px solid #aaa;padding-top:30px}.three article p{color:var(--muted)}.number{display:block;color:#826739;font-size:.9rem;margin-bottom:35px}.objectives{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 50px;margin-top:45px}.objectives li{padding:20px 0;border-bottom:1px solid var(--line);font-size:1.2rem}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.steps p{color:var(--muted)}.steps article{border-top:1px solid #aaa;padding-top:25px}.app-grid{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:center}.dark p{color:#c5c5bf}.features{padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin:30px 0}.features li{font-size:.9rem;border-bottom:1px solid #474741;padding:15px 0}.screen-slot{border:1px solid #696961;padding:45px;min-height:430px;display:flex;flex-direction:column;justify-content:center;background:#1b1b19}.screen-slot span{color:var(--gold);font-size:.7rem;letter-spacing:.18em}.screen-slot strong{font-size:2.4rem;line-height:1.15;letter-spacing:-.04em;margin:35px 0}.screen-slot small{font-size:.8rem;color:#aaa}.screens figure{margin:0 0 20px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px}.split div{color:var(--muted)}.about-grid{display:grid;grid-template-columns:.7fr 1fr;gap:100px;align-items:center}.about-grid .photo-slot{min-height:400px}.credentials{list-style:none;padding:0;margin-top:35px}.credentials li{border-top:1px solid var(--line);padding:15px 0}.philosophy h2{max-width:1000px}.plans .price{font-size:1.65rem;color:var(--ink);letter-spacing:-.03em}.plans article{display:flex;flex-direction:column;align-items:start}.plans article .button{margin-top:auto}.faq{max-width:950px}details{border-top:1px solid var(--line);padding:22px 0}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:600;font-size:1.05rem}details p{margin:20px 0 0;color:var(--muted)}.final-cta{padding:100px 0 115px}.final-cta h2{font-size:clamp(2.6rem,6vw,5rem)}footer{padding-top:50px;padding-bottom:25px}.footer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}footer nav{display:flex;flex-wrap:wrap;align-items:center;gap:20px 25px;border-top:1px solid var(--line);padding-top:25px;font-size:.85rem}footer nav .button{padding:10px 15px;font-size:.75rem}footer nav span,.fine{color:var(--muted)}.text-button{padding:0;background:none;border:0;color:inherit;text-decoration:underline;text-underline-offset:5px;font-size:inherit}.fine{font-size:.8rem;margin-top:35px}.skip{position:absolute;left:12px;top:-100px;padding:15px;background:white;z-index:10}.skip:focus{top:12px}.legal{max-width:900px;padding-top:70px;padding-bottom:80px}.legal h1{font-size:3rem}.legal h2{font-size:1.7rem;margin-top:45px;margin-bottom:20px}.pending{border-left:3px solid #987337;padding:18px;background:var(--pale)}dialog{width:min(600px,calc(100% - 32px));border:1px solid #aaa;padding:35px;color:var(--ink);max-height:90dvh;overflow:auto}dialog::backdrop{background:#0009}dialog h2{font-size:2rem;margin-bottom:20px}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.cookie-actions .button{flex:1;padding:14px 17px} [hidden]{display:none!important}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}header{flex-wrap:wrap;padding:22px 0}header nav{order:3;width:100%;justify-content:space-between}.hero-grid{gap:30px}.hero-foot span{margin-left:0;display:block;margin-top:8px}.photo-slot{min-height:380px}.three{gap:25px}.steps{grid-template-columns:1fr 1fr}.app-grid,.about-grid{gap:45px}.features{grid-template-columns:1fr}.section{padding:80px 0}}
@media(max-width:640px){.wrap{width:calc(100% - 40px)}header{gap:20px}header .button{font-size:.65rem;padding:10px 12px}.brand{font-size:1.5rem}header nav{gap:12px}header nav a{font-size:.85rem}.hero-grid{grid-template-columns:1fr;padding-top:45px;padding-bottom:40px}.hero h1{font-size:clamp(2.25rem,9.7vw,3.2rem)}.hero .photo-slot{min-height:260px;aspect-ratio:4/3}.hero .portrait{aspect-ratio:4/3;object-position:center 25%}.hero-foot{margin-top:30px}.section{padding:65px 0}h2{margin-bottom:30px}.three,.steps,.objectives,.app-grid,.split,.about-grid{grid-template-columns:1fr;gap:25px}.three{margin-top:30px}.steps .number{margin-bottom:15px}.number{margin-bottom:20px}.app-grid{gap:40px}.screen-slot{padding:30px;min-height:350px}.features{grid-template-columns:1fr}.about-grid .photo-slot{min-height:320px;aspect-ratio:1/1}.about-grid .portrait{aspect-ratio:1/1}.footer-top{display:block}.footer-top p{margin-top:25px}.final-cta{padding:70px 0}dialog{padding:24px}.cookie-actions{flex-direction:column}.button{max-width:100%}.legal h1{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
/* Navegación: hover, teclado y sección activa comparten el mismo indicador. */
header nav a{padding:9px 12px;border:1px solid transparent;transition:background-color .15s,border-color .15s}
header nav a:hover,header nav a:focus-visible,header nav a[aria-current="location"]{background:#f5efe4;border-color:#b89b66;color:#171717}
.header-actions{display:flex;align-items:center;gap:12px}.header-actions .button{padding:12px 16px;font-size:.75rem}
@media(min-width:1001px){header{gap:18px}header nav{gap:4px}}
@media(max-width:640px){header{align-items:start}.header-actions{flex-wrap:wrap;justify-content:flex-end;max-width:55%;gap:8px}.header-actions .button{padding:10px;font-size:.65rem}header nav{gap:0;flex-wrap:wrap}header nav a{padding:9px 10px}}
@media(prefers-reduced-motion:reduce){header nav a{transition:none}}
/* Segunda pasada: interacción útil, sin dependencias ni animación continua. */
.button{transition:transform .18s ease,background-color .18s ease,border-color .18s ease,filter .18s ease}
.button:active{transform:translateY(1px)}
.button.client-cta{background:transparent;color:#725622;border-color:#a8874a}
.dark .button.client-cta{color:var(--gold);border-color:var(--gold)}
.button.client-cta:hover,.button.client-cta:focus-visible{background:var(--gold);color:#171717;border-color:var(--gold);filter:none}
.text-button,footer a{transition:color .18s ease}footer a:hover,.text-button:hover{color:#725622}
.interactive-grid{align-items:start;gap:16px}
.interactive-card,.interactive-card:last-child{border:1px solid var(--line);padding:0;background:#fff;transition:border-color .18s ease,background-color .18s ease,transform .18s ease}
.interactive-card summary{list-style:none;position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;padding:25px;min-height:110px}
.interactive-card summary::-webkit-details-marker{display:none}
.interactive-card .number{margin:0;font-size:.8rem;font-weight:400}
.card-title{font-size:1.13rem;line-height:1.4;font-weight:500;overflow-wrap:anywhere}
.toggle-mark{width:15px;height:15px;position:relative;flex-shrink:0}
.toggle-mark::before,.toggle-mark::after{content:'';position:absolute;background:#826739;top:7px;left:0;width:15px;height:1px;transition:transform .18s ease}
.toggle-mark::after{transform:rotate(90deg)}
.interactive-card[open]{border-color:#ac8e56;background:#fbf8f2}
.interactive-card[open] .toggle-mark::after{transform:rotate(0)}
.interactive-card p{margin:0;padding:0 25px 26px;font-size:1rem;line-height:1.65}
.interactive-card[open] p,.faq details[open] p{animation:reveal-text .2s ease-out}
.step-card summary{grid-template-columns:1fr auto;align-items:start;gap:22px;padding:26px;min-height:185px}
.step-card .number{grid-column:1/-1;font-size:1.4rem;letter-spacing:-.03em}
.step-card .card-title{font-size:1rem;font-weight:600}
.faq summary{list-style:none;position:relative;padding-right:40px;transition:color .18s ease}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';position:absolute;right:8px;top:0;font-size:1.35rem;color:#826739;font-weight:400}
.faq details[open] summary::after{content:'−'}
.faq details[open] summary,.faq summary:hover{color:#725622}
#alejandro{background:#efefec}
#alejandro h2{font-size:clamp(2.6rem,5.5vw,5rem);margin-bottom:50px}
.about-grid{grid-template-columns:.85fr 1fr;gap:70px;align-items:start}
.profile-photo{margin:0;padding:0 0 20px;border-bottom:2px solid #ac8e56}
.profile-photo figcaption{font-size:.8rem;letter-spacing:.08em;margin-top:18px;color:#626262}
.profile-copy{padding-top:26px;border-top:2px solid #ac8e56}
.profile-copy .lead{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.18;max-width:20ch;margin-bottom:32px}
.profile-copy>p:not(.lead){color:#53534f}
.profile-copy .credentials{margin-top:38px}
.credentials li{padding:18px 0;font-size:.95rem}
.philosophy .wrap{border-left:2px solid var(--gold);padding-left:40px}
.philosophy h2{font-size:clamp(2.2rem,4.4vw,4rem);max-width:1050px}
.philosophy .lead{color:var(--gold);margin-bottom:20px}
.philosophy .copy{color:#c5c5bf;max-width:65ch}
@keyframes reveal-text{from{opacity:.3;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){.interactive-card:hover{border-color:#ac8e56;transform:translateY(-2px)}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(1px)}}
@media(max-width:1000px){.about-grid{gap:40px}.step-card summary{min-height:150px}}
@media(max-width:640px){.about-grid{grid-template-columns:1fr;gap:30px}.profile-copy{padding-top:25px}#alejandro h2{margin-bottom:32px}.philosophy .wrap{padding-left:20px}.interactive-card summary{min-height:95px;padding:22px;gap:16px}.interactive-card p{padding:0 22px 24px}.step-card summary{min-height:125px}.objectives,.steps{gap:12px}.card-title{font-size:1.05rem}}
@media(prefers-reduced-motion:reduce){.button,.interactive-card,.toggle-mark::before,.toggle-mark::after,.text-button,footer a,.faq summary{transition:none}.button:hover,.button:active,.interactive-card:hover{transform:none}.interactive-card[open] p,.faq details[open] p{animation:none}}
/* Corrección acotada: objetivos compactos y selector con explicación única. */
#objetivos .objectives{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#objetivos .interactive-card summary{min-height:68px;padding:17px 22px;grid-template-columns:auto minmax(0,1fr);gap:16px}
#objetivos .interactive-card p{padding:0 22px 18px;font-size:.95rem;line-height:1.55;margin:0;overflow-wrap:anywhere}
#objetivos .interactive-card{min-width:0;transition:transform 200ms ease,border-color 200ms ease,background-color 200ms ease}
#objetivos .interactive-card summary:focus-visible{outline:none;background:#f5efe4;box-shadow:inset 0 0 0 2px #987337}
#objetivos .interactive-card:has(summary:focus-visible){border-color:transparent}
#objetivos .interactive-card[open] p{animation:reveal-text 200ms ease-out}
.steps-selector{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}
.step-choice{min-width:0;height:86px;padding:16px 18px;display:flex;align-items:center;gap:12px;border:1px solid #d1d1cb;background:transparent;color:#171717;text-align:left;font-weight:600;font-size:.9rem;line-height:1.35;transition:transform 200ms ease,border-color 200ms ease,background-color 200ms ease}
.step-choice>span:last-child{min-width:0;overflow-wrap:anywhere}
.step-choice .number{margin:0;font-size:.85rem;font-weight:400;flex-shrink:0}
.step-choice[aria-pressed="true"]{border-color:#ac8e56;background:#fbf8f2}
.step-choice:focus-visible{outline:none;border-color:#987337;box-shadow:inset 0 0 0 1px #987337;background:#f5efe4}
.step-explanation{margin-top:24px;border-left:2px solid #ac8e56;padding:6px 0 6px 24px;min-height:100px;max-width:100%;overflow-wrap:anywhere}
.step-explanation p{font-size:1.1rem;line-height:1.6;margin:0;max-width:72ch}
.step-explanation.is-updating p{animation:step-response 200ms ease-out}
@keyframes step-response{from{opacity:.4;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){.step-choice:hover{transform:translateY(-2px);border-color:#ac8e56}#objetivos .interactive-card:hover{transform:translateY(-2px)}}
@media(max-width:1000px){.steps-selector{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){#objetivos .objectives{grid-template-columns:minmax(0,1fr);gap:12px}#objetivos .interactive-card summary{min-height:62px;padding:16px 18px}#objetivos .interactive-card p{padding:0 18px 16px}.steps-selector{gap:12px}.step-choice{height:82px;padding:12px;font-size:.8rem;gap:9px}.step-explanation{min-height:132px;padding-left:18px;margin-top:20px}.step-explanation p{font-size:1rem}}
@media(max-width:340px){.steps-selector{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){#objetivos .interactive-card,.step-choice{transition:none}#objetivos .interactive-card:hover,.step-choice:hover{transform:none}#objetivos .interactive-card[open] p,.step-explanation.is-updating p{animation:none}}
/* Reserva adaptable al texto más largo: no hay saltos al cambiar de paso. */
.step-explanation{display:grid}
.step-explanation>#step-text,.step-reserve{grid-area:1/1;min-width:0}
.step-reserve{display:grid;visibility:hidden;pointer-events:none;user-select:none}
.step-reserve p{grid-area:1/1}
/* Cabecera fija en flujo: su envoltorio reserva la altura inicial. */
:root{--header-offset:128px}
html{scroll-padding-top:var(--header-offset)}
.site-header-shell{position:sticky;top:0;z-index:20;min-height:110px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid #dfdfda}
.site-header-shell header{min-height:110px;transition:min-height 200ms ease,padding 200ms ease}
.site-header-shell.is-compact header{min-height:86px}
.site-header-shell.is-compact{margin-bottom:-24px}
.hero-grid{display:block;padding-top:95px;padding-bottom:75px}
.hero-grid>div{max-width:1120px}
.hero h1{font-size:clamp(2.5rem,6.1vw,6rem);line-height:1.06;letter-spacing:-.045em}
.hero .intro{max-width:55ch}
.hero-foot{margin-top:55px}
.profile-philosophy{margin-top:36px;padding-top:30px;border-top:1px solid #bba374}
.profile-philosophy .eyebrow{color:#725622;margin-bottom:18px}
.profile-philosophy h3{font-size:clamp(1.5rem,2.3vw,2rem);font-weight:500;line-height:1.25;letter-spacing:-.025em;margin-bottom:20px}
.profile-philosophy>p:last-child{color:#53534f;margin-bottom:0}
@media(max-width:1000px){:root{--header-offset:185px}.site-header-shell{min-height:168px}.site-header-shell header{min-height:168px;padding:20px 0;row-gap:15px}.site-header-shell.is-compact header{min-height:152px;padding:12px 0}.site-header-shell.is-compact{margin-bottom:-16px}.hero-grid{padding-top:75px}}
@media(max-width:640px){:root{--header-offset:195px}.site-header-shell{min-height:178px}.site-header-shell header{min-height:178px;padding:16px 0;gap:12px}.site-header-shell.is-compact header{min-height:166px;padding:10px 0}.site-header-shell.is-compact{margin-bottom:-12px}.site-header-shell header nav{flex-wrap:nowrap;gap:0}.site-header-shell header nav a{padding:8px;font-size:.8rem}.hero-grid{padding-top:55px;padding-bottom:50px}.hero h1{font-size:clamp(2.2rem,9vw,3.6rem)}.hero-foot{margin-top:35px}.profile-philosophy{margin-top:28px;padding-top:25px}}
@media(prefers-reduced-motion:reduce){.site-header-shell header{transition:none}}
/* Altura reservada constante: compactar no mueve el inicio de la página. */
.site-header-shell{--visible-header:110px;background:transparent;backdrop-filter:none;border:0;pointer-events:none}
.site-header-shell::before{content:'';position:absolute;inset:0 0 auto;height:var(--visible-header);background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid #dfdfda;transition:height 200ms ease;z-index:-1}
.site-header-shell header{pointer-events:auto}
.site-header-shell.is-compact{--visible-header:86px;margin-bottom:0}
@media(max-width:1000px){.site-header-shell{--visible-header:168px}.site-header-shell.is-compact{--visible-header:152px;margin-bottom:0}}
@media(max-width:640px){.site-header-shell{--visible-header:178px}.site-header-shell.is-compact{--visible-header:166px;margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.site-header-shell::before{transition:none}}
/* Presentación editorial y filosofía: una única sección, dos momentos. */
#alejandro.about-personal{background:#f4f4f1;padding:0}
.personal-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(35px,6vw,85px);padding-top:85px;padding-bottom:85px;align-items:center}
.personal-photo{margin:0;min-width:0}.personal-photo .portrait{aspect-ratio:4/5;width:100%;height:auto}.personal-photo .photo-slot{min-height:440px;aspect-ratio:4/5;justify-content:end;border:0;padding:28px;background:#232321}
.personal-photo .photo-slot small{max-width:30ch;color:#bcbcb6;font-size:.85rem}
.personal-content{min-width:0}.personal-content .eyebrow{color:#725622;margin-bottom:22px}
#alejandro .personal-content h2{font-size:clamp(2.5rem,4.1vw,4rem);line-height:1.08;margin:0 0 18px;max-width:12ch}
.personal-role{font-size:1.05rem;color:#66665f;margin-bottom:32px}
.personal-story{font-size:1.08rem;color:#45453f;line-height:1.75}.personal-story p:last-child{margin-bottom:0}
.personal-badges{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:30px 0 0}
.personal-badges li{font-size:.82rem;line-height:1.45;padding:10px 14px;border:1px solid #c8c3b7;color:#4c473b;background:transparent;max-width:100%}
.personal-philosophy{width:100%;background:#111;color:#f6f6f3;padding:75px 0 65px;border-top:3px solid #b99b65}
.personal-philosophy .eyebrow{color:var(--gold);margin-bottom:30px}
.personal-philosophy h3{font-size:clamp(2.1rem,4.1vw,3.8rem);line-height:1.1;letter-spacing:-.04em;font-weight:600;max-width:1000px;margin-bottom:25px}
.philosophy-statement{font-size:clamp(1.5rem,2.8vw,2.5rem);line-height:1.25;color:var(--gold);letter-spacing:-.025em;margin-bottom:32px}
.philosophy-body{font-size:1.05rem;color:#bdbdb7;max-width:72ch;margin-bottom:24px}
.philosophy-closing{font-size:1.18rem;line-height:1.6;color:#f0f0eb;max-width:65ch;margin-bottom:38px}
.principle-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-top:1px solid #44443d;padding-top:24px}
.principle{border:0;border-left:2px solid #515148;background:transparent;color:#f4f4f0;text-align:left;padding:8px 18px;min-width:0;min-height:78px;cursor:pointer;transition:transform 200ms ease,border-color 200ms ease,background-color 200ms ease}
.principle span{display:block;font-size:.9rem;letter-spacing:.12em;font-weight:600;margin-bottom:8px}
.principle small{display:block;font-size:.95rem;line-height:1.5;color:#bdbdb7}
.principle[aria-pressed="true"]{border-left-color:var(--gold);background:#20201c}.principle[aria-pressed="true"] span{color:var(--gold)}
.principle:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.principle:active{background:#20201c}
@media(hover:hover) and (pointer:fine){.principle:hover{border-left-color:var(--gold);transform:translateY(-2px);background:#191917}}
@media(max-width:1000px){.personal-grid{gap:35px;padding-top:65px;padding-bottom:65px}.personal-photo .photo-slot{min-height:380px}.personal-badges li{font-size:.8rem}.principle-selector{gap:15px}.principle{padding-left:14px}}
@media(max-width:640px){.personal-grid{grid-template-columns:minmax(0,1fr);padding-top:45px;padding-bottom:50px;gap:35px}.personal-photo .photo-slot,.personal-photo .portrait{aspect-ratio:4/5;min-height:0}.personal-photo .photo-slot{height:auto;min-height:360px}.personal-role{margin-bottom:25px}#alejandro .personal-content h2{font-size:2.8rem;max-width:none}.personal-story{font-size:1rem}.personal-badges{margin-top:25px;gap:8px}.personal-philosophy{padding:50px 0}.personal-philosophy h3{font-size:clamp(2rem,8vw,2.8rem)}.philosophy-closing{font-size:1.08rem}.principle-selector{grid-template-columns:minmax(0,1fr);gap:12px;padding-top:20px}.principle{min-height:68px;padding:8px 16px;display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:12px}.principle span{margin:0}.principle small{font-size:.9rem}}
@media(prefers-reduced-motion:reduce){.principle{transition:none}.principle:hover{transform:none}}
/* Recursos oficiales: proporciones del monograma intactas y encuadre solo CSS. */
.brand>img{width:64px;height:auto;object-fit:contain;flex-shrink:0}
.personal-photo .portrait{object-fit:cover;object-position:53% center;background:#111}
@media(max-width:640px){.brand>img{width:42px}.site-header-shell .brand{gap:8px;font-size:1.3rem}.site-header-shell .brand small{font-size:.6rem;letter-spacing:.14em}.personal-photo .portrait{object-position:53% center}}
/* Monograma oficial más legible, con el archivo PNG original. */
.brand>img{width:108px;height:auto;object-fit:contain;image-rendering:auto}
@media(max-width:640px){.brand>img{width:68px}.site-header-shell .brand{gap:8px}}
/* Refinamiento editorial: composición centrada y recorridos sin cajas. */
.hero .hero-grid{width:min(1080px,calc(100% - 96px));padding-top:80px;padding-bottom:65px}
.hero-grid>div{max-width:none;margin:auto}
.hero h1{font-size:clamp(3rem,7.6vw,7.3rem);line-height:.98;letter-spacing:-.055em;margin:0 0 24px;overflow-wrap:normal}
.hero-subtitle{color:#bdbdb6;font-size:clamp(1.05rem,1.5vw,1.3rem);margin-bottom:30px}
.hero-slogan{color:#f3f3ef;font-size:clamp(1.5rem,2.7vw,2.3rem);letter-spacing:-.025em;line-height:1.25;max-width:31ch;margin-bottom:22px}
.hero .intro{font-size:1rem;max-width:62ch;color:#b7b7b0;margin-bottom:0}
.hero .actions{margin-top:32px}
.hero-editorial{border-top:1px solid #42423c;margin-top:48px;padding-top:20px;display:flex;flex-wrap:wrap;gap:15px 35px;font-size:.7rem;letter-spacing:.12em;color:#a8a8a0}
.hero-editorial span:first-child{color:var(--gold)}
#objetivos .objectives{gap:0 40px}
#objetivos .interactive-card,#objetivos .interactive-card:last-child{background:transparent;border:0;border-bottom:1px solid #d4d4cd;position:relative}
#objetivos .interactive-card::after{content:'';position:absolute;bottom:-1px;left:0;width:0;height:1px;background:#a8874a;transition:width 200ms ease}
#objetivos .interactive-card summary{padding:19px 4px;min-height:68px;gap:20px}
#objetivos .interactive-card .card-title{font-size:.98rem;text-transform:uppercase;letter-spacing:.035em;font-weight:500}
#objetivos .interactive-card .number{color:#826739;font-size:.9rem}
#objetivos .interactive-card p{padding:0 12px 20px 43px;color:#62625c;font-size:.95rem;line-height:1.6}
#objetivos .interactive-card[open]{background:#faf8f3;border-color:#d4d4cd}
#objetivos .interactive-card[open]::after,#objetivos .interactive-card:focus-within::after{width:100%}
#objetivos .interactive-card summary:focus-visible{box-shadow:none;outline:2px solid #987337;outline-offset:-2px;background:#faf8f3}
#objetivos .interactive-card:has(summary:focus-visible){border-color:#d4d4cd}
.steps-selector{gap:0;align-items:stretch}
.step-choice{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:22px;padding:0 20px 16px 0;height:118px;background:transparent;border:0;font-size:.9rem;line-height:1.4;color:#62625c}
.step-choice::before{content:'';position:absolute;top:21px;left:52px;right:18px;height:1px;background:#c7c7bd;transition:background-color 200ms ease}
.step-choice:last-child::before{display:none}
.step-choice .number{font-size:1.8rem;line-height:1.5;letter-spacing:-.04em;color:#75756c;min-width:40px;background:var(--pale);position:relative}
.step-choice>span:last-child{max-width:19ch}
.step-choice[aria-pressed="true"]{background:transparent;color:#725622;border:0}
.step-choice[aria-pressed="true"] .number{color:#826739}
.step-choice[data-complete="true"]::before{background:#ac8e56}
.step-choice[data-complete="true"] .number{color:#826739}
.step-choice:focus-visible{outline:2px solid #987337;outline-offset:4px;box-shadow:none;background:transparent}
.step-explanation{margin-top:20px;padding-left:24px}
@media(hover:hover) and (pointer:fine){#objetivos .interactive-card:hover{background:#faf8f3;transform:translateX(2px);border-color:#d4d4cd}#objetivos .interactive-card:hover::after{width:100%}.step-choice:hover{color:#725622;background:transparent;transform:translateY(-2px);border:0}.step-choice:hover .number{color:#826739}}
/* Enlaces y CTA: respuesta breve, reservando su espacio. */
.hero .button{transition:transform 200ms ease,background-color 200ms ease,border-color 200ms ease}
.hero .button.outline:hover{background:#242420;border-color:#d8bc86}
header nav a{transition:background-color 200ms ease,border-color 200ms ease}
@media(max-width:1000px){.hero .hero-grid{width:calc(100% - 80px);padding-top:65px}.steps-selector{grid-template-columns:repeat(4,minmax(0,1fr))}.step-choice{height:135px;font-size:.8rem;padding-right:14px}.step-choice::before{right:12px}.hero h1{font-size:clamp(3rem,9vw,6rem)}}
@media(max-width:640px){.hero .hero-grid{width:calc(100% - 40px);padding-top:48px;padding-bottom:45px}.hero h1{font-size:clamp(1.8rem,7.8vw,3.9rem);letter-spacing:-.045em}.hero-subtitle{font-size:1rem;margin-bottom:25px}.hero-slogan{font-size:1.55rem;max-width:25ch}.hero .intro{font-size:.95rem}.hero-editorial{gap:10px 22px;margin-top:35px;font-size:.65rem}#objetivos .objectives{grid-template-columns:minmax(0,1fr)}#objetivos .interactive-card summary{padding:18px 3px}#objetivos .interactive-card .card-title{font-size:.9rem}#objetivos .interactive-card p{padding-left:40px}.steps-selector{grid-template-columns:minmax(0,1fr)}.step-choice{height:84px;flex-direction:row;align-items:center;gap:22px;padding:12px 0;font-size:.9rem}.step-choice .number{font-size:1.5rem;min-width:40px}.step-choice>span:last-child{max-width:none}.step-choice::before{top:65px;bottom:-19px;left:19px;right:auto;width:1px;height:auto}.step-choice:last-child::before{display:none}.step-explanation{margin-top:22px}}
@media(prefers-reduced-motion:reduce){#objetivos .interactive-card::after,.step-choice::before,.hero .button,header nav a{transition:none}#objetivos .interactive-card:hover,.step-choice:hover{transform:none}}
/* Refinamiento: ritmo editorial, navegación lineal y vistas preparadas. */
.hero .hero-grid{width:min(1240px,calc(100% - 96px));padding-top:75px}
.hero h1{font-size:clamp(3rem,8.1vw,8rem);max-width:none}
.hero-slogan{max-width:40ch}
header nav a{position:relative;background:transparent!important;border:0!important;padding:10px 12px;color:#45453f;transition:color 200ms ease}
header nav a::after{content:'';position:absolute;left:12px;right:12px;bottom:3px;height:1px;background:#ac8e56;transform:scaleX(0);transform-origin:left;transition:transform 200ms ease}
header nav a:hover,header nav a[aria-current="location"]{color:#725622}
header nav a[aria-current="location"]{text-shadow:0 0 .35px currentColor}
header nav a:hover::after,header nav a:focus-visible::after,header nav a[aria-current="location"]::after{transform:scaleX(1)}
#metodo .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);column-gap:75px}
#metodo .eyebrow{grid-column:1/-1}#metodo h2{grid-row:2/4;margin-bottom:0}#metodo .lead{border-left:2px solid #b99b65;padding-left:23px;margin-bottom:20px}#metodo .copy{font-size:1rem;padding-left:25px;margin-bottom:0}




#app{padding-top:90px;padding-bottom:95px}#app h2{max-width:1080px}.app-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:55px}.app-grid>div{min-width:0}
.app-devices{position:relative;min-height:535px;padding:25px 0 100px}
.app-devices figure{margin:0}.device-desktop{width:100%;padding:9px;border:1px solid #66665d;border-radius:12px;background:#1d1d1a}
.device-desktop .device-display{aspect-ratio:16/10}.device-display{overflow:hidden;background:#10100f}.device-display img{width:100%;height:100%;object-fit:contain}
.device-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;color:#99998f;text-align:center;padding:18px}
.device-empty span{font-size:.85rem;letter-spacing:.1em;color:#d2bd96}.device-empty small{font-size:.8rem}
.device-desktop figcaption{font-size:.75rem;color:#adada3;padding:9px 10px 2px}
.device-phone{position:absolute;bottom:0;right:7%;width:37%;max-width:205px;border:1px solid #858575;border-radius:25px;padding:9px;background:#24241f}
.device-phone .device-display{aspect-ratio:9/18;border-radius:17px}.device-phone .device-empty span{font-size:1.5rem}.device-phone figcaption{color:#adada3;text-align:center;font-size:.7rem;padding:10px 3px 3px;line-height:1.4}
.device-extra{margin-top:25px!important}.device-extra img{max-width:100%;height:auto}
.personal-philosophy h3{max-width:1000px;font-size:clamp(2.1rem,4.2vw,3.8rem);text-transform:none}.personal-philosophy .philosophy-body{max-width:72ch;margin-top:30px;font-size:1.15rem}.personal-philosophy .philosophy-closing{max-width:68ch;margin-bottom:0;color:var(--gold);font-size:1.15rem}
.plans article{--plan-accent:#826739;--plan-line:#c6ae80}.plans .plan-online{--plan-accent:#535e6c;--plan-line:#a0abba}.plans .plan-presencial{--plan-accent:#826739;--plan-line:#c6ae80}
.plans article{border-top:2px solid var(--plan-line)}.plans article h3{color:var(--plan-accent);font-size:1.3rem}.plans .plan-cta{background:transparent;color:var(--plan-accent);border-color:var(--plan-line)}.plans .plan-cta:hover{background:#fff;border-color:var(--plan-accent);filter:none}
.faq summary::after{content:''!important;width:8px;height:8px;border-right:1.5px solid #826739;border-bottom:1.5px solid #826739;right:10px;top:7px;transform:rotate(45deg);transition:transform 200ms ease}
.faq details[open] summary::after{transform:rotate(225deg)}
@supports(interpolate-size:allow-keywords){.faq details{interpolate-size:allow-keywords}.faq details::details-content{block-size:0;overflow:clip;transition:block-size 220ms ease,content-visibility 220ms allow-discrete}.faq details[open]::details-content{block-size:auto}}
.final-cta h2{max-width:1000px;font-size:clamp(2.6rem,5.4vw,5rem)}.final-cta .lead{max-width:60ch;font-size:clamp(1.15rem,2vw,1.5rem)}
.whatsapp-float{position:fixed;right:25px;bottom:25px;z-index:15;display:flex;align-items:center;gap:10px;padding:13px 17px;min-height:52px;background:#171714;color:var(--gold);border:1px solid #a38b60;border-radius:28px;text-decoration:none;font-size:.85rem;transition:transform 200ms ease,background-color 200ms ease}.whatsapp-float svg{flex-shrink:0}.whatsapp-float:focus-visible{outline:3px solid #987337;outline-offset:4px}
footer{padding-bottom:100px}
@media(hover:hover) and (pointer:fine){.whatsapp-float:hover{transform:translateY(-2px);background:#29291f}}
@media(max-width:1000px){#metodo .wrap{column-gap:40px}.app-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:35px}.app-devices{min-height:460px;padding-top:60px}.device-phone{width:43%;right:1%}.hero .hero-grid{width:calc(100% - 64px)}.hero h1{font-size:clamp(3rem,9vw,6rem)}}
@media(max-width:760px){#metodo .wrap{display:block}#metodo h2{margin-bottom:28px}#metodo .lead{padding-left:18px}#metodo .copy{padding-left:20px}.app-grid{grid-template-columns:minmax(0,1fr)}.app-devices{width:min(520px,100%);margin:0 auto;min-height:510px;padding-top:25px}.device-phone{width:37%;right:6%;max-width:190px}}
@media(max-width:640px){.hero .hero-grid{width:calc(100% - 40px);padding-top:45px}.hero h1{font-size:clamp(1.8rem,7.8vw,3.9rem)}.hero-slogan{max-width:28ch}header nav a{padding:9px 8px}header nav a::after{left:8px;right:8px}#app{padding:65px 0}.app-devices{min-height:360px;padding-top:10px;padding-bottom:70px}.device-phone{max-width:150px;width:39%;right:4%;border-radius:20px;padding:6px}.device-phone .device-display{border-radius:14px}.device-desktop{padding:6px}.device-desktop figcaption{font-size:.65rem}.device-phone figcaption{font-size:.65rem;padding:7px 2px 2px}.personal-philosophy .philosophy-body,.personal-philosophy .philosophy-closing{font-size:1rem}.whatsapp-float{bottom:max(16px,env(safe-area-inset-bottom));right:16px;padding:12px;min-width:50px;justify-content:center}.whatsapp-float span{display:none}}
@media(prefers-reduced-motion:reduce){header nav a,header nav a::after,.faq summary::after,.whatsapp-float{transition:none}.whatsapp-float:hover{transform:none}.faq details::details-content{transition:none}}
/* Tres filas compactas en móvil: marca, acciones y navegación sin solaparse. */
@media(max-width:640px){.site-header-shell header{display:grid;grid-template-columns:minmax(0,1fr);row-gap:8px;align-items:center;padding:12px 0}.site-header-shell.is-compact header{padding:8px 0;row-gap:6px}.site-header-shell .brand{justify-self:start}.site-header-shell .header-actions{max-width:none;width:100%;justify-content:stretch;flex-wrap:nowrap;gap:10px}.site-header-shell .header-actions .button{flex:1;padding:10px 8px;min-width:0;font-size:.67rem;min-height:42px}.site-header-shell header nav{grid-column:1;width:100%;justify-content:space-between}.site-header-shell header nav a{min-height:38px;display:flex;align-items:center}}
/* Capturas reales completas: escritorio protagonista, móvil delante. */
#app .app-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);gap:45px}
.device-desktop .device-display{aspect-ratio:1915/867}
.device-phone .device-display{aspect-ratio:1008/2046}
.device-phone{width:29%;max-width:205px;right:3%}
.app-devices{min-height:490px;padding-top:20px}
.device-display img{object-fit:contain;object-position:center;display:block}
/* Dos modalidades con proporciones coherentes y acentos distintos. */
.plans{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;align-items:start;margin-top:35px}
.plans article{display:flex;align-items:stretch;padding:35px 35px 30px;border:1px solid var(--plan-line);border-top-width:4px;background:#fff;min-width:0;min-height:365px}
.plans .plan-online{--plan-accent:#405e7b;--plan-line:#748fa6;background:#f8fafc}
.plans .plan-presencial{--plan-accent:#826739;--plan-line:#b99b65;background:#fdfbf6}
.plans article h3{font-size:1.1rem;letter-spacing:.12em;font-weight:600;margin-bottom:22px}.plans article .price{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.2;margin-bottom:22px;color:#171717}
.plan-summary{font-size:1rem;min-height:54px;margin-bottom:20px}
.plan-includes,.plan-includes:last-child{border-top:1px solid var(--plan-line);border-bottom:0;padding:0;margin:0 0 25px}
.plan-includes summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;min-height:52px;padding:15px 0;font-size:.75rem;letter-spacing:.1em;color:var(--plan-accent);font-weight:600;cursor:pointer}
.plan-includes summary::-webkit-details-marker{display:none}
.disclosure-chevron{display:block;width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform 200ms ease;flex-shrink:0;margin-right:5px}
.plan-includes[open] .disclosure-chevron{transform:rotate(225deg)}
.plan-includes ul{padding:0 0 0 20px;margin:5px 0 15px;color:#56564f;font-size:.95rem;line-height:1.65}.plan-includes li{padding:4px 0}
.plans .plan-cta{width:100%;margin-top:auto;background:transparent;border-color:var(--plan-line);color:var(--plan-accent);min-height:52px}
@supports(interpolate-size:allow-keywords){.plan-includes{interpolate-size:allow-keywords}.plan-includes::details-content{block-size:0;overflow:clip;transition:block-size 220ms ease,content-visibility 220ms allow-discrete}.plan-includes[open]::details-content{block-size:auto}}
.faq details p{max-width:83ch;font-size:1rem;line-height:1.75}
.personal-philosophy .eyebrow{margin-bottom:28px}.personal-philosophy .philosophy-closing{border-left:1px solid #ac8e56;padding-left:22px}
@media(hover:hover) and (pointer:fine){.plans .plan-cta:hover{background:var(--plan-accent);color:white}}
@media(max-width:1000px){#app .app-grid{grid-template-columns:minmax(0,1fr)}.app-devices{width:min(820px,100%);margin:0 auto;min-height:510px}.plans article{padding:28px}.plan-summary{min-height:78px}}
@media(max-width:640px){.app-devices{min-height:325px;padding-top:8px}.device-phone{width:33%;right:3%;max-width:160px}.plans{grid-template-columns:minmax(0,1fr);gap:24px}.plans article{padding:27px 24px;min-height:0}.plan-summary{min-height:0}.plans .plan-cta{font-size:.75rem}.personal-philosophy .philosophy-closing{padding-left:18px}}
@media(prefers-reduced-motion:reduce){.disclosure-chevron,.plan-includes::details-content{transition:none}}
/* Jerarquía interior de planes, subordinada al titular del hero. */
#planes h2{font-size:clamp(1.8rem,2.6vw,2.5rem);line-height:1.15;max-width:900px;margin-bottom:18px}
#planes>.wrap>.lead{font-size:1.1rem;line-height:1.5;margin-bottom:0;color:#62625c}

/* App → presentación: continuidad directa, sin sección ni hueco intermedio. */
#app{padding-bottom:75px}
#alejandro .personal-grid{padding-top:75px}
@media(max-width:640px){#app{padding-bottom:50px}#alejandro .personal-grid{padding-top:45px}}
