/* Academia OPE 1.2.0 — editorial design, responsiveness and CF7 contrast fixes. */
:root { --ao-max-width:1240px; --ao-card-radius:18px; --ao-space:92px; --ao-h1:64px; --ao-h1-mobile:42px; --ao-h2:44px; --ao-body-size:16px; --ao-user-header:#fff; --ao-user-footer:#211c27; }
html,body{max-width:100%;overflow-x:clip}
.ao-header {display:block!important;visibility:visible!important;opacity:1!important;position:sticky;top:0;z-index:1100;height:auto;min-height:78px;background:var(--ao-user-header);border-bottom:1px solid #eae0e7}
body.admin-bar .ao-header {top:32px}
.ao-header-row{max-width:var(--ao-max-width);min-height:78px;height:auto;padding-block:12px}
.ao-site-brand img{width:235px;max-width:min(235px,49vw);height:auto;object-fit:contain}
.ao-nav-list a{font-size:13px;font-weight:750}
.ao-header-cta{background:var(--ao-accent-dark);border-radius:999px;padding:13px 20px;box-shadow:0 7px 18px #27162518}
.ao-header-cta:hover{background:var(--ao-ink-deep)}
.ao-footer {display:block!important;visibility:visible!important;opacity:1!important;position:relative;min-height:240px;background:var(--ao-user-footer);padding:62px 0 24px}
.ao-footer-main,.ao-footer-meta{max-width:var(--ao-max-width)}
.ao-footer h3{letter-spacing:0;font-size:15px}
.ao-footer a{font-size:14px}
.ao-footer-about p{font-size:14px;max-width:370px}
body.page-template-landing-formacion .ao-landing-article{overflow:hidden}
body.page-template-landing-formacion .ao-container{max-width:var(--ao-max-width)}
body.page-template-landing-formacion .ao-hero{
 background: radial-gradient(ellipse 520px 480px at 100% 20%,#ecd8e5 0%,transparent 75%),linear-gradient(125deg,#fff,#fcf6fa 66%,#f4e8ef);
 color:var(--ao-ink);
 border-bottom:1px solid #efe4eb;
}
body.page-template-landing-formacion .ao-hero::before{
 content:'';position:absolute;inset:7% 3% auto auto;width:270px;height:270px;
 background:radial-gradient(circle,transparent 58%,#ad739524 59%,#ad739524 60%,transparent 61%);
 z-index:0;pointer-events:none;
}
body.page-template-landing-formacion .ao-hero::after{content:'';position:absolute;right:-140px;bottom:-210px;top:auto;width:480px;height:480px;box-shadow:none;border:1px solid #d8afc83b;opacity:1}
body.page-template-landing-formacion .ao-hero-columns{min-height:unset;align-items:center;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:6%!important;padding-block:clamp(75px,8vw,115px)!important}
body.page-template-landing-formacion .ao-hero-copy{max-width:705px}
body.page-template-landing-formacion .ao-hero .ao-eyebrow{color:var(--ao-accent-dark);font-size:12px;letter-spacing:.14em}
body.page-template-landing-formacion .ao-hero-heading{color:var(--ao-ink);max-width:660px;font-size:clamp(42px,5.4vw,var(--ao-h1));letter-spacing:-.065em;line-height:1.06}
body.page-template-landing-formacion .ao-hero-description{color:#625565;font-size:18px;line-height:1.7;max-width:590px}
body.page-template-landing-formacion .ao-hero-actions{margin-top:32px}
body.page-template-landing-formacion .ao-hero-actions .ao-btn-primary{background:var(--ao-accent-dark);border-color:var(--ao-accent-dark);box-shadow:0 12px 26px #9b5b8828}
body.page-template-landing-formacion .ao-hero-actions .ao-btn-primary:hover{background:var(--ao-ink-deep)}
body.page-template-landing-formacion .ao-hero-actions .ao-btn-ghost{color:var(--ao-accent-dark);border-color:#caaabd;background:#fff}
body.page-template-landing-formacion .ao-hero-actions .ao-btn-ghost:hover{background:#f7eaf1}
body.page-template-landing-formacion .ao-hero-visual {
 max-width:475px;transform:rotate(-1.2deg);border:1px solid #aa7597;
 background:linear-gradient(150deg,#3c2a3b,#211925 75%);padding:clamp(26px,3.5vw,47px);
 border-radius:27px;box-shadow:17px 17px 0 #cba0ba75,0 27px 55px #52334826;
}
body.page-template-landing-formacion .ao-hero-visual:after{content:'✦';position:absolute;top:-29px;right:16px;color:#bc79a1;font-size:41px}
body.page-template-landing-formacion .ao-visual-row{display:flex;gap:16px;align-items:center;padding:17px 0;border-top:1px solid #ffffff30}
body.page-template-landing-formacion .ao-visual-num{display:grid;place-items:center;min-width:45px;height:45px;border:1px solid #d7a6c4;color:#efbdd6;border-radius:50%;font-size:13px}
body.page-template-landing-formacion .ao-visual-text{font-size:15px;font-weight:750}
body.page-template-landing-formacion .ao-benefits{background:#342836;color:#fff;border-bottom:0}
body.page-template-landing-formacion .ao-benefit-text{font-size:14px;color:#f7e9f1;padding-block:23px;letter-spacing:.04em}
body.page-template-landing-formacion .ao-section{padding-block:var(--ao-space)}
body.page-template-landing-formacion .ao-intro{background:#fff}
body.page-template-landing-formacion .ao-intro h2,body.page-template-landing-formacion .ao-section h2{font-size:clamp(30px,3.4vw,var(--ao-h2));letter-spacing:-.052em}
body.page-template-landing-formacion .ao-intro-copy .ao-lead{font-size:18px;line-height:1.75;color:#4d4550}
body.page-template-landing-formacion .ao-step-grid{gap:20px!important;position:relative}
body.page-template-landing-formacion .ao-step-card{border:1px solid #e6d9e2;border-radius:var(--ao-card-radius);background:#fff;box-shadow:0 14px 35px #3d223514;position:relative;overflow:hidden;padding:30px;min-height:190px}
body.page-template-landing-formacion .ao-step-card:before{content:' ';position:absolute;right:-36px;top:-36px;width:126px;height:126px;border-radius:50%;background:#f8ebf2}
body.page-template-landing-formacion .ao-step-card:after{content:'↗';position:absolute;right:28px;top:20px;color:#a36b8b;font-size:26px;line-height:1}
body.page-template-landing-formacion .ao-step-number{display:grid;place-items:center;border-radius:12px;background:var(--ao-accent-dark);color:white;font-size:13px;font-weight:850;width:40px;height:40px;position:relative;z-index:1;margin:0 0 24px}
body.page-template-landing-formacion .ao-step-card h3{font-size:21px;position:relative}
body.page-template-landing-formacion .ao-step-card p:last-child{font-size:14px;color:#6c606e;position:relative}
body.page-template-landing-formacion .ao-programs{background:linear-gradient(180deg,#f9f5f8,#fdfbfd);border-top:1px solid #f0e8ed}
body.page-template-landing-formacion .ao-section-sub{max-width:670px;line-height:1.65}
body.page-template-landing-formacion .ao-services-grid{display:grid!important;gap:22px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch}
body.page-template-landing-formacion .ao-services-grid.ao-count-4{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:1060px;margin-inline:auto}
body.page-template-landing-formacion .ao-services-grid.ao-count-2{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:1060px;margin-inline:auto}
body.page-template-landing-formacion .ao-services-grid.ao-count-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
body.page-template-landing-formacion .ao-service-col{width:100%;flex:initial!important}
body.page-template-landing-formacion .ao-service-card{width:100%;display:flex;flex-direction:column;border:1px solid #e9dce4;border-radius:var(--ao-card-radius);box-shadow:0 14px 28px #39213a0e;background:white}
body.page-template-landing-formacion .ao-service-card:hover{box-shadow:0 23px 40px #49304924;transform:translateY(-4px)}
body.page-template-landing-formacion .ao-card-main{padding:28px 25px 24px}
body.page-template-landing-formacion .ao-card-tag{font-size:10px;padding:7px 12px;border-radius:99px}
body.page-template-landing-formacion .ao-card-title{font-size:clamp(20px,1.65vw,25px);margin-block:12px;line-height:1.23}
body.page-template-landing-formacion .ao-card-desc{font-size:13px;line-height:1.7}
body.page-template-landing-formacion .ao-feature-list li{font-size:13px;line-height:1.54}
body.page-template-landing-formacion .ao-card-foot{
 display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;
 gap:20px!important;padding:24px 25px 26px!important;background:#fffafc;border-top:1px solid #eee3eb
}
body.page-template-landing-formacion .ao-price{font-size:35px;color:var(--ao-ink);margin:4px 0 0}
body.page-template-landing-formacion .ao-price-query{font-size:18px;margin-block:4px}
body.page-template-landing-formacion .ao-card-cta{width:100%;min-height:48px;border-radius:10px;background:var(--ao-accent-dark);font-size:13px;text-align:center;color:#fff!important}
body.page-template-landing-formacion .ao-card-cta:hover{background:var(--ao-ink-deep)}
body.page-template-landing-formacion .ao-interlude{background:#f1e7ed}
body.page-template-landing-formacion .ao-quote-card{border-left:5px solid #b980a0;transform:rotate(1deg);box-shadow:10px 11px 0 #d8c0ce}
body.page-template-landing-formacion .ao-faq-list{max-width:1020px}
body.page-template-landing-formacion .ao-faq-list details{padding:21px 20px;margin-bottom:10px;background:#fcf9fb;border:1px solid #efe4ea;border-radius:12px}
body.page-template-landing-formacion .ao-faq-list details[open]{background:#fff6fb;border-color:#e2cbda}
body.page-template-landing-formacion .ao-faq-list summary{font-size:16px}
body.page-template-landing-formacion .ao-form-section{background:radial-gradient(ellipse 560px 470px at 92% 3%,#65465a60,transparent 70%),#2b2230;padding-block:clamp(76px,8vw,110px)}
body.page-template-landing-formacion .ao-form-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:33px!important;max-width:1100px}
body.page-template-landing-formacion .ao-form-aside{max-width:960px;margin-inline:auto;text-align:center;padding:0}
body.page-template-landing-formacion .ao-form-aside h2{font-size:clamp(32px,4.1vw,51px);margin:10px 0 14px}
body.page-template-landing-formacion .ao-form-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px;text-align:left}
body.page-template-landing-formacion .ao-form-points li{background:#ffffff0c;border:1px solid #ffffff24;padding:16px 16px 16px 42px;border-radius:12px;font-size:13px}
body.page-template-landing-formacion .ao-form-shell{max-width:910px;width:100%;margin-inline:auto;border-radius:21px;padding:clamp(26px,5vw,56px);background:#fff;box-shadow:0 23px 70px #120d1c60}
body.page-template-landing-formacion .ao-cf7-form{display:grid;gap:18px}
body.page-template-landing-formacion .ao-cf7-form label{font-size:13px;line-height:1.5}
/* Form: one column for all personal data, independent from Gutenberg columns. */
body.page-template-landing-formacion .ao-cf7-two,body.page-template-landing-formacion .ao-cf7-three{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
body.page-template-landing-formacion .ao-cf7-form input:not([type="checkbox"]):not([type="submit"]),body.page-template-landing-formacion .ao-cf7-form textarea,body.page-template-landing-formacion .ao-cf7-form select{background:#fff;color:var(--ao-ink);border:1px solid #d9cdd5;border-radius:10px;min-height:52px;padding:13px 15px;margin-top:7px;box-shadow:none}
body.page-template-landing-formacion .ao-cf7-choices{border-radius:14px;background:#fbf6fa;padding:22px}
body.page-template-landing-formacion .ao-cf7-choices .wpcf7-form-control.wpcf7-checkbox{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 15px}
body.page-template-landing-formacion .ao-cf7-choices .wpcf7-form-control.wpcf7-checkbox:has(>.wpcf7-list-item:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}
body.page-template-landing-formacion .ao-cf7-choices .wpcf7-form-control.wpcf7-checkbox:has(>.wpcf7-list-item:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
body.page-template-landing-formacion .ao-cf7-choices .wpcf7-list-item{margin:0!important;min-width:0;display:block}
body.page-template-landing-formacion .ao-cf7-choices .wpcf7-list-item+.wpcf7-list-item{margin-top:0}
body.page-template-landing-formacion .ao-cf7-choices .wpcf7-list-item label{display:flex;align-items:flex-start;gap:9px;border:1px solid #e5d8e1;background:#fff;border-radius:9px;padding:13px 12px;height:100%;font-size:12px}
body.page-template-landing-formacion .ao-cf7-choices input[type="checkbox"]{flex:0 0 17px;margin-top:2px}
body.page-template-landing-formacion .ao-cf7-consent{padding:0;margin:0;font-size:13px}
body.page-template-landing-formacion .ao-cf7-consent .wpcf7-list-item{margin:0}
/* Critical: plugin/input selectors used to give the submit button a white background. */
body.page-template-landing-formacion .ao-form-shell .ao-cf7-form input[type="submit"],
body.page-template-landing-formacion .ao-form-shell .ao-cf7-form input.wpcf7-submit,
body.page-template-landing-formacion .ao-form-shell .ao-cf7-form .ao-form-submit{
 appearance:none!important;-webkit-appearance:none!important;display:block!important;visibility:visible!important;opacity:1!important;
 width:100%!important;min-height:58px!important;margin:2px 0 0!important;padding:16px 24px!important;
 background:var(--ao-accent-dark)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
 border:2px solid var(--ao-accent-dark)!important;box-shadow:0 10px 22px #894f7228!important;
 text-align:center!important;font:800 16px/1.4 var(--ao-font-body)!important;text-decoration:none!important;
 border-radius:11px!important;cursor:pointer!important;
}
body.page-template-landing-formacion .ao-form-shell .ao-cf7-form input[type="submit"]:hover,
body.page-template-landing-formacion .ao-form-shell .ao-cf7-form input.wpcf7-submit:hover{background:var(--ao-ink-deep)!important;border-color:var(--ao-ink-deep)!important;color:#fff!important}
body.page-template-landing-formacion .ao-form-shell .ao-cf7-form input[type="submit"]:disabled{opacity:.62!important;cursor:not-allowed!important}
body.page-template-landing-formacion .ao-form-shell .ao-cf7-note{margin-top:0;background:#f9ebf2;border-left-color:var(--ao-accent);padding:19px;border-radius:0 9px 9px 0}
body.page-template-landing-formacion .ao-form-shell .wpcf7-spinner{margin:8px 0 0;vertical-align:middle}
/* Keep header/footer present even when older builder/plugin rules target header/footer tags. */
body.page-template-landing-formacion header.ao-header{display:block!important;min-height:78px!important;max-height:none!important;height:auto!important}
body.page-template-landing-formacion footer.ao-footer{display:block!important;min-height:200px!important;max-height:none!important;height:auto!important}
@media (max-width:1020px){
 .ao-header-row{gap:15px;padding-inline:22px}.ao-site-brand img{width:200px}
 body.page-template-landing-formacion .ao-services-grid.ao-count-3{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
 body.page-template-landing-formacion .ao-card-main{padding:25px 19px}
 body.page-template-landing-formacion .ao-card-foot{padding-inline:19px!important}
 body.page-template-landing-formacion .ao-hero-columns{gap:5%!important}
}
@media(max-width:800px){
 body.admin-bar .ao-header{top:46px}
 .ao-header{min-height:72px!important}.ao-header-row{min-height:72px;padding:12px 20px}
 .ao-nav-toggle{display:inline-flex;background:#fbf6fa;border-color:#e7d7e1;font-size:13px;font-weight:800}
 .ao-navigation{order:3;flex:0 0 100%;width:100%;display:none;border-top:1px solid #eadfe6;padding-top:10px}
 .ao-navigation[data-open="true"]{display:block}
 body.page-template-landing-formacion .ao-hero-columns{grid-template-columns:1fr!important;padding-block:65px!important;gap:48px!important}
 body.page-template-landing-formacion .ao-hero-visual{max-width:640px;margin-inline:auto;transform:none}
 body.page-template-landing-formacion .ao-intro-grid{grid-template-columns:1fr!important;gap:8px!important}
 body.page-template-landing-formacion .ao-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.page-template-landing-formacion .ao-services-grid.ao-count-3{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.page-template-landing-formacion .ao-services-grid.ao-count-4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.page-template-landing-formacion .ao-services-grid.ao-count-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.page-template-landing-formacion .ao-form-points{grid-template-columns:1fr}
 body.page-template-landing-formacion .ao-form-aside{text-align:left}
 body.page-template-landing-formacion .ao-interlude-grid{grid-template-columns:1fr!important;gap:45px!important}
}
@media(max-width:600px){
 .ao-header{min-height:69px!important}.ao-header-row{min-height:69px;padding:10px 17px}
 .ao-site-brand img{max-width:175px;max-height:48px}
 .ao-footer-main{grid-template-columns:1fr;gap:28px}.ao-footer-about{grid-column:auto}.ao-footer{padding:45px 0 27px}
 .ao-footer-meta{flex-direction:column}
 body.page-template-landing-formacion .ao-container{padding-inline:20px}
 body.page-template-landing-formacion .ao-section{padding-block:68px}
 body.page-template-landing-formacion .ao-hero-columns{padding-block:59px 65px!important;gap:42px!important}
 body.page-template-landing-formacion .ao-hero-heading{font-size:var(--ao-h1-mobile);line-height:1.12;margin-bottom:18px}
 body.page-template-landing-formacion .ao-hero-description{font-size:16px;line-height:1.65}
 body.page-template-landing-formacion .ao-hero-actions{display:grid;grid-template-columns:1fr;gap:11px!important;width:100%}
 body.page-template-landing-formacion .ao-hero-actions .ao-btn{width:100%;min-height:49px}
 body.page-template-landing-formacion .ao-hero-visual{padding:27px 23px;box-shadow:8px 9px 0 #cba0ba75}
 body.page-template-landing-formacion .ao-benefit-text{padding-block:19px;font-size:12px;line-height:1.8}
 body.page-template-landing-formacion .ao-intro-copy{padding-top:0}
 body.page-template-landing-formacion .ao-step-grid{grid-template-columns:1fr!important;gap:13px!important}
 body.page-template-landing-formacion .ao-step-card{min-height:0;padding:25px}
 body.page-template-landing-formacion .ao-services-grid.ao-count-3,
 body.page-template-landing-formacion .ao-services-grid.ao-count-4,
 body.page-template-landing-formacion .ao-services-grid.ao-count-2{grid-template-columns:minmax(0,1fr)!important;gap:17px!important}
 body.page-template-landing-formacion .ao-card-main{padding:28px 24px}
 body.page-template-landing-formacion .ao-card-foot{padding:22px 24px 26px!important;gap:20px!important}
 body.page-template-landing-formacion .ao-interlude{padding-block:67px}
 body.page-template-landing-formacion .ao-quote-card{padding:28px;transform:none}
 body.page-template-landing-formacion .ao-faq-list details{padding:17px 14px;margin-bottom:9px}
 body.page-template-landing-formacion .ao-faq-list summary{font-size:15px;line-height:1.5}
 body.page-template-landing-formacion .ao-form-section{padding-block:67px}
 body.page-template-landing-formacion .ao-form-shell{padding:25px 19px;border-radius:17px}
 body.page-template-landing-formacion .ao-form-aside h2{font-size:35px}
 body.page-template-landing-formacion .ao-cf7-choices .wpcf7-form-control.wpcf7-checkbox,
 body.page-template-landing-formacion .ao-cf7-choices .wpcf7-form-control.wpcf7-checkbox:has(>.wpcf7-list-item:nth-child(3):last-child),
 body.page-template-landing-formacion .ao-cf7-choices .wpcf7-form-control.wpcf7-checkbox:has(>.wpcf7-list-item:nth-child(4):last-child){grid-template-columns:minmax(0,1fr)!important}
 body.page-template-landing-formacion .ao-form-points li{padding:14px 13px 14px 36px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.page-template-landing-formacion .ao-service-card{transition:none}}
/* Dark itinerary board must retain white type after switching the hero to a light palette. */
body.page-template-landing-formacion .ao-hero-visual .ao-visual-title{color:#fff!important}
body.page-template-landing-formacion .ao-cf7-form>p{margin:0!important}
body.page-template-landing-formacion .ao-cf7-form p:empty{display:none}
