/* La envolvente del menú se conserva; estos estilos afectan sus opciones. */
body {--nav-ink:#213c80;--nav-soft:#eaf0fc;--nav-line:#b9cae6;}
body:not(.theme-light) {--nav-ink:#dbe7ff;--nav-soft:#263956;--nav-line:#526888;}
body[data-menu-selection] :is(#mainNavLeft>a,#mainNavLeft>.nav-dropdown>a,.overlay-nav-link) {position:relative;}
body[data-menu-selection]:not([data-menu-selection="pill"]) :is(#mainNavLeft>a,#mainNavLeft>.nav-dropdown>a,.overlay-nav-link):is(:hover,:focus-visible,[aria-current="page"]) {
  background:var(--selection-bg,transparent);color:var(--selection-color,var(--nav-ink));border-radius:var(--selection-radius,0);box-shadow:var(--selection-shadow,none);transform:none;text-decoration:var(--selection-decoration,none);text-underline-offset:8px;text-decoration-thickness:2px;
}
body[data-menu-selection="pill"] :is(#mainNavLeft>a,#mainNavLeft>.nav-dropdown>a,.overlay-nav-link):is(:focus-visible,[aria-current="page"]) {background:var(--text-color);color:var(--bg-color);border-radius:20px;}
body[data-menu-selection="underline"] {--selection-shadow:inset 0 -2px var(--nav-ink);}
body[data-menu-selection="double"] {--selection-shadow:inset 0 -2px var(--nav-ink),inset 0 2px var(--nav-ink);}
body[data-menu-selection="frame"] {--selection-shadow:inset 0 0 0 1px var(--nav-ink);--selection-radius:6px;}
body[data-menu-selection="square"] {--selection-bg:#213c80;--selection-color:#fff;}
body[data-menu-selection="soft"] {--selection-bg:var(--nav-soft);--selection-radius:8px;}
body[data-menu-selection="marker"] {--selection-bg:linear-gradient(transparent 55%,#e8cf7880 55%,#e8cf7880 85%,transparent 85%);}
body[data-menu-selection="glow"] {--selection-shadow:0 0 20px #557ec552,inset 0 0 0 1px var(--nav-line);--selection-radius:8px;}
body[data-menu-selection="column"] {--selection-color:#fff;}
body[data-menu-selection="column"] :is(#mainNavLeft>a,#mainNavLeft>.nav-dropdown>a) {isolation:isolate;}
body[data-menu-selection="column"] :is(#mainNavLeft>a,#mainNavLeft>.nav-dropdown>a):is(:hover,:focus-visible,[aria-current="page"])::before {content:'';position:absolute;left:0;right:0;top:calc(50% - var(--menu-column-height,90px)/2);height:var(--menu-column-height,90px);background:#213c80;z-index:-1;pointer-events:none;}
body[data-menu-selection="column"] .overlay-nav-link:is(:hover,:focus-visible,[aria-current="page"]) {background:#213c80;}
body[data-menu-selection="side-line"] {--selection-shadow:inset 3px 0 var(--nav-ink);--selection-bg:var(--nav-soft);--selection-radius:3px;}
body[data-menu-selection="spotlight"] {--selection-bg:radial-gradient(ellipse at bottom,#b4c9efb0,transparent 75%);--selection-shadow:inset 0 -2px #5476aa;--selection-radius:8px;}
body[data-menu-selection="pill-halo"] {--selection-shadow:0 0 16px rgba(33,60,128,0.35),0 0 0 1.5px rgba(33,60,128,0.5);--selection-radius:20px;--selection-bg:rgba(33,60,128,0.08);}
body[data-menu-selection="neon-line"] {--selection-shadow:inset 0 -3px #dab42d, 0 3px 12px rgba(218,180,45,0.55);--selection-radius:2px;}
body[data-menu-selection="pastel-gradient"] {--selection-bg:linear-gradient(135deg,rgba(33,60,128,0.12),rgba(218,180,45,0.18));--selection-radius:8px;}
body[data-menu-selection="capsule-minimal"] {--selection-shadow:inset 0 0 0 1.5px #213c80;--selection-radius:16px;}
body[data-menu-selection="glass-blur"] {--selection-bg:rgba(255,255,255,0.25);--selection-shadow:inset 0 0 0 1px rgba(255,255,255,0.4),0 8px 24px rgba(33,60,128,0.12);--selection-radius:8px;}
body[data-menu-selection="glass-blur"] :is(#mainNavLeft>a,#mainNavLeft>.nav-dropdown>a) {backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
body[data-menu-selection="dot"] :is(#mainNavLeft>a,#mainNavLeft>.nav-dropdown>a,.overlay-nav-link):is(:hover,:focus-visible,[aria-current="page"])::before {content:'';position:absolute;width:5px;height:5px;border-radius:50%;bottom:0;left:calc(50% - 2px);background:var(--nav-ink);}
body[data-menu-selection="brackets"] :is(#mainNavLeft>a,#mainNavLeft>.nav-dropdown>a,.overlay-nav-link):is(:hover,:focus-visible,[aria-current="page"])::before {content:'';position:absolute;inset:4px 0;border-inline:2px solid var(--nav-ink);pointer-events:none;}
:is(#mainNavLeft,#mobileNavList) a:focus-visible {outline:2px solid var(--nav-ink);outline-offset:3px;}
body[data-menu-selection]:not([data-menu-selection="pill"]) .overlay-nav-link:is(:hover,:focus-visible,[aria-current="page"]) {color:var(--selection-color,var(--nav-ink)) !important;}
body[data-menu-selection="pill"] .overlay-nav-link:is(:hover,:focus-visible,[aria-current="page"]) {background:var(--text-color);color:var(--bg-color) !important;border-radius:20px;}

/* Diez presentaciones de submenús; no modifican el tercer nivel ni la navegación. */
body[data-submenu-style]:not([data-submenu-style="classic"]) :is(.nav-dropdown-content,.overlay-submenus) {
  background:var(--sub-bg,#fff);border-color:var(--sub-border,#dce5eb);border-radius:var(--sub-radius,12px);box-shadow:var(--sub-shadow,0 16px 45px #19324820);color:var(--sub-color,#193248);
}
body[data-submenu-style]:not([data-submenu-style="classic"]) :is(.nav-dropdown-content a,.overlay-sub-link) {background:var(--sub-item-bg,transparent);color:var(--sub-color,#193248);border-radius:var(--sub-item-radius,6px);box-shadow:var(--sub-item-shadow,none);transform:none;}
body[data-submenu-style]:not([data-submenu-style="classic"]) :is(.nav-dropdown-content a,.overlay-sub-link):is(:hover,:focus-visible,[aria-current="page"]) {background:var(--sub-hover,#eaf0fc);color:var(--sub-hover-color,#213c80);}
body[data-submenu-style]:not([data-submenu-style="classic"]) .overlay-sub-link {color:var(--sub-color,#193248) !important;}
body[data-submenu-style]:not([data-submenu-style="classic"]) .overlay-sub-link:is(:hover,:focus-visible,[aria-current="page"]) {color:var(--sub-hover-color,#213c80) !important;}
body[data-submenu-style="minimal"] {--sub-bg:var(--bg-color);--sub-color:var(--text-color);--sub-shadow:none;--sub-border:transparent;--sub-radius:0;--sub-item-radius:0;}
body[data-submenu-style="cards"] {--sub-bg:#edf2fa;--sub-item-bg:#fff;--sub-item-shadow:0 3px 8px #19324810;--sub-item-radius:10px;}
body[data-submenu-style="cards"] :is(.nav-dropdown-content a,.overlay-sub-link) {margin-block:5px;}
body[data-submenu-style="editorial"] {--sub-radius:0;--sub-item-radius:0;--sub-item-shadow:inset 0 -1px #dce5eb;--sub-shadow:0 12px 24px #19324815;}
body[data-submenu-style="blue"] {--sub-bg:#213c80;--sub-border:#4564a2;--sub-color:#fff;--sub-hover:#365597;--sub-hover-color:#fff;}
body[data-submenu-style="glass"] {--sub-bg:#f3f8fff0;--sub-border:#fff;--sub-shadow:0 16px 40px #294d7830,inset 0 0 0 1px #fff;}
body[data-submenu-style="glass"] :is(.nav-dropdown-content,.overlay-submenus) {backdrop-filter:blur(18px);}
body[data-submenu-style="accent"] {--sub-shadow:inset 4px 0 #bd9630,0 12px 30px #19324820;--sub-item-radius:0;}
body[data-submenu-style="numbered"] :is(.nav-dropdown-content,.overlay-submenus) {counter-reset:submenu;}
body[data-submenu-style="numbered"] :is(.nav-dropdown-content a,.overlay-sub-link)::before {counter-increment:submenu;content:counter(submenu,decimal-leading-zero) '  ';font-size:.72em;color:#5371a3;font-weight:800;}
body[data-submenu-style="outline"] {--sub-item-shadow:inset 0 0 0 1px #b9cae6;--sub-shadow:none;--sub-border:transparent;}
body[data-submenu-style="outline"] :is(.nav-dropdown-content a,.overlay-sub-link) {margin-block:5px;}
body[data-submenu-style="gradient"] {--sub-bg:linear-gradient(135deg,#edf2ff,#fff7e7);--sub-border:#d9e1f2;--sub-hover:#dce7fb;}
body[data-submenu-style^="compact-"] {--sub-item-radius:6px;--sub-bg:#fff;--sub-hover:#edf3ff;}
body[data-submenu-style^="compact-"] #mainNavLeft .nav-dropdown-content a {min-height:32px;padding:7px 12px;font-size:.75rem;line-height:1.45;margin-inline:12px;transform-origin:center;transition:transform .2s,background-color .2s,box-shadow .2s;}
body[data-submenu-style^="compact-"] #mainNavLeft .nav-dropdown-content a:is(:hover,:focus-visible) {position:relative;z-index:2;box-shadow:0 6px 18px #213c8024;transform:scale(1.16);}
body[data-submenu-style="compact-line"] #mainNavLeft .nav-dropdown-content a:is(:hover,:focus-visible) {transform:scale(1.08);box-shadow:inset 0 -2px #213c80;}
body[data-submenu-style="compact-lift"] #mainNavLeft .nav-dropdown-content a:is(:hover,:focus-visible) {transform:translateY(-2px) scale(1.12);box-shadow:0 9px 22px #213c8030;background:#213c80;color:#fff;}
body[data-submenu-style^="compact-"] .overlay-sub-link {font-size:.85rem;min-height:44px;margin-inline:8px;transition:transform .2s;}
body[data-submenu-style^="compact-"] .overlay-sub-link:is(:hover,:focus-visible) {transform:scale(1.05);}
@media(min-width:901px) {body[data-submenu-style^="compact-"] #mainNavLeft>.nav-dropdown>.nav-dropdown-content:has(.nav-dropdown)>a {width:calc(50% - 24px);}}
body[data-submenu-style] .overlay-submenus {padding:8px 12px;margin-block:8px;}
body[data-submenu-style="classic"] .overlay-submenus {padding:0;}
body[data-submenu-style="megamenu-grid"] :is(.nav-dropdown-content) {display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:6px;min-width:380px;padding:12px;--sub-bg:#ffffff;--sub-border:#e2e8f0;--sub-shadow:0 20px 48px rgba(33,60,128,0.16);--sub-radius:12px;}
body[data-submenu-style="floating-cards-glass"] :is(.nav-dropdown-content,.overlay-submenus) {--sub-bg:rgba(255,255,255,0.85);--sub-border:rgba(33,60,128,0.14);--sub-shadow:0 24px 50px rgba(15,23,42,0.15);--sub-radius:14px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);}
body[data-submenu-style="floating-cards-glass"] :is(.nav-dropdown-content a,.overlay-sub-link) {margin-block:4px;box-shadow:0 2px 6px rgba(0,0,0,0.04);background:#ffffff;}
body[data-submenu-style="spring-dropdown"] :is(.nav-dropdown-content) {transition:all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);transform-origin:top center;--sub-radius:10px;--sub-shadow:0 18px 40px rgba(33,60,128,0.2);}
body[data-submenu-style="tree-connected"] :is(.nav-dropdown-content a,.overlay-sub-link) {position:relative;padding-left:24px;}
body[data-submenu-style="tree-connected"] :is(.nav-dropdown-content a,.overlay-sub-link)::before {content:'';position:absolute;left:10px;top:50%;width:8px;height:1px;background:#cbd5e1;}
body[data-submenu-style="animated-gradient-border"] :is(.nav-dropdown-content,.overlay-submenus) {position:relative;border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#213c80,#dab42d) border-box;--sub-radius:12px;--sub-shadow:0 16px 40px rgba(33,60,128,0.18);}

/* Convocatoria de cursos. */
.courses-page {max-width:1200px;margin:0 auto;padding:70px 0 50px;color:#193248;font-family:var(--font-grotesk);}
#pageContentContainer[data-page="cursos"] {top:var(--courses-content-top,150px);height:calc(100dvh - var(--courses-content-top,150px));padding-top:0;}
#pageContentContainer[data-page="cursos"] .courses-page {padding-top:0;}
.courses-page * {box-sizing:border-box;}
.courses-hero {position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1.5fr 1fr;gap:30px;padding:clamp(26px,5vw,64px);background:linear-gradient(125deg,#142d61,#245a7c 65%,#427c84);color:#fff;border-radius:28px;}
.courses-hero-content {position:relative;z-index:1;}
.courses-eyebrow {font-size:.7rem;font-weight:800;letter-spacing:.12em;color:#52719e;}
.courses-hero .courses-eyebrow {color:#e8d5a0;}
.courses-hero .studio-ribbon.courses-hero-ribbon {display:inline-flex;margin-bottom:12px;color:#1a3152;font-weight:800;font-size:.76rem;letter-spacing:.08em;padding:8px 30px;min-height:36px;border-radius:4px;}
.courses-hero .studio-ribbon.courses-hero-ribbon::before {background:linear-gradient(90deg, var(--ribbon-from, rgba(243,217,147,0.45)) 0%, var(--ribbon-from, rgba(243,217,147,0.95)) 30%, var(--ribbon-to, rgba(255,255,255,0.95)) 100%);background-size:200% 100%;}
.courses-edition {margin:24px 0 10px;font-size:.8rem;color:#d9e5fa;}
.courses-hero h1 {font:700 clamp(2rem,4.5vw,4rem)/1.05 var(--font-display);letter-spacing:-.03em;margin:0 0 22px;}
.courses-hero p {line-height:1.75;max-width:600px;font-size:.95rem;}
.courses-hero .courses-intro {font-size:1.25rem;font-weight:600;}
.course-status {display:inline-block;padding:8px 12px;border:1px solid #f5df9c70;border-radius:6px;background:#fff1c51a;color:#fff0bc;font-size:.75rem;font-weight:700;line-height:1.5;}
.courses-actions {display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;}
.courses-button {display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 20px;border-radius:10px;background:#f1d78e;color:#1a3152;font-size:.85rem;font-weight:750;text-decoration:none;line-height:1.5;transition:transform .2s,box-shadow .2s;}
.courses-button:hover {transform:translateY(-2px);box-shadow:0 8px 22px #0002;}
.courses-button.secondary {background:transparent;color:#fff;box-shadow:inset 0 0 0 1px #ffffff60;}
.courses-hero-art {display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;gap:10px;letter-spacing:.13em;color:#d4e6ec;}
.courses-hero-art>strong {font:700 clamp(1rem,2.4vw,1.8rem) var(--font-display);color:#f3d993;letter-spacing:.06em;}
.courses-hero-art .course-hours-badge {display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:180px;height:180px;flex-shrink:0;margin-top:25px;border-radius:50%;border:1px solid #f4db9770;box-shadow:0 0 0 16px #fff1,0 0 0 35px #fff1;letter-spacing:normal;}
.courses-hero-art .course-hours-value {font-family:var(--font-display);font-size:4.5rem;font-weight:700;line-height:1;}
.courses-hero-art .course-hours-label {display:block;font-family:var(--font-grotesk);font-size:.6rem;font-weight:600;line-height:1.5;letter-spacing:.06em;white-space:nowrap;}
.courses-orbit {position:absolute;width:650px;height:650px;border:1px solid #fff2;border-radius:50%;right:-150px;top:-150px;box-shadow:0 0 0 80px #fff03,0 0 0 160px #fff03;pointer-events:none;}
.courses-facts {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:26px 0 50px;}
.courses-facts>div {padding:24px;background:#fff;border:1px solid #dce5ed;border-radius:14px;}
.courses-facts strong {display:block;font:650 1.2rem var(--font-display);margin-bottom:10px;color:#213c80;}
.courses-facts span {font-size:.8rem;color:#53667a;line-height:1.7;}
.courses-calendar {display:grid;grid-template-columns:1fr 1.5fr;gap:40px;padding:36px;background:#f0f4fb;border-radius:18px;margin-bottom:60px;}
.courses-page h2 {font:650 clamp(1.6rem,3vw,2.3rem)/1.15 var(--font-display);margin:12px 0 18px;letter-spacing:-.02em;}
.courses-calendar p,.courses-section-heading p,.courses-next p {font-size:.87rem;line-height:1.75;color:#53667a;}
.courses-calendar ol {margin:0;padding:0;list-style:none;display:grid;gap:18px;}
.courses-calendar li {display:flex;gap:20px;align-items:start;}
.courses-calendar li>span {font:700 1.1rem var(--font-display);color:#607caf;padding-top:2px;}
.courses-calendar li p {margin:5px 0 0;}
.courses-section-heading {display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:20px;}
.courses-section-heading>p {max-width:370px;}
.courses-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.course-card {display:flex;flex-direction:column;position:relative;overflow:hidden;padding:28px;background:#fff;border:1px solid #dce5ed;border-radius:18px;transition:transform .25s,box-shadow .25s;}
.course-card:nth-child(3n+2) {background:#f0f5ff;}.course-card:nth-child(3n) {background:#f3f8f5;}
.course-card:hover {transform:translateY(-4px);box-shadow:0 15px 35px #25436a15;}
.course-number {font:500 2.5rem var(--font-display);color:#a5b6ce;margin-bottom:22px;}
.course-card-tag {font-size:.65rem;font-weight:700;letter-spacing:.1em;color:#4e6584;}
.course-card h3 {font:600 1.25rem/1.4 var(--font-display);margin:12px 0;}
.course-card p {font-size:.8rem;line-height:1.7;color:#53667a;}
.course-card a {font-size:.8rem;font-weight:700;color:#213c80;margin-top:auto;padding-top:22px;min-height:44px;}
.course-card a span {float:right;}
.courses-next {display:grid;grid-template-columns:1fr auto;gap:12px 45px;align-items:center;margin-top:60px;padding:36px;border-radius:20px;background:#e8eef9;}
.courses-next>div {grid-row:span 2;}.courses-text-link {font-size:.8rem;color:#213c80;line-height:1.7;}
.courses-page a:focus-visible {outline:3px solid #b8871b;outline-offset:5px;}
.courses-admin-settings {padding:18px 0;}.courses-admin-settings summary {cursor:pointer;}
.course-admin-field {display:grid;gap:7px;margin-top:14px;font-size:.8rem;}
.course-admin-field :is(input,textarea) {width:100%;padding:10px;border:1px solid #cbd6e5;border-radius:7px;font:inherit;color:#193248;background:#fff;}
:is(#menuSelectionStyle,#submenuStyle) {max-width:180px;}

/* Leve halo y barrido luminoso únicamente en la diapositiva de cursos en foco. */
.course-spotlight .item-inner {isolation:isolate;}
.course-spotlight .item-inner::after {content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#fff4 46%,#fff7 50%,#fff4 54%,transparent 70%);transform:translateX(-140%);pointer-events:none;z-index:1;}
.course-spotlight.is-current .item-inner::after {animation:course-sheen 5s ease-in-out infinite;}
.course-spotlight.is-current .item-inner {animation:course-halo 4s ease-in-out infinite;}
.course-slide-details {margin-bottom:14px;max-width:520px;}
.course-slide-details p {margin:7px 0;color:#fff;font:500 .78rem/1.6 var(--font-grotesk);}
.course-slide-details .course-status {background:#213c80;color:#fff1c5;border-color:#e4c97c;}
.course-slide-link {display:inline-block;color:#fff;font:700 .8rem var(--font-grotesk);padding:8px 0;text-underline-offset:4px;pointer-events:auto;}
.course-spotlight .item-content-wrapper {right:2rem;max-width:calc(100% - 4rem);bottom:5rem;}
.course-spotlight .category-text {color:#f3d993;}
.course-spotlight .item-title {font-size:clamp(2rem,5.5vw,4rem);}
@keyframes course-sheen {0%,35%{transform:translateX(-140%);}70%,100%{transform:translateX(140%);}}
@keyframes course-halo {0%,100%{box-shadow:0 0 20px #d4ad4840;}50%{box-shadow:0 0 44px #d4ad4880,0 0 80px #3976c330;}}
@media(min-width:769px) and (max-width:1150px) {
  body[data-menu-selection] #mainNavLeft {padding-right:0;}
  body[data-menu-selection] :is(#mainNavLeft>a,#mainNavLeft>.nav-dropdown>a) {padding-inline:.5rem;}
}
@media(max-width:900px) {
  .courses-page {padding:28px 0 40px;}.courses-hero {grid-template-columns:1fr;}.courses-hero-art {display:none;}
  .courses-grid {grid-template-columns:repeat(2,minmax(0,1fr));}.courses-calendar {grid-template-columns:1fr;gap:20px;}.courses-section-heading {display:block;}
  .courses-section-heading>p {max-width:none;}.courses-next {grid-template-columns:1fr;}.courses-next>div {grid-row:auto;}
}
@media(max-width:650px) {
  .courses-hero {border-radius:18px;padding:26px 20px;}.courses-grid,.courses-facts {grid-template-columns:1fr;}.courses-facts {gap:10px;padding-bottom:30px;}.courses-facts>div {padding:20px;}
  .courses-calendar,.courses-next {padding:24px 20px;}.courses-calendar {margin-bottom:35px;}.courses-next {margin-top:35px;}
  .courses-actions {flex-direction:column;}.courses-button {width:100%;}.course-card {padding:24px;}
  .course-spotlight .item-content-wrapper {max-width:calc(100% - 2rem) !important;}.course-slide-details {margin-bottom:8px;}.course-slide-details p {font-size:.65rem;margin:4px 0;}.course-slide-details .course-status {font-size:.6rem;padding:5px 8px;}.course-slide-link {font-size:.7rem;}.course-spotlight .item-title {font-size:clamp(1.5rem,7vw,2.5rem) !important;}.course-spotlight .category-text {font-size:.7rem;}
}
@media(prefers-reduced-motion:reduce) {
  .course-spotlight.is-current .item-inner,.course-spotlight.is-current .item-inner::after {animation:none;}
  .courses-page a,.course-card {transition:none;}.courses-page a:hover,.course-card:hover {transform:none;}
  body[data-submenu-style^="compact-"] :is(#mainNavLeft .nav-dropdown-content a,.overlay-sub-link) {transition:none;}
}


/* Contrast is scoped to slide accents; the institutional color remains configurable. */
body[data-slide-accent-treatment="plate"] .carousel-item .category-text {color:var(--yellow) !important;background:var(--slide-accent-background,#fffffff2);box-shadow:0 0 0 3px var(--slide-accent-background,#fffffff2);text-shadow:none;}
body[data-slide-accent-treatment="outline"] .carousel-item .category-text {color:var(--yellow) !important;text-shadow:1px 0 var(--slide-accent-outline,white),-1px 0 var(--slide-accent-outline,white),0 1px var(--slide-accent-outline,white),0 -1px var(--slide-accent-outline,white);}
body[data-slide-accent-treatment="dark"] .carousel-item .category-text {color:color-mix(in srgb,var(--yellow),white 65%) !important;background:var(--slide-accent-dark-background,#102544ed);box-shadow:0 0 0 3px var(--slide-accent-dark-background,#102544ed);text-shadow:none;}
body[data-slide-accent-treatment="plate"] .carousel-item .triangle-icon-circle {color:#fff;background:var(--yellow);border:2px solid white;}
.home-notice {position:absolute;left:50%;transform:translateX(-50%);width:calc(100% - 48px);max-width:1100px;z-index:35;display:flex;align-items:center;gap:10px;padding:5px 10px;box-sizing:border-box;border:1px solid #213c8030;border-radius:6px;background:#fffffff2;color:#213c80;}
.home-notice[hidden] {display:none !important;}
.notice-viewport {flex:1;min-width:0;height:100%;display:flex;align-items:center;overflow:hidden;font-size:14px;line-height:1.35;}
.notice-track {width:100%;}
.notice-track a {color:inherit;text-decoration:underline;text-underline-offset:3px;}
.notice-pause {flex:none;border:1px solid #213c8030;border-radius:4px;padding:5px;background:transparent;color:inherit;font-size:10px;cursor:pointer;}
.home-notice:focus-within {outline:2px solid #467bc5;outline-offset:2px;}
.home-notice[data-mode="ticker"] .notice-track {display:flex;align-items:center;gap:3rem;width:max-content;flex:none;white-space:nowrap;will-change:transform;}
.home-notice[data-mode="rotate"] .notice-viewport {overflow:auto;}
.home-notice[data-mode="rotate"] .notice-track {margin:auto 0;overflow-wrap:anywhere;}
@media (hover:none), (pointer:coarse) {
  .carousel-item .item-logo {animation:none !important;transition:opacity .4s;}
  .carousel-item.is-current .item-inner:hover,.carousel-item.is-current .item-inner:active {transform:none;}
  .course-spotlight.is-current .item-inner::after {animation:none;}
  .carousel-item {backface-visibility:hidden;-webkit-backface-visibility:hidden;}
}
@media(prefers-reduced-motion:reduce) {
  .home-notice .notice-viewport {overflow:auto;}
  .home-notice[data-mode] .notice-track {display:flex;flex-direction:column;align-items:stretch;gap:.5rem;white-space:normal;width:100%;transform:none !important;}
  .carousel-item,.item-image {transition:none !important;}
  .carousel-item .item-logo {animation:none !important;}
}

/* An outgoing GSAP tween must not reveal the logo on an inactive card. */
.carousel-item:not(.is-current) .item-logo {visibility:hidden;}

/* Photographic entrance: retain the real name wall across desktop/mobile crops. */
.campus-photo .item-image {background-position:var(--campus-focus,50%) 42%;}
.campus-photo.is-current .item-image {transform:scale(1.04);}
.university-photo .item-image {background-position:70% 42%;}
.university-photo.is-current .item-image {transform:scale(1.04);}
.university-photo .item-image::after {background:linear-gradient(to top,#07152fe6 0%,#07152f90 24%,#07152f10 57%,transparent 78%);}
@media(max-width:768px) {.university-photo .item-image {background-position:80% 42%;}}

/* Two photographed viewpoints, a gentle pan and dissolve, then hold the frontal view. */
.university-photo .university-front-image {opacity:0;pointer-events:none;background-position:57% 40%;}
.university-pan.is-current .item-image:first-child {animation:university-angle var(--university-pan-duration,6500ms) ease-in-out both;}
.university-pan.is-current .university-front-image {animation:university-front var(--university-pan-duration,6500ms) ease-in-out both;}
@keyframes university-angle {0%,12%{transform:scale(1.04);}75%,100%{transform:scale(1.1) translateX(-1%);}}
@keyframes university-front {0%,28%{opacity:0;transform:scale(1.08) translateX(1%);}76%,100%{opacity:1;transform:scale(1.02) translateX(0);}}
@media(prefers-reduced-motion:reduce) {
 .university-pan.is-current .item-image {animation:none !important;}
 .university-photo .university-front-image {opacity:0 !important;}
}

.university-photo .university-name-image {opacity:0;background-size:100% auto;background-position:center 12%;background-repeat:no-repeat;background-color:#102544;pointer-events:none;}
.university-pan.is-current .university-name-image {animation:university-name var(--university-pan-duration,6500ms) ease-in-out both;}
@keyframes university-front {0%,18%{opacity:0;transform:scale(1.08) translateX(1%);}48%,100%{opacity:1;transform:scale(1.02) translateX(0);}}
@keyframes university-name {0%,63%{opacity:0;transform:scale(1.02);}90%,100%{opacity:1;transform:scale(1.04);}}
@media(max-width:768px) {.university-photo .university-name-image {background-size:100% auto;background-position:center 12%;background-color:#102544;}}
@media(prefers-reduced-motion:reduce) {.university-photo .university-name-image {opacity:0 !important;}}

@media(max-width:768px) {.online-photo .item-image {background-size:auto 72%;background-position:52% 8%;background-repeat:no-repeat;background-color:#102544;}}
/* Online continuing education: local vector network, animated only in focus. */
.course-online-network {position:absolute;left:1.5rem;top:1rem;width:68%;max-width:360px;z-index:2;pointer-events:none;color:#fff2c8;}
.course-online-network svg {display:block;width:100%;height:auto;overflow:visible;}
.mexico-silhouette {fill:#102e62d9;stroke:#c9e5ff;stroke-width:1.5;stroke-linejoin:round;}
.network-route {fill:none;stroke:#f8df98;stroke-width:1.4;stroke-dasharray:5 8;opacity:.8;}
.network-node,.network-origin {fill:#fff2c8;stroke:#fff;stroke-width:.8;}
.network-pulse {fill:none;stroke:#f8df98;stroke-width:1;opacity:0;}
.network-colima {fill:#fff;font:600 11px Arial,sans-serif;}
.network-caption {display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid #cee6ff55;border-radius:5px;background:#102544dd;font:600 clamp(.55rem,1vw,.7rem)/1.3 var(--font-grotesk);white-space:nowrap;}
.course-spotlight.is-current .network-route {animation:network-flow 5s linear infinite;animation-delay:var(--network-delay,0s);}
.course-spotlight.is-current .network-pulse {animation:network-pulse 3.8s ease-out infinite;animation-delay:var(--network-delay,0s);}
@keyframes network-flow {to{stroke-dashoffset:-52;}}
@keyframes network-pulse {0%{opacity:.7;transform:scale(.7);}75%,100%{opacity:0;transform:scale(2.3);}}
@media(max-width:768px) {.course-online-network {left:12px;top:12px;width:80%;max-width:280px;}.network-caption {padding:5px 7px;font-size:.55rem;}}
@media(prefers-reduced-motion:reduce) {.course-spotlight.is-current .network-route,.course-spotlight.is-current .network-pulse {animation:none;}.network-pulse {opacity:0;}}
