.film-section{border-top:1px solid var(--line)}.film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 26px}.film-card{min-width:0}.film-cover{display:block;position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:18px;background:var(--dark)}.film-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.film-cover:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#123e40cc);pointer-events:none}.film-cover:hover img{transform:scale(1.025)}.film-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:58px;height:58px;display:grid;place-items:center;border-radius:50%;color:white;background:#123e40b8;border:1px solid #ffffffaa;font-size:19px;z-index:1}.film-watch{position:absolute;bottom:22px;left:24px;color:white;font-size:13px;z-index:1}.film-copy{padding:22px 2px 0}.film-copy .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:10px}.film-copy h3{font-size:21px;margin-bottom:0;line-height:1.35}.film-more{margin-top:40px}.film-note{font-size:14px;color:var(--muted);max-width:650px}#video-player video{display:block;width:100%;height:100%;object-fit:contain}#close-video{min-width:44px;min-height:44px}.dialog-head h2{overflow-wrap:anywhere}#video-dialog{overscroll-behavior:contain}.contact-details a{overflow-wrap:anywhere}@media(max-width:900px){.film-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.film-grid{grid-template-columns:minmax(0,1fr);gap:32px}.film-cover{aspect-ratio:4/5;max-height:440px}.film-copy h3{font-size:20px}}@media(prefers-reduced-motion:reduce){.film-cover img{transition:none}.film-cover:hover img{transform:none}}

/* Matices v14 — jade and coral, with unchanged content and layout. */
.inner-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: #fff;
  background: radial-gradient(ellipse at 100% 0, #087477 0, transparent 58%), linear-gradient(115deg, #07565f, #087477);
  border-bottom: 5px solid #ef8275;
}
.inner-hero::before, .inner-hero::after {
  content: '';
  position: absolute;
  z-index: -1;
  pointer-events: none;
  width: 330px;
  height: 330px;
  border: 46px solid #ffffff08;
  border-radius: 50%;
  right: -155px;
  top: -170px;
  transform: rotate(-25deg);
}
.inner-hero::after { top: auto; bottom: -320px; right: 8%; width: 440px; height: 440px; border-color: #ffffff06; }
.inner-hero h1 { color: #fff; text-shadow: 0 2px 12px #003c4020; }
.inner-hero .lead { color: #f0ffff; }
.inner-hero .eyebrow { color: #ffe9e3; }
.inner-hero .breadcrumb { color: #e0ffff; border-bottom: 1px solid #8dcdcd; padding-bottom: 3px; }
.inner-hero a:focus-visible { outline: 3px solid #fff; outline-offset: 5px; }
.hero { background: radial-gradient(ellipse at 90% 12%, #a5ece9a6, transparent 62%), radial-gradient(ellipse at 0 95%, #ffdfd3b3, transparent 62%); }
.education-detail .ed-kicker { color: #a13f39; }
.ed-intro { border-bottom-color: #b8ded9; }
.ed-groups span:first-child { color: #fff; background: #08767a; border-color: #08767a; box-shadow: 0 4px 12px #08767a18; }
.ed-groups span:last-child { color: #8c332c; background: #ffe3da; border-color: #edb5aa; }
.ed-card { border-color: #c1dfda; box-shadow: 0 14px 32px #0a656b0c; border-top: 5px solid #109798; }
.ed-card:nth-of-type(2) { background: linear-gradient(145deg, #e4f8f3, #f8fffd); }
.ed-card:nth-of-type(3) { background: linear-gradient(145deg, #fff0e9, #fffaf7); border-color: #efd3c8; border-top-color: #ef8275; }
.ed-card:nth-of-type(2) .ed-number { color: #fff; background: #08767a; }
.ed-card:nth-of-type(3) .ed-number { color: #8c332c; background: #ffd8cc; }
.education-detail .ed-card p:not(.ed-kicker) { color: #3e5e63; }
.ed-therapies { background: radial-gradient(ellipse at 100% 0, #087477 0, transparent 65%), linear-gradient(125deg, #07565f, #086c70); border-color: #08787c; box-shadow: 0 20px 44px #075f681a; }
.education-detail .ed-therapy-heading h2 { color: #fff; }
.education-detail .ed-therapy-heading .ed-kicker { color: #ffe9e3; }
.education-detail .ed-therapy-heading > p:not(.ed-kicker) { color: #edffff; }
.ed-therapy-list li { border: 1px solid #ffffffb3; background: #fff; color: #164b50; box-shadow: 0 6px 15px #003f4410; }
.ed-therapy-list li:nth-child(even) { background: #fff7f3; }
.ed-list-mark { background: #d9f3e9; color: #146552; }
.ed-therapy-list li:nth-child(even) .ed-list-mark { background: #ffe0d4; color: #923f30; }
.ed-evaluation-note { border-top-color: #67b5b5; }
.ed-evaluation-note h3 { color: #fff; }
.education-detail .ed-evaluation-note p { color: #edffff; }
.ed-evaluation-note .ed-info { color: #ffe3d9; border-color: #eab2a3; }
.education-note { background: linear-gradient(135deg, #dff6ef, #f2fcf8); border-color: #a4d9cd; border-top: 4px solid #0b9996; box-shadow: 0 12px 28px #08777e0b; }
.education-note .eyebrow { color: #9c3d35; }
.education-note h3 { color: #075e65; }
.programs { background: linear-gradient(135deg, #dff6f2, #f5fdfb 60%, #ffebe3); }
.catalog-card { border-color: #c5e5df; box-shadow: 0 12px 32px #075c6710; }
.catalog-card:before { height: 5px; background: #08958f; }
.catalog-card:nth-child(3n+2):before { background: #ef8275; }
.catalog-card:nth-child(3n):before { background: #e4b450; }
.catalog-card .card-symbol { background: #d9f4ee; color: #08777a; }
.catalog-card:nth-child(3n+2) .card-symbol { background: #ffe1d6; color: #a44135; }
.catalog-card:nth-child(3n) .card-symbol { background: #fff0c9; color: #86611b; }
@media (prefers-contrast: more) {
  .inner-hero, .ed-therapies { background: #07565f; }
  .ed-card { border-color: #387477; }
}

/* Additions use the established Matices color, typography and spacing. */
.inner-hero h1 em{color:#d3f4eb}
#history-dialog video{height:auto;aspect-ratio:910 / 512}
.brochure-fees{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0 12px;padding:22px 24px;border:1px solid #bcded9;border-radius:20px;background:#f2faf8;color:#153f43;max-width:720px}
.brochure-fees>div{display:flex;flex-direction:column;gap:6px;min-width:0}.brochure-fees>div>span{font-size:12px;line-height:1.5}.brochure-fees>div>strong{font-size:clamp(25px,2.8vw,32px);line-height:1.2;letter-spacing:-.03em;color:#086d73}
.brochure-fees>p{grid-column:1/-1;font-size:13px;line-height:1.8;margin:0}.brochure-fees>.text-link{grid-column:1/-1;font-size:13px;justify-self:start;min-height:44px;display:inline-flex;align-items:center}
.admission-bridge{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);align-items:center;gap:34px;padding-block:42px;margin-block:20px 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.admission-bridge h2{font-size:clamp(27px,3.5vw,42px);line-height:1.16;margin:10px 0 18px;letter-spacing:-.035em}.admission-bridge p:not(.eyebrow){max-width:640px;font-size:15px;line-height:1.8;color:var(--muted);margin:0}.admission-bridge-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px;min-width:0}.admission-bridge-actions .button{white-space:normal;line-height:1.5}.admission-bridge-actions .text-link{min-height:44px;display:inline-flex;align-items:center}
.education-detail .ed-intro-content>p+p,.education-detail .ed-card>p+p{margin-top:18px}.education-detail .text-link{font-size:14px;min-height:44px;display:inline-flex;align-items:center;line-height:1.55}
.contact-details small{display:block;line-height:1.7;margin-top:8px}.contact-details small a{font-size:inherit}
.history-quality-note{font-size:11px;color:#466660;margin:8px 0 0}.history-retry{font:inherit;min-height:44px;border:1px solid #8dbbb5;background:#fff;color:#07565f;border-radius:8px;padding:8px 14px;cursor:pointer}.history-retry[hidden]{display:none}
/* Contact areas preserve the artwork; each visible phone has its own destination. */
.contact-art{position:relative;isolation:isolate}.contact-art img{display:block;width:100%;height:auto}
.contact-hotspot{position:absolute;z-index:2;left:var(--contact-x);top:var(--contact-y);width:var(--contact-w);height:var(--contact-h);border-radius:5px;cursor:pointer}
.contact-hotspot[hidden]{display:none}.contact-hotspot:hover,.contact-hotspot:focus-visible{outline:3px solid #f5c650;outline-offset:2px;background:#f5c65018}
.contact-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.contact-shortcuts>div{min-width:0;padding:16px 18px;border:1px solid #bcded9;border-radius:16px;background:#f2faf8}
.contact-shortcuts strong{display:block;color:#15565b;font-size:12px;line-height:1.6;margin-bottom:5px}
.contact-shortcuts a{display:flex;align-items:center;min-height:44px;color:#075c64;font-size:13px;line-height:1.5;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.contact-shortcuts a:focus-visible,.contact-call:focus-visible{outline:3px solid #087c80;outline-offset:3px;border-radius:3px}
.contact-details .contact-call{display:flex;align-items:center;min-height:44px;width:fit-content;font-size:13px;text-decoration:underline;text-underline-offset:3px}
.ad27-yape-number a{color:inherit;text-decoration:underline;text-underline-offset:5px}
@media(max-width:560px){.contact-shortcuts{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.admission-bridge{grid-template-columns:minmax(0,1fr);gap:22px;padding-block:32px}.brochure-fees{padding:20px;gap:16px}.admission-bridge-actions{width:100%}}
@media(max-width:400px){.brochure-fees{padding:18px;gap:14px}.brochure-fees>div>span{font-size:11px}.brochure-fees>div>strong{font-size:26px}.admission-bridge-actions .button{font-size:12px}}

/* One institutional contact for every department. */
.contact-shortcuts-single{grid-template-columns:minmax(0,1fr)}
.contact-shortcuts-single p{margin:4px 0 10px;font-size:13px;line-height:1.65;color:#466660}

/* Navegación de páginas, con la tipografía y los colores del portal. */
.seo-breadcrumb{margin:0 0 30px;color:var(--jade,#087c80);font-family:inherit;font-size:12px;line-height:1.6}
.seo-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;list-style:none;margin:0;padding:0}
.seo-breadcrumb li{display:flex;align-items:baseline;gap:10px;margin:0;padding:0;font-size:inherit}
.seo-breadcrumb a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.seo-breadcrumb a:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:2px}
.seo-breadcrumb-separator{opacity:.65}
.inner-hero .seo-breadcrumb{color:#e0ffff}
.season-breadcrumb .seo-breadcrumb{margin-bottom:0}
