@import url("tokens.css?v=2");
/* Hallmark · pre-emit critique: P5 H5 E5 S5 R5 V5
 * genre: corporate editorial · tone: claro y operativo · anchor: Campus navy
 * macrostructure: Solid split hero + Vertical Orbit · theme: Campus Activa · enrichment: CMS-driven orbital carousel
 * contrast: pass (40–41) · nav: preserved · footer: preserved · slop: pass (42–45)
 * honest: pass (46) · chrome: pass (47) · tokens: scoped pass (48) · responsive: pass (49–57) · icons: pass (30)
 */
:root{--navy:#102746;--navy-2:#183a63;--blue:#1979c9;--blue-dark:#0f5f9f;--sky:#eaf4fb;--ink:#172333;--muted:#5f6d7b;--line:#dce4ea;--paper:#fbfcfd;--white:#fff;--warm:#f5f1e9;--success:#177245;--warning:#9a5b08;--danger:#b42318;--overlay:rgba(16,39,70,.58);--radius:18px;--shadow:0 20px 60px rgba(16,39,70,.12);--container:1180px;--site-header-height:112px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--site-header-height) + 12px);overflow-x:clip}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}body.has-site-header,body:has(.site-header){padding-top:var(--site-header-height)}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit}button,input,textarea,select{font:inherit}.container{width:min(var(--container),calc(100% - 48px));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-60px;z-index:999;background:var(--white);padding:10px 16px;border-radius:8px}.skip-link:focus{top:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:relative;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(16,39,70,.08)}.utility-bar{background:var(--navy);color:rgba(255,255,255,.78);font-size:12px;letter-spacing:.02em}.utility-inner{height:34px;display:flex;align-items:center;justify-content:space-between}.utility-inner a{color:#fff;text-decoration:none}.main-nav{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;text-transform:uppercase;letter-spacing:.09em;font-size:14px;color:var(--navy)}.brand img{width:45px;height:45px;object-fit:contain}.brand strong{font-weight:800}.nav-links{display:flex;align-items:center;gap:28px}.nav-links a{text-decoration:none;font-size:14px;font-weight:650;color:#344459}.nav-links a:hover,.nav-links a:focus-visible{color:var(--blue)}.nav-links .nav-campus{background:var(--navy);color:#fff;padding:11px 17px;border-radius:100px}.nav-links .nav-campus:hover{background:var(--blue);color:#fff}.menu-toggle{display:none;border:0;background:transparent;width:44px;height:44px;padding:9px;cursor:pointer}.menu-toggle>span:not(.sr-only){display:block;height:2px;background:var(--navy);margin:6px 0;transition:.2s}
.hero{min-height:670px;position:relative;overflow:hidden;background:var(--warm)}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,245,240,.98) 0%,rgba(247,245,240,.93) 39%,rgba(247,245,240,.18) 62%,rgba(247,245,240,.02) 100%),url("assets/hero-student.webp") center/cover no-repeat}.hero-inner{min-height:670px;display:flex;align-items:center;position:relative}.hero-copy{max-width:610px;padding:70px 0}.eyebrow{margin:0 0 18px;color:var(--blue-dark);font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.hero h1{font-size:clamp(45px,6vw,78px);line-height:1.01;letter-spacing:-.055em;max-width:720px;margin:0 0 26px;color:var(--navy);font-weight:760}.hero-lead{font-size:20px;line-height:1.65;color:#435265;max-width:570px;margin:0 0 34px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 23px;border:1px solid transparent;border-radius:10px;font-weight:750;font-size:14px;text-decoration:none;cursor:pointer;transition:transform .2s,background .2s,border .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:var(--blue-dark)}.button-secondary{background:rgba(255,255,255,.6);border-color:rgba(16,39,70,.22);color:var(--navy)}.trust-list{display:flex;list-style:none;padding:0;margin:35px 0 0;gap:22px;color:#4a5969;font-size:13px;font-weight:650}.trust-list li:before{content:"✓";color:var(--blue);margin-right:7px;font-weight:900}
.proof-strip{background:var(--navy);color:#fff}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.22)}.proof-grid>div{padding:29px 30px;border-left:1px solid rgba(255,255,255,.12)}.proof-grid>div:last-child{border-right:1px solid rgba(255,255,255,.12)}.proof-grid strong,.proof-grid span{display:block}.proof-grid strong{font-size:18px}.proof-grid span{font-size:12px;color:rgba(255,255,255,.62)}
.section{padding:110px 0}.section-heading{display:grid;grid-template-columns:1fr 420px;gap:80px;align-items:end;margin-bottom:48px}.section-heading h2,.split-copy h2,.business-copy h2,.contact-intro h2{font-size:clamp(34px,4vw,54px);line-height:1.08;letter-spacing:-.04em;color:var(--navy);margin:0}.section-heading>p{color:var(--muted);font-size:16px;margin:0}.section-heading.centered{display:block;text-align:center}.courses-section{background:#fff}.course-filters{display:flex;gap:8px;margin-bottom:26px}.filter-button{border:1px solid var(--line);background:#fff;color:#536171;padding:9px 16px;border-radius:100px;cursor:pointer;font-size:13px;font-weight:700}.filter-button:hover,.filter-button.is-active{background:var(--navy);border-color:var(--navy);color:#fff}.course-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.course-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:34px;background:var(--paper);min-height:360px;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s,border-color .25s}.course-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}.course-card[hidden]{display:none}.course-number{position:absolute;right:26px;top:20px;font-size:54px;line-height:1;color:#e2e9ef;font-weight:800;letter-spacing:-.08em}.course-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--blue-dark);margin:0 0 30px}.course-card h3{font-size:27px;line-height:1.15;color:var(--navy);max-width:390px;margin:0 0 16px;letter-spacing:-.025em}.course-card>p:not(.course-kicker){color:var(--muted);margin:0 0 25px}.course-card ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:auto 0 22px}.course-card li{font-size:11px;font-weight:750;background:#eaf1f6;color:#43566a;padding:6px 10px;border-radius:100px}.text-link{width:max-content;border:0;background:transparent;padding:0;color:var(--navy);font-weight:800;cursor:pointer}.text-link span{color:var(--blue);margin-left:6px}.text-link:hover{color:var(--blue)}
.method-section{background:var(--sky)}.split-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:100px;align-items:center}.large-copy{font-size:18px;color:var(--muted);max-width:650px}.steps{margin-top:38px;display:grid;gap:3px}.steps>div{display:grid;grid-template-columns:46px 1fr;gap:16px;padding:18px 0;border-top:1px solid rgba(16,39,70,.14)}.steps span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--blue);font-size:12px;font-weight:850}.steps p{margin:0;color:var(--muted)}.steps strong{display:block;color:var(--navy);font-size:16px}.quote-card{background:var(--navy);color:#fff;padding:44px;border-radius:var(--radius);box-shadow:var(--shadow)}.quote-card:before{content:"“";display:block;color:#53a8e7;font-family:Georgia,serif;font-size:76px;line-height:.7}.quote-card p{font-family:Georgia,serif;font-size:27px;line-height:1.35;margin:25px 0}.quote-card span{display:block;border-top:1px solid rgba(255,255,255,.16);padding-top:20px;color:rgba(255,255,255,.62);font-size:12px}
.business-section{background:var(--navy);color:#fff}.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.business-image{margin:0;position:relative}.business-image:after{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);z-index:0}.business-image img{position:relative;z-index:1;border-radius:var(--radius);aspect-ratio:1.2;object-fit:cover}.business-copy h2{color:#fff}.business-copy>p:not(.eyebrow){color:rgba(255,255,255,.7);font-size:17px}.business-copy .eyebrow{color:#70b5e7}.check-list{list-style:none;padding:0;margin:28px 0}.check-list li{padding:10px 0 10px 28px;position:relative;border-bottom:1px solid rgba(255,255,255,.11)}.check-list li:before{content:"✓";position:absolute;left:0;color:#70b5e7;font-weight:900}.button-light{background:#fff;color:var(--navy)}
.faq-section{background:var(--paper)}.narrow{max-width:900px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;justify-content:space-between;align-items:center;padding:24px 4px;cursor:pointer;color:var(--navy);font-weight:750;list-style:none}summary::-webkit-details-marker{display:none}summary span{font-size:24px;color:var(--blue);transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{margin:-6px 0 24px;max-width:720px;color:var(--muted)}
.contact-section{background:#fff}.contact-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:90px}.contact-intro>p:not(.eyebrow){font-size:17px;color:var(--muted)}.contact-direct{margin-top:36px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.contact-direct a{color:var(--navy);font-weight:750;text-decoration-thickness:1px;text-underline-offset:4px}.contact-form{background:var(--paper);border:1px solid var(--line);padding:35px;border-radius:var(--radius)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:17px}.field label{display:block;font-size:12px;font-weight:800;color:#3c4b5d;margin-bottom:7px}.field label span{font-weight:500;color:var(--muted)}input,textarea,select{width:100%;border:1px solid #cbd5dd;border-radius:9px;padding:12px 13px;background:#fff;color:var(--ink);outline:none}textarea{resize:vertical}input:focus,textarea:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(25,121,201,.12)}.field.has-error input,.field.has-error textarea{border-color:#ba2e2e}.field-error{display:block;min-height:16px;color:#a32626;font-size:11px;margin-top:3px}.privacy-check{display:flex;gap:10px;align-items:flex-start;font-size:12px;color:var(--muted)}.privacy-check input{width:16px;height:16px;margin-top:2px}.privacy-check a{color:var(--blue-dark)}.privacy-error{display:block;margin:3px 0 14px}.honeypot{position:absolute;left:-9999px}.submit-button{min-width:170px}.submit-button:disabled{opacity:.65;cursor:wait;transform:none}.form-status{display:inline;margin-left:16px;font-size:13px}.form-status.is-error{color:#a32626}.form-status.is-success{color:#187340}
.site-footer{background:#0b1d33;color:rgba(255,255,255,.64);padding-top:70px}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr 1fr .7fr;gap:55px;padding-bottom:55px}.footer-grid>div:first-child p{max-width:300px}.brand-footer{color:#fff;margin-bottom:18px}.footer-grid h2{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#fff;margin:0 0 18px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-grid a:not(.brand){font-size:13px;text-decoration:none}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);min-height:64px;display:flex;align-items:center;justify-content:space-between;font-size:11px}.reveal{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:900px){.utility-bar{display:none}.main-nav{height:70px}.menu-toggle{display:block}.nav-links{position:fixed;top:70px;left:0;right:0;bottom:0;background:#fff;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:25px 24px;transform:translateX(100%);transition:transform .25s}.nav-links.is-open{transform:none}.nav-links a{padding:16px 4px;border-bottom:1px solid var(--line);font-size:17px}.nav-links .nav-campus{margin-top:20px;text-align:center;border:0}.hero,.hero-inner{min-height:720px}.hero-photo{background:linear-gradient(180deg,rgba(247,245,240,.99) 0%,rgba(247,245,240,.89) 55%,rgba(247,245,240,.14) 100%),url("assets/hero-student.webp") 65% center/cover no-repeat}.hero-copy{align-self:flex-start;padding-top:90px;max-width:620px}.hero h1{font-size:56px;max-width:570px}.hero-lead{max-width:520px}.section-heading{grid-template-columns:1fr;gap:20px}.split-layout,.business-grid,.contact-grid{grid-template-columns:1fr}.split-layout{gap:55px}.business-grid{gap:58px}.business-image{max-width:700px}.contact-grid{gap:45px}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2}.proof-grid{grid-template-columns:repeat(2,1fr)}.proof-grid>div:nth-child(3){border-top:1px solid rgba(255,255,255,.12)}}
@media(max-width:620px){.container{width:min(100% - 32px,var(--container))}.brand img{width:38px;height:38px}.hero,.hero-inner{min-height:760px}.hero-photo{background:linear-gradient(180deg,rgba(247,245,240,1) 0%,rgba(247,245,240,.94) 60%,rgba(247,245,240,.12) 100%),url("assets/hero-student.webp") 67% bottom/auto 56% no-repeat}.hero-copy{padding-top:62px}.hero h1{font-size:45px}.hero-lead{font-size:17px}.hero-actions{flex-direction:column;align-items:stretch}.trust-list{gap:12px;justify-content:space-between;font-size:11px}.proof-grid{grid-template-columns:1fr 1fr}.proof-grid>div{padding:21px 16px}.proof-grid strong{font-size:15px}.section{padding:78px 0}.section-heading{margin-bottom:34px}.section-heading h2,.split-copy h2,.business-copy h2,.contact-intro h2{font-size:37px}.course-grid{grid-template-columns:1fr}.course-card{padding:27px;min-height:345px}.course-number{font-size:46px}.course-filters{overflow:auto;padding-bottom:5px}.filter-button{white-space:nowrap}.split-layout{gap:42px}.quote-card{padding:32px}.quote-card p{font-size:23px}.business-grid{gap:45px}.business-image:after{display:none}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:23px}.form-status{display:block;margin:12px 0 0}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column;justify-content:center;gap:4px}.reveal{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.reveal{opacity:1;transform:none}}
.hero-photo{background-image:linear-gradient(90deg,rgba(247,245,240,.98) 0%,rgba(247,245,240,.93) 39%,rgba(247,245,240,.18) 62%,rgba(247,245,240,.02) 100%),url("assets/virtual-classroom.webp")}
.business-image img{aspect-ratio:1.5;object-position:center}
@media(max-width:900px){.hero-photo{background-image:linear-gradient(180deg,rgba(247,245,240,.99) 0%,rgba(247,245,240,.89) 55%,rgba(247,245,240,.14) 100%),url("assets/virtual-classroom.webp")}}
@media(max-width:620px){.hero-photo{background-image:linear-gradient(180deg,rgba(247,245,240,1) 0%,rgba(247,245,240,.94) 60%,rgba(247,245,240,.12) 100%),url("assets/virtual-classroom.webp")}}
.page-hero{padding:90px 0 78px;background:var(--navy);color:#fff}.page-hero .eyebrow{color:#72b7ea}.page-hero h1{font-size:clamp(44px,6vw,72px);line-height:1.02;letter-spacing:-.05em;max-width:850px;margin:0 0 22px}.page-hero p:last-child{font-size:19px;color:rgba(255,255,255,.7);max-width:700px;margin:0}.page-tabs{background:#fff;border-bottom:1px solid var(--line)}.page-tabs-inner{min-height:64px;display:flex;align-items:center;gap:28px;overflow:auto}.page-tabs a{white-space:nowrap;text-decoration:none;color:var(--muted);font-size:13px;font-weight:750;padding:21px 0;border-bottom:2px solid transparent}.page-tabs a:hover,.page-tabs a.is-active{color:var(--blue-dark);border-color:var(--blue)}.catalog-intro{max-width:760px;margin-bottom:42px}.catalog-intro h2{font-size:clamp(34px,4vw,50px);line-height:1.08;letter-spacing:-.04em;color:var(--navy);margin:0 0 16px}.catalog-intro p{color:var(--muted);font-size:17px}.course-card .button{width:max-content;margin-top:auto}.course-card .button+.text-link{margin-top:15px}.info-band{padding:70px 0;background:var(--sky)}.info-band-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.info-band h2{font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.04em;color:var(--navy);margin:0 0 16px}.info-band p{color:var(--muted)}.feature-panel{background:#fff;border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}.feature-panel ul{list-style:none;padding:0;margin:0}.feature-panel li{padding:13px 0 13px 28px;border-bottom:1px solid var(--line);position:relative}.feature-panel li:last-child{border-bottom:0}.feature-panel li:before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:900}.page-cta{padding:75px 0;background:var(--navy);color:#fff;text-align:center}.page-cta h2{font-size:clamp(32px,4vw,48px);line-height:1.1;margin:0 0 14px}.page-cta p{color:rgba(255,255,255,.68);margin:0 auto 28px;max-width:650px}.page-footer{padding-top:48px}.university-note{display:inline-flex;align-items:center;gap:8px;background:#f1eee7;color:#6a5430;padding:7px 12px;border-radius:100px;font-size:11px;font-weight:800;margin-bottom:18px}
@media(max-width:900px){.nav-links{height:calc(100vh - var(--site-header-height));height:calc(100dvh - var(--site-header-height));overflow-y:auto;overscroll-behavior:contain}.main-nav .nav-links{gap:0}.info-band-grid{grid-template-columns:1fr;gap:40px}}
@media(max-width:620px){.page-hero{padding:65px 0 56px}.page-hero h1{font-size:43px}.page-tabs-inner{gap:22px}.course-card .button{width:100%}.info-band{padding:58px 0}}
.site-header{position:fixed!important;inset:0 0 auto!important;z-index:190;width:100%;isolation:isolate;box-shadow:0 4px 16px rgba(16,39,70,.08);backdrop-filter:blur(14px);transition:box-shadow .2s ease,background-color .2s ease}
.site-header.is-scrolled{background:rgba(255,255,255,.985);box-shadow:0 10px 32px rgba(16,39,70,.16)}
@media(min-width:901px){
  .site-header.is-scrolled{background:transparent;border-bottom:0;box-shadow:none;pointer-events:none}
  .site-header.is-scrolled .utility-bar{display:none}
  .site-header.is-scrolled .main-nav{height:66px;margin-top:12px;padding-inline:18px;border:1px solid rgba(16,39,70,.1);border-radius:18px;background:rgba(255,255,255,.97);box-shadow:0 14px 38px rgba(16,39,70,.18);backdrop-filter:blur(16px);pointer-events:auto}
  .site-header.is-scrolled .brand img{width:40px;height:40px}
}
@media(max-width:900px){:root{--site-header-height:70px}}
.nav-dropdown{position:relative}.dropdown-toggle{border:0;background:transparent;color:#344459;font-size:14px;font-weight:650;padding:12px 2px;cursor:pointer}.dropdown-toggle span{display:inline-block;margin-left:4px;color:var(--blue);transition:transform .2s}.nav-dropdown:hover .dropdown-toggle,.nav-dropdown:focus-within .dropdown-toggle,.nav-dropdown.is-open .dropdown-toggle{color:var(--blue-dark)}.nav-dropdown:hover .dropdown-toggle span,.nav-dropdown:focus-within .dropdown-toggle span,.nav-dropdown.is-open .dropdown-toggle span{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:calc(100% + 12px);left:50%;min-width:210px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 55px rgba(16,39,70,.18);opacity:0;visibility:hidden;transform:translate(-50%,-8px);transition:opacity .18s,transform .18s,visibility .18s}.dropdown-menu:before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu,.nav-dropdown.is-open .dropdown-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}.dropdown-menu a{display:block!important;padding:11px 13px!important;border:0!important;border-radius:8px;font-size:13px!important}.dropdown-menu a:hover,.dropdown-menu a[aria-current="page"]{background:var(--sky);color:var(--blue-dark)!important}
@media(max-width:900px){.nav-dropdown{width:100%;border-bottom:1px solid var(--line)}.dropdown-toggle{width:100%;padding:16px 4px;text-align:left;font-size:17px;display:flex;justify-content:space-between;align-items:center}.dropdown-menu{position:static;inset:auto;display:none;width:100%;min-width:0;padding:0 0 12px;border:0;border-radius:0;box-shadow:none;opacity:1;visibility:visible;transform:none!important;transition:none}.nav-dropdown.is-open .dropdown-menu{display:block;opacity:1;visibility:visible}.nav-dropdown:not(.is-open) .dropdown-menu{display:none;opacity:0;visibility:hidden}.nav-dropdown:not(.is-open) .dropdown-toggle span{transform:none}.dropdown-menu a{padding:12px 16px!important;background:var(--paper);margin:3px 0;border-radius:8px!important;font-size:15px!important}}
.catalog-count{color:var(--muted);font-size:13px;font-weight:750;margin:0 0 14px}.catalog-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.catalog-item{display:grid;grid-template-columns:42px 1fr auto;gap:15px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 20px;transition:border-color .2s,box-shadow .2s}.catalog-item:hover{border-color:#b7d4e9;box-shadow:0 10px 30px rgba(16,39,70,.07)}.catalog-item-number{color:#a8b6c4;font-weight:850;font-size:13px}.catalog-item-meta{margin:0 0 3px;color:var(--blue-dark);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.catalog-item h3{margin:0;color:var(--navy);font-size:16px;line-height:1.3}.catalog-item-link{color:var(--blue-dark);font-size:12px;font-weight:800;text-underline-offset:3px}.catalog-item[hidden]{display:none}.coming-soon{padding:100px 0;background:#fff;text-align:center}.coming-soon-card{max-width:780px;margin:auto;padding:60px;border:1px solid var(--line);border-radius:24px;background:var(--paper)}.coming-soon-icon{width:64px;height:64px;display:grid;place-items:center;margin:0 auto 24px;border-radius:50%;background:var(--sky);color:var(--blue);font-size:26px}.coming-soon h2{font-size:clamp(34px,5vw,52px);line-height:1.08;letter-spacing:-.04em;color:var(--navy);margin:0 0 18px}.coming-soon p{max-width:600px;margin:0 auto 28px;color:var(--muted);font-size:17px}
@media(max-width:900px){.catalog-list{grid-template-columns:1fr}}
@media(max-width:620px){.catalog-item{grid-template-columns:32px 1fr;padding:16px}.catalog-item-link{grid-column:2}.coming-soon{padding:70px 0}.coming-soon-card{padding:40px 24px}}
.catalog-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:start}.catalog-item{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden;border-radius:16px;height:100%}.catalog-item-image{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--paper)}.catalog-item-body{display:flex;flex:1;flex-direction:column;padding:18px}.catalog-item h3{font-size:17px;min-height:66px}.catalog-price{margin:14px 0;color:var(--muted);font-size:13px}.catalog-price strong{color:var(--navy)}.catalog-item details{margin:0 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.catalog-item summary{padding:12px 0;color:var(--blue-dark);font-size:12px;font-weight:800;cursor:pointer}.catalog-details{padding:0 0 14px}.catalog-details h4{margin:10px 0 5px;color:var(--navy);font-size:12px}.catalog-details p,.catalog-details li{color:var(--muted);font-size:12px;line-height:1.55}.catalog-details p{margin:0}.catalog-details ul{margin:0;padding-left:17px}.catalog-consult{width:100%;margin-top:auto;padding:11px 14px;font-size:12px;text-align:center}.catalog-item[hidden]{display:none}
@media(max-width:1180px){.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.catalog-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.catalog-list{grid-template-columns:1fr}.catalog-item h3{min-height:0}}
html,body{overflow-x:clip}
.auth-page,.private-page{min-height:100vh;background:linear-gradient(135deg,#f7f5f0,#eaf4fb)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:110px 24px 50px}.auth-brand{position:absolute;top:32px;left:clamp(24px,5vw,70px)}.auth-card{width:min(100%,470px);padding:42px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.auth-card h1,.private-main h1{margin:0 0 12px;color:var(--navy);font-size:clamp(36px,5vw,56px);line-height:1.05;letter-spacing:-.04em}.auth-card>p:not(.eyebrow){margin:0 0 28px;color:var(--muted)}.auth-submit{width:100%;border:0;cursor:pointer}.auth-submit:disabled{opacity:.65}.auth-card .form-status{display:block;min-height:22px;margin:14px 0 0;text-align:center}.auth-back{display:block;margin-top:24px;color:var(--blue-dark);font-size:13px;font-weight:750;text-align:center}.private-header{display:flex;align-items:center;justify-content:space-between;padding:22px clamp(24px,6vw,90px);background:#fff;border-bottom:1px solid var(--line)}.private-main{width:min(1040px,calc(100% - 48px));margin:90px auto}.private-main>p:not(.eyebrow){color:var(--muted);font-size:18px}.private-panel{margin-top:48px;padding:38px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.private-panel h2{margin-top:0;color:var(--navy)}.private-panel p{color:var(--muted);margin-bottom:26px}@media(max-width:580px){.auth-card{padding:30px 22px}.private-header{gap:16px}.private-header .brand span{display:none}.private-main{margin-top:60px}.private-panel{padding:28px 22px}}
.auth-recovery-link{display:block;width:max-content;max-width:100%;margin:7px 0 0 auto;color:var(--blue-dark);font-size:12px;font-weight:750;text-decoration-thickness:1px;text-underline-offset:3px;white-space:nowrap}.auth-recovery-link:hover{color:var(--navy)}#recovery-request>p,#password-update>p{margin:0 0 28px;color:var(--muted)}
.catalog-image-link{display:block;overflow:hidden}.catalog-image-link img{transition:transform .35s}.catalog-item:hover .catalog-image-link img{transform:scale(1.035)}.catalog-item h3 a{text-decoration:none;color:inherit}.catalog-item h3 a:hover{color:var(--blue-dark)}
.course-breadcrumb{display:flex;gap:9px;align-items:center;padding-block:22px;color:var(--muted);font-size:12px}.course-breadcrumb a{color:var(--blue-dark);font-weight:750}.course-detail-hero{padding:42px 0 80px;background:linear-gradient(135deg,#f7fafc,#eef5fa)}.course-detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.course-detail-copy h1{max-width:760px;margin:0 0 22px;color:var(--navy);font-size:clamp(38px,5vw,66px);line-height:1.04;letter-spacing:-.045em}.course-detail-copy>p:not(.eyebrow){max-width:680px;color:var(--muted);font-size:18px}.course-detail-grid>img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:22px;box-shadow:var(--shadow)}.course-detail-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.course-detail-tags span{padding:7px 11px;border-radius:100px;background:#fff;border:1px solid var(--line);color:#43566a;font-size:11px;font-weight:750}.course-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:80px;align-items:start}.course-content-block+ .course-content-block{margin-top:78px}.course-content-block h2,.course-enquiry h2{margin:0 0 22px;color:var(--navy);font-size:clamp(30px,4vw,44px);line-height:1.1;letter-spacing:-.035em}.course-content-block>p:not(.eyebrow){color:var(--muted);font-size:17px}.course-objectives{display:grid;gap:12px;margin:28px 0 0;padding:0;list-style:none}.course-objectives li{position:relative;padding:17px 20px 17px 50px;background:var(--paper);border:1px solid var(--line);border-radius:12px}.course-objectives li:before{content:'✓';position:absolute;left:19px;color:var(--blue);font-weight:900}.course-modules{display:grid;gap:10px;margin:28px 0 0;padding:0;list-style:none}.course-modules li{display:grid;grid-template-columns:48px 1fr;gap:16px;padding:20px;border:1px solid var(--line);border-radius:13px}.course-modules li>span{color:#a8b6c4;font-weight:850}.course-modules strong{color:var(--navy)}.course-modules p{margin:3px 0 0;color:var(--muted);font-size:13px}.course-enquiry{position:sticky;top:120px;padding:30px;background:var(--navy);border-radius:18px;color:#fff;box-shadow:var(--shadow)}.course-enquiry .eyebrow{color:#8dccf1!important}.course-enquiry h2{color:#fff;font-size:28px}.course-enquiry dl{margin:26px 0}.course-enquiry dl div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.14)}.course-enquiry dt{color:rgba(255,255,255,.68);font-size:12px}.course-enquiry dd{margin:0;font-size:13px;font-weight:750}.course-enquiry .button{width:100%;text-align:center;background:#fff;color:var(--navy)}.course-back{display:block;margin-top:17px;text-align:center;color:rgba(255,255,255,.75);font-size:12px}
@media(max-width:900px){.course-detail-grid,.course-detail-layout{grid-template-columns:1fr}.course-detail-grid{gap:40px}.course-detail-layout{gap:50px}.course-enquiry{position:static}.course-detail-hero{padding-bottom:60px}}
@media(max-width:580px){.course-detail-copy h1{font-size:38px}.course-detail-copy>p:not(.eyebrow){font-size:16px}.course-detail-hero{padding-top:20px}.course-modules li{grid-template-columns:34px 1fr;padding:17px}.course-enquiry{padding:24px}}
.catalog-image-link{width:100%;aspect-ratio:1/1}.catalog-image-link .catalog-item-image{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}

/* ===== ficha de curso ===== */
.course-detail-tags{list-style:none;padding:0}
.course-detail-tags li{padding:7px 12px;border-radius:100px;background:#fff;border:1px solid var(--line);color:#43566a;font-size:11px;font-weight:750}
.course-pitch{font-size:18px;line-height:1.65;color:#435265;margin:0}
.course-detail-media{position:relative;align-self:start;margin:0;overflow:hidden;border-radius:9px;background-color:#e7eff5;background-image:var(--course-image);background-position:center;background-size:cover;background-repeat:no-repeat;box-shadow:var(--shadow)}
.course-detail-media:before{content:"";position:absolute;z-index:0;inset:0;background:rgba(238,245,250,.18);pointer-events:none}
.course-detail-media:after{content:"";position:absolute;z-index:2;inset:0;border:2px solid rgba(16,39,70,.18);border-radius:9px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.5);pointer-events:none}
.course-detail-media img{position:relative;z-index:1;display:block;width:100%;height:100%;min-height:320px;object-fit:contain;object-position:center;border-radius:0}
.course-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.course-hero-actions .course-contract-action{border-color:var(--navy);border-radius:10px;background:var(--navy);color:#fff;padding-inline:22px}
.course-hero-actions .course-contract-action:hover{border-color:var(--blue);background:var(--blue);color:#fff}
/* Hallmark · component: course information prompt · genre: corporate editorial · theme: Campus Activa
 * states: default · hover · focus · active · disabled · loading · error · success
 * contrast: pass (46–50) · pre-emit critique: P5 H5 E5 S5 R5 V4
 */
.course-info-request{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-lg);margin-top:var(--space-lg);padding:var(--space-lg);border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.course-info-request.is-fundae{border-color:var(--blue);background:var(--sky)}.course-info-request h2{margin:2px 0 4px;color:var(--navy);font-size:19px;line-height:1.2;letter-spacing:-.015em}.course-info-request p{margin:0!important;color:var(--muted)!important;font-size:13px!important;line-height:1.5}.course-info-request .course-info-kicker{color:var(--blue-dark)!important;font-size:11px!important;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.course-info-button{min-height:46px;padding-inline:18px;border-color:var(--blue);background:var(--white);color:var(--blue-dark);white-space:nowrap}.course-info-button:hover{background:var(--blue);color:var(--white)}.course-info-button:active{transform:translateY(1px)}.course-info-button[aria-disabled="true"]{pointer-events:none;cursor:not-allowed;opacity:.55}.course-info-button[data-state="loading"]{cursor:wait;opacity:.7}.course-info-button[data-state="error"]{border-color:var(--danger);color:var(--danger)}.course-info-button[data-state="success"]{border-color:var(--success);color:var(--success)}
.course-modules-intro{margin:26px 0 0;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.course-enquiry-note{margin:14px 0 0;font-size:12px;line-height:1.5;color:rgba(255,255,255,.72)}
.course-related{background:var(--warm)}
.course-related .catalog-list{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
@media(max-width:900px){.course-related .catalog-list{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.course-related .catalog-list{grid-template-columns:1fr}.course-hero-actions .button{width:100%}.course-info-request{grid-template-columns:1fr}.course-info-button{width:100%}}
@media(max-width:900px){.course-detail-media{height:auto!important;margin-top:0!important}.course-detail-media img{height:auto;min-height:0;aspect-ratio:4/3;object-fit:contain}}

/* ===== capa de movimiento ===== */
:root{--ease-out:cubic-bezier(.22,.85,.3,1)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:6px}

.scroll-progress{position:fixed;top:0;left:0;z-index:200;height:3px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--blue),#5cb8f7);pointer-events:none}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out);transition-delay:calc(var(--i,0)*90ms)}
.reveal.is-visible{opacity:1;transform:none}

/* el titular entra palabra a palabra desde debajo de su propia linea */
.hero h1 .word{display:inline-block;overflow:hidden;vertical-align:bottom;padding:.16em .1em .14em;margin:-.16em -.1em -.14em}
.hero h1 .word>span{display:inline-block;transform:translateY(115%);transition:transform .95s var(--ease-out);transition-delay:calc(var(--i,0)*60ms)}
.is-ready .hero h1 .word>span{transform:none}
.hero-copy>*:not(h1){opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out);transition-delay:calc(var(--i,0)*110ms + 300ms)}
.is-ready .hero-copy>*:not(h1){opacity:1;transform:none}
.hero-photo{transform:translate3d(0,var(--parallax,0px),0) scale(1.08);will-change:transform}

.proof-grid>div{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);transition-delay:calc(var(--i,0)*110ms)}
.proof-strip.is-visible .proof-grid>div{opacity:1;transform:none}

.button{position:relative;overflow:hidden}
.button>*{position:relative;z-index:1}
.button-primary:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 25%,rgba(255,255,255,.3),transparent 75%);transform:translateX(-130%)}
.button-primary:hover:after{transform:translateX(130%);transition:transform .75s var(--ease-out)}

.catalog-item{transition:transform .4s var(--ease-out),box-shadow .4s var(--ease-out)}
.catalog-item:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.catalog-image-link{display:block;overflow:hidden}
.catalog-item-image{transition:transform .65s var(--ease-out)}
.catalog-item:hover .catalog-item-image{transform:scale(1.07)}
.filter-button{transition:background .25s,color .25s,border-color .25s,transform .25s}
.filter-button:hover{transform:translateY(-2px)}

.faq-list summary{cursor:pointer;transition:color .25s}
.faq-list summary:hover{color:var(--blue)}
.faq-list summary span{display:inline-block;transition:transform .3s var(--ease-out)}
.faq-list details p{animation:fade-in .45s var(--ease-out)}
@keyframes fade-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

.to-top{position:fixed;right:20px;bottom:20px;z-index:150;width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);font-size:17px;cursor:pointer;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .3s var(--ease-out),transform .3s var(--ease-out)}
.to-top.is-shown{opacity:1;transform:none;pointer-events:auto}
.to-top:hover{background:var(--navy);color:#fff}

@media(prefers-reduced-motion:reduce){
 .scroll-progress,.to-top{display:none}
 .reveal,.hero-copy>*:not(h1),.hero h1 .word>span,.proof-grid>div{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}
 .hero-photo{transform:none!important}
}

/* ===== actualidad editable ===== */
.updates-section{background:var(--warm);overflow:hidden}
.news-updates-section{border-top:1px solid var(--line);background:var(--white)}
.updates-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:36px}
.updates-heading>div:first-child{min-width:0;max-width:680px}
.updates-heading h2{margin-bottom:0;overflow-wrap:anywhere;min-width:0}
.updates-controls{display:flex;align-items:center;gap:12px;flex:none}
.updates-arrow{display:grid;width:48px;height:48px;padding:0;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--navy);font-size:20px;line-height:1;cursor:pointer;transition:transform var(--dur-micro) var(--ease-out),background-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out)}
.updates-arrow:hover{background:var(--navy);color:var(--white)}
.updates-arrow:active{transform:translateY(2px)}
.updates-arrow:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.updates-arrow:disabled{opacity:.42;cursor:not-allowed;background:var(--white);color:var(--muted);transform:none}
.updates-count{min-width:54px;margin:0;color:var(--muted);font-size:13px;text-align:center}
.updates-count strong{color:var(--navy);font-size:18px}
.updates-carousel{overflow:visible}
.updates-track{display:flex;width:max-content;gap:20px;will-change:transform}
.update-card{display:flex;flex:0 0 clamp(300px,30vw,380px);min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:0 14px 38px rgba(16,39,70,.07);transition:transform var(--dur-short) var(--ease-out),box-shadow var(--dur-short) var(--ease-out)}
.update-card.is-current{box-shadow:0 20px 48px rgba(16,39,70,.14)}
.update-card-media{position:relative;aspect-ratio:5/3;overflow:hidden;background:var(--navy)}
.update-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .62s var(--ease-out)}
.update-card-placeholder{display:flex;width:100%;height:100%;align-items:flex-start;justify-content:flex-end;flex-direction:column;padding:28px;background:var(--navy);color:var(--white)}
.update-card-placeholder span{font-size:56px;font-weight:900;letter-spacing:-.08em;line-height:.85}
.update-card-placeholder small{margin-top:8px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.update-featured{position:absolute;top:16px;left:16px;padding:7px 10px;border-radius:999px;background:var(--white);color:var(--blue-dark);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.update-card-body{display:flex;flex:1;flex-direction:column;padding:28px}
.update-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}
.update-meta span{color:var(--blue-dark)}
.update-meta time{text-transform:none;letter-spacing:0;text-align:end}
.update-card h3{margin:20px 0 10px;color:var(--navy);font-size:clamp(21px,2vw,27px);line-height:1.12;overflow-wrap:anywhere;min-width:0}
.update-card p{display:-webkit-box;margin:0 0 24px;overflow:hidden;color:var(--muted);-webkit-box-orient:vertical;-webkit-line-clamp:3}
.update-card a{align-self:flex-start;margin-top:auto;color:var(--blue-dark);font-weight:800;text-decoration:none;white-space:nowrap}
.update-card a:hover{text-decoration:underline}
@media(hover:hover) and (pointer:fine){.update-card:hover{transform:translateY(-6px);box-shadow:0 22px 52px rgba(16,39,70,.14)}.update-card:hover .update-card-media img{transform:scale(1.035)}}
@media(max-width:56rem){.update-card{flex-basis:clamp(290px,44vw,400px)}}
@media(max-width:40rem){.updates-heading{align-items:flex-start;flex-direction:column;gap:24px;margin-bottom:28px}.updates-controls{width:100%;justify-content:space-between}.update-card{flex-basis:88vw}.update-card-body{padding:24px}.update-meta{align-items:flex-start;flex-direction:column}.update-meta time{text-align:start}}
@media(prefers-reduced-motion:reduce){.updates-track,.update-card,.update-card-media img{transition:none!important}.update-card:hover,.update-card:hover .update-card-media img{transform:none}}

/* ===== panel de superadministración ===== */
.admin-page{min-height:100dvh;background:var(--paper)}
.admin-topbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px clamp(18px,4vw,52px);border-bottom:1px solid var(--line);background:var(--white)}
.admin-account{display:flex;align-items:center;gap:16px;color:var(--muted);font-size:13px}
.admin-account .button{white-space:nowrap}
.admin-shell{width:min(1440px,100%);min-height:calc(100dvh - 76px);margin-inline:auto;display:grid;grid-template-columns:280px minmax(0,1fr)}
.admin-sidebar{padding:44px 28px;border-inline-end:1px solid var(--line);background:var(--white)}
.admin-sidebar h1{margin:4px 0 8px;color:var(--navy);font-size:28px;line-height:1.1;overflow-wrap:anywhere;min-width:0}
.admin-sidebar>p:not(.eyebrow){margin:0;color:var(--muted);font-size:14px}
.admin-tabs{display:grid;gap:5px;margin:34px 0 24px}
.admin-tabs button{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink);font-weight:750;text-align:start;cursor:pointer;white-space:nowrap}
.admin-tabs button span{min-width:28px;padding:2px 8px;border-radius:100px;background:var(--sky);color:var(--navy);font-size:12px;text-align:center}
.admin-tabs button:hover,.admin-tabs button.is-active{border-color:var(--line);background:var(--paper);color:var(--blue-dark)}
.admin-tabs button:focus-visible,.admin-close:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.admin-new{width:100%;white-space:nowrap}
.admin-workspace{min-width:0;padding:44px clamp(20px,4vw,56px)}
.admin-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:22px}
.admin-heading h2{margin:4px 0 0;color:var(--navy);font-size:clamp(28px,3vw,42px);line-height:1.05;overflow-wrap:anywhere;min-width:0}
.admin-search{width:min(320px,100%);display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}
.admin-search input,.admin-form input,.admin-form textarea,.admin-form select{width:100%;border:1px solid var(--line);border-radius:9px;background:var(--white);color:var(--ink)}
.admin-search input{height:46px;padding:0 13px;text-transform:none;letter-spacing:0}
.admin-search input:focus,.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus{border-color:var(--blue);outline:3px solid var(--sky)}
.admin-notice{min-height:24px;margin:0;color:var(--success);font-weight:750}.admin-notice.is-error{color:var(--danger)}
.admin-list{display:grid;border-top:1px solid var(--line)}
.admin-item{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;padding:24px 4px;border-bottom:1px solid var(--line)}
.admin-item-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.admin-item-meta span{padding:3px 8px;border-radius:100px;background:var(--paper)}
.admin-item-meta .admin-kind{background:var(--sky);color:var(--blue-dark)}
.admin-item-meta .is-published{color:var(--success)}.admin-item-meta .is-draft{color:var(--warning)}.admin-item-meta .is-archived{color:var(--muted)}
.admin-item h3{margin:9px 0 4px;color:var(--navy);font-size:20px;line-height:1.2;overflow-wrap:anywhere;min-width:0}
.admin-item p{max-width:700px;margin:0;color:var(--muted);font-size:14px}
.admin-item-side{display:flex;align-items:center;gap:20px}.admin-item-side time{color:var(--muted);font-size:12px;white-space:nowrap}.admin-item-side .button{white-space:nowrap}
.admin-empty{padding:42px 0;color:var(--muted)}
.admin-dialog{width:min(760px,calc(100% - 28px));max-height:calc(100dvh - 28px);padding:0;border:0;border-radius:var(--radius);background:var(--white);color:var(--ink);box-shadow:var(--shadow)}
.admin-dialog::backdrop{background:var(--overlay)}
.admin-form{display:grid;gap:17px;padding:clamp(22px,4vw,38px)}
.admin-dialog-head{display:flex;align-items:start;justify-content:space-between;gap:20px;padding-bottom:4px}
.admin-dialog-head h2{margin:4px 0 0;color:var(--navy);font-size:28px;line-height:1.1;overflow-wrap:anywhere;min-width:0}
.admin-close{flex:0 0 40px;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--navy);font-size:25px;line-height:1;cursor:pointer}
.admin-form label{display:grid;gap:6px;color:var(--ink);font-size:13px;font-weight:750}
.admin-form input,.admin-form select{height:46px;padding:0 12px}.admin-form textarea{padding:10px 12px;resize:vertical;line-height:1.5}
.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-form .admin-check{display:flex;align-items:center;gap:10px}.admin-check input{width:18px;height:18px;padding:0}.admin-check span{font-weight:650}
.admin-form-actions{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding-top:8px}.admin-form-actions .button{white-space:nowrap}.admin-delete{color:var(--danger)}
@media(max-width:52rem){.admin-shell{grid-template-columns:minmax(0,1fr)}.admin-sidebar{padding:26px 20px;border-inline-end:0;border-bottom:1px solid var(--line)}.admin-tabs{grid-template-columns:repeat(5,minmax(0,1fr));margin:22px 0 16px}.admin-tabs button{justify-content:center}.admin-tabs button span{display:none}.admin-new{width:auto}.admin-workspace{padding-top:30px}}
@media(max-width:40rem){.admin-topbar{align-items:flex-start}.admin-account{align-items:flex-end;flex-direction:column;gap:7px}.admin-account span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-heading{align-items:stretch;flex-direction:column}.admin-search{width:100%}.admin-item{grid-template-columns:minmax(0,1fr)}.admin-item-side{justify-content:space-between}.admin-form-grid{grid-template-columns:minmax(0,1fr)}.admin-form-actions{grid-template-columns:1fr 1fr}.admin-form-actions span{display:none}.admin-form-actions .button{width:100%}}

/* ===== buscador y filtros del catalogo ===== */
.catalog-toolbar{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) auto;gap:12px;margin:0 0 22px}
.search-field{position:relative;display:flex;align-items:center}
.search-icon{position:absolute;left:14px;font-size:19px;color:var(--muted);pointer-events:none}
.search-field input{width:100%;height:50px;padding:0 40px 0 40px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
.search-field input::-webkit-search-cancel-button{display:none}
.search-clear{position:absolute;right:8px;width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--sky);color:var(--navy);font-size:17px;line-height:1;cursor:pointer}
.select-field select{width:100%;height:50px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);cursor:pointer}
.search-field input:focus-visible,.select-field select:focus-visible{border-color:var(--blue)}
.catalog-toolbar .button{height:50px;white-space:nowrap}
.catalog-empty{margin:0 0 20px;padding:18px 20px;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}
.link-button{border:0;background:none;padding:0;color:var(--blue-dark);font-weight:750;text-decoration:underline;cursor:pointer}
@media(max-width:900px){.catalog-toolbar{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}}
@media(max-width:620px){.catalog-toolbar{grid-template-columns:1fr}}

/* ===== asistente "encuentra tu curso" ===== */
.wizard{width:min(640px,calc(100% - 32px));padding:0;border:0;border-radius:20px;box-shadow:var(--shadow);background:#fff;color:var(--ink)}
.wizard::backdrop{background:rgba(16,39,70,.55)}
.wizard-close-form{display:flex;justify-content:flex-end;margin:0}
.wizard-close{margin:14px 14px 0;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:19px;line-height:1;color:var(--navy);cursor:pointer}
.wizard-body{padding:6px 34px 34px}
.wizard-question{margin:0 0 24px;color:var(--navy);font-size:clamp(24px,3.4vw,32px);line-height:1.15;letter-spacing:-.03em}
.wizard-options{display:grid;gap:10px}
.wizard-option{padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);font-weight:650;text-align:left;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}
.wizard-option:hover{border-color:var(--blue);background:var(--sky);transform:translateX(3px)}
.wizard-option.is-chosen{border-color:var(--blue);background:var(--sky)}
.wizard-nav{margin-top:20px}
.wizard-result{padding:20px;border:1px solid var(--line);border-radius:14px}
.wizard-result h3{margin:0 0 6px;font-size:18px;line-height:1.25}
.wizard-result h3 a{color:var(--navy);text-decoration:none}
.wizard-result p{margin:0 0 14px;color:var(--muted);font-size:13px}
.wizard-result-actions{display:flex;flex-wrap:wrap;gap:9px}
.wizard-result-actions .button{min-height:42px;font-size:13px}
.wizard-restart{margin-top:4px}
@media(max-width:620px){.wizard-body{padding:6px 22px 26px}.wizard-result-actions .button{width:100%}}
.page-cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.button-ghost{border-color:rgba(255,255,255,.45);color:#fff;background:transparent}
.button-ghost:hover{background:rgba(255,255,255,.12)}

/* ===== capas de movimiento al hacer scroll ===== */
/* Todo estado inicial oculto cuelga de .js-motion, que añade motion.js. Si ese
   fichero no cargara, nada de esto aplica y la pagina se ve entera y quieta. */

/* 1. titulares de seccion: entran palabra a palabra al llegar a ellos */
.js-motion .heading-reveal .word{display:inline-block;overflow:hidden;vertical-align:bottom;padding:.16em .1em .15em;margin:-.16em -.1em -.15em}
.js-motion .heading-reveal .word>span{display:inline-block;transform:translateY(115%);transition:transform .85s var(--ease-out);transition-delay:calc(var(--i,0)*45ms)}
.js-motion .heading-reveal.is-visible .word>span{transform:none}

/* 2. parallax por elemento: se mueve una fraccion de lo que avanza el scroll */
.js-motion [data-speed]{transform:translate3d(0,var(--float,0px),0);will-change:transform}

/* 3. los pasos 1-2-3 se encienden en cadena */
.js-motion .steps>div{opacity:0;transform:translateX(-18px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);transition-delay:calc(var(--i,0)*130ms)}
.js-motion .steps>div.is-visible{opacity:1;transform:none}
.steps>div>span{transition:background .45s var(--ease-out),color .45s var(--ease-out),transform .45s var(--ease-out)}
.js-motion .steps>div.is-visible>span{transform:scale(1.06)}

/* 4. la lista de ventajas aparece punto a punto */
.js-motion .check-list>li{opacity:0;transform:translateX(-14px);transition:opacity .55s var(--ease-out),transform .55s var(--ease-out);transition-delay:calc(var(--i,0)*90ms)}
.js-motion .check-list>li.is-visible{opacity:1;transform:none}

/* 5. la foto de empresas se destapa con una cortina y hace un zoom lento */
.js-motion .business-image{clip-path:inset(0 0 100% 0);transition:clip-path 1.05s var(--ease-out)}
.js-motion .business-image.is-visible{clip-path:inset(0 0 0 0)}
.js-motion .business-image img{transform:scale(1.14);transition:transform 1.6s var(--ease-out)}
.js-motion .business-image.is-visible img{transform:scale(1)}

/* 6. la cita entra girada y se endereza */
.js-motion .quote-card{opacity:0;transform:rotate(-1.4deg) translateY(26px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out)}
/* al estar visible recupera el parallax, para que ambos efectos no se pisen */
.js-motion .quote-card.is-visible{opacity:1;transform:translate3d(0,var(--float,0px),0)}

/* la banda de datos ya animaba; los numeros ahora ademas cuentan hacia arriba */
.proof-grid strong{font-variant-numeric:tabular-nums}

@media(prefers-reduced-motion:reduce){
 .js-motion .heading-reveal .word>span,.js-motion .steps>div,.js-motion .check-list>li,
 .js-motion .quote-card,.js-motion .business-image,.js-motion .business-image img{
   opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}
 .js-motion [data-speed]{transform:none!important}
}

/* Hallmark · component: chatbot launcher · genre: playful · theme: Campus Activa
 * states: default · hover · focus · active · disabled · loading · error · success
 * contrast: pass (46–50) · pre-emit critique: P5 H5 E5 S5 R5 V4
 */
/* ===== asistente de respuestas guiadas ===== */
.helper-launcher{position:fixed;right:26px;bottom:24px;z-index:160;display:grid;width:82px;height:82px;padding:0;place-items:center;border:0;border-radius:50%;background:var(--white);color:var(--navy);cursor:pointer;box-shadow:var(--helper-shadow);transition:opacity var(--dur-short) var(--ease-out),transform var(--dur-short) var(--ease-out)}
.helper-launcher:before{content:"";position:absolute;inset:-4px;border:4px solid var(--helper-ring);border-radius:inherit;transition:border-color var(--dur-short) var(--ease-out)}
.helper-avatar{display:grid;width:70px;height:70px;place-items:center;overflow:hidden;border-radius:50%;background:var(--white)}
.helper-avatar img{width:58px;height:58px;object-fit:contain}
.helper-launcher:focus-visible{outline:3px solid var(--blue);outline-offset:6px}
.helper-launcher:active,.helper-launcher[data-state="active"]{transform:translateY(1px)}
.helper-launcher:disabled{opacity:.48;cursor:not-allowed;transform:none}
.helper-launcher[data-state="loading"] .helper-avatar{opacity:.55}
.helper-launcher[data-state="loading"]:before{border-color:var(--blue);border-top-color:transparent;animation:helper-spin .8s linear infinite}
.helper-launcher[data-state="error"]:before{border-color:var(--danger)}
.helper-launcher[data-state="success"]:before{border-color:var(--success)}
@keyframes helper-spin{to{transform:rotate(1turn)}}
.helper-nudge{position:fixed;right:126px;bottom:43px;z-index:159;display:flex;width:min(294px,calc(100vw - 154px));align-items:flex-start;border:1px solid var(--helper-rule);border-radius:17px 17px 3px 17px;background:var(--white);box-shadow:var(--helper-shadow);animation:helper-nudge-in var(--dur-long) var(--ease-out)}
.helper-nudge-copy{display:grid;flex:1;gap:2px;min-width:0;padding:14px 10px 14px 16px;border:0;background:transparent;color:var(--ink);font-size:14px;line-height:1.45;text-align:left;cursor:pointer}
.helper-nudge-copy strong{color:var(--blue-dark)}
.helper-nudge-close{display:grid;width:44px;height:44px;flex:none;padding:0;place-items:center;border:0;background:transparent;color:var(--navy);cursor:pointer}
.helper-nudge-close svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.helper-nudge-copy:focus-visible,.helper-nudge-close:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-3px}
.helper-nudge-close:active{transform:translateY(1px)}
@keyframes helper-nudge-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
/* el boton de volver arriba se aparta para no solaparse con el asistente */
.to-top{bottom:82px}
.helper-open .to-top{opacity:0;pointer-events:none}

.helper-panel{position:fixed;right:26px;bottom:122px;z-index:161;width:min(390px,calc(100vw - 40px));max-height:min(580px,calc(100vh - 205px));display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:18px;box-shadow:var(--helper-shadow-panel);overflow:hidden;animation:helper-in .28s var(--ease-out)}
@keyframes helper-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.helper-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 12px;border-bottom:1px solid var(--line)}
.helper-identity{display:flex;align-items:center;gap:11px}.helper-identity img{width:42px;height:42px;object-fit:contain}
.helper-head .eyebrow{margin:0 0 3px}
.helper-head strong{color:var(--navy);font-size:17px}
.helper-close{width:44px;height:44px;flex:none;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--navy);font-size:18px;line-height:1;cursor:pointer}
.helper-body{padding:14px 18px;overflow-y:auto}
.helper-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.helper-list button,.helper-whatsapp{width:100%;display:block;padding:13px 15px;border:1px solid var(--line);border-radius:11px;background:var(--paper);color:var(--ink);font-weight:650;font-size:14px;text-align:left;text-decoration:none;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}
.helper-list button:hover,.helper-whatsapp:hover{border-color:var(--blue);background:var(--sky);transform:translateX(3px)}
.helper-whatsapp{font-weight:750;color:var(--blue-dark)}
.helper-back{border:0;background:none;padding:0;margin:0 0 14px;color:var(--blue-dark);font-weight:750;font-size:13px;cursor:pointer}
.helper-question{margin:0 0 8px;color:var(--navy);font-weight:800;font-size:15px;line-height:1.3}
.helper-answer{margin:0 0 16px;color:var(--muted);font-size:14px;line-height:1.6}
.helper-actions{display:grid;gap:8px}
.helper-actions .button{min-height:44px;font-size:13px}
.helper-foot{margin:0;padding:13px 18px;border-top:1px solid var(--line);background:var(--paper);color:var(--muted);font-size:12px}
.helper-foot a{color:var(--blue-dark);font-weight:750}
@media(max-width:620px){
 .helper-launcher{right:16px;bottom:16px;width:68px;height:68px}
 .helper-avatar{width:58px;height:58px}.helper-avatar img{width:49px;height:49px}
 .helper-nudge{right:96px;bottom:27px;width:min(264px,calc(100vw - 112px))}
 .helper-nudge-copy{padding:11px 7px 11px 13px;font-size:12.5px}
 .helper-nudge-close{width:38px;height:38px}
 .helper-panel{right:12px;left:12px;bottom:96px;width:auto;max-height:calc(100dvh - 178px)}
 .to-top{bottom:92px;right:20px}
}
@media(max-width:360px){.helper-nudge{right:88px;width:calc(100vw - 100px)}.helper-nudge-copy span:first-child{display:none}}
@media(hover:hover) and (pointer:fine){.helper-launcher:hover{transform:translateY(-3px)}.helper-launcher:hover:before{border-color:var(--helper-ring-hover)}.helper-nudge-copy:hover strong{color:var(--blue)}}
@media(prefers-reduced-motion:reduce){.helper-panel,.helper-nudge{animation:none}.helper-launcher,.helper-launcher:before,.helper-list button,.helper-whatsapp{transition:none}.helper-launcher:hover,.helper-list button:hover,.helper-whatsapp:hover{transform:none}.helper-launcher[data-state="loading"]:before{animation:none}}

/* El atributo hidden solo aplica display:none con la especificidad mas baja, asi
   que cualquier regla que fije display (flex, grid...) lo anula en silencio. Ya
   paso con el panel del asistente y con la X de borrar busqueda. Esto lo zanja
   para todo el sitio. */
[hidden]{display:none!important}
/* WhatsApp encabeza el asistente: se le da mas peso que a las preguntas */
.helper-whatsapp{display:block;padding:15px 16px;border:1px solid var(--blue);border-radius:11px;background:var(--sky);text-decoration:none}
.helper-whatsapp strong{display:block;color:var(--navy);font-size:15px;font-weight:800}
.helper-whatsapp span{display:block;margin-top:2px;color:var(--blue-dark);font-size:12.5px;font-weight:650}
.helper-whatsapp:hover{background:#dcecf8;border-color:var(--blue-dark)}
.helper-divider{margin:6px 0 2px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.admin-course-fields{border:1px solid #d6e0e9;border-radius:14px;padding:18px;margin:0}.admin-course-fields legend{font-weight:800;color:#102746;padding:0 8px}.admin-course-check{align-self:end;min-height:48px}.admin-fundae{background:#e5f4ff;color:#0067a8}
.admin-payment-fields{margin-top:16px}.admin-field-help{margin:8px 0 0;color:#52657a;font-size:12px}.catalog-actions{display:grid;gap:8px;margin-top:auto}.catalog-actions .catalog-consult,.catalog-actions .catalog-buy{width:100%;margin-top:0;padding:11px 14px;font-size:12px;text-align:center}.catalog-buy{box-shadow:0 8px 18px rgba(0,103,168,.16)}
.admin-payment-fields label:nth-child(2){display:none}.admin-tpv-settings{display:grid;gap:14px;margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.admin-tpv-settings legend{padding:0 8px;color:var(--navy);font-weight:850}.admin-field-label{display:block;color:var(--navy);font-size:13px;font-weight:800}.admin-discount-editor{display:grid;gap:10px;margin-top:7px}.admin-discount-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(120px,.7fr) 42px;gap:10px;align-items:end}.admin-discount-row label{display:grid;gap:6px;color:var(--navy);font-size:12px;font-weight:800}.admin-discount-row input{width:100%;min-height:44px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);font:inherit}.admin-discount-row input:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.admin-remove-discount{display:grid;width:42px;height:44px;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--danger);font-size:22px;cursor:pointer}.admin-remove-discount:hover{border-color:var(--danger);background:#fff5f5}.admin-add-discount{justify-self:start;margin-top:10px;padding:8px 12px;font-size:12px}.admin-discount-codes>small{display:block;margin-top:8px;color:var(--muted);font-weight:500}.admin-tpv-settings .admin-discount-codes{display:block}@media(max-width:620px){.admin-discount-row{grid-template-columns:1fr 100px 42px}}
.course-checkout{border-top:1px solid var(--line);background:var(--paper)}.checkout-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(36px,6vw,80px);align-items:start}.checkout-intro{position:sticky;top:calc(var(--site-header-height) + 24px);min-width:0}.checkout-intro h2{overflow-wrap:anywhere}.checkout-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:28px 0 20px;padding:18px;border-block:1px solid var(--line)}.checkout-summary span{color:var(--muted);font-size:14px}.checkout-summary strong{color:var(--navy);font-size:28px;white-space:nowrap}.checkout-discount label{display:block;margin-bottom:7px;color:var(--navy);font-size:13px;font-weight:800}.checkout-discount>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.checkout-discount input,.checkout-form input{width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink)}.checkout-discount input:focus-visible,.checkout-form input:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.checkout-discount input:disabled,.checkout-form input:disabled{background:var(--sky);color:var(--muted)}.checkout-discount input[aria-invalid="true"],.checkout-form input[aria-invalid="true"]{border-color:var(--danger)}#checkout-quote-status{min-height:22px;margin:8px 0 0;color:var(--blue-dark);font-size:13px}.checkout-form{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow)}.checkout-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.checkout-fields label{display:grid;gap:7px;color:var(--navy);font-size:13px;font-weight:800}.checkout-wide{grid-column:1/-1}.checkout-consent{display:flex;align-items:flex-start;gap:10px;margin:22px 0;color:var(--muted);font-size:13px;line-height:1.5}.checkout-consent input{flex:0 0 auto;width:18px;height:18px;min-height:0;margin-top:2px;accent-color:var(--blue)}.checkout-pay{width:100%;justify-content:center}.checkout-pay:disabled{cursor:wait;opacity:.62}.payment-result{min-height:100vh;padding-block:clamp(90px,14vw,180px);text-align:center}.payment-result h1{max-width:720px;margin-inline:auto;overflow-wrap:anywhere}.payment-result p:not(.eyebrow){max-width:620px;margin:20px auto 30px;color:var(--muted);font-size:18px;line-height:1.7}@media(max-width:800px){.checkout-layout{grid-template-columns:1fr}.checkout-intro{position:static}}@media(max-width:620px){.checkout-form{padding:20px}.checkout-fields{grid-template-columns:1fr}.checkout-wide{grid-column:auto}.checkout-summary{align-items:flex-start;flex-direction:column}.checkout-discount>div{grid-template-columns:1fr}.checkout-discount .button{width:100%;justify-content:center}}
.content-page-hero{border-bottom:1px solid var(--line)}.managed-section{min-height:420px}.managed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.managed-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 32px rgba(16,39,70,.07)}.managed-card-media{position:relative;aspect-ratio:5/3;background:#eaf2f8}.managed-card-media img{width:100%;height:100%;object-fit:cover}.managed-card-placeholder{display:grid;width:100%;height:100%;place-items:center;background:linear-gradient(145deg,#102746,#087fcb)}.managed-card-placeholder span{color:#fff;font-size:42px;font-weight:900;letter-spacing:-.08em}.managed-featured{position:absolute;top:14px;left:14px;padding:6px 10px;border-radius:999px;background:#fff;color:var(--blue-dark);font-size:11px;font-weight:900;text-transform:uppercase}.managed-card-body{display:flex;flex:1;flex-direction:column;padding:22px}.managed-card-body time{color:var(--blue-dark);font-size:12px;font-weight:800;text-transform:capitalize}.managed-card-body h2{margin:9px 0;font-size:22px}.managed-card-body>p{margin:0 0 18px;color:var(--muted)}.managed-card-body details{margin:0 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.managed-card-body summary{padding:12px 0;color:var(--blue-dark);font-size:13px;font-weight:800;cursor:pointer}.managed-card-copy{padding:0 0 14px;color:var(--muted);font-size:14px;line-height:1.65}.managed-card-body>.button{align-self:flex-start;margin-top:auto}.managed-status{padding:48px;border:1px dashed #bdd0df;border-radius:18px;background:#f8fbfd;color:var(--muted);text-align:center}.managed-grid:not(:empty)+.managed-status{display:none}@media(max-width:900px){.managed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.managed-grid{grid-template-columns:1fr}.managed-card-body{padding:18px}}
.admin-status-tabs{display:flex;gap:8px;margin:24px 0 6px;padding-bottom:16px;border-bottom:1px solid var(--line);overflow-x:auto}.admin-status-tabs button{display:flex;align-items:center;gap:9px;min-height:42px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);font-weight:800;cursor:pointer;white-space:nowrap}.admin-status-tabs button span{min-width:25px;padding:2px 7px;border-radius:999px;background:var(--sky);font-size:11px;text-align:center}.admin-status-tabs button:hover,.admin-status-tabs button.is-active{border-color:var(--blue);background:var(--blue);color:#fff}.admin-status-tabs button.is-active span{background:rgba(255,255,255,.2);color:#fff}.admin-status-tabs button:focus-visible{outline:3px solid rgba(8,127,203,.3);outline-offset:2px}
.admin-section-picker{margin:16px 0 4px;padding:16px;border:1px solid var(--line);border-radius:12px}.admin-section-picker legend{padding:0 7px;font-size:13px;font-weight:850}.admin-section-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admin-section-options label{display:flex;align-items:center;gap:9px;min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f8fbfd;cursor:pointer}.admin-section-options input{width:18px;height:18px;accent-color:var(--blue)}.admin-section-options span{font-weight:800}.admin-section-picker>p{margin:9px 0 0;color:var(--muted);font-size:12px}.university-course-grid{margin-top:26px}@media(max-width:40rem){.admin-section-options{grid-template-columns:1fr}}
.admin-brand-picker{margin:0;padding:18px;border:1px solid var(--line);border-radius:14px;background:#f8fbfd}.admin-brand-picker legend{padding:0 7px;color:var(--navy);font-size:14px;font-weight:900}.admin-brand-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-brand-options label{display:flex;align-items:center;gap:11px;min-height:58px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer}.admin-brand-options input{width:20px;height:20px;flex:0 0 auto;accent-color:var(--blue)}.admin-brand-options span{display:grid;gap:2px}.admin-brand-options strong{color:var(--navy)}.admin-brand-options small{color:var(--muted);font-size:11px;font-weight:600}.admin-brand-picker>p{margin:10px 0 0;color:var(--muted);font-size:12px}.admin-item-meta .admin-brand-badge.is-campus_activa{background:#e8f3ff;color:#075fa6}.admin-item-meta .admin-brand-badge.is-cba_educa{background:#e7f8f3;color:#087660}@media(max-width:40rem){.admin-brand-options{grid-template-columns:1fr}}
.admin-item-actions{display:flex;gap:8px}.admin-item-actions .button{min-width:86px}.admin-quick-archive{color:var(--blue-dark)}.admin-quick-delete{border:1px solid #efb7b7;background:#fff;color:var(--danger)}.admin-quick-delete:hover{border-color:var(--danger);background:#fff4f4}@media(max-width:40rem){.admin-item-side{align-items:flex-end}.admin-item-actions{flex-wrap:wrap;justify-content:flex-end}}
.admin-featured-settings{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.55fr);gap:14px;align-items:end}.admin-featured-settings>.admin-check{min-height:48px}.admin-featured-settings>label:not(.admin-check){display:grid;gap:7px}.admin-featured-settings input[type=number]{min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.admin-carousel-order{display:flex;align-items:flex-end;gap:7px}.admin-carousel-order label{display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.admin-carousel-order input{width:72px;min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);font-weight:850;text-align:center}.admin-carousel-order .button{min-width:auto;min-height:44px;padding-inline:12px}.admin-item-meta .admin-order-badge{background:#fff3cf;color:#7a5500}.admin-carousel-help{margin:10px 0 0;color:var(--muted);font-size:12px}@media(max-width:54rem){.admin-featured-settings{grid-template-columns:1fr}.admin-item-side{align-items:flex-end;flex-direction:column}.admin-carousel-order{justify-content:flex-end}}@media(max-width:40rem){.admin-carousel-order{align-items:stretch;flex-wrap:wrap;justify-content:flex-start}.admin-carousel-order label{flex:1}.admin-carousel-order input{width:100%}}
.account-dialog{width:min(980px,calc(100% - 28px))}.account-panel{padding:30px}.account-section{padding:24px 0;border-top:1px solid var(--line)}.account-section:first-of-type{border-top:0}.account-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.account-section-head h3{margin:0 0 4px;color:var(--navy);font-size:20px}.account-section-head p{margin:0;color:var(--muted);font-size:14px}.account-form{display:grid;gap:12px}.account-form label{display:grid;gap:7px;color:var(--navy);font-size:13px;font-weight:800}.account-form input{min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.account-form input[readonly]{background:#f5f8fa;color:var(--muted)}.account-form-actions{display:flex;justify-content:flex-end}.account-invite-form{grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr) minmax(0,1fr) auto;align-items:end}.account-invite-form .button{min-height:48px}.admin-members{display:grid;margin-top:16px;border-top:1px solid var(--line)}.admin-member{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.admin-member>div{display:grid;gap:3px}.admin-member strong{color:var(--navy)}.admin-member span{color:var(--muted);font-size:13px}.admin-owner-badge{padding:5px 9px;border-radius:999px;background:#e7f7ed!important;color:#08783f!important;font-weight:850}.admin-remove-member{border:1px solid #efb7b7;background:#fff;color:var(--danger)}@media(max-width:54rem){.account-invite-form{grid-template-columns:1fr 1fr}.account-invite-form .button{width:max-content}}@media(max-width:44rem){.account-panel{padding:20px}.account-invite-form{grid-template-columns:1fr}.admin-member{align-items:flex-start;flex-direction:column}.admin-account{flex-wrap:wrap;justify-content:flex-end}}
.admin-form label small{color:var(--muted);font-size:11px;font-weight:500}.admin-image-control{display:grid;gap:9px}.admin-upload-button{display:inline-flex!important;justify-content:center;width:max-content;cursor:pointer}.admin-upload-button input{position:absolute;width:1px!important;height:1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.admin-image-control img{width:180px;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line);border-radius:10px}.admin-field-help.is-error{color:var(--danger)}.course-page-status{margin-top:80px;margin-bottom:80px}.course-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.course-hero-actions .button{margin:0}.course-detail-content{padding-top:78px}
.admin-course-program{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 18px}.admin-course-program label{padding:16px;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.admin-course-program textarea{min-height:190px;background:#fff}@media(max-width:40rem){.admin-course-program{grid-template-columns:1fr}.admin-course-program textarea{min-height:150px}}
.admin-item-meta .admin-university{background:#f0eafe;color:#6336a8}
.password-control{display:grid;grid-template-columns:minmax(0,1fr) auto}.password-control input{border-start-end-radius:0!important;border-end-end-radius:0!important}.password-control button{min-width:78px;border:1px solid var(--line);border-inline-start:0;border-radius:0 10px 10px 0;background:#f5f8fa;color:var(--blue-dark);font-size:12px;font-weight:800;cursor:pointer}.password-control button:hover{background:var(--sky)}.password-control button:focus-visible{position:relative;outline:3px solid rgba(8,127,203,.3);outline-offset:1px}.admin-member-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.admin-reset-member{color:var(--blue-dark)}.admin-reset-password{margin-top:20px;padding:20px;border:1px solid var(--line);border-radius:14px;background:#f8fbfd}.admin-reset-password[hidden]{display:none}.admin-reset-password .account-section-head{margin-bottom:12px}.admin-reset-close{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);font-size:21px;cursor:pointer}@media(max-width:44rem){.admin-member-actions{justify-content:flex-start}.password-control button{min-width:72px}.admin-reset-password{padding:16px}}
.checkout-pay,.checkout-discount .button{white-space:nowrap}

.admin-discount-course p{margin:6px 0 0;color:var(--muted);font-size:13px}.admin-discount-course-field{grid-column:1/-1}.admin-discount-grid select{width:100%;min-height:46px;padding:11px 38px 11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);font:inherit}.admin-discount-grid select:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.admin-discount-grid select:invalid{color:var(--muted)}

/* Hallmark · pre-emit critique: P5 H5 E4 S5 R5 V4
 * component: admin discount manager · genre: editorial · theme: Campus Activa
 * states: default · hover · focus · active · disabled · loading · error · success
 * contrast: pass
 */
.admin-status-tabs[hidden],.admin-new[hidden]{display:none}.admin-discount-intro{margin-bottom:20px;padding:18px 20px;border-left:4px solid var(--blue);background:var(--sky)}.admin-discount-intro strong{color:var(--navy);font-size:17px}.admin-discount-intro p{margin:5px 0 0;color:var(--muted);font-size:13px}.admin-discount-card{margin-bottom:18px;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--white)}.admin-discount-course{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}.admin-discount-course h3{margin:7px 0 0;color:var(--navy);font-size:18px;overflow-wrap:anywhere}.admin-discount-course>a{flex:0 0 auto;color:var(--blue-dark);font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.admin-discount-course>a:hover{text-decoration:underline}.admin-discount-course>a:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.admin-discount-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-discount-grid>label{display:grid;align-content:start;gap:7px;color:var(--navy);font-size:13px;font-weight:800}.admin-discount-grid input:not([type="checkbox"]),.admin-discount-grid textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);font:inherit}.admin-discount-grid textarea{min-height:112px;resize:vertical}.admin-discount-grid input:focus-visible,.admin-discount-grid textarea:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.admin-discount-grid input:disabled,.admin-discount-grid textarea:disabled{background:var(--sky);color:var(--muted)}.admin-discount-codes{grid-column:1/-1}.admin-discount-codes small{color:var(--muted);font-weight:500}.admin-tpv-switch{display:flex!important;align-items:center;align-self:end;grid-template-columns:auto 1fr!important;min-height:46px;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.admin-tpv-switch input{width:18px;height:18px;accent-color:var(--blue)}.admin-discount-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:18px}.admin-discount-actions .form-status{flex:1;margin:0}.admin-discount-actions .is-success{color:#14723b}.admin-discount-actions .button{white-space:nowrap}.admin-discount-actions .button:active{transform:translateY(1px)}.admin-discount-actions .button:disabled{cursor:wait;opacity:.62}@media(max-width:620px){.admin-discount-card{padding:18px}.admin-discount-course,.admin-discount-actions{align-items:stretch;flex-direction:column}.admin-discount-grid{grid-template-columns:1fr}.admin-discount-codes{grid-column:auto}.admin-discount-actions .button{width:100%;justify-content:center}}
.account-admins-section{padding-top:12px!important}.admin-members-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:20px 0 8px}.admin-members-heading h4{margin:0 0 3px;color:var(--navy);font-size:16px}.admin-members-heading p{margin:0;color:var(--muted);font-size:13px}.admin-members-heading>span{display:grid;place-items:center;min-width:38px;height:38px;border-radius:50%;background:var(--sky);color:var(--blue-dark);font-weight:900}.admin-member-identity small{color:var(--muted);font-size:12px}.admin-members-empty{padding:22px;border:1px dashed var(--line);border-radius:12px;background:#f8fbfd;text-align:center}.admin-members-empty strong{color:var(--navy)}.admin-members-empty p{margin:5px 0 0;color:var(--muted);font-size:13px}.admin-invite-panel{margin-top:18px;border:1px solid var(--line);border-radius:12px;background:#fff}.admin-invite-panel summary{padding:15px 17px;color:var(--blue-dark);font-weight:850;cursor:pointer}.admin-invite-panel[open] summary{border-bottom:1px solid var(--line)}.admin-invite-panel .account-invite-form{padding:18px 18px 4px}.admin-invite-panel>.form-status{margin-inline:18px;margin-bottom:18px}@media(max-width:44rem){.admin-members-heading{align-items:flex-start}.admin-invite-panel .account-invite-form{padding:16px 16px 4px}}
.footer-social{margin-top:24px}.footer-social-title{margin:0 0 10px!important;color:#fff;font-size:11px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.footer-social-list{display:flex;flex-wrap:wrap;gap:8px}.footer-social-item{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:7px 10px;border:1px solid rgba(255,255,255,.16);border-radius:10px;color:rgba(255,255,255,.82);font-size:11px;font-weight:750}.footer-social-item svg{width:18px;height:18px;fill:currentColor}.footer-social-item rect,.footer-social-item circle{fill:none;stroke:currentColor;stroke-width:1.8}.footer-social-item .social-dot{fill:currentColor;stroke:none}.footer-social-strip{padding-top:34px}.footer-social-strip .footer-social{margin-top:0}.footer-social-strip .footer-social-list{justify-content:center}.footer-social-strip .footer-social-title{text-align:center}@media(max-width:620px){.footer-social-list{gap:6px}.footer-social-item{padding-inline:9px}.footer-social-strip .footer-social-list{justify-content:flex-start}.footer-social-strip .footer-social-title{text-align:left}}

/* Hallmark · hero redesign: vertical orbit · no photographic background. */
.hero{min-height:688px;background:var(--navy);color:var(--white)}
.hero-photo{display:none!important;background-image:none!important}
.hero-inner{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(36px,5vw,74px);min-height:688px;align-items:center}
.hero-copy{min-width:0;max-width:570px;padding-block:72px}
.hero h1{min-width:0;color:var(--white);overflow-wrap:anywhere}
.hero .eyebrow{color:var(--sky)}
.hero .hero-lead{color:var(--sky)}
.hero .trust-list{color:var(--white)}
.hero .button-secondary{border-color:var(--sky);background:transparent;color:var(--white)}
.hero .button-secondary:hover{border-color:var(--white);background:var(--white);color:var(--navy)}
.featured-showcase{position:relative;min-width:0;padding:8px 0;color:var(--ink);overflow:hidden}
.featured-showcase[hidden]{display:none}
.featured-wheel{min-width:0}
.featured-wheel-toolbar,.featured-wheel-footer{display:flex;align-items:center;gap:16px}
.featured-wheel-toolbar{min-height:52px;justify-content:space-between;border-bottom:1px solid var(--line)}
.featured-wheel-position{color:var(--blue-dark);font-size:12px;font-weight:850;font-variant-numeric:tabular-nums;letter-spacing:.08em}
.featured-carousel-pause{display:inline-flex;align-items:center;gap:6px;min-width:94px;min-height:44px;justify-content:center;padding:0 10px;border:0;border-radius:8px;background:transparent;color:var(--navy);font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}
.featured-carousel-pause svg,.featured-carousel-controls svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.featured-wheel-track{position:relative;height:540px;min-width:0;isolation:isolate;perspective:1100px;overflow:hidden}
.featured-wheel-track:before{content:"";position:absolute;z-index:0;inset:68px 8% 66px 7%;border:1px dashed var(--featured-orbit);border-radius:50%;transform:rotate(-4deg);pointer-events:none}
.featured-wheel-card{position:absolute;z-index:1;inset:50% auto auto 50%;width:min(520px,calc(100% - 24px));overflow:hidden;border:1px solid var(--featured-rule);border-radius:var(--radius-card);background:var(--carousel-surface);opacity:0;transform:translate(-50%,-50%) translate3d(-110px,0,0) scale(.58);transform-origin:center;transition:transform var(--dur-long) var(--ease-in-out),opacity var(--dur-short) var(--ease-in-out);pointer-events:none}
.featured-wheel-card-link{display:grid;min-width:0;color:inherit;text-decoration:none}
/* Hallmark · component: featured course media · genre: corporate editorial · theme: Campus Activa
 * pre-emit critique: P5 H5 E5 S5 R5 V4 · responsive image: full-content framing
 */
.featured-wheel-card-media{position:relative;display:grid;min-height:0;aspect-ratio:16/9;overflow:hidden;place-items:center;background:var(--white)}
.featured-wheel-card-media img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center}
.featured-wheel-card-placeholder{display:grid;width:100%;min-height:138px;place-items:center;background:var(--navy);color:var(--color-accent-ink);font-size:42px;font-weight:900;letter-spacing:-.08em}
.featured-wheel-card-copy{display:grid;min-width:0;align-content:center;gap:8px;padding:20px 24px 24px}
.featured-wheel-card-slot{color:var(--blue-dark);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.featured-wheel-card-meta{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.featured-wheel-card-title{min-width:0;margin:0;color:var(--navy);font-size:clamp(20px,6vw,27px);font-style:normal;line-height:1.08;letter-spacing:-.035em;overflow-wrap:anywhere}
.featured-wheel-card-summary{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin-top:4px;color:var(--muted);font-size:13px;line-height:1.55;transition:opacity var(--dur-short) var(--ease-in-out)}
.featured-wheel-card-action{width:max-content;margin-top:8px;color:var(--blue-dark);font-size:12px;font-weight:850;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;white-space:nowrap;transition:opacity var(--dur-short) var(--ease-in-out)}
.featured-wheel-card.is-active{z-index:4;opacity:1;transform:translate(-50%,-50%) translate3d(0,0,0) scale(1);pointer-events:auto}
.featured-wheel-card.is-next{z-index:3;opacity:.68;transform:translate(-50%,-50%) translate3d(-34px,-174px,0) scale(.6) rotate(-3deg)}
.featured-wheel-card.is-previous{z-index:2;opacity:.6;transform:translate(-50%,-50%) translate3d(-34px,174px,0) scale(.6) rotate(3deg)}
.featured-wheel-card.is-wrapping{opacity:.16}
.featured-wheel-card.is-next .featured-wheel-card-title,.featured-wheel-card.is-previous .featured-wheel-card-title{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.featured-wheel-card.is-next .featured-wheel-card-summary,.featured-wheel-card.is-next .featured-wheel-card-action,.featured-wheel-card.is-previous .featured-wheel-card-summary,.featured-wheel-card.is-previous .featured-wheel-card-action{opacity:0}
.featured-carousel.is-initializing .featured-wheel-card{transition:none}
.featured-wheel-footer{min-height:58px;justify-content:flex-start;border-top:1px solid var(--line)}
.featured-carousel-dots{display:flex;align-items:center;gap:1px}
.featured-carousel-dots button{position:relative;width:24px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}
.featured-carousel-dots button:after{content:"";position:absolute;inset:50% auto auto 50%;width:6px;height:6px;border-radius:50%;background:var(--line);transform:translate(-50%,-50%)}
.featured-carousel-dots button.is-active:after{width:18px;border-radius:5px;background:var(--blue)}
.featured-carousel-controls{display:flex;align-items:center;gap:8px;margin-inline-start:12px;color:var(--navy)}
.featured-carousel-controls button{display:grid;width:44px;height:44px;padding:0;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--featured-surface);color:var(--navy);cursor:pointer}
.featured-carousel-pause:active,.featured-carousel-controls button:active{transform:translateY(1px)}
.featured-carousel-pause:disabled,.featured-carousel-controls button:disabled,.featured-carousel-dots button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.featured-carousel-pause:focus-visible,.featured-carousel-controls button:focus-visible,.featured-carousel-dots button:focus-visible,.featured-wheel-card-link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}
.featured-carousel.is-single .featured-carousel-dots,.featured-carousel.is-single .featured-carousel-controls{display:none}
.hero .featured-wheel-toolbar,.hero .featured-wheel-footer{border-color:var(--navy-2)}
.hero .featured-wheel-position,.hero .featured-carousel-pause{color:var(--white)}
.hero .featured-wheel-track:before{border-color:var(--blue)}
.hero .featured-carousel-dots button:after{background:var(--navy-2)}
.hero .featured-carousel-dots button.is-active:after{background:var(--white)}
.hero .featured-carousel-controls{color:var(--white)}
.hero .featured-carousel-controls button{border-color:var(--blue);background:var(--navy-2);color:var(--white)}
.hero .featured-carousel-pause:hover,.hero .featured-carousel-controls button:hover{background:var(--blue-dark);color:var(--white)}
.hero .featured-carousel-pause:focus-visible,.hero .featured-carousel-controls button:focus-visible,.hero .featured-carousel-dots button:focus-visible{outline-color:var(--sky)}

@media(min-width:40rem){
  .featured-wheel-card-link{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);min-height:242px}
  .featured-wheel-card-media{min-height:242px;aspect-ratio:auto}.featured-wheel-card-media img,.featured-wheel-card-placeholder{min-height:242px}
  .featured-wheel-card.is-active{transform:translate(-50%,-50%) translate3d(18px,0,0) scale(1)}
  .featured-wheel-card.is-next{transform:translate(-50%,-50%) translate3d(-44px,-168px,0) scale(.62) rotate(-3deg)}
  .featured-wheel-card.is-previous{transform:translate(-50%,-50%) translate3d(-44px,168px,0) scale(.62) rotate(3deg)}
  .featured-carousel-controls{margin-inline-start:auto}
}
@media(max-width:1050px){
  .hero-inner{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:28px}
  .hero h1{font-size:clamp(45px,5.6vw,66px)}
  .featured-wheel-card-copy{padding-inline:18px}
}
@media(max-width:900px){
  .hero,.hero-inner{min-height:0}
  .hero{padding:42px 0 58px}
  .hero-inner{grid-template-columns:minmax(0,1fr);gap:8px}
  .hero-copy{max-width:660px;padding:0}
  .featured-showcase{width:100%;max-width:720px;margin-inline:auto;padding:12px 0 0}
  .featured-wheel-track{height:560px}
}
@media(max-width:620px){
  .hero{padding:36px 0 52px}
  .hero h1{font-size:clamp(42px,13vw,54px)}
  .featured-showcase{padding-top:6px}
  .featured-wheel-track{height:500px}
  .featured-wheel-card{width:calc(100% - 12px)}
  .featured-wheel-card.is-next{transform:translate(-50%,-50%) translate3d(-26px,-154px,0) scale(.58) rotate(-3deg)}
  .featured-wheel-card.is-previous{transform:translate(-50%,-50%) translate3d(-26px,154px,0) scale(.58) rotate(3deg)}
}

/* Hallmark · pre-emit critique: P5 H5 E5 S5 R5 V4 */
/* Credenciales y marcos: cabecera apilada y carrusel continuo escalable. */
.programs-band{padding:76px 0 70px;border-bottom:1px solid var(--line);background:var(--program-surface);color:var(--ink);overflow:hidden}
.programs-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(34px,5vw,56px);align-items:start}
.programs-intro{min-width:0;max-width:680px}
.programs-intro h2{margin:0 0 16px;color:var(--navy);font-size:clamp(30px,3.3vw,44px);font-style:normal;line-height:1.08;letter-spacing:-.04em;overflow-wrap:anywhere}
.programs-intro p{margin:0;color:var(--muted);font-size:16px;overflow-wrap:anywhere}
.programs-carousel{width:100%;overflow:hidden;border-block:1px solid var(--line)}
.programs-track{display:flex;width:max-content;animation:programs-marquee 34s linear infinite;will-change:transform}
.programs-carousel:hover .programs-track,.programs-carousel:focus .programs-track{animation-play-state:paused}
.programs-carousel:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.programs-list{display:flex;flex:none;width:max-content}
.program-item{display:grid;grid-template-columns:130px minmax(150px,1fr);gap:18px;align-items:center;width:clamp(330px,30vw,410px);min-height:128px;padding:20px 38px;border-right:1px solid var(--line);color:var(--ink);text-decoration:none}
.program-logo{display:flex;min-width:0;height:62px;align-items:center}
.program-logo img{width:100%;max-height:58px;object-fit:contain;object-position:left center;filter:grayscale(.85);opacity:.78}
.program-item-cambra .program-logo img{width:auto;max-width:100%;max-height:62px;filter:none;opacity:1}
.js-motion .programs-intro{opacity:0;transform:translateX(-24px);transition:opacity .72s var(--ease-out),transform .72s var(--ease-out)}
.js-motion .programs-intro.is-visible{opacity:1;transform:none}
@keyframes programs-marquee{to{transform:translateX(-50%)}}
.program-item>span:last-child{display:grid;gap:2px;min-width:0}
.program-item strong{color:var(--navy);font-size:14px;line-height:1.3}
.program-item small{color:var(--muted);font-size:11px;line-height:1.45}
.programs-note{margin:-30px 0 0;color:var(--muted);font-size:10px;line-height:1.55}
.programs-note a{color:var(--blue-dark);font-weight:700;text-underline-offset:2px;white-space:nowrap}

@media(max-width:1050px){
  .program-item{width:360px;padding-inline:30px}
}
@media(max-width:900px){
  .programs-intro{max-width:640px}
}
@media(max-width:620px){
  .featured-carousel-dots button{width:20px}
  .featured-carousel-controls{gap:4px}
  .programs-band{padding:58px 0 54px}
  .programs-layout{gap:32px}
  .program-item{grid-template-columns:104px minmax(140px,1fr);width:310px;min-height:112px;padding:16px 22px;gap:16px}
  .program-logo{height:54px}
  .programs-note{margin-top:-12px}
}
@media(max-width:360px){
  .featured-carousel-pause{padding-inline:8px}
  .program-item{grid-template-columns:94px minmax(136px,1fr);width:286px;padding-inline:18px;gap:14px}
}
@media(hover:hover) and (pointer:fine){
  .featured-carousel-pause,.featured-carousel-controls button{transition:background-color var(--dur-short) var(--ease-out),opacity var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out)}
  .featured-carousel-pause:hover,.featured-carousel-controls button:hover{background:var(--sky)}
  .featured-wheel-card-link:hover .featured-wheel-card-action{text-decoration-thickness:2px}
}
@media(prefers-reduced-motion:reduce){
  .featured-wheel-card,.featured-carousel-pause,.featured-carousel-controls button{animation:none!important;transition:none!important}
  .featured-wheel-card.is-next,.featured-wheel-card.is-previous{display:none}
  .programs-carousel{overflow-x:auto}
  .programs-track{animation:none;will-change:auto}
  .programs-list[aria-hidden="true"]{display:none}
  .js-motion .programs-intro,.js-motion .program-item,.js-motion .program-logo img{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}
}

/* Hallmark · genre: editorial · macrostructure: Workbench · theme: Campus Activa
 * enrichment: none · nav: N9 · footer: Ft2 · contrast: pass
 * pre-emit critique: P5 H5 E5 S5 R5 V4
 */
.checkout-page{min-height:100svh;background:var(--paper)}.checkout-header{border-bottom:1px solid var(--line);background:var(--white)}.checkout-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px}.checkout-header .brand{text-decoration:none}.checkout-back{color:var(--blue-dark);font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.checkout-back:hover{text-decoration:underline}.checkout-back:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.checkout-page-main{min-height:calc(100svh - 168px)}.checkout-page .course-checkout{border-top:0;padding-top:clamp(48px,7vw,88px)}.checkout-page .checkout-intro{top:24px}.checkout-insert-anchor[hidden]{display:none}.checkout-footer{margin-top:0}.checkout-footer a{white-space:nowrap}@media(max-width:620px){.checkout-header-inner{min-height:72px}.checkout-header .brand span{display:none}.checkout-page .course-checkout{padding-top:40px}}
/* Información de privacidad del formulario */
.privacy-summary{display:grid;gap:5px;margin:2px 0 15px;padding:14px 16px;border-left:3px solid var(--blue);background:#fff;border-radius:0 9px 9px 0;color:var(--muted);font-size:11px;line-height:1.55}.privacy-summary strong{color:var(--navy);font-size:12px}.privacy-summary a{color:var(--blue-dark);font-weight:750}.privacy-check-optional{margin:8px 0 17px}.privacy-check em{font-style:normal;color:#6d7c8d}

/* Bloque de empresas más compacto sin alterar su composición */
@media(min-width:901px){.business-section{padding:64px 0}.business-image img{width:100%;height:560px;aspect-ratio:auto;object-fit:cover}.business-copy>p:not(.eyebrow){margin:16px 0}.business-copy .check-list{margin:22px 0}.business-copy .check-list li{padding-block:8px}}

/* Hallmark · component: course enquiry dialog · genre: corporate editorial · theme: Campus Activa
 * states: default · hover · focus · active · disabled · loading · error · success
 * contrast: pass (46–50)
 */
.course-enquiry-dialog{width:min(680px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:var(--radius);background:var(--white);color:var(--ink);box-shadow:var(--shadow);overflow:auto}.course-enquiry-dialog::backdrop{background:var(--overlay);backdrop-filter:blur(3px)}.course-enquiry-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:28px 30px 20px;border-bottom:var(--rule-subtle)}.course-enquiry-dialog-head .eyebrow{margin-bottom:7px}.course-enquiry-dialog-head h2{margin:0;color:var(--navy);font-size:clamp(25px,4vw,34px);line-height:1.12;overflow-wrap:anywhere}.course-enquiry-close{display:grid;flex:0 0 auto;width:44px;height:44px;padding:0;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--navy);font-size:27px;line-height:1;cursor:pointer}.course-enquiry-close:hover{background:var(--sky)}.course-enquiry-close:active{transform:translateY(1px)}.course-enquiry-context{margin:0;padding:18px 30px;background:var(--sky);color:var(--navy);font-weight:800}.course-enquiry-form{padding:26px 30px 30px}.course-enquiry-trap{position:absolute!important;left:-9999px!important}.course-enquiry-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.course-enquiry-fields label{display:grid;gap:7px;color:var(--navy);font-size:13px;font-weight:800}.course-enquiry-fields label>span{color:var(--muted);font-weight:500}.course-enquiry-fields input,.course-enquiry-fields select,.course-enquiry-fields textarea{width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink)}.course-enquiry-fields textarea{resize:vertical}.course-enquiry-fields input:hover,.course-enquiry-fields select:hover,.course-enquiry-fields textarea:hover{border-color:var(--blue)}.course-enquiry-fields input:focus-visible,.course-enquiry-fields select:focus-visible,.course-enquiry-fields textarea:focus-visible{outline:3px solid var(--color-focus);outline-offset:1px}.course-enquiry-wide{grid-column:1/-1}.course-enquiry-consent{display:flex;align-items:flex-start;gap:10px;margin:20px 0;color:var(--muted);font-size:12px;line-height:1.5}.course-enquiry-consent input{flex:0 0 auto;width:18px;height:18px;margin-top:2px;accent-color:var(--blue)}.course-enquiry-submit{display:flex;align-items:center;justify-content:space-between;gap:18px}.course-enquiry-submit .form-status{margin:0}.course-enquiry-submit .button:active{transform:translateY(1px)}.course-enquiry-submit .button:disabled{cursor:wait;opacity:.62}.course-enquiry-submit .is-error{color:var(--danger)}.course-enquiry-submit .is-success{color:var(--success)}
@media(max-width:580px){.course-enquiry-dialog-head,.course-enquiry-context,.course-enquiry-form{padding-inline:20px}.course-enquiry-fields{grid-template-columns:1fr}.course-enquiry-wide{grid-column:auto}.course-enquiry-submit{align-items:stretch;flex-direction:column}.course-enquiry-submit .button{width:100%}}

/* Objetivos con el mismo acento lateral que las tarjetas de edición */
.course-objectives li{padding:19px 22px 19px 52px;border:1px solid var(--blue);background:var(--sky);box-shadow:none;color:var(--navy);font-weight:600;line-height:1.65}
.course-objectives li:before{top:19px;font-size:18px}
.course-edition-card{display:block;color:inherit;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s}
.course-edition-card:hover{border-color:var(--blue);box-shadow:0 10px 24px rgba(16,39,70,.08);transform:translateY(-2px)}
.course-edition-card:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.course-edition-list .course-edition-card p strong{min-width:150px}
.course-modules li>span{color:var(--blue);font-weight:900}

/* Ediciones de curso */
.admin-course-sheet{margin-top:22px}.admin-course-sheet-actions,.admin-course-sheet-actions>span,.course-technical-sheet-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.admin-course-sheet-actions{margin-top:14px}.course-technical-sheet{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-lg);margin-top:0!important;padding:var(--space-lg);border:1px solid var(--blue);border-radius:var(--radius);background:var(--sky)}.course-technical-sheet .eyebrow{margin:0 0 2px}.course-technical-sheet h2{margin:0 0 4px;font-size:19px;line-height:1.2;letter-spacing:-.015em}.course-technical-sheet-copy>p:not(.eyebrow){margin:0;color:var(--muted);font-size:13px;line-height:1.5}.course-technical-sheet-actions{justify-content:flex-end;margin-top:0}.course-technical-sheet-actions .button{min-height:46px;padding-inline:18px;white-space:nowrap}
@media(max-width:720px){.course-technical-sheet{grid-template-columns:1fr}.course-technical-sheet-actions{justify-content:flex-start}.course-technical-sheet-actions .button{width:100%}}
.admin-edition-schedules{display:grid;gap:12px;margin-top:16px}.admin-edition-schedule{padding:14px;border:1px solid #d5e1eb;border-radius:10px;background:#fff}.admin-schedule-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-add-schedule{margin-top:12px}.course-edition-schedule-line{display:block;margin-top:3px}.course-edition-card p strong+.course-edition-schedule-line{margin-top:6px}
.admin-editions{margin-top:22px}.admin-editions>.admin-field-help{margin-top:0}.admin-edition-row{margin:14px 0;padding:16px;border:1px solid #cad9e7;border-radius:12px;background:#f7fafc}.admin-edition-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;color:var(--navy)}.admin-edition-remove{border:0;background:transparent;color:#b42318;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.admin-edition-remove:hover{text-decoration:underline}.admin-edition-days{margin:16px 0;padding:0;border:0}.admin-edition-days legend{margin-bottom:9px;font-size:13px}.admin-edition-days>div{display:flex;flex-wrap:wrap;gap:8px}.admin-edition-days label{display:block}.admin-edition-days input{position:absolute;opacity:0;pointer-events:none}.admin-edition-days span{display:block;padding:9px 12px;border:1px solid #bdcede;border-radius:9px;background:#fff;color:var(--navy);font-size:12px;font-weight:750;cursor:pointer}.admin-edition-days input:checked+span{border-color:var(--blue);background:var(--blue);color:#fff}.admin-edition-days input:focus-visible+span{outline:3px solid rgba(23,123,188,.25);outline-offset:2px}.admin-edition-times{margin-top:12px}.admin-edition-notes{display:block;margin-top:16px}.admin-edition-notes span,.admin-edition-notes small{color:var(--muted);font-weight:500}.admin-edition-notes textarea{width:100%;margin-top:8px;resize:vertical}.admin-edition-notes small{display:block;margin-top:6px;font-size:11px}.checkout-edition{padding:16px;border:1px solid #b9cfe2;border-radius:12px;background:#f6f9fc}.checkout-edition select{width:100%;min-height:52px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.checkout-edition small{display:block;margin-top:7px;color:var(--muted);font-size:12px;font-weight:500;line-height:1.45}.course-editions-block{margin-top:78px}.course-edition-list{display:grid;gap:12px;margin-top:24px}.course-edition-card{padding:20px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:12px;background:var(--paper)}.course-edition-card h3{margin:0 0 12px;color:var(--navy);font-size:19px}.course-edition-card p{margin:6px 0;color:var(--muted);font-size:14px;line-height:1.5}.course-edition-card p strong{display:inline-block;min-width:104px;color:var(--navy)}.course-edition-card .course-edition-observations{margin-top:12px;padding:11px 13px;border-radius:8px;background:#fff4db;color:#694d00}.course-edition-card .course-edition-observations strong{color:#694d00}
.admin-editions-history{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}.admin-editions-history summary{cursor:pointer;color:var(--navy);font-weight:850}.admin-editions-history>p{margin:9px 0;color:var(--muted);font-size:12px}.admin-edition-row.is-history{background:#f1f4f7;opacity:.82}.admin-edition-row.is-history input,.admin-edition-row.is-history textarea{background:#e9eef2;color:#52657a}.admin-edition-row.is-history .admin-edition-days span{cursor:default}.admin-edition-history-badge{display:inline-block;margin-left:9px;padding:4px 8px;border-radius:999px;background:#dfe6ec;color:#52657a;font-size:10px;font-weight:850;text-transform:uppercase;vertical-align:middle}
.course-technical-sheet-actions .button-primary{border-color:var(--navy);border-radius:10px;background:var(--navy);color:#fff}.course-technical-sheet-actions .button-primary:hover{border-color:var(--blue);background:var(--blue);color:#fff}
.course-technical-sheet{margin-top:48px!important}
.course-edition-card .course-edition-schedule{display:grid;grid-template-columns:104px minmax(0,1fr);column-gap:8px;align-items:start}.course-edition-card .course-edition-schedule-line{grid-column:2;margin-top:0}.course-edition-card .course-edition-schedule-line+.course-edition-schedule-line{margin-top:3px}
.course-info-request .course-info-button{border-color:var(--navy);background:var(--navy);color:#fff}.course-info-request .course-info-button:hover{border-color:var(--blue);background:var(--blue);color:#fff}
.course-detail-media{background:#fff;border:1px solid rgba(16,39,70,.18);border-radius:9px;box-shadow:0 18px 42px rgba(16,39,70,.16)}.course-detail-media:before,.course-detail-media:after{content:none}.course-detail-media img{border-radius:8px}
@media(min-width:901px){.course-detail-media img{height:100%;min-height:320px;aspect-ratio:auto;object-fit:cover;object-position:center}}
.course-footer .footer-grid>div:first-child>p{margin-top:0}
@media(min-width:901px){.course-footer .footer-grid{grid-template-columns:minmax(280px,1fr) repeat(3,170px);gap:24px;align-items:start}}
.course-edition-card p:not(.course-edition-observations){display:grid;grid-template-columns:150px minmax(0,1fr);column-gap:8px;align-items:start}.course-edition-card p:not(.course-edition-observations)>strong{min-width:0}.course-edition-card .course-edition-schedule-line{grid-column:2}
@media(min-width:901px){.course-footer .footer-bottom{display:grid;grid-template-columns:minmax(280px,1fr) repeat(3,170px);gap:24px}.course-footer .footer-bottom>span:first-child{grid-column:4}}
.course-enquiry .eyebrow{color:var(--blue)!important}
.course-edition-card .course-edition-observations{display:grid;grid-template-columns:136px minmax(0,1fr);column-gap:8px;align-items:start}.course-edition-card .course-edition-observations>strong{min-width:0}.course-footer .footer-social-title{text-transform:none;letter-spacing:.12em;font-size:12px;font-weight:800}
.checkout-intro h1{margin:0 0 22px;color:var(--navy);font-size:clamp(30px,4vw,44px);line-height:1.1;letter-spacing:-.035em;overflow-wrap:anywhere}:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.course-edition-card{border-left-color:var(--navy)}
.course-technical-sheet-actions,.course-info-request>.course-info-button{align-self:end}
@media(min-width:901px){.course-footer .footer-grid>div:last-child{align-items:flex-start;text-align:left}.course-footer .footer-bottom>span:first-child{justify-self:start}}
