:root{--navy:#002432;--orange:#f78837;--teal:#22c0b1;--muted:#586b72;--line:#dbe2e3;--paper:#f5f7f5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--navy);font-family:Poppins,Arial,sans-serif;font-size:15px;line-height:1.75}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}a,button,input,select,textarea{outline-offset:5px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}.logo{width:194px;height:auto;display:block}nav{display:flex;gap:32px;align-items:center;font-size:13px;font-weight:500}.nav-contact{border:1px solid var(--navy);padding:12px 20px}.nav-contact span{margin-left:25px}.menu{display:none}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;z-index:100}.hero{padding:65px 6% 72px;display:grid;grid-template-columns:1.12fr 1fr;gap:6%;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;margin:0 0 25px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(45px,5.8vw,84px);line-height:1.08;letter-spacing:-3.8px;font-weight:500;margin-bottom:28px}em{font-style:normal;color:var(--orange)}.intro{max-width:490px;font-size:16px;color:var(--muted);margin-bottom:30px}.button{display:flex;justify-content:space-between;gap:22px;align-items:center;border:1px solid var(--navy);padding:15px 20px;font-weight:500;font-size:12px;width:fit-content;cursor:pointer;background:transparent;transition:transform .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:22px;line-height:1}.orange{background:var(--orange);border-color:var(--orange);color:var(--navy)}.small{font-size:11px}.hero-note{margin:23px 0 0;color:var(--muted)}.hero-art{height:520px;position:relative;background:var(--navy);overflow:hidden;color:white}.art-top{position:absolute;top:26px;left:28px;right:28px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px}.path{position:absolute;width:260px;height:350px;border:1px solid #ffffff24;border-radius:130px 130px 0 0;transform:rotate(34deg);top:120px;left:10px}.p2{left:65px;top:85px}.p3{left:120px;top:50px}.arrow{position:absolute;font-size:340px;line-height:1;right:18px;top:75px;color:var(--orange);font-family:Arial;transform:rotate(-3deg)}.art-label{position:absolute;left:32px;bottom:76px;font-size:20px;line-height:1.5}.art-label strong{font-weight:500}.dot{display:inline-block;background:var(--teal);width:9px;height:9px;border-radius:50%;margin-right:9px}.art-bottom{position:absolute;bottom:24px;left:32px;letter-spacing:2px;font-size:8px}.ribbon{display:flex;justify-content:space-between;padding:22px 6%;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px}.ribbon span:before{content:'✳';color:var(--teal);margin-right:16px}.section{padding:95px 6%;scroll-margin-top:0}h2{font-size:clamp(30px,3.2vw,47px);line-height:1.25;letter-spacing:-1.6px;font-weight:500;margin-bottom:28px}h2 span{color:#73858a}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;margin-top:44px}.about-grid>div>p{color:var(--muted)}.lead{font-size:19px;color:var(--navy)!important;line-height:1.65}.text-link{display:inline-flex;gap:36px;border-bottom:1px solid var(--navy);padding-bottom:9px;font-size:12px;margin-top:16px}.people{display:grid;grid-template-columns:1fr 1fr;gap:24px}.portrait{background:#e9eeed;padding:20px;text-align:center;overflow:hidden;margin-bottom:22px}.portrait img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;display:block}.person .eyebrow{font-size:8px;margin-bottom:7px;letter-spacing:1.5px}.person h3{font-size:20px;font-weight:500;margin-bottom:7px}.person p:last-child{font-size:12px;color:var(--muted)}.needs{background:var(--paper)}.needs-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:9%}.need-list a{display:flex;gap:22px;padding:22px 0;border-top:1px solid #ccd7d8;align-items:start}.need-list a>span{color:var(--muted);font-size:11px}.need-list h3{font-size:16px;margin-bottom:6px;font-weight:500}.need-list p{font-size:12px;color:var(--muted);margin:0}.need-list b{margin-left:auto;color:var(--navy);font-weight:400}.program-head{display:flex;justify-content:space-between;align-items:end;gap:40px}.program-head>p{max-width:290px;color:var(--muted);font-size:13px;margin-bottom:35px}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:25px}.plan{padding:32px 27px;border:1px solid var(--line);display:flex;flex-direction:column;scroll-margin-top:120px}.plan-number{font-size:8px;letter-spacing:1.3px;color:var(--muted);margin-bottom:25px}.plan h3{font-size:34px;line-height:1.15;font-weight:500;letter-spacing:-1px;margin-bottom:20px}.plan>p{font-size:12px;color:var(--muted);min-height:45px}.duration{font-size:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0}.duration span{font-size:10px}.plan ul{list-style:none;padding:0;margin:20px 0 30px;font-size:11px}.plan li{padding:7px 0 7px 19px;position:relative}.plan li:before{content:'✓';position:absolute;left:0;color:#087a71}.plan .button{margin-top:auto;width:100%}.featured{background:var(--navy);color:white;border-color:var(--navy)}.featured .plan-number{color:var(--teal)}.featured>p{color:#c5d1d5}.featured .duration{border-color:#ffffff30}.featured li:before{color:var(--teal)}.program-note{text-align:center;font-size:12px;color:var(--muted);margin:28px 0 0}.process{background:var(--paper)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;margin-top:45px}.steps article{border-top:1px solid #b7c5c7;padding-top:22px}.steps span{font-family:'Bebas Neue',sans-serif;font-size:40px;color:#087a71}.steps h3{font-size:15px;line-height:1.5;margin:15px 0 10px;font-weight:500}.steps p{font-size:12px;color:var(--muted)}.business{background:var(--navy);color:white;display:grid;grid-template-columns:1.15fr 1fr;gap:10%;align-items:center}.business .eyebrow{color:var(--teal)}.business .lead{color:white!important}.business p:not(.eyebrow):not(.lead){color:#b9cbd1;font-size:13px}.business .button{margin-top:28px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:10%}details{border-bottom:1px solid var(--line);padding:20px 0}details:first-child{border-top:1px solid var(--line)}summary{font-size:14px;font-weight:500;cursor:pointer}details p{font-size:12px;color:var(--muted);margin:18px 0 0}.contact{background:#edf2ef;display:grid;grid-template-columns:1.1fr 1fr;gap:12%}.contact em{color:#087a71}.contact>div>p:not(.eyebrow){color:var(--muted)}.email{display:inline-block;border-bottom:1px solid #93a5a6;margin:15px 0 20px;font-size:15px}form label{display:block;font-size:11px;font-weight:500;margin-bottom:20px}input,select,textarea{display:block;width:100%;padding:12px 0;border:0;border-bottom:1px solid #aabbbc;background:transparent;border-radius:0;color:var(--navy);font-size:13px;margin-top:4px}textarea{resize:vertical}form .button{width:100%;margin-top:25px}#form-status{line-height:1.6;color:var(--muted);margin-top:14px}footer{display:flex;flex-wrap:wrap;align-items:center;gap:30px;padding:35px 6%;font-size:10px}footer .logo{width:150px}footer p{margin:0;flex:1}footer>span{width:100%;border-top:1px solid var(--line);padding-top:20px;color:var(--muted)}@media(min-width:1500px){header,.section,.hero,.ribbon,footer{padding-left:max(6%,calc((100vw - 1320px)/2));padding-right:max(6%,calc((100vw - 1320px)/2))}}@media(max-width:900px){header{height:80px}.logo{width:155px}nav{gap:16px;font-size:11px}.hero{gap:4%}.hero-art{height:450px}h1{letter-spacing:-2px}.arrow{font-size:280px;right:-10px}.about-grid{gap:5%}.plans{gap:12px}.plan{padding:25px 18px}.plan h3{font-size:29px}.duration span{display:block}.section{padding-top:70px;padding-bottom:70px}.business{gap:6%}}@media(max-width:650px){html{scroll-padding-top:80px}header{padding:0 6%;height:76px}.menu{display:block;border:1px solid var(--line);background:white;font-size:20px;padding:4px 12px}nav{display:none;position:absolute;top:76px;left:0;right:0;flex-direction:column;align-items:stretch;background:white;padding:22px 6%;box-shadow:0 8px 14px #00243210}nav.open{display:flex}nav a{padding:10px;font-size:13px}.hero{grid-template-columns:1fr;padding-top:40px;gap:35px;padding-bottom:35px}.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:20px}h1{font-size:53px;letter-spacing:-2.5px}.intro{font-size:14px}.hero-art{height:320px}.arrow{font-size:250px;top:18px;right:17px}.art-label{font-size:17px;bottom:52px;left:24px}.art-top{font-size:7px;top:20px;left:24px}.art-bottom{font-size:7px;bottom:18px;left:24px}.path{height:280px;top:40px}.p2{top:10px}.p3{top:-20px}.ribbon{display:block;padding-top:17px;padding-bottom:17px}.ribbon span{display:block;font-size:10px;margin:6px 0}.section{padding:55px 6%}h2{font-size:31px;letter-spacing:-1px}.about-grid,.needs-grid,.business,.faq,.contact{grid-template-columns:1fr;gap:28px}.about-grid{margin-top:25px}.lead{font-size:17px}.about-grid p{font-size:13px}.people{gap:16px;margin-top:15px}.portrait{padding:12px;margin-bottom:15px}.person h3{font-size:17px}.person p:last-child{font-size:11px}.program-head{display:block}.program-head>p{max-width:none;margin-bottom:25px}.plans{grid-template-columns:1fr;gap:20px}.plan{padding:28px}.plan h3{font-size:34px}.plan>p{min-height:0}.duration span{display:inline}.plan ul{font-size:12px}.steps{grid-template-columns:1fr 1fr;gap:24px}.steps h3{font-size:14px}.steps p{font-size:11px}.business .button{font-size:11px}.contact h2{font-size:36px}footer{gap:20px}footer p{display:none}footer>a:last-of-type{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.hero-art{padding:20px}.hero-photo{display:block;width:100%;height:100%;object-fit:cover}.portrait{padding:0}.portrait img{border-radius:0;aspect-ratio:4/5;object-position:center 24%}@media(max-width:650px){.hero-art{padding:14px;height:360px}}
/* Hero: fotografía sin marco */
.hero-art{padding:0;background:transparent}
@media(max-width:650px){.hero-art{padding:0}}

.hero-art picture{display:block;width:100%;height:100%}
@media(max-width:650px){.hero{grid-template-columns:1fr;gap:26px}.hero-art{width:100%;height:auto;aspect-ratio:2.75/1;padding:0}.hero-photo{object-position:center}.hero h1{font-size:53px}}
/* Colores corporativos de los programas */
.plan{background:var(--navy);border-color:var(--navy);color:#fff}
.plan .plan-number{color:var(--teal)}
.plan>p{color:#d0dce0}
.plan .duration{border-color:#ffffff35}
.plan li:before{color:var(--teal)}
.plan .button{background:var(--orange);border-color:var(--orange);color:var(--navy)}
.plan.featured{background:var(--teal);border-color:var(--teal);color:var(--navy)}
.plan.featured .plan-number,.plan.featured>p,.plan.featured li:before{color:var(--navy)}
.plan.featured .duration{border-color:#00243245}
/* Botón del programa 02 */
.plan.featured .button{background:var(--navy);border-color:var(--navy);color:#fff}

/* Textos secundarios y botones redondeados */
.plan.featured .plan-number,.plan.featured>p,.plan.featured .duration,.plan.featured ul,.plan.featured li:before{color:#fff}
.plan.featured h3{color:var(--navy)}
.button,.nav-contact{border-radius:999px}

.contact-photo{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;margin:25px 0 20px;border-radius:12px}

.contact-photo{max-width:360px;aspect-ratio:2/1;margin:24px 0 20px}.button:disabled{opacity:.65;cursor:wait;transform:none}

.privacy-consent{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.7}.privacy-consent input{width:17px;height:17px;flex:0 0 17px;margin:3px 0 0;accent-color:var(--navy)}.privacy-consent a,.privacy-copy a{text-decoration:underline;text-underline-offset:3px}.privacy-section{padding:20px 6%}.privacy-section details{scroll-margin-top:110px}.privacy-copy{max-width:850px;padding:20px 0}.privacy-copy h3{font-size:15px;margin:24px 0 8px}.privacy-copy p{font-size:12px;line-height:1.8;margin:0 0 12px}.privacy-section summary{font-size:13px}
/* Ajustes exclusivos para teléfonos: inicio compacto y cabecera adaptable */
@media(max-width:650px){
 html{scroll-padding-top:70px}
 header{height:70px;transition:height .2s ease}
 header .logo{width:150px;transition:width .2s ease}
 header.is-scrolled{height:54px}
 header.is-scrolled .logo{width:125px}
 header nav{top:100%}
 .menu{font-size:0;color:var(--navy);width:44px;min-height:44px;padding:11px;border-radius:8px;display:flex;align-items:center;justify-content:center}
 .menu:after{content:'';display:block;width:21px;height:16px;background:linear-gradient(to bottom,var(--navy) 0 2px,transparent 2px 7px,var(--navy) 7px 9px,transparent 9px 14px,var(--navy) 14px 16px)}
 .hero{padding-top:25px;padding-bottom:28px;gap:20px}
 .hero h1{font-size:clamp(31px,8.8vw,39px);line-height:1.1;letter-spacing:-1.3px;margin-bottom:16px}
 .hero h1 br:first-of-type{display:none}
 .hero h1 br:first-of-type:after{content:' '}
 .hero .eyebrow{font-size:7px;letter-spacing:1.3px;margin-bottom:15px}
 .hero .intro{font-size:13px;line-height:1.65;margin-bottom:18px}
 .hero .button{padding:12px 18px;font-size:11px}
 .hero-note{font-size:9px;margin-top:13px}
 .hero-art{aspect-ratio:2.75/1;height:auto}
 .ribbon,.need-list a>b,footer>a[href="#inicio"]:not(:first-child){display:none}
}
@media(max-width:650px) and (prefers-reduced-motion:reduce){header,header .logo{transition:none}}
@media(max-width:650px){.about .text-link span{display:none}}

/* Pie discreto y privacidad en ventana */
footer .logo{filter:grayscale(1);opacity:.38}
body.privacy-open{overflow:hidden}
.privacy-modal{width:min(760px,calc(100% - 32px));max-height:85dvh;border:0;border-radius:18px;padding:28px 32px;color:var(--navy);background:#fff;box-shadow:0 24px 80px #00243240}
.privacy-modal::backdrop{background:rgba(0,24,34,.65)}
.privacy-modal-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.privacy-modal-heading h2{font-size:26px;margin:0;letter-spacing:-.7px}
.privacy-close{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border:0;border-radius:50%;background:#edf2ef;color:var(--navy);font-size:28px;cursor:pointer}
.privacy-modal .privacy-copy{padding:15px 0 0}
@media(max-width:650px){.privacy-modal{padding:20px;max-height:82dvh}.privacy-modal-heading h2{font-size:23px}}
