:root {
  --blue:#0193de; --blue-dark:#006a9c; --navy:#0c334a; --ink:#102c3b;
  --muted:#49697a; --logo-blue:#0193de; --surface-blue:#e7f7fd;
  --hero-surface:#0c334a; --light:#f2f9fc; --line:#c9e2ed; --pale:#eaf6fb;
  --white:#fff; --radius:4px; --radius-panel:8px; --max:1200px;
  --reference:#006a9c; --reference-surface:#edf8fd; --reference-line:#bcddec;
  --footer-bg:#092c40; --footer-text:#d1e4ee; --footer-line:#2d566b;
  --shadow-panel:0 2px 4px #183e5805,0 8px 22px #183e5806;
  --shadow-menu:0 4px 8px #183e5808,0 16px 36px #183e5814;
  --font-body:"Segoe UI",system-ui,-apple-system,Arial,sans-serif;
  --font-editorial:Georgia,"Times New Roman",serif;
  --text-small:.875rem; --text-meta:.8125rem; --text-body:1rem;
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px;
  --space-5:20px; --space-6:24px; --space-8:32px; --space-10:40px; --space-12:48px;
}
*:where(:not(.cecomp-ppc *)) {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:24px}
body {margin:0;background:var(--white);color:var(--ink);font:var(--text-body)/1.6 var(--font-body);-webkit-font-smoothing:antialiased}
h1:where(:not(.cecomp-ppc *)),h2:where(:not(.cecomp-ppc *)),h3:where(:not(.cecomp-ppc *)),p:where(:not(.cecomp-ppc *)) {margin-top:0}
h1:where(:not(.cecomp-ppc *)),h2:where(:not(.cecomp-ppc *)),h3:where(:not(.cecomp-ppc *)) {color:var(--navy);line-height:1.2;letter-spacing:-.025em}
h1:where(:not(.cecomp-ppc *)) {font-size:clamp(2rem,3.3vw,2.75rem);font-weight:650;margin-bottom:16px}
h2:where(:not(.cecomp-ppc *)) {font-size:1.875rem;font-weight:650;margin-bottom:16px}
h3:where(:not(.cecomp-ppc *)) {font-size:1.25rem;font-weight:650;margin-bottom:12px}
p:where(:not(.cecomp-ppc *)) {color:var(--muted);margin-bottom:20px}
a:where(:not(.cecomp-ppc *)) {color:var(--blue-dark);text-decoration:none;text-underline-offset:4px;text-decoration-thickness:1px}
a:hover:where(:not(.cecomp-ppc *)) {text-decoration:underline}
button:where(:not(.cecomp-ppc *)),input:where(:not(.cecomp-ppc *)),textarea:where(:not(.cecomp-ppc *)),select:where(:not(.cecomp-ppc *)) {font:inherit}
button:where(:not(.cecomp-ppc *)) {cursor:pointer;color:inherit}
button:disabled:where(:not(.cecomp-ppc *)) {cursor:default;opacity:.6}
input:where(:not(.cecomp-ppc *)),textarea:where(:not(.cecomp-ppc *)),select:where(:not(.cecomp-ppc *)) {max-width:100%}
button:where(:not(.cecomp-ppc *)),a:where(:not(.cecomp-ppc *)),input:where(:not(.cecomp-ppc *)),select:where(:not(.cecomp-ppc *)),textarea:where(:not(.cecomp-ppc *)) {touch-action:manipulation}
:where(a,button,input,select,textarea,summary):focus-visible:where(:not(.cecomp-ppc *)) {outline:3px solid var(--blue-dark);outline-offset:4px}
main:focus:where(:not(.cecomp-ppc *)) {outline:none}
img:where(:not(.cecomp-ppc *)) {display:block;max-width:100%;height:auto}
svg:where(:not(.cecomp-ppc *)) {flex-shrink:0}
.icon:where(:not(.cecomp-ppc *)) {width:20px;height:20px;vertical-align:middle}
[hidden]:where(:not(.cecomp-ppc *)) {display:none!important}
:where(:not(.cecomp-ppc *))::selection {background:#bfdfef;color:var(--ink)}
.container:where(:not(.cecomp-ppc *)) {width:min(var(--max),calc(100% - 80px));margin-inline:auto}
.sr-only:where(:not(.cecomp-ppc *)) {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.skip-link:where(:not(.cecomp-ppc *)) {position:fixed;top:-100px;left:16px;z-index:100;background:var(--navy);color:#fff;padding:12px 18px}
.skip-link:focus:where(:not(.cecomp-ppc *)) {top:12px}
.small:where(:not(.cecomp-ppc *)) {font-size:var(--text-small)}
.muted:where(:not(.cecomp-ppc *)) {color:var(--muted)}
.spaced:where(:not(.cecomp-ppc *)) {margin-top:28px}
.eyebrow:where(:not(.cecomp-ppc *)) {display:block;color:var(--blue-dark);font-size:.6875rem;font-weight:700;letter-spacing:.1em;line-height:1.6;margin-bottom:12px}
.edition:where(:not(.cecomp-ppc *)) {display:block;font-size:var(--text-meta);line-height:1.6;color:var(--muted);margin-top:16px}
.button:where(:not(.cecomp-ppc *)),.text-link:where(:not(.cecomp-ppc *)) {display:inline-flex;align-items:center;justify-content:space-between;gap:16px;font-size:var(--text-small);font-weight:600;min-height:44px}
.button:where(:not(.cecomp-ppc *)) {padding:11px 17px;border:1px solid var(--blue-dark);border-radius:var(--radius);background:var(--blue-dark);color:#fff;line-height:1.45;text-align:left;transition:background .15s,border-color .15s}
.button:hover:where(:not(.cecomp-ppc *)) {background:var(--navy);border-color:var(--navy);color:#fff;text-decoration:none}
.button-outline:where(:not(.cecomp-ppc *)) {background:transparent;color:var(--blue-dark)}
.button-outline:hover:where(:not(.cecomp-ppc *)) {background:var(--light);color:var(--navy);border-color:var(--navy)}
.text-link .icon:where(:not(.cecomp-ppc *)) {width:17px;height:17px}
.button-row:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px}
.prototype-strip:where(:not(.cecomp-ppc *)) {background:#eef2f5;color:var(--muted);font-size:.6875rem}
.prototype-strip .container:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:27px}
.prototype-strip .container>span:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:8px}
.prototype-strip a:where(:not(.cecomp-ppc *)) {color:var(--muted)}
.prototype-strip .icon:where(:not(.cecomp-ppc *)) {width:13px;height:13px}
.status-dot:where(:not(.cecomp-ppc *)) {width:5px;height:5px;background:var(--muted);border-radius:50%}
.institution-strip:where(:not(.cecomp-ppc *)) {background:#d6ecfa;font-size:.75rem;color:var(--navy)}
.institution-strip .container:where(:not(.cecomp-ppc *)) {display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:32px}
.institution-strip a:where(:not(.cecomp-ppc *)) {color:var(--navy)}
.institution-strip .icon:where(:not(.cecomp-ppc *)) {width:12px;height:12px;margin-left:5px}
.site-header:where(:not(.cecomp-ppc *)) {background:#fff;border-bottom:1px solid var(--line)}
.header-inner:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:auto 1fr;align-items:center}
.brand:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:16px;color:var(--muted);min-height:110px}
.brand:hover:where(:not(.cecomp-ppc *)) {text-decoration:none}
.brand img:where(:not(.cecomp-ppc *)) {width:152px;height:auto}
.brand span:where(:not(.cecomp-ppc *)) {font-size:.8125rem;line-height:1.5;border-left:1px solid var(--line);padding-left:16px}
.institution-utilities:where(:not(.cecomp-ppc *)) {justify-self:end;width:370px;padding-block:12px}
.header-search:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;min-height:44px;border:1px solid #9ebacc;border-radius:var(--radius);background:#fff}
.header-search input:where(:not(.cecomp-ppc *)) {width:100%;min-width:0;border:0;background:none;padding:10px 13px;color:var(--ink);font-size:var(--text-small)}
.header-search input:focus-visible:where(:not(.cecomp-ppc *)) {outline-offset:0}
.header-search button:where(:not(.cecomp-ppc *)) {display:grid;place-items:center;min-width:44px;align-self:stretch;border:0;background:var(--light);border-left:1px solid var(--line);color:var(--blue-dark)}
.header-search button:hover:where(:not(.cecomp-ppc *)) {background:var(--surface-blue)}
.utility-links:where(:not(.cecomp-ppc *)) {display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin-top:5px;font-size:var(--text-meta)}
.utility-links a:where(:not(.cecomp-ppc *)) {padding-block:4px}
.header-tools:where(:not(.cecomp-ppc *)) {display:none}
.main-nav:where(:not(.cecomp-ppc *)) {grid-column:1/-1;display:flex;justify-content:space-between;align-items:stretch;gap:22px;min-height:57px;border-top:1px solid var(--line)}
.main-nav>a:where(:not(.cecomp-ppc *)),.nav-course-row>a:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;font-size:var(--text-small);line-height:1.35;font-weight:600;color:var(--ink);position:relative;padding-block:13px}
.main-nav>.nav-ppc:where(:not(.cecomp-ppc *)) {max-width:215px}
.main-nav>.nav-sistemas:where(:not(.cecomp-ppc *)) {max-width:145px}
.main-nav>a[aria-current]:where(:not(.cecomp-ppc *)),.nav-course-row>a[aria-current]:where(:not(.cecomp-ppc *)) {color:var(--blue-dark)}
.main-nav>a[aria-current]:where(:not(.cecomp-ppc *))::after,.nav-course-row>a[aria-current]:where(:not(.cecomp-ppc *))::after {content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--blue-dark)}
.main-nav>a:hover:where(:not(.cecomp-ppc *)),.nav-course-row>a:hover:where(:not(.cecomp-ppc *)) {color:var(--blue-dark)}
.nav-group:where(:not(.cecomp-ppc *)) {position:relative;display:flex;align-items:stretch;flex-shrink:0}
.nav-course-row:where(:not(.cecomp-ppc *)) {display:flex;align-items:stretch;gap:4px}
.course-toggle:where(:not(.cecomp-ppc *)) {display:grid;place-items:center;width:30px;min-height:44px;background:transparent;border:0;color:var(--blue-dark);border-radius:var(--radius)}
.course-toggle .icon:where(:not(.cecomp-ppc *)) {width:15px;height:15px}
.course-toggle:hover:where(:not(.cecomp-ppc *)),.course-toggle[aria-expanded=true]:where(:not(.cecomp-ppc *)) {background:var(--surface-blue)}
.course-toggle[aria-expanded=true] .icon:where(:not(.cecomp-ppc *)) {transform:rotate(180deg)}
.course-dropdown:where(:not(.cecomp-ppc *)) {position:absolute;top:100%;left:0;width:570px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-panel);display:grid;grid-template-columns:1fr 1.15fr;gap:0;z-index:20;box-shadow:var(--shadow-menu)}
.course-dropdown>section:where(:not(.cecomp-ppc *)) {padding:23px 24px 19px;min-width:0}
.course-dropdown>section+section:where(:not(.cecomp-ppc *)) {background:var(--light);border-left:1px solid var(--line);border-radius:0 var(--radius-panel) var(--radius-panel) 0}
.course-dropdown h2:where(:not(.cecomp-ppc *)) {font-size:.6875rem;letter-spacing:.075em;text-transform:uppercase;margin:0 0 13px;color:var(--muted)}
.course-dropdown a:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:10px;justify-content:space-between;padding:10px;margin-inline:-10px;font-size:var(--text-small);color:var(--ink);line-height:1.45;border-radius:var(--radius);transition:background .15s,color .15s}
.course-dropdown a:hover:where(:not(.cecomp-ppc *)),.course-dropdown a[aria-current]:where(:not(.cecomp-ppc *)) {background:#dfeef7;color:var(--blue-dark);text-decoration:none}
.course-dropdown a[aria-current]:where(:not(.cecomp-ppc *)) {font-weight:650;text-decoration:underline;text-underline-offset:4px}
.course-dropdown .menu-entry-lead:where(:not(.cecomp-ppc *)) {padding-bottom:13px;margin-bottom:5px;border-bottom:1px solid var(--line);border-radius:var(--radius) var(--radius) 0 0}
.menu-entry-title:where(:not(.cecomp-ppc *)) {display:block;font-weight:650}
.menu-entry-description:where(:not(.cecomp-ppc *)) {display:block;margin-top:4px;color:var(--muted);font-size:var(--text-meta);font-weight:400}
.menu-entry-lead .icon:where(:not(.cecomp-ppc *)) {width:16px;height:16px;color:var(--blue-dark)}
.hero:where(:not(.cecomp-ppc *)) {position:relative;isolation:isolate;background:linear-gradient(110deg,var(--hero-surface),var(--light));padding-block:32px}

.hero:where(:not(.cecomp-ppc *))::before {content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='400' viewBox='0 0 480 400'%3E%3Cg fill='none' stroke='%23007bb5' stroke-width='1.2' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M0 24H130V8H226V48H282M0 44H110V84H176V134H248M0 158H44V118H96V204H166V244H218M0 224H22V268H64V328H116V400M0 314H34V350H78V400'/%3E%3Ccircle cx='286' cy='48' r='4'/%3E%3Ccircle cx='252' cy='134' r='4'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left top;background-size:480px 400px;mask-image:linear-gradient(90deg,#000,transparent 460px)}
.hero-heading:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:26px}
.hero-heading h1:where(:not(.cecomp-ppc *)) {font:400 clamp(2.375rem,4.25vw,3.4rem)/1.08 var(--font-editorial);letter-spacing:-.045em;margin:0;max-width:900px}
.course-name-accent:where(:not(.cecomp-ppc *)) {color:var(--blue-dark)}
.hero-heading .eyebrow:where(:not(.cecomp-ppc *)) {margin-bottom:12px}
.hero-heading p:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);margin:13px 0 0;color:#365970}
.hero-university-links:where(:not(.cecomp-ppc *)) {display:flex;flex-direction:column;align-items:stretch;gap:6px}
.calendar-prominent:where(:not(.cecomp-ppc *)),.university-prominent:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:var(--text-small);min-height:44px}
.calendar-prominent:where(:not(.cecomp-ppc *)) {background:#fff;border:1px solid #93b8cf;border-radius:var(--radius);padding:9px 13px;font-weight:600}
.calendar-prominent:hover:where(:not(.cecomp-ppc *)) {background:var(--light);text-decoration:none}
.university-prominent:where(:not(.cecomp-ppc *)) {padding:6px 2px}
.hero-university-links .icon:where(:not(.cecomp-ppc *)) {width:17px;height:17px}
.academic-overview:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.75fr);gap:0;background:var(--white);border:1px solid #b9d4e5;border-radius:var(--radius-panel);box-shadow:var(--shadow-panel)}
.curriculum-overview:where(:not(.cecomp-ppc *)) {padding:25px 28px;background:#f3f9fd;border-radius:var(--radius-panel) 0 0 var(--radius-panel);border-right:1px solid var(--line)}
.curriculum-overview h2:where(:not(.cecomp-ppc *)) {font-size:1.8rem;line-height:1.17;margin-bottom:13px}
.curriculum-overview h2 a:where(:not(.cecomp-ppc *)) {color:var(--navy)}
.curriculum-overview p:where(:not(.cecomp-ppc *)) {font-size:.9375rem;line-height:1.6;margin-bottom:17px}
.curriculum-overview .eyebrow:where(:not(.cecomp-ppc *)) {margin-bottom:10px;color:var(--reference)}
.academic-access:where(:not(.cecomp-ppc *)) {padding:25px 28px 22px;min-width:0}
.academic-access h2:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);font-weight:650;letter-spacing:0;margin:0 0 7px}
.academic-access ul:where(:not(.cecomp-ppc *)) {list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;column-gap:28px}
.academic-access li:where(:not(.cecomp-ppc *)) {border-bottom:1px solid var(--line)}
.academic-access a:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;justify-content:space-between;gap:12px;height:100%;padding:12px 7px;margin-inline:-7px;color:var(--ink);border-radius:var(--radius);transition:background .15s}
.academic-access a:hover:where(:not(.cecomp-ppc *)) {text-decoration:none;background:var(--light)}
.academic-access a:hover strong:where(:not(.cecomp-ppc *)) {color:var(--blue-dark);text-decoration:underline}
.academic-access strong:where(:not(.cecomp-ppc *)) {display:block;font-size:.9375rem;font-weight:650;line-height:1.4}
.academic-access .icon:where(:not(.cecomp-ppc *)) {width:17px;height:17px;color:var(--blue-dark);transition:transform .15s}
.academic-access a:hover .icon:where(:not(.cecomp-ppc *)) {transform:translateX(2px)}
.access-description:where(:not(.cecomp-ppc *)) {display:block;color:var(--muted);font-size:var(--text-meta);line-height:1.5;margin-top:3px}
.semester-label:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);font-weight:400;white-space:nowrap;margin-left:5px;color:var(--muted)}
.section:where(:not(.cecomp-ppc *)) {padding-block:40px}
.section-heading:where(:not(.cecomp-ppc *)) {display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}
.section-heading h2:where(:not(.cecomp-ppc *)) {font-size:2rem;margin:0}
.section-heading .eyebrow:where(:not(.cecomp-ppc *)) {margin-bottom:5px}
.section-heading>p:where(:not(.cecomp-ppc *)) {margin:0;font-size:var(--text-small)}
.news-home:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:minmax(0,2.3fr) minmax(275px,1fr);gap:36px;align-items:start}
.news-card:where(:not(.cecomp-ppc *)) {min-width:0}
.news-card h3:where(:not(.cecomp-ppc *)) {font-size:1.35rem;line-height:1.25;margin:9px 0 12px}
.news-card h3 a:where(:not(.cecomp-ppc *)) {color:var(--navy)}
.news-card h3 a:hover:where(:not(.cecomp-ppc *)) {color:var(--blue-dark)}
.news-card p:where(:not(.cecomp-ppc *)) {font-size:.9375rem;line-height:1.6;margin:0}
.news-card.featured:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:1.03fr 1fr;gap:24px;padding-bottom:25px;border-bottom:1px solid var(--line);align-items:start}
.news-card.featured h3:where(:not(.cecomp-ppc *)) {font-size:1.65rem;line-height:1.17;margin:10px 0 14px}
.news-image:where(:not(.cecomp-ppc *)) {display:block;overflow:hidden;border-radius:2px}
.news-image img:where(:not(.cecomp-ppc *)) {width:100%;height:265px;object-fit:cover}
.meta:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px;color:var(--muted);font-size:var(--text-meta);line-height:1.5}
.meta>span:first-child:where(:not(.cecomp-ppc *)) {color:var(--blue-dark);font-weight:600}
.news-pair:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-top:23px}
.news-aside:where(:not(.cecomp-ppc *)) {padding-top:0}
.guide-box:where(:not(.cecomp-ppc *)) {background:var(--reference-surface);padding:28px 26px;border:1px solid var(--reference-line);border-radius:var(--radius-panel)}
.guide-box h2:where(:not(.cecomp-ppc *)) {font:400 2.125rem/1.1 var(--font-editorial);letter-spacing:-.03em;margin-bottom:16px}
.guide-box .eyebrow:where(:not(.cecomp-ppc *)) {margin-bottom:17px;color:var(--reference)}
.guide-box p:where(:not(.cecomp-ppc *)) {font-size:.9375rem;line-height:1.6;margin-bottom:22px}
.guide-box .button:where(:not(.cecomp-ppc *)) {width:100%}
.guide-box .edition:where(:not(.cecomp-ppc *)) {border-top:1px solid var(--reference-line);margin-top:20px;padding-top:13px;color:var(--reference)}
.subjects:where(:not(.cecomp-ppc *)) {display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:27px;padding-top:18px;border-top:1px solid var(--line)}
.subjects h3:where(:not(.cecomp-ppc *)) {flex-basis:100%;font-size:var(--text-meta);font-weight:650;letter-spacing:0;margin:0;color:var(--muted)}
.subjects>.text-link:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);min-height:34px;margin-left:auto}
.tags:where(:not(.cecomp-ppc *)) {display:flex;flex-wrap:wrap;gap:8px}
.tags a:where(:not(.cecomp-ppc *)) {display:inline-flex;align-items:center;font-size:var(--text-meta);padding:6px 10px;border:1px solid var(--line);border-radius:3px;min-height:34px;line-height:1.5;background:#fff}
.tags a:hover:where(:not(.cecomp-ppc *)) {background:var(--light);border-color:#8faec4}
.about-home:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:1.3fr 1fr;gap:80px;border-top:1px solid var(--line);padding-block:35px}
.about-home h2:where(:not(.cecomp-ppc *)) {font-size:2rem;margin-bottom:14px}
.about-home p:where(:not(.cecomp-ppc *)) {max-width:58ch;margin-bottom:10px}
.link-list:where(:not(.cecomp-ppc *)) {display:flex;flex-direction:column}
.link-list>a:where(:not(.cecomp-ppc *)) {border-bottom:1px solid var(--line);padding-block:14px;font-size:1rem}
.onboarding:where(:not(.cecomp-ppc *)) {padding-block:30px;background:var(--light)}
.onboarding .section-heading:where(:not(.cecomp-ppc *)) {margin-bottom:15px}
.onboarding .section-heading h2:where(:not(.cecomp-ppc *)) {font-size:1.75rem}
.onboarding .service-tile:where(:not(.cecomp-ppc *)) {border-bottom:0;padding-block:12px}
.page-help-end:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px;margin-top:16px;border-top:1px solid var(--line)}
.page-help-end strong:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);font-weight:650}
.page-help-end p:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);margin:3px 0 0}
.page-help-end>div:last-child:where(:not(.cecomp-ppc *)) {display:flex;flex-wrap:wrap;gap:24px}
.page-help-end .text-link:where(:not(.cecomp-ppc *)) {font-size:var(--text-small)}
.page-main:where(:not(.cecomp-ppc *)) {padding-bottom:52px}
.breadcrumb:where(:not(.cecomp-ppc *)) {display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:var(--text-meta);color:var(--muted);margin:22px 0 28px;line-height:1.6}
.breadcrumb a:where(:not(.cecomp-ppc *)) {padding-block:5px}
.page-heading:where(:not(.cecomp-ppc *)) {padding:0 0 27px;border-bottom:1px solid var(--line);margin-bottom:28px}
.page-heading h1:where(:not(.cecomp-ppc *)) {max-width:1000px;margin-bottom:13px}
.page-heading p:where(:not(.cecomp-ppc *)) {max-width:76ch;font-size:1.0625rem;margin:0;line-height:1.6}
.page-heading .eyebrow:where(:not(.cecomp-ppc *)) {margin-bottom:8px}
.subnav:where(:not(.cecomp-ppc *)) {display:flex;flex-wrap:wrap;gap:4px;margin:0 0 32px;padding:6px;background:var(--light);border:1px solid var(--line);border-radius:var(--radius-panel)}
.subnav a:where(:not(.cecomp-ppc *)) {display:inline-flex;align-items:center;font-size:var(--text-small);line-height:1.45;min-height:44px;padding:9px 12px;color:var(--muted);border:1px solid transparent;border-radius:var(--radius);transition:background .15s,color .15s}
.subnav a:hover:where(:not(.cecomp-ppc *)) {color:var(--blue-dark);background:var(--white);text-decoration:underline}
.subnav a[aria-current]:where(:not(.cecomp-ppc *)) {color:var(--navy);background:var(--white);border-color:#abc9dc;font-weight:650;box-shadow:0 1px 3px #183e5808}
.content-grid:where(:not(.cecomp-ppc *)),.contact-layout:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:minmax(0,1.9fr) minmax(280px,1fr);gap:44px;align-items:start}
.side-stack:where(:not(.cecomp-ppc *)) {display:flex;flex-direction:column;gap:24px;min-width:0}
.prose:where(:not(.cecomp-ppc *)) {max-width:72ch;min-width:0}
.prose p:where(:not(.cecomp-ppc *)),.prose li:where(:not(.cecomp-ppc *)) {font-size:1rem;line-height:1.75}
.prose h2:where(:not(.cecomp-ppc *)) {font-size:1.65rem;margin:30px 0 16px}
.prose>h2:first-child:where(:not(.cecomp-ppc *)),.prose>section:first-child>h2:where(:not(.cecomp-ppc *)) {margin-top:0}
.prose h3:where(:not(.cecomp-ppc *)) {font-size:1.2rem}
.prose ul:where(:not(.cecomp-ppc *)) {padding-left:22px;color:var(--muted)}
.prose li:where(:not(.cecomp-ppc *)) {margin-bottom:10px}
.prose p a:where(:not(.cecomp-ppc *)),.prose li a:where(:not(.cecomp-ppc *)) {text-decoration:underline}
.prose .lead-paragraph:where(:not(.cecomp-ppc *)) {font-size:1.1875rem;line-height:1.6;color:var(--ink)}
.panel:where(:not(.cecomp-ppc *)) {padding:26px;background:var(--light);border:1px solid var(--line);border-radius:var(--radius)}
.panel h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem}
.panel p:where(:not(.cecomp-ppc *)) {font-size:.9375rem}
.compact-panel:where(:not(.cecomp-ppc *)) {margin-top:28px}
.two-grid:where(:not(.cecomp-ppc *)),.three-grid:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.three-grid:where(:not(.cecomp-ppc *)) {grid-template-columns:repeat(3,minmax(0,1fr))}
.service-tile:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;color:var(--ink);border-bottom:1px solid var(--line);min-width:0}
.service-tile:hover:where(:not(.cecomp-ppc *)) {text-decoration:none}
.service-tile strong:where(:not(.cecomp-ppc *)) {display:block;font-size:1rem;line-height:1.4;font-weight:600}
.service-tile:hover strong:where(:not(.cecomp-ppc *)) {text-decoration:underline;color:var(--blue-dark)}
.tile-description:where(:not(.cecomp-ppc *)) {display:block;font-size:var(--text-small);line-height:1.5;color:var(--muted);margin-top:5px}
.service-tile .icon:where(:not(.cecomp-ppc *)) {width:17px;height:17px;color:var(--blue-dark)}
.service-tile>.icon-box:where(:not(.cecomp-ppc *)) {display:none}
.directory-section:where(:not(.cecomp-ppc *)) {margin-top:30px}
.directory-section h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem;margin-bottom:8px}
.directory-row:where(:not(.cecomp-ppc *)),.context-link:where(:not(.cecomp-ppc *)),.resource-row:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);color:var(--ink);font-size:var(--text-small);line-height:1.5}
.directory-row strong:where(:not(.cecomp-ppc *)),.resource-row strong:where(:not(.cecomp-ppc *)) {display:block;font-size:1rem;font-weight:600;line-height:1.4}
.directory-row .icon:where(:not(.cecomp-ppc *)),.context-link .icon:where(:not(.cecomp-ppc *)),.resource-row .icon:where(:not(.cecomp-ppc *)) {width:17px;height:17px;color:var(--blue-dark)}
.directory-description:where(:not(.cecomp-ppc *)) {display:block;font-size:var(--text-small);color:var(--muted);line-height:1.6;margin-top:5px}
.directory-row:hover:where(:not(.cecomp-ppc *)),.context-link:hover:where(:not(.cecomp-ppc *)),.resource-row:hover:where(:not(.cecomp-ppc *)) {color:var(--blue-dark);text-decoration:underline;background:var(--light)}
.sidebar-related:where(:not(.cecomp-ppc *)) {background:var(--light);padding:26px;border-radius:var(--radius);min-width:0}
.sidebar-related h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem;line-height:1.2;margin-bottom:16px}
.sidebar-related p:where(:not(.cecomp-ppc *)) {font-size:.9375rem}
.sidebar-related .directory-row:last-child:where(:not(.cecomp-ppc *)) {border-bottom:0;padding-bottom:0}
.calendar-feature:where(:not(.cecomp-ppc *)),.document-lead:where(:not(.cecomp-ppc *)) {padding:26px;background:var(--light);border:1px solid var(--line);border-radius:var(--radius)}
.calendar-feature h2:where(:not(.cecomp-ppc *)),.document-lead h2:where(:not(.cecomp-ppc *)) {font-size:1.65rem}
.calendar-feature p:where(:not(.cecomp-ppc *)),.document-lead p:where(:not(.cecomp-ppc *)) {font-size:1rem;max-width:65ch}
.course-layout:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:80px;align-items:start}
.course-prose:where(:not(.cecomp-ppc *)) {max-width:76ch}
.course-context:where(:not(.cecomp-ppc *)),.graduate-section:where(:not(.cecomp-ppc *)),.course-documents:where(:not(.cecomp-ppc *)) {margin-top:40px}
.course-facts:where(:not(.cecomp-ppc *)) {margin-top:40px;padding:28px 30px;border:1px solid #b9d4e5;border-radius:var(--radius-panel);background:#fff}
.course-facts-intro:where(:not(.cecomp-ppc *)) {margin-bottom:22px}
.course-facts-intro .eyebrow:where(:not(.cecomp-ppc *)) {margin-bottom:7px}
.course-facts-intro h2:where(:not(.cecomp-ppc *)) {margin:0 0 8px}
.course-facts-intro p:where(:not(.cecomp-ppc *)) {margin:0;color:var(--muted);font-size:var(--text-small)}
.course-facts-grid:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;margin:0;border-top:1px solid var(--line)}
.course-facts-grid>div:where(:not(.cecomp-ppc *)) {padding:17px 0;border-bottom:1px solid var(--line)}
.course-facts-grid dt:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);font-weight:650;color:var(--muted);margin-bottom:5px}
.course-facts-grid dd:where(:not(.cecomp-ppc *)) {margin:0;color:var(--ink);font-size:1rem;line-height:1.5;font-weight:600}
.course-entry:where(:not(.cecomp-ppc *)) {padding-top:22px}
.course-entry h3:where(:not(.cecomp-ppc *)) {font-size:1.15rem;margin:0 0 8px}
.course-entry p:where(:not(.cecomp-ppc *)) {margin:0;font-size:.9375rem;line-height:1.65}
.course-source-note:where(:not(.cecomp-ppc *)) {margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.course-source-note p:where(:not(.cecomp-ppc *)) {margin:0;font-size:var(--text-small);line-height:1.65;color:var(--muted)}
.course-source-note a:where(:not(.cecomp-ppc *)) {font-weight:600}

.course-prose section:where(:not(.cecomp-ppc *)) {scroll-margin-top:24px}
.context-links:where(:not(.cecomp-ppc *)) {border-top:1px solid var(--line);margin-top:24px}
.context-link:where(:not(.cecomp-ppc *)) {font-size:.9375rem;padding-block:14px}
.course-aside:where(:not(.cecomp-ppc *)) {display:flex;flex-direction:column;gap:32px}
.page-index:where(:not(.cecomp-ppc *)) {border-left:2px solid var(--line);padding-left:22px}
.page-index h2:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);letter-spacing:0;margin-bottom:10px}
.page-index a:where(:not(.cecomp-ppc *)) {display:block;font-size:var(--text-small);min-height:40px;padding:7px 0}
.course-management:where(:not(.cecomp-ppc *)) {padding:25px;background:var(--light);border-radius:var(--radius)}
.course-management h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem}
.course-management p:where(:not(.cecomp-ppc *)) {font-size:.9375rem}
.related-links:where(:not(.cecomp-ppc *)) {margin-top:15px}
.related-links .directory-row:where(:not(.cecomp-ppc *)) {font-size:var(--text-small)}
.related-links .directory-row:last-child:where(:not(.cecomp-ppc *)) {border-bottom:0}
.graduate-section article:where(:not(.cecomp-ppc *)) {display:flex;gap:24px;padding:22px 0;border-top:1px solid var(--line)}
.graduate-section h3:where(:not(.cecomp-ppc *)) {margin-bottom:10px}
.graduate-section p:where(:not(.cecomp-ppc *)) {margin:0}
.graduate-number:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);font-weight:600;color:var(--blue-dark);padding-top:2px;font-variant-numeric:tabular-nums}
.resource-list:where(:not(.cecomp-ppc *)) {border-top:1px solid var(--line)}
.document-resource:where(:not(.cecomp-ppc *)) {border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0 0}
.document-meta:where(:not(.cecomp-ppc *)) {display:flex;flex-wrap:wrap;gap:8px 20px;font-size:var(--text-meta);color:var(--muted);margin-bottom:19px}
.document-meta>span:first-child:where(:not(.cecomp-ppc *)) {color:var(--reference);font-weight:600}
.document-resource h2:where(:not(.cecomp-ppc *)) {font-size:1.8rem;margin-bottom:13px}
.document-resource p:where(:not(.cecomp-ppc *)) {max-width:58ch}
.document-detail:where(:not(.cecomp-ppc *)) {display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;margin-top:26px;padding-block:16px;border-top:1px solid var(--line);font-size:var(--text-small);color:var(--muted)}
.document-detail strong:where(:not(.cecomp-ppc *)) {font-weight:500;color:var(--ink)}
.archive-context:where(:not(.cecomp-ppc *)) {padding-top:30px}
.archive-context h2:where(:not(.cecomp-ppc *)) {font-size:1.375rem}
.archive-context p:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);max-width:66ch}
.semester-list:where(:not(.cecomp-ppc *)) {display:flex;flex-wrap:wrap;gap:12px 22px;list-style:none;padding:0;margin:20px 0 22px;font-size:.9375rem;font-variant-numeric:tabular-nums;color:var(--ink)}
.semester-list li:where(:not(.cecomp-ppc *)) {padding-bottom:6px;border-bottom:1px solid var(--line)}
.programs-reference:where(:not(.cecomp-ppc *)) {margin-block:24px}
.catalog-section:where(:not(.cecomp-ppc *)) {margin-top:30px}
.catalog-caption:where(:not(.cecomp-ppc *)) {display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
.catalog-caption h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem;margin:0}
.catalog-caption>span:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);color:var(--muted)}
.systems-catalog:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:24px;align-items:stretch}
.catalog-card:where(:not(.cecomp-ppc *)) {display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #b7cedc;border-radius:6px;padding:25px}
.catalog-card .eyebrow:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);letter-spacing:0;font-weight:500;margin-bottom:17px}
.catalog-card h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem;line-height:1.25;margin-bottom:15px;overflow-wrap:anywhere}
.catalog-card>p:where(:not(.cecomp-ppc *)) {font-size:.9375rem;line-height:1.65;margin-bottom:26px;overflow-wrap:anywhere}
.catalog-card-footer:where(:not(.cecomp-ppc *)) {margin-top:auto;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}
.catalog-card-footer>span:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);color:var(--muted);font-weight:500}
.catalog-card-footer .button:where(:not(.cecomp-ppc *)) {font-size:var(--text-small)}
.catalog-related:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}
.catalog-related h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem}
.catalog-related p:where(:not(.cecomp-ppc *)) {font-size:.9375rem;margin-bottom:10px}
.catalog-editor:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:310px minmax(0,1fr);gap:32px;align-items:start}
.catalog-editor .systems-catalog:where(:not(.cecomp-ppc *)) {grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr))}
.catalog-editor .panel:where(:not(.cecomp-ppc *)) {padding:22px}
.model-notice:where(:not(.cecomp-ppc *)) {padding:16px 20px;background:var(--light);border-left:3px solid var(--blue-dark);font-size:var(--text-small);margin-bottom:28px}
.model-remove:where(:not(.cecomp-ppc *)) {min-height:44px;border:0;background:transparent;text-decoration:underline;text-underline-offset:3px;color:var(--blue-dark);font-size:var(--text-small);padding:8px 0}
.original-plugin-slot:where(:not(.cecomp-ppc *)) {padding:28px;margin-top:28px;border:1px solid var(--line);background:#fff;min-height:270px}
.original-plugin-slot h2:where(:not(.cecomp-ppc *)) {font-size:1.75rem}
.original-plugin-slot p:where(:not(.cecomp-ppc *)) {max-width:80ch}
.plugin-preview-explanation:where(:not(.cecomp-ppc *)) {padding:22px;background:var(--light);font-size:var(--text-small)}
.plugin-preview-explanation p:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);margin:10px 0 0}
.semester-bar:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:24px;padding:24px;background:var(--light);margin-bottom:18px;border-bottom:1px solid var(--line)}
.semester:where(:not(.cecomp-ppc *)) {font-size:2rem;font-weight:600;padding-right:24px;border-right:1px solid var(--line);color:var(--blue-dark)}
.semester-bar p:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);margin:3px 0 0}
.semester-bar>.icon:where(:not(.cecomp-ppc *)) {margin-left:auto;width:26px;height:26px}
.year-list:where(:not(.cecomp-ppc *)) {border-top:1px solid var(--line)}
.year-list>a:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:28px;padding:21px 0;border-bottom:1px solid var(--line);color:var(--ink)}
.year-list .year:where(:not(.cecomp-ppc *)) {font-size:1.65rem;color:var(--blue-dark);min-width:70px}
.year-list>a>.icon:where(:not(.cecomp-ppc *)) {margin-left:auto;width:18px;height:18px}
.year-list strong:where(:not(.cecomp-ppc *)) {font-size:1rem;font-weight:600}
.coordinator-banner:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:24px;background:var(--light);padding:28px;margin-bottom:32px;border-radius:var(--radius)}
.coordinator-banner h2:where(:not(.cecomp-ppc *)) {font-size:1.65rem;margin:0 0 8px}
.coordinator-banner p:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);margin:0}
.coordinator-banner .eyebrow:where(:not(.cecomp-ppc *)) {margin-bottom:7px}
.coordinator-banner>.text-link:where(:not(.cecomp-ppc *)) {margin-left:auto}
.coordinator-banner a:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);overflow-wrap:anywhere}
.portrait:where(:not(.cecomp-ppc *)) {width:88px;height:88px;border-radius:50%;object-fit:cover;object-position:center 30%;background:var(--light);flex-shrink:0}
.portrait-large:where(:not(.cecomp-ppc *)) {width:116px;height:116px}
.faculty-grid:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.faculty-card:where(:not(.cecomp-ppc *)) {padding:24px 0;border-bottom:1px solid var(--line);min-width:0}
.faculty-card h2:where(:not(.cecomp-ppc *)) {font-size:1.3rem;line-height:1.3;margin:18px 0 12px}
.faculty-card .role-label:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);color:var(--muted);display:block}
.profile-heading:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:26px;margin-block:26px 35px}
.profile-heading h1:where(:not(.cecomp-ppc *)) {font-size:2.3rem;margin-bottom:12px;overflow-wrap:anywhere}
.profile-heading p:where(:not(.cecomp-ppc *)) {margin:0}
.profile-email:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);overflow-wrap:anywhere;text-decoration:underline}
.support-section:where(:not(.cecomp-ppc *)) {border-top:1px solid var(--line);margin-top:40px;padding-top:32px}
.support-card:where(:not(.cecomp-ppc *)) {display:flex;gap:24px;background:var(--light);padding:28px;border-radius:var(--radius)}
.support-card>.icon-box:where(:not(.cecomp-ppc *)) {display:none}
.support-card h2:where(:not(.cecomp-ppc *)) {font-size:1.65rem;margin-bottom:12px}
.support-card p:where(:not(.cecomp-ppc *)) {font-size:.9375rem}
.support-card a:where(:not(.cecomp-ppc *)) {overflow-wrap:anywhere}
.steps>div:where(:not(.cecomp-ppc *)) {display:flex;align-items:start;gap:22px;padding:23px 0;border-bottom:1px solid var(--line)}
.steps>div>span:where(:not(.cecomp-ppc *)) {color:var(--blue-dark);font-size:var(--text-small);font-weight:600;padding-top:5px}
.steps h3:where(:not(.cecomp-ppc *)) {font-size:1.2rem;margin-bottom:10px}
.steps p:where(:not(.cecomp-ppc *)) {margin:0}
.notice:where(:not(.cecomp-ppc *)) {background:var(--light);border-left:3px solid var(--blue-dark);padding:20px 24px;margin-block:25px}
.notice p:where(:not(.cecomp-ppc *)) {margin:8px 0 0}
.check-list:where(:not(.cecomp-ppc *)) {list-style:disc;color:var(--muted);padding-left:20px}
.check-list li:where(:not(.cecomp-ppc *)) {margin-bottom:10px;padding-left:4px}
.empty-state:where(:not(.cecomp-ppc *)) {text-align:center;background:var(--light);padding:48px 24px;margin-top:25px;border-radius:var(--radius)}
.empty-state h2:where(:not(.cecomp-ppc *)) {font-size:1.7rem}
.empty-state>.icon:where(:not(.cecomp-ppc *)) {width:34px;height:34px;margin-bottom:16px;color:var(--blue-dark)}
.empty-state p:where(:not(.cecomp-ppc *)) {max-width:65ch;margin-inline:auto}
.filter-form:where(:not(.cecomp-ppc *)),.filter-bar:where(:not(.cecomp-ppc *)) {margin-bottom:25px}
.filter-bar:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:1.5fr 1fr;gap:26px;align-items:end}
.filter-form label:where(:not(.cecomp-ppc *)),.tag-selector label:where(:not(.cecomp-ppc *)) {display:block;font-size:var(--text-small);font-weight:600;margin-bottom:8px}
.filter-bar .filter-form:where(:not(.cecomp-ppc *)) {margin:0}
.input-group:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:12px;padding:4px 4px 4px 13px;border:1px solid #8faabd;border-radius:var(--radius);background:#fff}
.input-group input:where(:not(.cecomp-ppc *)) {flex:1;min-width:0;border:0;background:none;padding:9px 0;color:var(--ink);font-size:1rem}
.input-group>.icon:where(:not(.cecomp-ppc *)) {color:var(--muted)}
.input-group .button:where(:not(.cecomp-ppc *)) {min-height:42px}
.tag-selector select:where(:not(.cecomp-ppc *)) {width:100%;padding:12px;border:1px solid #8faabd;border-radius:var(--radius);color:var(--ink);background:#fff;min-height:52px}
.results-line:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);color:var(--muted);margin-block:18px 24px}
.news-list:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.news-list .news-card:where(:not(.cecomp-ppc *)) {border-bottom:1px solid var(--line);padding-bottom:24px}
.news-list .news-copy:where(:not(.cecomp-ppc *)) {padding-top:18px}
.news-list .text-link:where(:not(.cecomp-ppc *)) {margin-top:12px}
.news-list .news-image img:where(:not(.cecomp-ppc *)) {height:220px}
.topics-grid:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}
.topics-grid>a:where(:not(.cecomp-ppc *)) {display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}
.topics-grid>a>span:last-child:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:12px;font-size:var(--text-small)}
.contact-form:where(:not(.cecomp-ppc *)) {background:#fff;padding:28px;border:1px solid var(--line)}
.contact-form h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem}
.contact-form>label:where(:not(.cecomp-ppc *)) {display:block;font-weight:600;font-size:var(--text-small);margin:19px 0 7px}
.contact-form>label span:where(:not(.cecomp-ppc *)) {font-weight:400;color:var(--muted)}
.contact-form>input:where(:not(.cecomp-ppc *)),.contact-form>select:where(:not(.cecomp-ppc *)),.contact-form>textarea:where(:not(.cecomp-ppc *)) {display:block;width:100%;min-height:46px;padding:10px 12px;border:1px solid #8faabd;border-radius:var(--radius);background:#fff;color:var(--ink)}
.contact-form>textarea:where(:not(.cecomp-ppc *)) {resize:vertical;min-height:130px}
.contact-form>.small:where(:not(.cecomp-ppc *)) {margin-top:16px}
.demo-message:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);background:var(--light);padding:12px 15px;color:var(--muted)}
.contact-email:where(:not(.cecomp-ppc *)) {display:inline-block;font-size:1.35rem;overflow-wrap:anywhere;text-decoration:underline}
.contact-info>.icon:where(:not(.cecomp-ppc *)) {margin-bottom:16px;color:var(--blue-dark)}
.contact-info>a:where(:not(.cecomp-ppc *)) {font-size:1.125rem;overflow-wrap:anywhere;text-decoration:underline}
.contact-info p:where(:not(.cecomp-ppc *)) {margin:20px 0 0}
#contact-status:where(:not(.cecomp-ppc *)) {padding:16px;background:var(--light);color:var(--ink);border-left:3px solid var(--blue-dark);font-size:var(--text-small);margin-top:24px}
.article-detail:where(:not(.cecomp-ppc *)) {max-width:900px;margin-inline:auto}
.article-detail h1:where(:not(.cecomp-ppc *)) {font:400 clamp(2rem,4vw,3rem)/1.16 var(--font-editorial);margin:15px 0 22px}
.article-lead:where(:not(.cecomp-ppc *)) {font-size:1.2rem;line-height:1.7}
.article-detail figure:where(:not(.cecomp-ppc *)) {margin:30px 0}
.article-detail figure img:where(:not(.cecomp-ppc *)) {width:100%;height:auto;border-radius:2px}
.article-detail figcaption:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);color:var(--muted);padding-top:8px}
.article-tags:where(:not(.cecomp-ppc *)) {margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}
.article-tags h2:where(:not(.cecomp-ppc *)) {font-size:1.15rem}
.back-link:where(:not(.cecomp-ppc *)) {margin-bottom:20px}
.search-result:where(:not(.cecomp-ppc *)) {display:block;padding:22px 0;border-bottom:1px solid var(--line)}
.search-result:hover:where(:not(.cecomp-ppc *)) {background:var(--light);text-decoration:none}
.search-result h2:where(:not(.cecomp-ppc *)) {font-size:1.35rem;margin-bottom:8px}
.search-result:hover h2:where(:not(.cecomp-ppc *)) {text-decoration:underline}
.search-result p:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);margin:0}
.site-footer:where(:not(.cecomp-ppc *)) {background:var(--footer-bg);color:var(--footer-text);border-top:1px solid var(--footer-line);padding-top:38px;margin-top:0}
.footer-grid:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:1.5fr 1fr 1.35fr .95fr;gap:38px}
.footer-name:where(:not(.cecomp-ppc *)) {display:block;font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:.015em}
.footer-name>span:where(:not(.cecomp-ppc *)) {font-weight:400;color:var(--footer-text)}
.site-footer h2:where(:not(.cecomp-ppc *)) {font-size:.9375rem;letter-spacing:0;margin-bottom:14px;color:#fff}
.site-footer p:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);margin:12px 0;color:var(--footer-text)}
.site-footer a:where(:not(.cecomp-ppc *)) {display:block;font-size:var(--text-meta);line-height:1.55;padding-block:6px;color:#e5f1f9}
.site-footer a:hover:where(:not(.cecomp-ppc *)) {color:#fff;text-decoration:underline}
.site-footer :focus-visible:where(:not(.cecomp-ppc *)) {outline-color:#83d3f5}
.footer-address:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);font-style:normal;color:var(--footer-text);line-height:1.8;margin:18px 0 8px}
.footer-address strong:where(:not(.cecomp-ppc *)) {display:block;color:#fff;font-weight:600}
.footer-bottom:where(:not(.cecomp-ppc *)) {display:flex;justify-content:space-between;gap:24px;margin-top:28px;padding-block:20px;border-top:1px solid var(--footer-line);color:var(--footer-text);font-size:var(--text-meta)}
@media (max-width:1150px) {
  .container:where(:not(.cecomp-ppc *)) {width:calc(100% - 48px)}
  .main-nav:where(:not(.cecomp-ppc *)) {gap:18px}
  .main-nav>.nav-ppc:where(:not(.cecomp-ppc *)) {max-width:190px}
  .hero-heading h1:where(:not(.cecomp-ppc *)) {font-size:2.75rem}
  .academic-overview:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr 1.65fr}
  .curriculum-overview:where(:not(.cecomp-ppc *)),.academic-access:where(:not(.cecomp-ppc *)) {padding-inline:24px}
  .academic-access ul:where(:not(.cecomp-ppc *)) {column-gap:22px}
  .news-home:where(:not(.cecomp-ppc *)) {gap:28px;grid-template-columns:minmax(0,2fr) minmax(265px,1fr)}
  .news-card.featured:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .news-card.featured .news-image img:where(:not(.cecomp-ppc *)) {height:265px}
  .course-layout:where(:not(.cecomp-ppc *)) {gap:40px;grid-template-columns:minmax(0,1fr) 280px}
  .footer-grid:where(:not(.cecomp-ppc *)) {gap:26px}
}
@media (max-width:1050px) {
  .header-inner:where(:not(.cecomp-ppc *)) {display:flex;flex-wrap:wrap;justify-content:space-between}
  .brand:where(:not(.cecomp-ppc *)) {min-height:90px}
  .brand img:where(:not(.cecomp-ppc *)) {width:140px}
  .brand span:where(:not(.cecomp-ppc *)) {font-size:.75rem}
  .institution-utilities:where(:not(.cecomp-ppc *)) {display:none}
  .header-tools:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:15px}
  .search-toggle:where(:not(.cecomp-ppc *)) {display:grid;place-items:center;min-width:44px;min-height:44px}
  .menu-toggle:where(:not(.cecomp-ppc *)) {display:flex;align-items:center;gap:10px;min-height:44px;padding:9px 13px;font-size:var(--text-small);border:1px solid #9bb7c9;background:#fff;border-radius:var(--radius)}
  .menu-toggle .icon:where(:not(.cecomp-ppc *)) {width:20px;height:20px}
  .main-nav:where(:not(.cecomp-ppc *)) {display:none;flex-basis:100%;min-height:0;padding-block:10px 18px;gap:0}
  .main-nav.is-open:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
  .main-nav>a:where(:not(.cecomp-ppc *)),.nav-course-row>a:where(:not(.cecomp-ppc *)) {font-size:1rem;min-height:46px;padding:12px 5px}
  .main-nav>.nav-ppc:where(:not(.cecomp-ppc *)),.main-nav>.nav-sistemas:where(:not(.cecomp-ppc *)) {max-width:none}
  .main-nav>a[aria-current]:where(:not(.cecomp-ppc *))::after,.nav-course-row>a[aria-current]:where(:not(.cecomp-ppc *))::after {display:none}
  .main-nav>a[aria-current]:where(:not(.cecomp-ppc *)),.nav-course-row>a[aria-current]:where(:not(.cecomp-ppc *)) {text-decoration:underline}
  .nav-group:where(:not(.cecomp-ppc *)) {display:block;grid-column:1/-1}
  .nav-course-row:where(:not(.cecomp-ppc *)) {align-items:center;justify-content:space-between}
  .course-toggle:where(:not(.cecomp-ppc *)) {width:44px}
  .course-dropdown:where(:not(.cecomp-ppc *)) {position:static;width:auto;box-shadow:none;margin-block:4px 14px}
  .course-dropdown a:where(:not(.cecomp-ppc *)) {min-height:44px}
}
@media (max-width:850px) {
  .hero-heading:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .hero-heading h1:where(:not(.cecomp-ppc *)) {font-size:2.875rem;max-width:700px}
  .hero-university-links:where(:not(.cecomp-ppc *)) {flex-direction:row;gap:18px;flex-wrap:wrap}
  .academic-overview:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr 1.4fr}
  .academic-access ul:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .academic-access a:where(:not(.cecomp-ppc *)) {padding-block:10px}
  .curriculum-overview h2:where(:not(.cecomp-ppc *)) {font-size:1.65rem}
  .news-home:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .news-card.featured:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr 1fr}
  .guide-box:where(:not(.cecomp-ppc *)) {max-width:none;padding:26px}
  .content-grid:where(:not(.cecomp-ppc *)),.contact-layout:where(:not(.cecomp-ppc *)),.course-layout:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr;gap:32px}
  .course-aside:where(:not(.cecomp-ppc *)) {display:contents}
  .page-index:where(:not(.cecomp-ppc *)) {grid-row:1}
  .course-prose:where(:not(.cecomp-ppc *)) {grid-row:2}
  .course-management:where(:not(.cecomp-ppc *)) {grid-row:3}
  .page-index:where(:not(.cecomp-ppc *)) {border-left:0;border-bottom:1px solid var(--line);padding:0 0 16px;display:flex;flex-wrap:wrap;gap:0 22px}
  .page-index h2:where(:not(.cecomp-ppc *)) {flex-basis:100%}
  .three-grid:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .onboarding .service-tile+.service-tile:where(:not(.cecomp-ppc *)) {border-top:1px solid var(--line)}
  .about-home:where(:not(.cecomp-ppc *)) {gap:35px}
  .catalog-editor:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .catalog-editor .contact-form:where(:not(.cecomp-ppc *)) {max-width:600px}
  .faculty-grid:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr 1fr}
  .news-list:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr 1fr}
  .news-list .news-card:first-child:where(:not(.cecomp-ppc *)) {grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:25px}
  .news-list .news-card:first-child .news-copy:where(:not(.cecomp-ppc *)) {padding-top:0}
  .topics-grid:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr 1fr}
  .coordinator-banner:where(:not(.cecomp-ppc *)) {flex-wrap:wrap}
  .coordinator-banner>.text-link:where(:not(.cecomp-ppc *)) {margin-left:0}
  .footer-grid:where(:not(.cecomp-ppc *)) {grid-template-columns:1.25fr 1fr;gap:30px}
}
@media (max-width:600px) {
  .container:where(:not(.cecomp-ppc *)) {width:calc(100% - 36px)}
  .prototype-strip .container:where(:not(.cecomp-ppc *)) {min-height:26px}
  .prototype-strip a:where(:not(.cecomp-ppc *)) {font-size:0}
  .prototype-strip a .icon:where(:not(.cecomp-ppc *)) {width:14px;height:14px}
  .institution-strip:where(:not(.cecomp-ppc *)) {font-size:.6875rem}
  .institution-strip .container:where(:not(.cecomp-ppc *)) {gap:14px;min-height:42px}
  .institution-strip a:first-child:where(:not(.cecomp-ppc *)) {max-width:235px;line-height:1.4}
  .institution-strip .icon:where(:not(.cecomp-ppc *)) {display:none}
  .brand:where(:not(.cecomp-ppc *)) {min-height:78px;gap:0}
  .brand img:where(:not(.cecomp-ppc *)) {width:clamp(112px,34vw,132px)}
  .brand span:where(:not(.cecomp-ppc *)) {display:none}
  .header-tools:where(:not(.cecomp-ppc *)) {gap:6px}
  .main-nav.is-open:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .course-dropdown:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .course-dropdown>section:where(:not(.cecomp-ppc *)) {padding:20px 22px 16px}
  .course-dropdown>section+section:where(:not(.cecomp-ppc *)) {border-left:0;border-top:1px solid var(--line);border-radius:0 0 var(--radius-panel) var(--radius-panel)}
  .hero:where(:not(.cecomp-ppc *)) {padding-block:25px 28px}
  .hero:where(:not(.cecomp-ppc *))::before {opacity:.11;background-size:360px 300px;mask-image:linear-gradient(90deg,#000,transparent 330px)}
  .hero-heading:where(:not(.cecomp-ppc *)) {gap:18px;margin-bottom:22px}
  .hero-heading h1:where(:not(.cecomp-ppc *)) {font-size:2.375rem;max-width:390px;line-height:1.08}
  .hero-heading p:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);max-width:32ch;margin-top:12px}
  .hero-heading .eyebrow:where(:not(.cecomp-ppc *)) {font-size:.6875rem;margin-bottom:10px}
  .hero-university-links:where(:not(.cecomp-ppc *)) {flex-direction:column;align-items:flex-start;gap:1px}
  .calendar-prominent:where(:not(.cecomp-ppc *)),.university-prominent:where(:not(.cecomp-ppc *)) {font-size:var(--text-small)}
  .university-prominent:where(:not(.cecomp-ppc *)) {gap:24px}
  .academic-overview:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .curriculum-overview:where(:not(.cecomp-ppc *)) {padding:22px;border-right:0;border-bottom:1px solid var(--line);border-radius:var(--radius-panel) var(--radius-panel) 0 0}
  .curriculum-overview h2:where(:not(.cecomp-ppc *)) {font-size:1.75rem}
  .curriculum-overview p:where(:not(.cecomp-ppc *)) {font-size:.9375rem;margin-bottom:14px}
  .academic-access:where(:not(.cecomp-ppc *)) {padding:22px}
  .academic-access h2:where(:not(.cecomp-ppc *)) {margin-bottom:4px}
  .academic-access a:where(:not(.cecomp-ppc *)) {padding-block:11px}
  .academic-access strong:where(:not(.cecomp-ppc *)) {font-size:.9375rem}
  .access-description:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta)}
  .section:where(:not(.cecomp-ppc *)) {padding-block:29px}
  .section-heading:where(:not(.cecomp-ppc *)) {gap:12px;flex-wrap:wrap;margin-bottom:20px;align-items:center}
  .section-heading h2:where(:not(.cecomp-ppc *)) {font-size:1.75rem}
  .section-heading .text-link:where(:not(.cecomp-ppc *)) {font-size:var(--text-small)}
  .section-heading .eyebrow:where(:not(.cecomp-ppc *)) {margin-bottom:5px}
  .news-card.featured:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr;gap:18px;padding-bottom:22px}
  .news-card.featured .news-image img:where(:not(.cecomp-ppc *)) {height:auto;aspect-ratio:1.5;object-fit:cover}
  .news-card.featured h3:where(:not(.cecomp-ppc *)) {font-size:1.65rem}
  .news-pair:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr;gap:22px;padding-top:21px}
  .news-pair .news-card+.news-card:where(:not(.cecomp-ppc *)) {border-top:1px solid var(--line);padding-top:21px}
  .news-pair .news-card h3:where(:not(.cecomp-ppc *)) {font-size:1.3rem}
  .news-card p:where(:not(.cecomp-ppc *)) {font-size:.9375rem}
  .subjects:where(:not(.cecomp-ppc *)) {gap:8px 12px;margin-top:23px}
  .subjects>.text-link:where(:not(.cecomp-ppc *)) {margin-left:0}
  .tags a:where(:not(.cecomp-ppc *)) {min-height:40px}
  .guide-box:where(:not(.cecomp-ppc *)) {padding:25px 23px}
  .guide-box h2:where(:not(.cecomp-ppc *)) {font-size:2.15rem}
  .about-home:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr;gap:18px}
  .about-home h2:where(:not(.cecomp-ppc *)) {font-size:1.75rem}
  .about-home p:where(:not(.cecomp-ppc *)) {font-size:.9375rem}
  .onboarding:where(:not(.cecomp-ppc *)) {padding-block:26px}
  .onboarding .service-tile:where(:not(.cecomp-ppc *)) {padding-block:16px}
  .page-help-end:where(:not(.cecomp-ppc *)) {display:block;padding-block:22px}
  .page-help-end>div:last-child:where(:not(.cecomp-ppc *)) {margin-top:12px}
  .breadcrumb:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);gap:8px;margin:18px 0 23px}
  .page-heading:where(:not(.cecomp-ppc *)) {padding-bottom:22px;margin-bottom:24px}
  .page-heading h1:where(:not(.cecomp-ppc *)) {font-size:2rem;line-height:1.14;overflow-wrap:anywhere}
  .page-heading p:where(:not(.cecomp-ppc *)) {font-size:1rem}
  .subnav:where(:not(.cecomp-ppc *)) {gap:4px;margin-bottom:26px}
  .subnav a:where(:not(.cecomp-ppc *)) {font-size:var(--text-small);padding-inline:10px}
  .prose h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem}
  .prose .lead-paragraph:where(:not(.cecomp-ppc *)) {font-size:1.125rem}
  .course-context:where(:not(.cecomp-ppc *)),.graduate-section:where(:not(.cecomp-ppc *)),.course-documents:where(:not(.cecomp-ppc *)) {margin-top:32px}
  .course-facts:where(:not(.cecomp-ppc *)) {margin-top:32px;padding:24px}
  .course-facts-grid:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}

  .graduate-section article:where(:not(.cecomp-ppc *)) {gap:17px}
  .graduate-section h3:where(:not(.cecomp-ppc *)) {font-size:1.1875rem}
  .two-grid:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .panel:where(:not(.cecomp-ppc *)),.sidebar-related:where(:not(.cecomp-ppc *)),.calendar-feature:where(:not(.cecomp-ppc *)),.document-lead:where(:not(.cecomp-ppc *)) {padding:23px 21px}
  .document-resource:where(:not(.cecomp-ppc *)) {padding-top:22px}
  .document-resource h2:where(:not(.cecomp-ppc *)) {font-size:1.65rem}
  .document-meta:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);gap:6px 14px}
  .document-detail:where(:not(.cecomp-ppc *)) {display:block}
  .document-detail strong:where(:not(.cecomp-ppc *)) {display:block;margin-top:3px}
  .catalog-caption:where(:not(.cecomp-ppc *)) {gap:16px;align-items:baseline}
  .catalog-caption h2:where(:not(.cecomp-ppc *)) {font-size:1.4rem}
  .catalog-caption>span:where(:not(.cecomp-ppc *)) {font-size:var(--text-meta);white-space:nowrap}
  .systems-catalog:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr;gap:20px}
  .catalog-card:where(:not(.cecomp-ppc *)) {padding:24px 22px}
  .catalog-card h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem}
  .catalog-related:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr;gap:24px;margin-top:30px;padding-top:25px}
  .catalog-related>div+div:where(:not(.cecomp-ppc *)) {border-top:1px solid var(--line);padding-top:24px}
  .original-plugin-slot:where(:not(.cecomp-ppc *)) {padding:22px 18px}
  .original-plugin-slot h2:where(:not(.cecomp-ppc *)) {font-size:1.6rem}
  .plugin-preview-explanation:where(:not(.cecomp-ppc *)) {padding:18px}
  .semester-bar:where(:not(.cecomp-ppc *)) {gap:17px;padding:20px}
  .semester:where(:not(.cecomp-ppc *)) {font-size:1.65rem;padding-right:17px}
  .semester-bar>.icon:where(:not(.cecomp-ppc *)) {display:none}
  .year-list>a:where(:not(.cecomp-ppc *)) {gap:18px}
  .year-list .year:where(:not(.cecomp-ppc *)) {min-width:60px;font-size:1.5rem}
  .year-list strong:where(:not(.cecomp-ppc *)) {font-size:.9375rem}
  .faculty-grid:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .faculty-card:where(:not(.cecomp-ppc *)) {display:grid;grid-template-columns:70px minmax(0,1fr);gap:0 20px;padding:21px 0}
  .faculty-card>.portrait:where(:not(.cecomp-ppc *)) {width:70px;height:70px;grid-row:1/4}
  .faculty-card h2:where(:not(.cecomp-ppc *)) {font-size:1.25rem;margin:0 0 10px}
  .faculty-card>.role-label:where(:not(.cecomp-ppc *)),.faculty-card>.text-link:where(:not(.cecomp-ppc *)) {grid-column:2}
  .profile-heading:where(:not(.cecomp-ppc *)) {align-items:flex-start;gap:18px}
  .profile-heading h1:where(:not(.cecomp-ppc *)) {font-size:1.8rem}
  .profile-heading p:where(:not(.cecomp-ppc *)) {font-size:var(--text-small)}
  .portrait-large:where(:not(.cecomp-ppc *)) {width:76px;height:76px}
  .coordinator-banner:where(:not(.cecomp-ppc *)) {padding:23px 20px;gap:16px}
  .coordinator-banner>.portrait:where(:not(.cecomp-ppc *)) {width:64px;height:64px}
  .coordinator-banner>div:where(:not(.cecomp-ppc *)) {flex:1;min-width:0}
  .coordinator-banner h2:where(:not(.cecomp-ppc *)) {font-size:1.35rem}
  .coordinator-banner>.text-link:where(:not(.cecomp-ppc *)) {flex-basis:100%;justify-content:flex-start}
  .support-card:where(:not(.cecomp-ppc *)) {padding:23px 21px}
  .support-card h2:where(:not(.cecomp-ppc *)) {font-size:1.5rem}
  .filter-bar:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr;gap:20px}
  .input-group:where(:not(.cecomp-ppc *)) {gap:7px;padding-left:10px}
  .input-group .button:where(:not(.cecomp-ppc *)) {padding-inline:12px}
  .input-group input:where(:not(.cecomp-ppc *)) {font-size:1rem}
  .news-list:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .news-list .news-card:first-child:where(:not(.cecomp-ppc *)) {display:block}
  .news-list .news-card:first-child .news-copy:where(:not(.cecomp-ppc *)) {padding-top:18px}
  .topics-grid:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr}
  .contact-form:where(:not(.cecomp-ppc *)) {padding:23px 20px}
  .contact-form .button:where(:not(.cecomp-ppc *)) {width:100%}
  .contact-email:where(:not(.cecomp-ppc *)) {font-size:1.15rem}
  .article-detail h1:where(:not(.cecomp-ppc *)) {font-size:2rem}
  .article-lead:where(:not(.cecomp-ppc *)) {font-size:1.125rem}
  .footer-grid:where(:not(.cecomp-ppc *)) {grid-template-columns:1fr 1fr;gap:30px 22px}
  .footer-grid>div:first-child:where(:not(.cecomp-ppc *)) {grid-column:1/-1}
  .footer-grid>div:nth-child(3):where(:not(.cecomp-ppc *)) {grid-column:1/-1;grid-row:3}
  .footer-grid>div:last-child:where(:not(.cecomp-ppc *)) {grid-column:2;grid-row:2}
  .footer-bottom:where(:not(.cecomp-ppc *)) {display:block;margin-top:22px;font-size:var(--text-meta)}
  .footer-bottom>span:where(:not(.cecomp-ppc *)) {display:block;margin-bottom:4px}
}
@media (prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto}
  *:where(:not(.cecomp-ppc *)),*:where(:not(.cecomp-ppc *))::before,*:where(:not(.cecomp-ppc *))::after {transition:none!important}
}
@media print {
  .prototype-strip:where(:not(.cecomp-ppc *)),.main-nav:where(:not(.cecomp-ppc *)),.header-tools:where(:not(.cecomp-ppc *)),.institution-utilities:where(:not(.cecomp-ppc *)),.site-footer:where(:not(.cecomp-ppc *)),.page-index:where(:not(.cecomp-ppc *)) {display:none}
  .container:where(:not(.cecomp-ppc *)) {width:100%}
  .hero:where(:not(.cecomp-ppc *)),.guide-box:where(:not(.cecomp-ppc *)),.panel:where(:not(.cecomp-ppc *)) {background:white;color:black}
  .news-home:where(:not(.cecomp-ppc *)),.content-grid:where(:not(.cecomp-ppc *)),.course-layout:where(:not(.cecomp-ppc *)) {display:block}
  a:where(:not(.cecomp-ppc *)) {color:black}
  body {font-size:12pt}
}

html{scroll-padding-top:86px}
:where(:not(.cecomp-ppc *))::selection{background:#bfeaff;color:var(--navy)}
.institution-strip:where(:not(.cecomp-ppc *)){background:#e4f5fc;border-bottom:1px solid #c6e4f1}
.prototype-strip:where(:not(.cecomp-ppc *)){background:#eef5f8}

.site-header:where(:not(.cecomp-ppc *)){position:sticky;top:0;z-index:80;background:rgba(255,255,255,.98);box-shadow:0 1px 0 var(--line);transition:box-shadow .18s ease}
.site-header.is-scrolled:where(:not(.cecomp-ppc *)){box-shadow:0 8px 28px rgba(9,44,64,.10)}
.brand:where(:not(.cecomp-ppc *)){min-height:92px}
.brand img:where(:not(.cecomp-ppc *)){width:144px}
.institution-utilities:where(:not(.cecomp-ppc *)){width:330px}
.main-nav:where(:not(.cecomp-ppc *)){min-height:54px}
.main-nav>a:where(:not(.cecomp-ppc *)),.nav-course-row>a:where(:not(.cecomp-ppc *)){font-size:.825rem}

@media (min-width:1151px){
  .site-header.is-scrolled .header-inner:where(:not(.cecomp-ppc *)){grid-template-columns:auto minmax(0,1fr) auto;gap:25px}
  .site-header.is-scrolled .brand:where(:not(.cecomp-ppc *)){min-height:62px}
  .site-header.is-scrolled .brand img:where(:not(.cecomp-ppc *)){width:104px}
  .site-header.is-scrolled .brand span:where(:not(.cecomp-ppc *)),.site-header.is-scrolled .institution-utilities:where(:not(.cecomp-ppc *)){display:none}
  .site-header.is-scrolled .main-nav:where(:not(.cecomp-ppc *)){grid-column:2;grid-row:1;border-top:0;min-height:62px;gap:17px;justify-content:flex-end}
  .site-header.is-scrolled .main-nav>a:where(:not(.cecomp-ppc *)),.site-header.is-scrolled .nav-course-row>a:where(:not(.cecomp-ppc *)){font-size:.775rem;padding-block:10px}
  .site-header.is-scrolled .main-nav>.nav-ppc:where(:not(.cecomp-ppc *)){max-width:150px}
  .site-header.is-scrolled .main-nav>.nav-sistemas:where(:not(.cecomp-ppc *)){max-width:126px}
  .site-header.is-scrolled .nav-group:where(:not(.cecomp-ppc *)){margin-right:1px}
  .site-header.is-scrolled .header-tools:where(:not(.cecomp-ppc *)){display:flex;grid-column:3;grid-row:1;align-items:center}
  .site-header.is-scrolled .header-tools .menu-toggle:where(:not(.cecomp-ppc *)){display:none}
  .site-header.is-scrolled .search-toggle:where(:not(.cecomp-ppc *)){display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;color:var(--blue-dark)}
}

.hero-home:where(:not(.cecomp-ppc *)){position:relative;overflow:hidden;isolation:isolate;background:
  radial-gradient(circle at 82% 18%,rgba(1,147,222,.28),transparent 30%),
  linear-gradient(118deg,#092d42 0%,#0c3b55 52%,#075174 100%);padding:52px 0 48px;min-height:350px}
.hero-home:where(:not(.cecomp-ppc *))::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.50;-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.58) 48%,#000 74%,#000 100%);mask-image:linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.58) 48%,#000 74%,#000 100%);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='430' viewBox='0 0 1200 430'%3E%3Cg fill='none' stroke='%234acbff' stroke-width='1.35' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M0 52H154V24H252V74H330M0 94H118V142H186V196H284M0 250H58V210H128V306H210V352H294M0 342H42V390H106V430M1200 42H1074V88H1002V138H924M1200 114H1126V166H1060V236H970M1200 286H1142V248H1080V324H1000V374H934M1200 362H1154V410H1094V430'/%3E%3Ccircle cx='337' cy='74' r='5'/%3E%3Ccircle cx='292' cy='196' r='5'/%3E%3Ccircle cx='916' cy='138' r='5'/%3E%3Ccircle cx='962' cy='236' r='5'/%3E%3C/g%3E%3Cg fill='%234acbff'%3E%3Ccircle cx='154' cy='52' r='3.5'/%3E%3Ccircle cx='118' cy='94' r='3.5'/%3E%3Ccircle cx='1074' cy='42' r='3.5'/%3E%3Ccircle cx='1126' cy='114' r='3.5'/%3E%3C/g%3E%3C/svg%3E");background-position:center;background-size:cover;background-repeat:no-repeat}
.hero-home:where(:not(.cecomp-ppc *))::after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(74,203,255,.14);border-radius:50%;right:-140px;top:-150px;z-index:-1;box-shadow:0 0 0 52px rgba(74,203,255,.025),0 0 0 104px rgba(74,203,255,.018)}
.hero-layout:where(:not(.cecomp-ppc *)){display:flex;align-items:center;min-height:235px}
.hero-content:where(:not(.cecomp-ppc *)){max-width:790px;position:relative;z-index:1}
.hero-content .eyebrow:where(:not(.cecomp-ppc *)){color:#8edcff;margin-bottom:15px}
.hero-content h1:where(:not(.cecomp-ppc *)){font:400 clamp(2.75rem,5.1vw,4.25rem)/1.02 var(--font-editorial);letter-spacing:-.05em;color:#fff;margin:0;max-width:760px}
.hero-content .course-name-accent:where(:not(.cecomp-ppc *)){color:#4acbff!important}
.hero-lead:where(:not(.cecomp-ppc *)){font-size:clamp(1rem,1.65vw,1.18rem);line-height:1.72;color:#d5eaf3;max-width:670px;margin:23px 0 25px}
.hero-actions:where(:not(.cecomp-ppc *)){display:flex;align-items:center;gap:16px 25px;flex-wrap:wrap}
.hero-home .hero-primary:where(:not(.cecomp-ppc *)){background:#fff;border-color:#fff;color:#0b3a54;padding-inline:19px}
.hero-home .hero-primary:hover:where(:not(.cecomp-ppc *)){background:#e9f8fe;border-color:#e9f8fe;color:#062e44}
.hero-secondary:where(:not(.cecomp-ppc *)){display:inline-flex;align-items:center;gap:13px;color:#dff5ff;font-size:.9rem;font-weight:600;min-height:44px;border-bottom:1px solid rgba(143,221,255,.55)}
.hero-secondary:hover:where(:not(.cecomp-ppc *)){color:#fff;text-decoration:none;border-color:#fff}
.hero-secondary .icon:where(:not(.cecomp-ppc *)){width:17px;height:17px}
.hero-meta:where(:not(.cecomp-ppc *)){font-size:.75rem;color:#9fc7d9;margin:22px 0 0;letter-spacing:.015em}

.home-quick:where(:not(.cecomp-ppc *)){padding-top:38px;padding-bottom:34px}
.compact-heading:where(:not(.cecomp-ppc *)){margin-bottom:18px}
.quick-grid:where(:not(.cecomp-ppc *)){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 10px 28px rgba(12,51,74,.04)}
.quick-card:where(:not(.cecomp-ppc *)){display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:21px 19px;color:var(--ink);min-height:112px;position:relative}
.quick-card+.quick-card:where(:not(.cecomp-ppc *)){border-left:1px solid var(--line)}
.quick-card:hover:where(:not(.cecomp-ppc *)){background:var(--light);text-decoration:none}
.quick-card:hover strong:where(:not(.cecomp-ppc *)){color:var(--blue-dark)}
.quick-icon:where(:not(.cecomp-ppc *)){display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:#e5f6fd;color:var(--blue-dark)}
.quick-icon .icon:where(:not(.cecomp-ppc *)){width:20px;height:20px}
.quick-card>.icon:where(:not(.cecomp-ppc *)){width:16px;height:16px;color:var(--blue-dark)}
.quick-copy:where(:not(.cecomp-ppc *)){min-width:0}
.quick-copy strong:where(:not(.cecomp-ppc *)){display:block;font-size:.94rem;line-height:1.35;color:var(--navy)}
.quick-copy>span:where(:not(.cecomp-ppc *)){display:block;margin-top:6px;color:var(--muted);font-size:.76rem;line-height:1.45}
.semester-pill:where(:not(.cecomp-ppc *)),.footer-pill:where(:not(.cecomp-ppc *)){display:inline-flex;align-items:center;border-radius:999px;background:#dff4fc;color:#00628f;font-size:.66rem;line-height:1;padding:5px 7px;margin-left:5px;vertical-align:2px;font-weight:700;letter-spacing:.025em;white-space:nowrap}

.home-news:where(:not(.cecomp-ppc *)){padding-top:34px;padding-bottom:42px;border-top:1px solid #e2eef3}
.home-news-heading h2:where(:not(.cecomp-ppc *)){margin-bottom:0}
.news-home-clean:where(:not(.cecomp-ppc *)){display:block}
.news-home-clean .news-editorial:where(:not(.cecomp-ppc *)){width:100%}
.news-home-clean .subjects:where(:not(.cecomp-ppc *)){display:none}
.news-home-clean .news-card.featured:where(:not(.cecomp-ppc *)){grid-template-columns:minmax(320px,.95fr) minmax(0,1.15fr);gap:34px;padding-bottom:28px}
.news-home-clean .news-image img:where(:not(.cecomp-ppc *)){height:290px}
.news-home-clean .news-pair:where(:not(.cecomp-ppc *)){gap:42px;padding-top:27px}
.news-home-clean .news-pair .news-card:where(:not(.cecomp-ppc *)){padding-right:20px}
.news-home-clean .news-pair .news-card+.news-card:where(:not(.cecomp-ppc *)){border-left:1px solid var(--line);padding-left:42px}

.home-help-wrap:where(:not(.cecomp-ppc *)){padding-bottom:42px}
.home-help:where(:not(.cecomp-ppc *)){margin:0;border:1px solid #b9ddea;border-radius:9px;padding:23px 26px;background:linear-gradient(105deg,#edf9fd,#f7fcfe)}
.home-help-main:where(:not(.cecomp-ppc *)){display:flex;align-items:flex-start;gap:14px}
.home-help-icon:where(:not(.cecomp-ppc *)){display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid #b9ddea;color:var(--blue-dark)}
.home-help-icon .icon:where(:not(.cecomp-ppc *)){width:19px;height:19px}
.home-help strong:where(:not(.cecomp-ppc *)){font-size:1rem;color:var(--navy)}
.home-help p:where(:not(.cecomp-ppc *)){margin-top:4px;margin-bottom:0}

.site-footer:where(:not(.cecomp-ppc *)){background:var(--footer-bg);padding-top:34px}
.footer-grid-compact:where(:not(.cecomp-ppc *)){grid-template-columns:1.65fr .9fr .9fr;gap:52px}
.footer-identity p:where(:not(.cecomp-ppc *)){margin-bottom:17px}
.footer-contact-list:where(:not(.cecomp-ppc *)){display:grid;gap:10px;margin-top:13px}
.site-footer .footer-contact-row:where(:not(.cecomp-ppc *)){display:flex;align-items:flex-start;gap:10px;color:var(--footer-text);padding:3px 0;margin:0;font-size:.78rem;line-height:1.55}
.footer-contact-row .icon:where(:not(.cecomp-ppc *)){width:16px;height:16px;color:#75d3f7;margin-top:2px}
.site-footer a.footer-contact-row:hover:where(:not(.cecomp-ppc *)){color:#fff}
.footer-pill:where(:not(.cecomp-ppc *)){background:rgba(117,211,247,.13);color:#9ee2fb;padding:4px 7px;margin-left:4px}
.footer-bottom:where(:not(.cecomp-ppc *)){margin-top:24px}

.curriculum-overview .eyebrow:where(:not(.cecomp-ppc *)),.guide-box .eyebrow:where(:not(.cecomp-ppc *)),.guide-box .edition:where(:not(.cecomp-ppc *)),.document-meta>span:first-child:where(:not(.cecomp-ppc *)){color:var(--blue-dark)}
.guide-box:where(:not(.cecomp-ppc *)){background:#edf8fd;border-color:#bcddec}
.guide-box .edition:where(:not(.cecomp-ppc *)){border-color:#bcddec}

@media (max-width:1050px){
  .site-header:where(:not(.cecomp-ppc *)){top:0}
  .quick-grid:where(:not(.cecomp-ppc *)){grid-template-columns:1fr 1fr}
  .quick-card:nth-child(3):where(:not(.cecomp-ppc *)){border-left:0;border-top:1px solid var(--line)}
  .quick-card:nth-child(4):where(:not(.cecomp-ppc *)){border-top:1px solid var(--line)}
}
@media (max-width:850px){
  .hero-home:where(:not(.cecomp-ppc *)){padding:42px 0 40px;min-height:0}
  .hero-layout:where(:not(.cecomp-ppc *)){min-height:220px}
  .hero-content:where(:not(.cecomp-ppc *)){max-width:700px}
  .news-home-clean .news-card.featured:where(:not(.cecomp-ppc *)){grid-template-columns:1fr 1fr;gap:26px}
  .news-home-clean .news-image img:where(:not(.cecomp-ppc *)){height:245px}
  .footer-grid-compact:where(:not(.cecomp-ppc *)){grid-template-columns:1.2fr 1fr;gap:32px}
  .footer-grid-compact>div:last-child:where(:not(.cecomp-ppc *)){grid-column:2}
}
@media (max-width:600px){
  html{scroll-padding-top:80px}
  .site-header:where(:not(.cecomp-ppc *)){box-shadow:0 1px 0 var(--line)}
  .hero-home:where(:not(.cecomp-ppc *)){padding:34px 0 34px}
  .hero-home:where(:not(.cecomp-ppc *))::before{opacity:.3;background-position:46% center;background-size:auto 100%}
  .hero-home:where(:not(.cecomp-ppc *))::after{width:250px;height:250px;right:-130px;top:-110px}
  .hero-layout:where(:not(.cecomp-ppc *)){min-height:0}
  .hero-content h1:where(:not(.cecomp-ppc *)){font-size:2.72rem;line-height:1.02;max-width:360px}
  .hero-lead:where(:not(.cecomp-ppc *)){font-size:.96rem;line-height:1.62;margin:19px 0 22px}
  .hero-actions:where(:not(.cecomp-ppc *)){align-items:flex-start;flex-direction:column;gap:10px}
  .hero-secondary:where(:not(.cecomp-ppc *)){min-height:40px}
  .hero-meta:where(:not(.cecomp-ppc *)){font-size:.69rem;line-height:1.55}
  .home-quick:where(:not(.cecomp-ppc *)){padding-top:29px;padding-bottom:28px}
  .quick-grid:where(:not(.cecomp-ppc *)){grid-template-columns:1fr}
  .quick-card:where(:not(.cecomp-ppc *)){min-height:92px;padding:17px}
  .quick-card+.quick-card:where(:not(.cecomp-ppc *)){border-left:0;border-top:1px solid var(--line)}
  .quick-card:nth-child(3):where(:not(.cecomp-ppc *)),.quick-card:nth-child(4):where(:not(.cecomp-ppc *)){border-top:1px solid var(--line)}
  .quick-copy>span:where(:not(.cecomp-ppc *)){font-size:.74rem}
  .home-news:where(:not(.cecomp-ppc *)){padding-top:28px}
  .news-home-clean .news-card.featured:where(:not(.cecomp-ppc *)){grid-template-columns:1fr;gap:18px}
  .news-home-clean .news-image img:where(:not(.cecomp-ppc *)){height:auto;aspect-ratio:1.5}
  .news-home-clean .news-pair:where(:not(.cecomp-ppc *)){grid-template-columns:1fr;gap:0}
  .news-home-clean .news-pair .news-card:where(:not(.cecomp-ppc *)){padding:0 0 22px}
  .news-home-clean .news-pair .news-card+.news-card:where(:not(.cecomp-ppc *)){border-left:0;border-top:1px solid var(--line);padding:22px 0 0}
  .home-help:where(:not(.cecomp-ppc *)){display:block;padding:21px}
  .home-help>div:last-child:where(:not(.cecomp-ppc *)){margin-top:13px}
  .footer-grid-compact:where(:not(.cecomp-ppc *)){grid-template-columns:1fr;gap:27px}
  .footer-grid-compact>div:last-child:where(:not(.cecomp-ppc *)){grid-column:auto}
  .footer-bottom:where(:not(.cecomp-ppc *)){display:block;line-height:1.7}
  .footer-bottom span:where(:not(.cecomp-ppc *)){display:block}
}

.status-dot:where(:not(.cecomp-ppc *)){background:var(--logo-blue)}
.page-heading:where(:not(.cecomp-ppc *)){background:linear-gradient(105deg,#eef9fd 0%,#f8fcfe 64%,#fff 100%);border:1px solid #d3e8f1;border-left:4px solid var(--logo-blue);border-radius:8px;padding:25px 28px;margin-bottom:30px}
.page-heading .eyebrow:where(:not(.cecomp-ppc *)){color:var(--blue-dark)}
.page-heading h1:where(:not(.cecomp-ppc *)){color:var(--navy)}

@media (min-width:1051px) and (max-width:1150px){
  .site-header.is-scrolled .brand:where(:not(.cecomp-ppc *)),.site-header.is-scrolled .main-nav:where(:not(.cecomp-ppc *)),.site-header.is-scrolled .institution-utilities:where(:not(.cecomp-ppc *)),.site-header.is-scrolled .header-tools:where(:not(.cecomp-ppc *)){transition:none}
}
@media (max-width:600px){
  .page-heading:where(:not(.cecomp-ppc *)){padding:21px 19px}
}
@media print{
  .site-header:where(:not(.cecomp-ppc *)){position:static;box-shadow:none}
  .hero-home:where(:not(.cecomp-ppc *)),.page-heading:where(:not(.cecomp-ppc *)){background:#fff!important;color:#000!important;border-color:#bbb!important}
  .hero-home:where(:not(.cecomp-ppc *))::before,.hero-home:where(:not(.cecomp-ppc *))::after{display:none}
  .hero-content h1:where(:not(.cecomp-ppc *)),.hero-content .course-name-accent:where(:not(.cecomp-ppc *)),.hero-lead:where(:not(.cecomp-ppc *)),.hero-meta:where(:not(.cecomp-ppc *)),.hero-content .eyebrow:where(:not(.cecomp-ppc *)){color:#000!important}
  .quick-grid:where(:not(.cecomp-ppc *)){box-shadow:none}
}

:root{--light:#f7fafb;--pale:#f4f8fa}

.quick-secondary:where(:not(.cecomp-ppc *)){display:flex;align-items:center;justify-content:flex-end;gap:10px 20px;padding:14px 4px 0;color:var(--muted);font-size:.76rem}
.quick-secondary>span:where(:not(.cecomp-ppc *)){font-size:.67rem;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:#6a8290}
.quick-secondary a:where(:not(.cecomp-ppc *)){display:inline-flex;align-items:center;gap:7px;color:var(--blue-dark);font-weight:600;min-height:36px}
.quick-secondary a .icon:where(:not(.cecomp-ppc *)){width:14px;height:14px}

.page-heading:where(:not(.cecomp-ppc *)){background:#fff;border-color:#d5e3e9;border-left-color:var(--logo-blue);box-shadow:0 8px 24px rgba(12,51,74,.035)}
.panel:where(:not(.cecomp-ppc *)),.sidebar-related:where(:not(.cecomp-ppc *)),.calendar-feature:where(:not(.cecomp-ppc *)),.document-lead:where(:not(.cecomp-ppc *)),.course-management:where(:not(.cecomp-ppc *)),.semester-bar:where(:not(.cecomp-ppc *)),.coordinator-banner:where(:not(.cecomp-ppc *)),.support-card:where(:not(.cecomp-ppc *)),.guide-box:where(:not(.cecomp-ppc *)){background:#fff;border:1px solid #d7e4ea}
.sidebar-related:where(:not(.cecomp-ppc *)),.course-management:where(:not(.cecomp-ppc *)),.coordinator-banner:where(:not(.cecomp-ppc *)),.support-card:where(:not(.cecomp-ppc *)){border-radius:var(--radius-panel)}
.guide-box:where(:not(.cecomp-ppc *)){border-color:#c7dce6}
.guide-box .edition:where(:not(.cecomp-ppc *)){border-color:#d7e4ea}
.plugin-preview-explanation:where(:not(.cecomp-ppc *)),.model-notice:where(:not(.cecomp-ppc *)),.notice:where(:not(.cecomp-ppc *)),.empty-state:where(:not(.cecomp-ppc *)),#contact-status:where(:not(.cecomp-ppc *)){background:#f8fafb}
.subnav:where(:not(.cecomp-ppc *)){background:#f8fafb}
.curriculum-period[open]:where(:not(.cecomp-ppc *)){background:#fbfcfd}

@media(max-width:600px){
  .quick-secondary:where(:not(.cecomp-ppc *)){justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;gap:3px 17px;padding-top:11px}
  .quick-secondary>span:where(:not(.cecomp-ppc *)){width:100%;margin-bottom:2px}
}

.breadcrumb:where(:not(.cecomp-ppc *)){gap:7px 9px}
.breadcrumb a:where(:not(.cecomp-ppc *)){color:var(--blue-dark);font-weight:550}
.breadcrumb a:hover:where(:not(.cecomp-ppc *)){color:var(--navy)}
.breadcrumb span[aria-current="page"]:where(:not(.cecomp-ppc *)){color:#5b7280}
.breadcrumb span[aria-hidden="true"]:where(:not(.cecomp-ppc *)){color:#91a5af;font-size:.72rem}

.page-freshness:where(:not(.cecomp-ppc *)){display:flex;align-items:center;flex-wrap:wrap;gap:6px 9px;margin:16px 0 0!important;padding-top:13px;border-top:1px solid #e0e9ed;color:#5d7481!important;font-size:.75rem!important;line-height:1.5!important}
.freshness-dot:where(:not(.cecomp-ppc *)){width:7px;height:7px;border-radius:50%;background:var(--logo-blue);box-shadow:0 0 0 3px rgba(1,147,222,.10)}
.freshness-separator:where(:not(.cecomp-ppc *)){color:#9aabb3}
.freshness-note:where(:not(.cecomp-ppc *)){color:#6f838d}
.page-freshness .semester-pill:where(:not(.cecomp-ppc *)){margin-left:0;vertical-align:0}

.service-tile:where(:not(.cecomp-ppc *)),.directory-row:where(:not(.cecomp-ppc *)),.context-link:where(:not(.cecomp-ppc *)),.resource-row:where(:not(.cecomp-ppc *)){position:relative;border-radius:6px;transition:background .14s ease,color .14s ease,box-shadow .14s ease}
.service-tile:where(:not(.cecomp-ppc *)){padding-inline:11px;margin-inline:-11px}
.directory-row:where(:not(.cecomp-ppc *)),.context-link:where(:not(.cecomp-ppc *)),.resource-row:where(:not(.cecomp-ppc *)){padding-inline:11px;margin-inline:-11px}
.service-tile:hover:where(:not(.cecomp-ppc *)),.directory-row:hover:where(:not(.cecomp-ppc *)),.context-link:hover:where(:not(.cecomp-ppc *)),.resource-row:hover:where(:not(.cecomp-ppc *)){background:#f2f9fc;text-decoration:none;box-shadow:inset 3px 0 0 var(--logo-blue)}
.service-tile:hover strong:where(:not(.cecomp-ppc *)),.directory-row:hover strong:where(:not(.cecomp-ppc *)),.resource-row:hover strong:where(:not(.cecomp-ppc *)),.context-link:hover:where(:not(.cecomp-ppc *)){color:var(--blue-dark);text-decoration:underline;text-underline-offset:4px}
.service-tile>.icon:where(:not(.cecomp-ppc *)),.directory-row>.icon:where(:not(.cecomp-ppc *)),.context-link>.icon:where(:not(.cecomp-ppc *)),.resource-row>.icon:where(:not(.cecomp-ppc *)){transition:transform .14s ease}
.service-tile:hover>.icon:where(:not(.cecomp-ppc *)),.directory-row:hover>.icon:where(:not(.cecomp-ppc *)),.context-link:hover>.icon:where(:not(.cecomp-ppc *)),.resource-row:hover>.icon:where(:not(.cecomp-ppc *)){transform:translateX(2px)}
.panel:where(:not(.cecomp-ppc *)),.sidebar-related:where(:not(.cecomp-ppc *)),.calendar-feature:where(:not(.cecomp-ppc *)),.document-lead:where(:not(.cecomp-ppc *)),.course-management:where(:not(.cecomp-ppc *)),.semester-bar:where(:not(.cecomp-ppc *)),.coordinator-banner:where(:not(.cecomp-ppc *)),.support-card:where(:not(.cecomp-ppc *)),.guide-box:where(:not(.cecomp-ppc *)){box-shadow:none}

.main-nav>a[aria-current="page"]:where(:not(.cecomp-ppc *)),.nav-course-row>a[aria-current="page"]:where(:not(.cecomp-ppc *)){color:var(--blue-dark);font-weight:700}
.main-nav>a[aria-current="page"]:where(:not(.cecomp-ppc *))::after,.nav-course-row>a[aria-current="page"]:where(:not(.cecomp-ppc *))::after{height:3px;background:var(--logo-blue)}

@media (max-width:1050px){
  .menu-toggle:where(:not(.cecomp-ppc *)){transition:background .14s ease,border-color .14s ease,color .14s ease}
  .menu-toggle[aria-expanded="true"]:where(:not(.cecomp-ppc *)){background:#eaf7fc;border-color:#7fbfdc;color:var(--navy)}
  .main-nav.is-open:where(:not(.cecomp-ppc *)){width:100%;margin:0 0 16px;padding:10px 15px 16px;background:#fbfdfe;border:1px solid #d7e6ed;border-radius:10px;box-shadow:0 12px 32px rgba(12,51,74,.08)}
  .main-nav.is-open>a:where(:not(.cecomp-ppc *)),.main-nav.is-open .nav-course-row:where(:not(.cecomp-ppc *)){border-bottom:1px solid #e3edf1}
  .main-nav.is-open>a:where(:not(.cecomp-ppc *)){padding-inline:8px}
  .main-nav.is-open .nav-course-row>a:where(:not(.cecomp-ppc *)){padding-left:8px}
  .main-nav>a[aria-current="page"]:where(:not(.cecomp-ppc *)),.nav-course-row>a[aria-current="page"]:where(:not(.cecomp-ppc *)){text-decoration:none}
  .main-nav>a[aria-current="page"]:where(:not(.cecomp-ppc *)),.nav-course-row>a[aria-current="page"]:where(:not(.cecomp-ppc *)){box-shadow:inset 3px 0 0 var(--logo-blue);padding-left:12px;background:#f1f9fc}
  .course-dropdown:where(:not(.cecomp-ppc *)){border-color:#d4e4eb;background:#fff}
  .course-dropdown>section+section:where(:not(.cecomp-ppc *)){background:#f7fafb}
}
@media (max-width:600px){
  .main-nav.is-open:where(:not(.cecomp-ppc *)){grid-template-columns:1fr;padding:8px 13px 14px}
  .main-nav.is-open>a:where(:not(.cecomp-ppc *)),.main-nav.is-open .nav-course-row:where(:not(.cecomp-ppc *)){min-height:48px}
  .page-freshness:where(:not(.cecomp-ppc *)){align-items:flex-start;gap:6px 8px;margin-top:14px!important}
  .freshness-note:where(:not(.cecomp-ppc *)){flex-basis:100%;padding-left:16px}
}

@media (prefers-reduced-motion:reduce){
  .service-tile:where(:not(.cecomp-ppc *)),.directory-row:where(:not(.cecomp-ppc *)),.context-link:where(:not(.cecomp-ppc *)),.resource-row:where(:not(.cecomp-ppc *)),.service-tile>.icon:where(:not(.cecomp-ppc *)),.directory-row>.icon:where(:not(.cecomp-ppc *)),.context-link>.icon:where(:not(.cecomp-ppc *)),.resource-row>.icon:where(:not(.cecomp-ppc *)),.menu-toggle:where(:not(.cecomp-ppc *)){transition:none!important}
  .service-tile:hover>.icon:where(:not(.cecomp-ppc *)),.directory-row:hover>.icon:where(:not(.cecomp-ppc *)),.context-link:hover>.icon:where(:not(.cecomp-ppc *)),.resource-row:hover>.icon:where(:not(.cecomp-ppc *)){transform:none}
}

@media (min-width:1151px){
  .site-header.is-scrolled:where(:not(.cecomp-ppc *)){background:rgba(255,255,255,.985);backdrop-filter:saturate(140%) blur(10px)}
  .site-header.is-scrolled .header-inner:where(:not(.cecomp-ppc *)){min-height:62px}
  .site-header.is-scrolled .main-nav:where(:not(.cecomp-ppc *)){overflow:visible}
  .site-header.is-scrolled .nav-ppc span br:where(:not(.cecomp-ppc *)){display:none}
  .site-header.is-scrolled .nav-ppc span:where(:not(.cecomp-ppc *)){white-space:nowrap}
}

.prose>section+section:where(:not(.cecomp-ppc *)),.course-prose>section+section:where(:not(.cecomp-ppc *)){margin-top:42px;padding-top:2px}
.page-main>section+section:where(:not(.cecomp-ppc *)){margin-top:34px}
.prose blockquote:where(:not(.cecomp-ppc *)){margin:28px 0;padding:4px 0 4px 20px;border-left:3px solid var(--logo-blue);color:var(--muted)}

.meta time:where(:not(.cecomp-ppc *)){color:#405f70;font-weight:550;font-variant-numeric:tabular-nums}
.meta time:where(:not(.cecomp-ppc *))::before{content:"";display:inline-block;width:3px;height:3px;border-radius:50%;background:#9ab2bd;margin:0 10px 3px 0}

.search-result:where(:not(.cecomp-ppc *)){padding:22px 12px;margin-inline:-12px;border-radius:7px;transition:background .14s ease,box-shadow .14s ease}
.search-result:hover:where(:not(.cecomp-ppc *)){background:#f4fafc;box-shadow:inset 3px 0 0 var(--logo-blue);text-decoration:none}
.search-result-category:where(:not(.cecomp-ppc *)){display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;margin-bottom:8px;border-radius:999px;background:#e7f6fc;color:#005f8c;font-size:.68rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase}
.search-result h2:where(:not(.cecomp-ppc *)){margin-bottom:6px;color:var(--navy)}
.search-result-description:where(:not(.cecomp-ppc *)){max-width:72ch;color:var(--muted);line-height:1.6;margin-bottom:9px!important}
.search-result-cue:where(:not(.cecomp-ppc *)){display:inline-flex;color:var(--blue-dark);font-size:.78rem;font-weight:650}

.footer-university-link:where(:not(.cecomp-ppc *)){display:inline-flex;margin-top:14px;color:#9fdff8!important;font-size:.76rem;font-weight:600}
.footer-university-link:hover:where(:not(.cecomp-ppc *)){color:#fff!important}

.site-footer :where(a,button,input,select,textarea):focus-visible:where(:not(.cecomp-ppc *)),
.hero-home :where(a,button,input,select,textarea):focus-visible:where(:not(.cecomp-ppc *)){outline-color:#8ee0ff;outline-offset:4px}
.quick-card:focus-visible:where(:not(.cecomp-ppc *)),.search-result:focus-visible:where(:not(.cecomp-ppc *)),.service-tile:focus-visible:where(:not(.cecomp-ppc *)),.directory-row:focus-visible:where(:not(.cecomp-ppc *)),.context-link:focus-visible:where(:not(.cecomp-ppc *)),.resource-row:focus-visible:where(:not(.cecomp-ppc *)){border-radius:7px}

.not-found-page:where(:not(.cecomp-ppc *)){padding-bottom:64px}
.not-found-card:where(:not(.cecomp-ppc *)){max-width:780px;margin:18px auto 0;padding:46px 48px;border:1px solid var(--line);border-left:4px solid var(--logo-blue);border-radius:10px;background:#fff;box-shadow:0 12px 32px rgba(12,51,74,.05)}
.not-found-card h1:where(:not(.cecomp-ppc *)){font:400 clamp(2.2rem,4vw,3.3rem)/1.08 var(--font-editorial);letter-spacing:-.04em;max-width:650px}
.not-found-card>p:where(:not(.cecomp-ppc *)){font-size:1.05rem;max-width:62ch}
.not-found-search:where(:not(.cecomp-ppc *)){display:flex;gap:10px;margin:28px 0 20px}
.not-found-search input:where(:not(.cecomp-ppc *)){flex:1;min-width:0;min-height:46px;border:1px solid #9ebacc;border-radius:var(--radius);padding:10px 13px;color:var(--ink)}
.not-found-links:where(:not(.cecomp-ppc *)){display:flex;flex-wrap:wrap;gap:10px 24px;padding-top:18px;border-top:1px solid var(--line);font-size:.875rem;font-weight:600}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  .site-header:where(:not(.cecomp-ppc *)),.search-result:where(:not(.cecomp-ppc *)),.quick-card:where(:not(.cecomp-ppc *)),.button:where(:not(.cecomp-ppc *)),.text-link:where(:not(.cecomp-ppc *)),.course-toggle:where(:not(.cecomp-ppc *)),.academic-access .icon:where(:not(.cecomp-ppc *)){transition:none!important}
  .academic-access a:hover .icon:where(:not(.cecomp-ppc *)){transform:none!important}
}

@media (max-width:600px){
  .not-found-card:where(:not(.cecomp-ppc *)){padding:30px 22px}
  .not-found-search:where(:not(.cecomp-ppc *)){flex-direction:column}
  .not-found-search .button:where(:not(.cecomp-ppc *)){width:100%}
}

.site-alert:where(:not(.cecomp-ppc *)){background:#eef9fd;border-bottom:1px solid #b8deed;color:var(--ink)}
.site-alert-inner:where(:not(.cecomp-ppc *)){min-height:46px;display:flex;align-items:center;gap:13px;padding-top:8px;padding-bottom:8px}
.site-alert-label:where(:not(.cecomp-ppc *)){display:inline-flex;align-items:center;border:1px solid #a9d6e8;background:#fff;color:var(--blue-dark);border-radius:999px;padding:3px 8px;font-size:11px;line-height:1.35;letter-spacing:.025em;text-transform:uppercase;white-space:nowrap}
.site-alert-semester:where(:not(.cecomp-ppc *)){display:inline-flex;align-items:center;border-radius:999px;background:#0c334a;color:#fff;padding:4px 8px;font-size:11px;line-height:1.25;font-weight:700;letter-spacing:.025em;white-space:nowrap}
.site-alert-message:where(:not(.cecomp-ppc *)){font-size:13px;line-height:1.45;color:#284d60}
.site-alert-link:where(:not(.cecomp-ppc *)){margin-left:auto;font-size:12px;font-weight:650;white-space:nowrap}
.site-alert-close:where(:not(.cecomp-ppc *)){border:0;background:transparent;color:#527080;font-size:23px;line-height:1;padding:4px 3px 6px 9px;border-radius:4px}
.site-alert-close:hover:where(:not(.cecomp-ppc *)){color:var(--navy);background:#fff}
.page-toc-inline:where(:not(.cecomp-ppc *)){display:flex;align-items:flex-start;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 0;margin:-6px 0 30px}
.page-toc-inline>strong:where(:not(.cecomp-ppc *)){font-size:11px;letter-spacing:.055em;text-transform:uppercase;color:#5a7483;white-space:nowrap;padding-top:2px}
.page-toc-links:where(:not(.cecomp-ppc *)){display:flex;gap:8px 18px;flex-wrap:wrap}
.page-toc-links a:where(:not(.cecomp-ppc *)){font-size:12px;color:#31596e;text-decoration:underline;text-decoration-color:#b7d7e6;text-underline-offset:4px}
.page-toc-links a:hover:where(:not(.cecomp-ppc *)){color:var(--blue-dark);text-decoration-color:var(--blue-dark)}
.content-feedback:where(:not(.cecomp-ppc *)){margin:42px 0 0;padding:15px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:18px;color:#58717e;font-size:12px}
.content-feedback strong:where(:not(.cecomp-ppc *)){color:#304f5f;font-weight:650}
.content-feedback .text-link:where(:not(.cecomp-ppc *)){font-size:12px;white-space:nowrap}

@media(max-width:700px){
 .site-alert-inner:where(:not(.cecomp-ppc *)){align-items:flex-start;flex-wrap:wrap;gap:7px 10px;padding-top:10px;padding-bottom:10px}
 .site-alert-message:where(:not(.cecomp-ppc *)){flex:1 1 210px}
 .site-alert-link:where(:not(.cecomp-ppc *)){order:3;margin:0 34px 0 0}
 .site-alert-close:where(:not(.cecomp-ppc *)){position:absolute;right:17px}
 .site-alert-inner:where(:not(.cecomp-ppc *)){position:relative}
 .page-toc-inline:where(:not(.cecomp-ppc *)){display:block;margin-top:-8px;padding:12px 0 15px}
 .page-toc-inline>strong:where(:not(.cecomp-ppc *)){display:block;margin-bottom:8px}
 .page-toc-links:where(:not(.cecomp-ppc *)){gap:7px 14px}
 .content-feedback:where(:not(.cecomp-ppc *)){align-items:flex-start;flex-direction:column;gap:8px}
}

@media print{
 @page{margin:16mm}
 html{scroll-padding-top:0}
 body{background:#fff!important;color:#111!important;font:11pt/1.45 Arial,sans-serif!important}
 .prototype-strip:where(:not(.cecomp-ppc *)),.institution-strip:where(:not(.cecomp-ppc *)),.site-header:where(:not(.cecomp-ppc *)),.site-alert:where(:not(.cecomp-ppc *)),.site-footer:where(:not(.cecomp-ppc *)),.breadcrumb:where(:not(.cecomp-ppc *)),.subnav:where(:not(.cecomp-ppc *)),.page-toc-inline:where(:not(.cecomp-ppc *)),.content-feedback:where(:not(.cecomp-ppc *)),.filter-bar:where(:not(.cecomp-ppc *)),.results-line:where(:not(.cecomp-ppc *)),.page-help-end:where(:not(.cecomp-ppc *)),.menu-toggle:where(:not(.cecomp-ppc *)),.header-tools:where(:not(.cecomp-ppc *)),.button-row:where(:not(.cecomp-ppc *)),.button:where(:not(.cecomp-ppc *)),.search-toggle:where(:not(.cecomp-ppc *)){display:none!important}
 .container:where(:not(.cecomp-ppc *)),.page-main:where(:not(.cecomp-ppc *)){max-width:none!important;width:auto!important;margin:0!important;padding:0!important}
 .page-heading:where(:not(.cecomp-ppc *)){background:#fff!important;border:0!important;padding:0 0 12px!important;margin-bottom:18px!important}
 h1:where(:not(.cecomp-ppc *)),h2:where(:not(.cecomp-ppc *)),h3:where(:not(.cecomp-ppc *)),strong:where(:not(.cecomp-ppc *)){color:#111!important}
 p:where(:not(.cecomp-ppc *)),.tile-description:where(:not(.cecomp-ppc *)),.directory-description:where(:not(.cecomp-ppc *)){color:#222!important}
 a:where(:not(.cecomp-ppc *)){color:#111!important;text-decoration:underline!important}
 a[href^="http"]:where(:not(.cecomp-ppc *))::after{content:" (" attr(href) ")";font-size:8pt;word-break:break-all}
 .content-grid:where(:not(.cecomp-ppc *)),.two-grid:where(:not(.cecomp-ppc *)),.three-grid:where(:not(.cecomp-ppc *)),.course-layout:where(:not(.cecomp-ppc *)){display:block!important}
 .panel:where(:not(.cecomp-ppc *)),.notice:where(:not(.cecomp-ppc *)),.coordinator-banner:where(:not(.cecomp-ppc *)),.support-card:where(:not(.cecomp-ppc *)),.system-feature:where(:not(.cecomp-ppc *)),.guide-box:where(:not(.cecomp-ppc *)){background:#fff!important;box-shadow:none!important;border:1px solid #bbb!important;break-inside:avoid}
 .service-tile:where(:not(.cecomp-ppc *)),.directory-row:where(:not(.cecomp-ppc *)),.resource-row:where(:not(.cecomp-ppc *)),.context-link:where(:not(.cecomp-ppc *)),.news-card:where(:not(.cecomp-ppc *)){break-inside:avoid}
 img:where(:not(.cecomp-ppc *)){max-height:90mm;object-fit:contain}
}

@media (min-width:1051px){
  .brand:where(:not(.cecomp-ppc *)){min-height:104px;gap:18px}
  .brand img:where(:not(.cecomp-ppc *)){width:176px}
  .brand span:where(:not(.cecomp-ppc *)){font-size:.9rem;line-height:1.45;padding-left:18px}
  .main-nav:where(:not(.cecomp-ppc *)){min-height:62px;gap:18px}
  .main-nav>a:where(:not(.cecomp-ppc *)),.nav-course-row>a:where(:not(.cecomp-ppc *)){font-size:.94rem;line-height:1.3;padding-block:15px}
  .main-nav>.nav-ppc:where(:not(.cecomp-ppc *)){max-width:205px}
  .main-nav>.nav-sistemas:where(:not(.cecomp-ppc *)){max-width:160px}
}

@media (min-width:1151px){
  .site-header.is-scrolled .brand:where(:not(.cecomp-ppc *)){min-height:66px}
  .site-header.is-scrolled .brand img:where(:not(.cecomp-ppc *)){width:122px}
  .site-header.is-scrolled .main-nav:where(:not(.cecomp-ppc *)){min-height:66px;gap:14px}
  .site-header.is-scrolled .main-nav>a:where(:not(.cecomp-ppc *)),
  .site-header.is-scrolled .nav-course-row>a:where(:not(.cecomp-ppc *)){font-size:.825rem;padding-block:11px}
  .site-header.is-scrolled .main-nav>.nav-ppc:where(:not(.cecomp-ppc *)){max-width:158px}
  .site-header.is-scrolled .main-nav>.nav-sistemas:where(:not(.cecomp-ppc *)){max-width:132px}
}

@media (max-width:1050px) and (min-width:601px){
  .brand:where(:not(.cecomp-ppc *)){min-height:96px}
  .brand img:where(:not(.cecomp-ppc *)){width:158px}
  .brand span:where(:not(.cecomp-ppc *)){font-size:.8rem}
}

.hero-meta:where(:not(.cecomp-ppc *)){font-size:.9rem;line-height:1.55;color:#c3e0ed;font-weight:500;letter-spacing:.005em;margin-top:24px}
@media (max-width:600px){
  .hero-meta:where(:not(.cecomp-ppc *)){font-size:.82rem;line-height:1.55}
}

.news-all-link:where(:not(.cecomp-ppc *)){
  min-height:40px;
  padding:8px 13px 8px 15px;
  border:1px solid #b7d8e6;
  border-radius:999px;
  background:#f5fbfe;
  color:var(--navy);
  font-size:.82rem;
  font-weight:700;
  gap:10px;
  white-space:nowrap;
  transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease;
}
.news-all-link .icon:where(:not(.cecomp-ppc *)){width:16px;height:16px;color:var(--blue-dark)}
.news-all-link:hover:where(:not(.cecomp-ppc *)){background:#e7f7fd;border-color:#78c9ea;color:var(--blue-dark);text-decoration:none;transform:translateX(1px)}

.quick-secondary a:where(:not(.cecomp-ppc *)){font-size:.78rem;font-weight:600}

@media (max-width:600px){
  .section-heading:where(:not(.cecomp-ppc *)){align-items:flex-start;flex-direction:column;gap:14px}
  .news-all-link:where(:not(.cecomp-ppc *)){align-self:flex-start}
}

.hero-home:where(:not(.cecomp-ppc *))::before{
  opacity:.52;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.20) 0%,rgba(0,0,0,.24) 30%,rgba(0,0,0,.42) 50%,rgba(0,0,0,.78) 68%,#000 82%,#000 100%);
  mask-image:linear-gradient(90deg,rgba(0,0,0,.20) 0%,rgba(0,0,0,.24) 30%,rgba(0,0,0,.42) 50%,rgba(0,0,0,.78) 68%,#000 82%,#000 100%);
}

.quick-grid:where(:not(.cecomp-ppc *)){grid-template-columns:repeat(5,minmax(0,1fr))}
@media (min-width:1151px){
  .quick-card:where(:not(.cecomp-ppc *)){gap:10px;padding:20px 14px}
  .quick-icon:where(:not(.cecomp-ppc *)){width:36px;height:36px}
  .quick-copy strong:where(:not(.cecomp-ppc *)){font-size:.9rem}
  .quick-copy>span:where(:not(.cecomp-ppc *)){font-size:.73rem}
}
@media (max-width:1150px){
  .quick-grid:where(:not(.cecomp-ppc *)){grid-template-columns:1fr 1fr}
  .quick-card:nth-child(3):where(:not(.cecomp-ppc *)){border-left:0;border-top:1px solid var(--line)}
  .quick-card:nth-child(4):where(:not(.cecomp-ppc *)){border-top:1px solid var(--line)}
  .quick-card:nth-child(5):where(:not(.cecomp-ppc *)){grid-column:1/-1;border-left:0;border-top:1px solid var(--line)}
}
@media (max-width:600px){
  .quick-grid:where(:not(.cecomp-ppc *)){grid-template-columns:1fr}
  .quick-card:nth-child(5):where(:not(.cecomp-ppc *)){grid-column:auto}
  .hero-home:where(:not(.cecomp-ppc *))::before{opacity:.34}
}

.content-grid-single:where(:not(.cecomp-ppc *)){display:block;max-width:920px}
.content-grid-single .directory-section:where(:not(.cecomp-ppc *)){margin-top:32px}
.content-grid-single .directory-row:where(:not(.cecomp-ppc *)){max-width:none}

.footer-grid-compact:where(:not(.cecomp-ppc *)){grid-template-columns:1.55fr .85fr .78fr 1.05fr;gap:36px}
.footer-univasf a span[aria-hidden="true"]:where(:not(.cecomp-ppc *)){color:#77d0f3;font-size:.8em;margin-left:2px}
@media (max-width:1050px){
  .footer-grid-compact:where(:not(.cecomp-ppc *)){grid-template-columns:1.2fr 1fr;gap:30px 38px}
  .footer-grid-compact>div:last-child:where(:not(.cecomp-ppc *)){grid-column:auto}
}
@media (max-width:600px){
  .footer-grid-compact:where(:not(.cecomp-ppc *)){grid-template-columns:1fr;gap:27px}
}

.academic-facts:where(:not(.cecomp-ppc *)){margin-top:26px;margin-bottom:30px}
.coordinator-contact-note:where(:not(.cecomp-ppc *)){margin-top:5px!important;color:var(--muted);font-size:.76rem!important;line-height:1.45;max-width:52ch}
.evaluation-split:where(:not(.cecomp-ppc *)){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 20px}
.evaluation-split>div:where(:not(.cecomp-ppc *)){display:flex;align-items:center;gap:14px;border:1px solid #cfe0e8;border-radius:8px;background:#fff;padding:16px 18px}
.evaluation-split strong:where(:not(.cecomp-ppc *)){font-size:1.3rem;color:var(--blue-dark);min-width:48px}
.evaluation-split span:where(:not(.cecomp-ppc *)){font-size:.86rem;line-height:1.45;color:#3e5c6a}
.notice-contact a:where(:not(.cecomp-ppc *)){overflow-wrap:anywhere;font-weight:650}
@media(max-width:620px){.evaluation-split:where(:not(.cecomp-ppc *)){grid-template-columns:1fr}.academic-facts:where(:not(.cecomp-ppc *)){padding:21px 18px}}

:root{
  --muted:#3f6172;
  --text-body:1.0125rem;
  --radius-panel:8px;
  --focus-ring:#006a9c;
}
body{line-height:1.65}
h1:where(:not(.cecomp-ppc *)){font-size:clamp(2.1rem,3.4vw,2.9rem);line-height:1.12}
h2:where(:not(.cecomp-ppc *)){font-size:clamp(1.65rem,2.25vw,1.95rem);line-height:1.18}
h3:where(:not(.cecomp-ppc *)){line-height:1.28}
p:where(:not(.cecomp-ppc *)){margin-bottom:18px}
:where(a,button,input,select,textarea,summary):focus-visible:where(:not(.cecomp-ppc *)){outline:3px solid var(--focus-ring);outline-offset:4px}

.section:where(:not(.cecomp-ppc *)){padding-block:46px}
.section-heading:where(:not(.cecomp-ppc *)){margin-bottom:26px}
.page-main:where(:not(.cecomp-ppc *)){padding-bottom:64px}
.breadcrumb:where(:not(.cecomp-ppc *)){margin:24px 0 26px}
.page-heading:where(:not(.cecomp-ppc *)){padding-bottom:30px;margin-bottom:32px}
.page-heading h1:where(:not(.cecomp-ppc *)){margin-bottom:14px}
.page-heading p:where(:not(.cecomp-ppc *)){font-size:1.075rem;line-height:1.65;max-width:74ch}
.prose p:where(:not(.cecomp-ppc *)),.prose li:where(:not(.cecomp-ppc *)){font-size:1.0125rem;line-height:1.78}
.prose h2:where(:not(.cecomp-ppc *)){font-size:1.7rem;margin:38px 0 17px}
.prose>section+section:where(:not(.cecomp-ppc *)),.course-prose>section+section:where(:not(.cecomp-ppc *)){margin-top:48px;padding-top:0}
.page-main>section+section:where(:not(.cecomp-ppc *)){margin-top:38px}

.panel:where(:not(.cecomp-ppc *)),.sidebar-related:where(:not(.cecomp-ppc *)),.calendar-feature:where(:not(.cecomp-ppc *)),.document-lead:where(:not(.cecomp-ppc *)),.course-management:where(:not(.cecomp-ppc *)){
  background:#fff;
  border:1px solid #d5e5ec;
  border-radius:var(--radius-panel);
  box-shadow:none;
}
.sidebar-related:where(:not(.cecomp-ppc *)),.course-management:where(:not(.cecomp-ppc *)){padding:27px}
.panel h2:where(:not(.cecomp-ppc *)),.sidebar-related h2:where(:not(.cecomp-ppc *)),.calendar-feature h2:where(:not(.cecomp-ppc *)),.document-lead h2:where(:not(.cecomp-ppc *)),.course-management h2:where(:not(.cecomp-ppc *)){color:var(--navy)}

.course-facts:where(:not(.cecomp-ppc *)){padding:30px 32px;border-color:#c6dce7;background:#fff;box-shadow:0 8px 24px rgba(12,51,74,.035)}
.course-facts-intro:where(:not(.cecomp-ppc *)){margin-bottom:24px}
.course-facts-grid:where(:not(.cecomp-ppc *)){gap:0 40px}
.course-facts-grid>div:where(:not(.cecomp-ppc *)){padding:19px 0}
.course-facts-grid dt:where(:not(.cecomp-ppc *)){font-size:.75rem;letter-spacing:.025em;color:#557483}
.course-facts-grid dd:where(:not(.cecomp-ppc *)){font-size:1.035rem;line-height:1.5;color:var(--navy)}

.quick-card:where(:not(.cecomp-ppc *)),.service-tile:where(:not(.cecomp-ppc *)),.directory-row:where(:not(.cecomp-ppc *)),.context-link:where(:not(.cecomp-ppc *)),.resource-row:where(:not(.cecomp-ppc *)),.news-all-link:where(:not(.cecomp-ppc *)),.button:where(:not(.cecomp-ppc *)){
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.quick-card:hover:where(:not(.cecomp-ppc *)){background:#f5fbfd;box-shadow:inset 0 -3px 0 rgba(1,147,222,.42);transform:translateY(-1px)}
.quick-card:focus-visible:where(:not(.cecomp-ppc *)){box-shadow:inset 0 -3px 0 var(--logo-blue)}
.service-tile:where(:not(.cecomp-ppc *)),.directory-row:where(:not(.cecomp-ppc *)),.context-link:where(:not(.cecomp-ppc *)),.resource-row:where(:not(.cecomp-ppc *)){padding-left:10px;padding-right:10px;margin-left:-10px;margin-right:-10px;border-radius:6px}
.service-tile:hover:where(:not(.cecomp-ppc *)),.directory-row:hover:where(:not(.cecomp-ppc *)),.context-link:hover:where(:not(.cecomp-ppc *)),.resource-row:hover:where(:not(.cecomp-ppc *)){
  background:#f5fafc;
  box-shadow:inset 3px 0 0 var(--logo-blue);
  text-decoration:none;
}
.service-tile:hover strong:where(:not(.cecomp-ppc *)),.directory-row:hover strong:where(:not(.cecomp-ppc *)),.resource-row:hover strong:where(:not(.cecomp-ppc *)){text-decoration:underline;text-underline-offset:4px}

.main-nav>a[aria-current="page"]:where(:not(.cecomp-ppc *)),.nav-course-row>a[aria-current="page"]:where(:not(.cecomp-ppc *)){text-decoration:none;color:var(--blue-dark);font-weight:700}
.main-nav>a[aria-current="page"]:where(:not(.cecomp-ppc *))::after,.nav-course-row>a[aria-current="page"]:where(:not(.cecomp-ppc *))::after{height:3px;background:var(--logo-blue)}

@media (min-width:1151px){
  .brand:where(:not(.cecomp-ppc *)){min-height:100px}
  .brand img:where(:not(.cecomp-ppc *)){width:172px}
  .main-nav:where(:not(.cecomp-ppc *)){min-height:60px}
  .site-header.is-scrolled .header-inner:where(:not(.cecomp-ppc *)){min-height:62px}
  .site-header.is-scrolled .brand:where(:not(.cecomp-ppc *)){min-height:62px}
  .site-header.is-scrolled .brand img:where(:not(.cecomp-ppc *)){width:116px}
  .site-header.is-scrolled .main-nav:where(:not(.cecomp-ppc *)){min-height:62px}
  .site-header.is-scrolled .main-nav>a:where(:not(.cecomp-ppc *)),.site-header.is-scrolled .nav-course-row>a:where(:not(.cecomp-ppc *)){font-size:.84rem}
}

.hero-home:where(:not(.cecomp-ppc *)){padding:44px 0 42px;min-height:320px}
.hero-layout:where(:not(.cecomp-ppc *)){min-height:218px}
.hero-content h1:where(:not(.cecomp-ppc *)){font-size:clamp(2.85rem,5vw,4.2rem)}
.hero-lead:where(:not(.cecomp-ppc *)){margin:20px 0 23px;line-height:1.68}
.hero-meta:where(:not(.cecomp-ppc *)){margin-top:21px}

.home-quick:where(:not(.cecomp-ppc *)){padding-top:34px;padding-bottom:34px}
.quick-grid:where(:not(.cecomp-ppc *)){box-shadow:0 7px 22px rgba(12,51,74,.035)}
.quick-card:where(:not(.cecomp-ppc *)){min-height:106px}
.quick-icon:where(:not(.cecomp-ppc *)){border-radius:7px;background:#e8f7fc}
.quick-copy strong:where(:not(.cecomp-ppc *)){font-size:.94rem}
.quick-copy>span:where(:not(.cecomp-ppc *)){color:#4d6b7a}
.quick-secondary:where(:not(.cecomp-ppc *)){padding-top:16px}

.home-news:where(:not(.cecomp-ppc *)){padding-top:42px;padding-bottom:48px}
.home-news-heading:where(:not(.cecomp-ppc *)){padding-bottom:2px}
.news-card h3 a:where(:not(.cecomp-ppc *)){text-decoration-thickness:1px;text-underline-offset:4px}
.news-card h3 a:hover:where(:not(.cecomp-ppc *)){text-decoration:underline}
.news-home-clean .news-card.featured:where(:not(.cecomp-ppc *)){gap:38px;padding-bottom:31px}
.news-home-clean .news-pair:where(:not(.cecomp-ppc *)){gap:44px;padding-top:30px}
.news-home-clean .news-pair .news-card+.news-card:where(:not(.cecomp-ppc *)){border-left-color:#dbe9ef}
.meta:where(:not(.cecomp-ppc *)){font-size:.8rem}

.home-help-wrap:where(:not(.cecomp-ppc *)){padding-bottom:48px}
.home-help:where(:not(.cecomp-ppc *)){padding:24px 27px;background:#f5fbfd;border-color:#c8e2ec}
.home-help-icon:where(:not(.cecomp-ppc *)){background:#fff;border-color:#c8e2ec}

.site-footer:where(:not(.cecomp-ppc *)){padding-top:40px}
.footer-grid-compact:where(:not(.cecomp-ppc *)){gap:44px}
.footer-name:where(:not(.cecomp-ppc *)){font-size:1.45rem}
.site-footer h2:where(:not(.cecomp-ppc *)){font-size:.82rem;text-transform:uppercase;letter-spacing:.055em;margin-bottom:15px;color:#fff}
.site-footer a:where(:not(.cecomp-ppc *)){font-size:.84rem;line-height:1.6;padding-block:6px}
.site-footer p:where(:not(.cecomp-ppc *)){font-size:.88rem;line-height:1.65}
.site-footer .footer-contact-row:where(:not(.cecomp-ppc *)){font-size:.82rem;line-height:1.6}
.footer-contact-list:where(:not(.cecomp-ppc *)){gap:11px}
.footer-bottom:where(:not(.cecomp-ppc *)){margin-top:30px;padding-block:21px;font-size:.78rem}

@media (max-width:1150px) and (min-width:851px){
  .hero-home:where(:not(.cecomp-ppc *)){padding:40px 0 38px;min-height:300px}
  .hero-layout:where(:not(.cecomp-ppc *)){min-height:205px}
  .quick-card:where(:not(.cecomp-ppc *)){min-height:100px}
  .footer-grid-compact:where(:not(.cecomp-ppc *)){gap:34px 40px}
}

@media (max-width:600px){
  body{font-size:1rem;line-height:1.62}
  .container:where(:not(.cecomp-ppc *)){width:calc(100% - 32px)}
  .brand:where(:not(.cecomp-ppc *)){min-height:72px}
  .brand img:where(:not(.cecomp-ppc *)){width:clamp(118px,35vw,136px)}
  .search-toggle:where(:not(.cecomp-ppc *)){min-width:42px;min-height:42px}
  .menu-toggle:where(:not(.cecomp-ppc *)){min-height:42px;padding:8px 12px}
  .hero-home:where(:not(.cecomp-ppc *)){padding:31px 0 32px}
  .hero-home:where(:not(.cecomp-ppc *))::before{opacity:.18;background-position:64% center;-webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 38%,rgba(0,0,0,.30) 60%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,transparent 38%,rgba(0,0,0,.30) 60%,#000 100%)}
  .hero-home:where(:not(.cecomp-ppc *))::after{opacity:.58}
  .hero-content h1:where(:not(.cecomp-ppc *)){font-size:clamp(2.35rem,12vw,2.75rem);max-width:340px}
  .hero-lead:where(:not(.cecomp-ppc *)){font-size:1rem;line-height:1.58;max-width:35ch;margin:17px 0 20px}
  .hero-meta:where(:not(.cecomp-ppc *)){font-size:.82rem;max-width:36ch;margin-top:18px}
  .home-quick:where(:not(.cecomp-ppc *)){padding-top:28px;padding-bottom:30px}
  .quick-card:where(:not(.cecomp-ppc *)){min-height:88px;padding:16px 15px}
  .quick-icon:where(:not(.cecomp-ppc *)){width:36px;height:36px}
  .section:where(:not(.cecomp-ppc *)){padding-block:34px}
  .section-heading:where(:not(.cecomp-ppc *)){margin-bottom:21px}
  .section-heading h2:where(:not(.cecomp-ppc *)){font-size:1.65rem}
  .home-news:where(:not(.cecomp-ppc *)){padding-top:35px;padding-bottom:39px}
  .news-home-clean .news-card.featured:where(:not(.cecomp-ppc *)){gap:17px;padding-bottom:24px}
  .news-home-clean .news-pair:where(:not(.cecomp-ppc *)){gap:0;padding-top:22px}
  .news-home-clean .news-pair .news-card:where(:not(.cecomp-ppc *)){padding-right:0}
  .news-home-clean .news-pair .news-card+.news-card:where(:not(.cecomp-ppc *)){border-left:0;border-top:1px solid var(--line);padding:22px 0 0;margin-top:22px}
  .home-help-wrap:where(:not(.cecomp-ppc *)){padding-bottom:38px}
  .home-help:where(:not(.cecomp-ppc *)){padding:21px 19px}
  .page-heading:where(:not(.cecomp-ppc *)){padding-bottom:24px;margin-bottom:26px}
  .page-heading h1:where(:not(.cecomp-ppc *)){font-size:2.05rem}
  .page-heading p:where(:not(.cecomp-ppc *)){font-size:1rem}
  .prose p:where(:not(.cecomp-ppc *)),.prose li:where(:not(.cecomp-ppc *)){font-size:1rem;line-height:1.72}
  .prose>section+section:where(:not(.cecomp-ppc *)),.course-prose>section+section:where(:not(.cecomp-ppc *)){margin-top:39px}
  .course-facts:where(:not(.cecomp-ppc *)){padding:23px 20px}
  .course-facts-grid>div:where(:not(.cecomp-ppc *)){padding:16px 0}
  .course-facts-grid dd:where(:not(.cecomp-ppc *)){font-size:1rem}
  .panel:where(:not(.cecomp-ppc *)),.sidebar-related:where(:not(.cecomp-ppc *)),.calendar-feature:where(:not(.cecomp-ppc *)),.document-lead:where(:not(.cecomp-ppc *)),.course-management:where(:not(.cecomp-ppc *)){padding:21px 19px}
  .site-footer:where(:not(.cecomp-ppc *)){padding-top:34px}
  .footer-grid-compact:where(:not(.cecomp-ppc *)){gap:29px}
  .site-footer h2:where(:not(.cecomp-ppc *)){margin-bottom:11px}
  .site-footer a:where(:not(.cecomp-ppc *)){padding-block:5px}
  .footer-bottom:where(:not(.cecomp-ppc *)){margin-top:24px;padding-block:18px}
}

@media (prefers-reduced-motion:reduce){
  .quick-card:where(:not(.cecomp-ppc *)),.service-tile:where(:not(.cecomp-ppc *)),.directory-row:where(:not(.cecomp-ppc *)),.context-link:where(:not(.cecomp-ppc *)),.resource-row:where(:not(.cecomp-ppc *)),.news-all-link:where(:not(.cecomp-ppc *)),.button:where(:not(.cecomp-ppc *)){transform:none!important}
}
@media (min-width:1151px) and (max-width:1399px){
.site-header.is-scrolled .header-inner:where(:not(.cecomp-ppc *)){grid-template-columns:auto minmax(0,1fr) auto;gap:18px}
.site-header.is-scrolled .brand img:where(:not(.cecomp-ppc *)){width:108px}
.site-header.is-scrolled .main-nav:where(:not(.cecomp-ppc *)){gap:11px;justify-content:space-between;min-width:0}
.site-header.is-scrolled .main-nav>a:where(:not(.cecomp-ppc *)),.site-header.is-scrolled .nav-course-row>a:where(:not(.cecomp-ppc *)){font-size:.8rem;min-width:0}
.site-header.is-scrolled .nav-ppc span:where(:not(.cecomp-ppc *)){white-space:normal;line-height:1.25}
.site-header.is-scrolled .nav-ppc span br:where(:not(.cecomp-ppc *)){display:block}
.site-header.is-scrolled .main-nav>.nav-ppc:where(:not(.cecomp-ppc *)){max-width:154px}
.site-header.is-scrolled .main-nav>.nav-sistemas:where(:not(.cecomp-ppc *)){max-width:126px}
.site-header.is-scrolled .nav-group:where(:not(.cecomp-ppc *)){min-width:max-content}
}
@media (min-width:1151px){
.site-header.is-scrolled .nav-ppc span:where(:not(.cecomp-ppc *)){white-space:normal;line-height:1.25}
.site-header.is-scrolled .nav-ppc span br:where(:not(.cecomp-ppc *)){display:block}
}

:root{--reading-width:68ch;--news-media-ratio:3 / 2}
.prose:where(:not(.cecomp-ppc *)){max-width:var(--reading-width)}
.course-prose:where(:not(.cecomp-ppc *)){max-width:70ch}
.page-heading p:where(:not(.cecomp-ppc *)){max-width:68ch}
.article-detail:where(:not(.cecomp-ppc *)){max-width:840px}
.article-detail .prose:where(:not(.cecomp-ppc *)){max-width:var(--reading-width)}
.article-detail .article-lead:where(:not(.cecomp-ppc *)){max-width:62ch}
.prose-divided>section+section:where(:not(.cecomp-ppc *)){margin-top:38px;padding-top:38px;border-top:1px solid #d9e7ed}
.official-source:where(:not(.cecomp-ppc *)){display:flex;align-items:flex-start;gap:13px;margin-top:34px;padding:16px 18px;background:var(--reference-surface);border:1px solid var(--reference-line);border-left:3px solid var(--logo-blue);border-radius:6px}
.official-source-icon:where(:not(.cecomp-ppc *)){display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:#fff;color:var(--blue-dark);border:1px solid #c5e2ee}
.official-source-icon .icon:where(:not(.cecomp-ppc *)){width:17px;height:17px}
.official-source-copy:where(:not(.cecomp-ppc *)){min-width:0}
.official-source-label:where(:not(.cecomp-ppc *)){display:block;margin-bottom:3px;color:var(--navy);font-size:.72rem;font-weight:750;letter-spacing:.055em;text-transform:uppercase}
.official-source p:where(:not(.cecomp-ppc *)){margin:0;color:#3f6172;font-size:.86rem;line-height:1.62}
.official-source a:where(:not(.cecomp-ppc *)){font-weight:650}
.table-responsive:where(:not(.cecomp-ppc *)){width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid var(--line);border-radius:var(--radius-panel);background:#fff}
.table-responsive:focus-visible:where(:not(.cecomp-ppc *)){outline:3px solid var(--focus-ring);outline-offset:3px}
.data-table:where(:not(.cecomp-ppc *)){width:100%;min-width:680px;border-collapse:collapse;border-spacing:0;color:var(--ink);font-size:.92rem;line-height:1.5}
.data-table th:where(:not(.cecomp-ppc *)),.data-table td:where(:not(.cecomp-ppc *)){padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.data-table th:where(:not(.cecomp-ppc *)){background:#f3f9fc;color:var(--navy);font-size:.78rem;font-weight:700;letter-spacing:.02em}
.data-table tbody tr:last-child td:where(:not(.cecomp-ppc *)){border-bottom:0}
.data-table tbody tr:hover:where(:not(.cecomp-ppc *)){background:#f8fcfd}
.table-note:where(:not(.cecomp-ppc *)){margin:8px 0 0;color:var(--muted);font-size:.78rem;line-height:1.5}
.news-image:where(:not(.cecomp-ppc *)){aspect-ratio:var(--news-media-ratio);background:#edf5f8}
.news-image img:where(:not(.cecomp-ppc *)),.news-home-clean .news-image img:where(:not(.cecomp-ppc *)),.news-list .news-image img:where(:not(.cecomp-ppc *)),.news-card.featured .news-image img:where(:not(.cecomp-ppc *)){width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.article-detail figure img:where(:not(.cecomp-ppc *)){background:#edf5f8}
@media (max-width:600px){
  .prose:where(:not(.cecomp-ppc *)){max-width:none}
  .prose-divided>section+section:where(:not(.cecomp-ppc *)){margin-top:32px;padding-top:32px}
  .official-source:where(:not(.cecomp-ppc *)){gap:11px;padding:14px 15px}
  .official-source-icon:where(:not(.cecomp-ppc *)){width:31px;height:31px;flex-basis:31px}
  .data-table:where(:not(.cecomp-ppc *)){min-width:620px;font-size:.88rem}
  .data-table th:where(:not(.cecomp-ppc *)),.data-table td:where(:not(.cecomp-ppc *)){padding:12px 13px}
  .site-footer:where(:not(.cecomp-ppc *)){padding-top:28px}
  .footer-grid-compact:where(:not(.cecomp-ppc *)){grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 22px}
  .footer-grid-compact>.footer-identity:where(:not(.cecomp-ppc *)){grid-column:1/-1}
  .footer-grid-compact>.footer-univasf:where(:not(.cecomp-ppc *)){grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;padding-top:2px;border-top:1px solid rgba(209,228,238,.18)}
  .footer-univasf h2:where(:not(.cecomp-ppc *)){grid-column:1/-1;padding-top:16px}
  .site-footer h2:where(:not(.cecomp-ppc *)){margin-bottom:8px}
  .site-footer a:where(:not(.cecomp-ppc *)){font-size:.81rem;line-height:1.45;padding-block:4px}
  .site-footer p:where(:not(.cecomp-ppc *)){margin:8px 0;font-size:.84rem;line-height:1.55}
  .site-footer .footer-contact-row:where(:not(.cecomp-ppc *)){font-size:.79rem;line-height:1.5}
  .footer-contact-list:where(:not(.cecomp-ppc *)){gap:7px;margin-top:10px}
  .footer-bottom:where(:not(.cecomp-ppc *)){margin-top:20px;padding-block:15px;font-size:.74rem;line-height:1.55}
}


.cecomp-page{padding-block:28px 64px;min-height:55vh}
.cecomp-content{max-width:1000px}
.cecomp-content.cecomp-ppc{max-width:100%}
.cecomp-ppc [hidden]{display:none!important}
.cecomp-content>.container:not(.cecomp-ppc *){width:100%;margin-inline:0}
.cecomp-content .wp-block-button__link{border-radius:4px;background:var(--blue-dark);color:#fff;font-size:1rem}
.cecomp-content .wp-block-details{border-block:1px solid var(--line);padding:16px 0}
.cecomp-content .wp-block-details summary{font-weight:600;color:var(--navy);cursor:pointer}
.cecomp-content .wp-block-table{overflow:auto}
.cecomp-content .wp-block-table table{border-collapse:collapse;width:100%}
.cecomp-content .wp-block-table td,.cecomp-content .wp-block-table th{padding:12px;border:1px solid var(--line)}
.cecomp-service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:24px}
.cecomp-service{padding:24px;border:1px solid var(--line);background:#fff;border-radius:4px}
.cecomp-service h3{margin:0 0 12px}.cecomp-service p{margin:0}.cecomp-service a{font-size:1.125rem;align-items:flex-start;line-height:1.5;width:100%}
.cecomp-people{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px}
.cecomp-person-profile{display:flex;gap:36px}.cecomp-person-profile>.portrait{width:180px;height:180px}
.cecomp-contact{max-width:720px}.cecomp-contact label{display:block;font-weight:600;color:var(--navy);margin-bottom:6px}
.cecomp-contact input,.cecomp-contact textarea{display:block;width:100%;padding:12px;border:1px solid #8da8b9;border-radius:4px;background:#fff;color:var(--ink)}
.cecomp-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cecomp-form-status{padding:20px;background:var(--light);border-left:3px solid var(--blue-dark)}
.cecomp-link-list{border-top:1px solid var(--line)}.cecomp-link-list ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.cecomp-link-list li{border-right:1px solid var(--line)}
.cecomp-schedule{padding:24px;background:var(--light);margin-block:24px}
.course-band{background:var(--light)}.course-preview{display:grid;grid-template-columns:1.15fr 1fr;gap:64px}
.help-strip{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-block:24px;margin-bottom:32px}
.help-strip h2{font-size:1.25rem}.help-strip p{margin:0}
.cecomp-post-list{display:grid;gap:32px}.cecomp-post{display:grid;grid-template-columns:minmax(150px,280px) 1fr;gap:28px;border-bottom:1px solid var(--line);padding-bottom:28px}.cecomp-post img{width:100%;aspect-ratio:16/10;object-fit:cover}
.cecomp-post time,.news-copy time{font-size:.8125rem;color:var(--muted)}
.news-card.featured.no-image{grid-template-columns:1fr}
.cecomp-post h2{font-size:1.5rem;margin-top:8px}.nav-links{display:flex;gap:12px;margin-top:32px}
.page-numbers{padding:8px 12px;border:1px solid var(--line)}.page-numbers.current{background:var(--navy);color:#fff}
.cecomp-utility-menu,.cecomp-footer-links{list-style:none;padding:0;margin:0}
.cecomp-utility-menu{display:flex;gap:16px}
.cecomp-footer-links li{margin:0;padding:0}
.site-footer .footer-univasf>.cecomp-footer-links{display:contents}
.site-footer .footer-univasf>.cecomp-footer-links>li{min-width:0}
.main-nav>.nav-ppc{max-width:205px}.main-nav>.nav-sistemas{max-width:160px}
.main-nav .is-context>.nav-course-row>a{color:var(--blue-dark)}
.course-dropdown>section>h2{font-family:var(--font-body)}
.course-dropdown.cecomp-flat-menu{padding:16px;gap:4px 18px;grid-template-columns:repeat(2,minmax(0,1fr));max-width:calc(100vw - 32px)}
.course-dropdown.cecomp-flat-menu>a{margin:0;padding:10px 12px;min-height:44px;align-items:center;overflow-wrap:anywhere}
.cecomp-menu-separator{display:block;grid-column:1/-1;height:1px;background:var(--line);margin:6px 12px}
.nav-course-row>.nav-section-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:auto;padding:13px 0;border-radius:0;font-family:inherit;font-size:var(--text-small);font-weight:600;line-height:1.35;color:var(--ink);background:transparent}
.nav-course-row>.nav-section-toggle:hover,.nav-course-row>.nav-section-toggle[aria-expanded=true]{color:var(--blue-dark);background:transparent}
.nav-course-row>.course-toggle:not(.nav-section-toggle){align-self:center;min-height:36px}
.course-dropdown .icon,.nav-section-toggle .icon{flex-shrink:0}
@media(max-width:850px){.nav-course-row>.nav-section-toggle{width:100%;min-height:48px;padding-inline:8px}.course-dropdown.cecomp-flat-menu{width:100%;max-width:100%;grid-template-columns:1fr;padding:10px;gap:2px}.nav-course-row{width:100%}}
.cecomp-js .course-dropdown[hidden]{display:none!important}
html:not(.cecomp-js) .nav-group:not(:hover):not(:focus-within)>.course-dropdown{display:none}
.admin-bar .site-header{top:32px}
.cecomp-subnav{display:flex;list-style:none;flex-wrap:wrap;gap:4px;background:var(--light);padding:8px;margin:0 0 32px;border:1px solid var(--line);border-radius:8px}
.cecomp-subnav a{display:block;padding:8px 12px;font-size:.875rem}.cecomp-subnav .current-menu-item>a{background:white;box-shadow:0 0 0 1px var(--line);border-radius:4px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.home-news .news-card.featured.no-image{display:block}
.home-news .news-pair .news-image{margin-bottom:16px}
.quick-grid:empty{display:none}
@media(max-width:850px){html:not(.cecomp-js) .main-nav{display:grid;width:100%;grid-template-columns:1fr}.course-preview{gap:32px}.course-dropdown{max-width:100%}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:640px){.course-preview,.cecomp-post{grid-template-columns:1fr}.help-strip,.cecomp-person-profile{flex-direction:column}.cecomp-content{width:100%}.cecomp-page{padding-block:24px 40px}.cecomp-people{grid-template-columns:1fr}}
@media(max-width:600px){.admin-bar .site-header{top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-header,.brand,.brand img{transition:none}}
.portrait-placeholder{display:flex;align-items:center;justify-content:center;background:var(--light);color:var(--navy);font-size:2rem;border-radius:50%;flex-shrink:0}
.faculty-card[hidden],.empty-state[hidden]{display:none!important}
.news-list .news-card.no-image{grid-template-columns:1fr}
.contact-form button:disabled{opacity:.65;cursor:not-allowed}
.prose img{max-width:100%;height:auto}
.profile-heading .portrait{object-fit:cover}
.side-stack .text-link{overflow-wrap:anywhere;max-width:100%}
.page-main .cecomp-ppc{max-width:100%;margin-top:28px}
.cecomp-editorial-editor .block-editor-inner-blocks{min-width:0}

.site-alert[hidden]{display:none!important}
.page-heading:where(:not(.cecomp-ppc *)){
  position:relative;isolation:isolate;overflow:hidden;
  background:linear-gradient(112deg,var(--surface-blue) 0%,var(--pale) 62%,#d9f0fb 100%);
  border:1px solid var(--reference-line);border-radius:var(--radius-panel);
  padding:30px 32px;box-shadow:none;
}
.page-heading:where(:not(.cecomp-ppc *))::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:url("title-circuits.svg") right center / auto 100% no-repeat;opacity:.13;
  mask-image:linear-gradient(90deg,transparent 30%,#000 100%);
}
.page-heading h1:where(:not(.cecomp-ppc *)){color:var(--navy)}
.page-heading .eyebrow:where(:not(.cecomp-ppc *)){color:var(--blue-dark)}
.page-heading p:where(:not(.cecomp-ppc *)){color:var(--muted)}
@media(max-width:600px){
  .page-heading:where(:not(.cecomp-ppc *)){padding:24px 20px}
  .page-heading:where(:not(.cecomp-ppc *))::before{opacity:.08}
}
@media print, (forced-colors:active){
  .page-heading:where(:not(.cecomp-ppc *))::before{display:none}
}
.faculty-card h2>a{display:inline-block;padding-block:6px;text-decoration:underline;text-decoration-color:var(--reference-line);text-underline-offset:5px}
.faculty-card h2>a:hover{color:var(--navy);text-decoration-color:currentColor}
@media(forced-colors:active){.faculty-card h2>a{text-decoration-color:LinkText}}

.news-share{margin:24px 0;border:1px solid var(--line);border-radius:10px;background:#fff;max-width:720px}
.news-share summary{cursor:pointer;padding:15px 20px;font-weight:700;color:var(--blue-dark);min-height:48px}
.news-share summary span{float:right}
.share-content{padding:0 20px 20px}
.share-preview{display:flex;gap:16px;align-items:center;background:#f2f8fb;border-radius:8px;padding:16px;margin-bottom:16px}
.share-preview-image{flex:0 0 96px}
.share-preview-image img{display:block;width:96px;height:80px;object-fit:cover;border-radius:6px}
.share-preview p{font-size:1rem;line-height:1.4;font-weight:700;margin:5px 0;color:var(--navy)}
.share-preview small{color:var(--muted)}
.share-actions{display:flex;gap:10px;flex-wrap:wrap}
.share-actions .button{min-height:44px}
.share-actions [hidden],.copy-fallback[hidden]{display:none!important}
.share-status:empty{display:none}
.share-status{font-size:.9rem;margin:12px 0 0}
.copy-fallback input{display:block;width:100%;padding:10px;margin-top:8px;border:1px solid var(--line)}
.news-share summary:focus-visible,.share-actions button:focus-visible{outline:3px solid var(--blue-dark);outline-offset:4px}
.contact-layout:has(.contact-direct){grid-template-columns:1fr;gap:24px}
.contact-layout:has(.contact-direct) .contact-info{display:none}
.contact-layout:has(.contact-direct)>.side-stack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.contact-direct{padding:28px;border:1px solid var(--line);border-radius:10px}
.contact-direct .contact-email{display:inline-block;font-size:1.15rem;margin:0 0 18px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.news-pair{grid-template-columns:1fr!important}
.news-pair .news-card{display:grid;grid-template-columns:160px minmax(0,1fr);gap:24px;border-left:0!important;border-bottom:1px solid var(--line);padding:20px 0!important}
.news-pair .news-card.no-image{grid-template-columns:1fr}
.news-pair .news-image img{width:160px;height:112px;object-fit:cover}
.news-pair .news-copy{padding:0!important}
.news-pair .news-card h3{margin-top:6px;font-size:1.25rem}
.guide-box h2{font-family:var(--font-body);font-size:1.5rem;font-weight:700;line-height:1.25}
.cecomp-ppc .ppc-titulo{font-family:inherit;font-size:1.45rem;text-align:left;text-transform:none}
.cecomp-ppc [role="dialog"] p{text-align:left}
.ppc-jump-links{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}
.ppc-jump-links a{padding:10px 14px;border:1px solid var(--line);border-radius:6px;color:var(--blue-dark)}
.search-suggestions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}
.search-suggestions a{padding:12px 16px;border:1px solid var(--line);border-radius:8px}
.site-footer .cecomp-footer-links a{line-height:1.6}
.site-footer .cecomp-footer-links a svg{display:inline-block;vertical-align:middle;margin-left:4px}
@media(max-width:600px){
 .footer-grid.footer-grid-compact{display:flex;flex-direction:column;gap:24px}
 .footer-grid.footer-grid-compact>div,.footer-grid.footer-grid-compact>.footer-univasf{display:block;grid-column:auto;grid-row:auto;padding:0;border:0}
 .footer-grid .cecomp-footer-links a{display:inline-block;padding:6px 0;min-height:36px}
 .contact-layout:has(.contact-direct)>.side-stack{grid-template-columns:1fr;gap:12px}
 .page-heading:where(:not(.cecomp-ppc *)){padding:20px 18px}
 .page-heading h1:where(:not(.cecomp-ppc *)){font-size:1.85rem;line-height:1.18}
 .news-pair .news-card{grid-template-columns:88px minmax(0,1fr);gap:14px}
 .news-pair .news-image img{width:88px;height:88px}
 .news-pair .news-card p{display:none}
 .share-content{padding:0 14px 16px}
 .share-preview{padding:12px;gap:12px}
 .share-preview-image{flex-basis:64px}
 .share-preview-image img{width:64px;height:64px}
 .share-preview p{font-size:.95rem}
 .cecomp-ppc [role="dialog"] p{text-align:left!important}
}
@media print{.news-share{display:none}}.cecomp-site{--radius:6px;--radius-panel:12px}
.cecomp-site .page-heading h1{font-size:clamp(1.9rem,3.2vw,2.65rem);line-height:1.15;letter-spacing:-.025em;text-wrap:balance}
.cecomp-site .page-heading p{max-width:65ch}
.cecomp-site .section-heading h2{font-size:clamp(1.65rem,2.5vw,2rem);letter-spacing:-.02em}
.cecomp-site .profile-heading{padding:32px;border:1px solid #cfe2ed;border-left:4px solid var(--logo-blue);border-radius:12px;background:linear-gradient(120deg,#eaf5fb,#f7fbfd 70%,#fff);gap:28px;margin-block:24px 40px}
.cecomp-site .profile-heading>div{min-width:0}
.cecomp-site .profile-heading h1{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.15;letter-spacing:-.025em;margin:8px 0 12px;text-wrap:balance;overflow-wrap:normal}
.cecomp-site .profile-heading .portrait{width:116px;height:116px;border:4px solid #fff;box-shadow:0 0 0 1px #d3e5ee}
.cecomp-site .profile-page .prose{max-width:65ch}
.cecomp-site .profile-page .side-stack .panel{padding:24px;background:#fff}
.cecomp-site .profile-page .side-stack .panel h2{font-size:1.2rem;margin-bottom:20px}
.cecomp-site .profile-page .side-stack .panel p{margin:0;padding:12px 0;border-top:1px solid #e2edf2}
.cecomp-site .profile-page .side-stack .panel .text-link{font-weight:600;line-height:1.6}
.cecomp-site .faculty-card{padding:24px;border:1px solid #d8e6ee;border-radius:12px;background:#fff;transition:border-color .15s,box-shadow .15s}
.cecomp-site .faculty-card:hover,.cecomp-site .faculty-card:focus-within{border-color:#83b7d0;box-shadow:0 5px 18px #0c334a0a}
.cecomp-site .faculty-card h2{font-size:1.2rem;line-height:1.35;letter-spacing:-.015em}
.cecomp-site .faculty-card .role-label{font-size:.8125rem;margin-top:12px;color:#486478}
.cecomp-site .panel,.cecomp-site .guide-box{border-radius:12px}
.cecomp-site .service-tile{padding-block:20px}
.cecomp-site .service-tile strong{font-weight:650}
.cecomp-site .button{border-radius:6px;min-height:44px;font-weight:650}
.cecomp-site .article-detail{max-width:860px;margin-inline:auto}
.cecomp-site .article-detail>h1{font-size:clamp(1.9rem,3.5vw,2.75rem);line-height:1.16;letter-spacing:-.025em;text-wrap:balance;margin:16px 0 24px}
.cecomp-site .article-detail>.meta{font-size:.8125rem;letter-spacing:.02em;gap:16px}
.cecomp-site .article-detail>.prose{max-width:68ch;margin:32px auto}
.cecomp-site .article-detail>figure{margin:28px 0}
.cecomp-site .article-detail>figure img{width:100%;height:auto;border-radius:10px}
.cecomp-site .article-detail>.news-share{max-width:none;margin-block:24px 32px}
.cecomp-site .article-detail .article-tags{border-top:1px solid var(--line);padding-top:24px;margin-top:40px}
.cecomp-site .news-pair{gap:0}
.cecomp-site .news-pair .news-card h3{font-size:1.2rem;line-height:1.35;letter-spacing:-.015em}
.cecomp-site .news-pair .news-image{align-self:start;border-radius:8px;overflow:hidden}
.cecomp-site .news-pair .news-image img{display:block}
.cecomp-site .news-pair .news-card:last-child{border-bottom:0}
.cecomp-site :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #006a9c;outline-offset:4px}
@media(min-width:1151px){
 .cecomp-site .main-nav{gap:clamp(14px,1.5vw,24px)}
 .cecomp-site .main-nav>a,.cecomp-site .nav-course-row>a{min-height:60px;line-height:1.4}
 .cecomp-site .main-nav>.nav-ppc{max-width:195px}
 .cecomp-site .site-header.is-scrolled .main-nav>a,.cecomp-site .site-header.is-scrolled .nav-course-row>a{min-height:62px}
}
@media(max-width:1150px){
 .cecomp-site .course-dropdown h2{margin-block:8px 12px}
 .cecomp-site .course-dropdown a{min-height:44px}
}
@media(max-width:760px){
 .cecomp-site .profile-page .content-grid{grid-template-columns:1fr;gap:32px}
 .cecomp-site .profile-heading{padding:24px;gap:20px}
 .cecomp-site .profile-heading h1{font-size:1.9rem}
}
@media(max-width:600px){
 .cecomp-site .profile-heading{padding:22px 18px;gap:16px;align-items:flex-start;margin-bottom:28px}
 .cecomp-site .profile-heading .portrait{width:76px;height:76px;border-width:3px}
 .cecomp-site .profile-heading h1{font-size:1.65rem;overflow-wrap:anywhere}
 .cecomp-site .profile-heading p{font-size:.875rem;line-height:1.5}
 .cecomp-site .profile-heading .eyebrow{font-size:.625rem;letter-spacing:.06em}
 .cecomp-site .faculty-card{padding:20px;gap:8px 16px}
 .cecomp-site .faculty-card .role-label{margin-top:0}
 .cecomp-site .faculty-card h2{font-size:1.1rem}
 .cecomp-site .article-detail>h1{font-size:1.85rem}
 .cecomp-site .article-detail>.prose{margin-block:24px}
 .cecomp-site .article-detail>figure{margin-block:24px}
 .cecomp-site .page-heading{padding:24px 20px}
}
@media(prefers-reduced-motion:reduce){.cecomp-site .faculty-card{transition:none}}
@media(prefers-reduced-motion:no-preference){
 .cecomp-site .button{transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease}
 .cecomp-site .service-tile{transition:border-color .16s ease}
 .cecomp-site .service-tile>.icon{transition:transform .16s ease}
 .cecomp-site .main-nav>a::after,.cecomp-site .nav-course-row>a::after{transition:background-color .16s ease}
 .cecomp-site .news-image img{transition:transform .22s ease}
}
@media(hover:hover) and (pointer:fine){
 .cecomp-site .button:hover{box-shadow:0 3px 10px #0c334a14}
 .cecomp-site .service-tile:hover{border-bottom-color:#7cabc2}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .cecomp-site .service-tile:hover>.icon{transform:translateX(3px)}
 .cecomp-site .news-image:hover img{transform:scale(1.015)}
}
.cecomp-site .news-image{overflow:hidden}
@media(prefers-reduced-motion:reduce){
 .cecomp-site .button,.cecomp-site .service-tile,.cecomp-site .service-tile>.icon,.cecomp-site .news-image img{transition:none;transform:none}
}
.cecomp-site .article-detail>h1,.cecomp-site .news-card h3{font-family:var(--font-body)}
.cecomp-site .page-heading{padding:24px 28px;margin-bottom:28px}
.cecomp-site .page-heading h1{margin-top:0;margin-bottom:10px}
.cecomp-site .page-heading .eyebrow{margin-bottom:6px}
.cecomp-site .page-heading p{line-height:1.55}
.cecomp-site .page-heading .edition{margin-top:12px}
.cecomp-site .home-news .news-card.featured .news-image{aspect-ratio:16/9;align-self:start;border-radius:8px}
.cecomp-site .home-news .news-card.featured .news-image img{display:block;width:100%;height:100%;aspect-ratio:16/9;object-fit:cover}
@media(min-width:1151px){
 .cecomp-site .site-header:not(.is-scrolled) .brand{min-height:82px}
 .cecomp-site .site-header:not(.is-scrolled) .brand img{width:158px}
 .cecomp-site .site-header:not(.is-scrolled) .main-nav{min-height:54px;gap:clamp(14px,1.6vw,24px)}
 .cecomp-site .site-header:not(.is-scrolled) .main-nav>a,.cecomp-site .site-header:not(.is-scrolled) .nav-course-row>a{min-height:54px;padding-block:10px}
 .cecomp-site .quick-card{align-items:start;padding-block:20px}
 .cecomp-site .quick-icon{margin-top:2px}
 .cecomp-site .quick-card>.icon{align-self:center}
 .cecomp-site .quick-copy strong{min-height:2.8em;display:block}
}
@media(max-width:600px){
 .cecomp-site .page-heading{padding:20px 18px;margin-bottom:24px}
 .cecomp-site .page-heading h1{margin-bottom:8px}
 .cecomp-site .page-heading .edition{margin-top:10px}
}
.cecomp-site .news-card .meta{gap:10px 16px;flex-wrap:wrap;font-size:.78rem;line-height:1.5;margin-bottom:10px}
.cecomp-site .news-card .meta>span{color:var(--blue-dark);font-weight:650}
.cecomp-site .news-card h3{font-family:var(--font-body);font-size:1.25rem;line-height:1.35;letter-spacing:-.02em;margin:0 0 12px;overflow-wrap:anywhere}
.cecomp-site .news-card h3 a,.cecomp-site .related-news-card h3 a{color:var(--navy);text-decoration:none}
.cecomp-site .news-card h3 a:hover,.cecomp-site .related-news-card h3 a:hover{color:var(--blue-dark);text-decoration:underline;text-underline-offset:4px}
.cecomp-site .news-card .news-copy>p{font-size:.95rem;line-height:1.65;margin:0 0 16px;color:var(--muted);overflow-wrap:anywhere}
.cecomp-site .home-news .news-card.featured{align-items:center;gap:32px}
.cecomp-site .home-news .news-card.featured h3{font-size:clamp(1.4rem,2.1vw,1.8rem);line-height:1.3}
.cecomp-site .home-news .news-pair{padding-top:8px;gap:0}
.cecomp-site .home-news .news-pair .news-card{margin-top:0;border-top:0}
.cecomp-site .home-news .news-pair .news-image{aspect-ratio:4/3;margin-bottom:0}
.cecomp-site .home-news .news-pair .news-image img{width:100%;height:100%;object-fit:cover}
.cecomp-site .news-list{gap:32px 24px;align-items:stretch}
.cecomp-site .news-list .news-card,.cecomp-site .news-list .news-card:first-child{display:flex;flex-direction:column;grid-column:auto;gap:0;padding:0 0 24px;min-width:0}
.cecomp-site .news-list .news-image{aspect-ratio:16/9;border-radius:8px}
.cecomp-site .news-list .news-image img{display:block;width:100%;height:100%;object-fit:cover}
.cecomp-site .news-list .news-copy,.cecomp-site .news-list .news-card:first-child .news-copy{display:flex;flex-direction:column;flex:1;padding-top:18px}
.cecomp-site .news-list .news-card.no-image .news-copy{padding-top:0}
.cecomp-site .news-list .text-link{margin-top:auto;align-self:flex-start;min-height:44px;display:inline-flex;align-items:center}
.cecomp-site .news-list~.nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:32px}
.cecomp-site .news-list~.nav-links .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:6px;text-decoration:none}
.cecomp-site .news-list~.nav-links .current{background:var(--blue-dark);border-color:var(--blue-dark);color:#fff}
.cecomp-site .article-detail>.article-lead{font-size:1.15rem;line-height:1.65;color:var(--muted);max-width:65ch;margin:0 0 28px}
.cecomp-site .article-detail>.prose{font-size:1.0625rem;line-height:1.85}
.cecomp-site .article-detail>.prose p{margin-block:0 1.35em}
.cecomp-site .article-detail>.prose h2{font-family:var(--font-body);font-size:1.6rem;line-height:1.3;margin:1.8em 0 .7em}
.cecomp-site .article-detail>.prose h3{font-family:var(--font-body);font-size:1.25rem;line-height:1.4;margin:1.6em 0 .6em}
.cecomp-site .article-detail>.news-share{margin-top:32px}
.cecomp-site .related-news{border-top:1px solid var(--line);padding-top:32px;margin:48px 0 16px}
.cecomp-site .related-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.cecomp-site .related-news-card{min-width:0}
.cecomp-site .related-news-card .news-image{aspect-ratio:16/9;border-radius:8px;margin-bottom:16px}
.cecomp-site .related-news-card .news-image img{width:100%;height:100%;display:block;object-fit:cover}
.cecomp-site .related-news-card time{font-size:.8rem;color:var(--muted)}
.cecomp-site .related-news-card h3{font-family:var(--font-body);font-size:1.15rem;line-height:1.4;margin:8px 0 0;overflow-wrap:anywhere}
@media(max-width:600px){
 .cecomp-site .home-news .news-card.featured{gap:18px}
 .cecomp-site .home-news .news-pair .news-image{aspect-ratio:1}
 .cecomp-site .news-card .meta{font-size:.75rem;margin-bottom:8px}
 .cecomp-site .news-list{gap:24px}
 .cecomp-site .article-detail>.article-lead{font-size:1.05rem}
 .cecomp-site .article-detail>.prose{font-size:1rem;line-height:1.8}
 .cecomp-site .related-news{margin-top:32px;padding-top:24px}
 .cecomp-site .related-news-grid{grid-template-columns:1fr;gap:20px}
 .cecomp-site .related-news-card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;border-bottom:1px solid var(--line);padding-bottom:20px}
 .cecomp-site .related-news-card:not(:has(.news-image)){grid-template-columns:1fr}
 .cecomp-site .related-news-card .news-image{aspect-ratio:1;margin:0}
 .cecomp-site .related-news-card h3{font-size:1.05rem}
}
@media print{.cecomp-site .related-news{display:none}}.cecomp-site .news-list{grid-template-columns:1fr;gap:24px}
.cecomp-site .news-list .news-card,.cecomp-site .news-list .news-card:first-child{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px;align-items:start}
.cecomp-site .news-list .news-card.no-image,.cecomp-site .news-list .news-card.no-image:first-child{grid-template-columns:1fr}
.cecomp-site .news-list .news-copy,.cecomp-site .news-list .news-card:first-child .news-copy{padding-top:0}
.cecomp-site .news-list .news-copy>p{max-width:75ch;margin-bottom:8px}
.cecomp-site .news-list .text-link{margin-top:0}
@media(max-width:600px){
 .cecomp-site .news-list .news-card,.cecomp-site .news-list .news-card:first-child{grid-template-columns:1fr;gap:16px}
}

.cecomp-site .internal-page .page-toc-inline{padding:16px 0;gap:16px;margin-bottom:32px;align-items:center}
.cecomp-site .internal-page .page-toc-links{display:flex;flex-wrap:wrap;gap:8px}
.cecomp-site .internal-page .page-toc-links a{display:inline-flex;align-items:center;min-height:44px;padding:9px 14px;border:1px solid #d5e5ed;border-radius:6px;background:#fff;font-size:.875rem;line-height:1.4;color:var(--navy);text-decoration:none}
.cecomp-site .internal-page .page-toc-links a:hover,.cecomp-site .internal-page .page-toc-links a[aria-current="location"]{background:#edf7fc;border-color:#84bbd5;color:var(--blue-dark)}
.cecomp-site .internal-page :is(h2,h3,section)[id]:not(.cecomp-ppc *){scroll-margin-top:112px}
.cecomp-site .internal-page :is(.prose,.course-prose,.prose-divided) h2:not(.cecomp-ppc *){font-family:var(--font-body);font-size:clamp(1.4rem,2.3vw,1.8rem);line-height:1.3;letter-spacing:-.02em;margin-bottom:16px}
.cecomp-site .internal-page :is(.prose,.course-prose,.prose-divided) p:not(.cecomp-ppc *){max-width:70ch;line-height:1.8}
.cecomp-site .internal-page :is(.prose,.course-prose,.prose-divided) li:not(.cecomp-ppc *){line-height:1.7;margin-bottom:8px}
.cecomp-site .internal-page .document-resource{padding:24px;border:1px solid #cbdfe9;border-left:4px solid var(--logo-blue);border-radius:10px;background:#fff;margin-block:24px}
.cecomp-site .internal-page .document-resource h2{font-family:var(--font-body);font-size:1.4rem;line-height:1.35}
.cecomp-site .internal-page .document-resource p{line-height:1.7;max-width:68ch}
.cecomp-site .internal-page .document-resource .button{margin-block:8px;white-space:normal;text-align:left}
.cecomp-site .internal-page .document-meta{gap:8px 16px;margin-bottom:12px}
.cecomp-site .internal-page .document-detail{margin-top:20px;padding-bottom:0;line-height:1.6}
.cecomp-site .internal-page :is(.service-tile,.resource-row,.directory-row){min-height:52px;gap:16px;padding-block:18px}
.cecomp-site .internal-page :is(.service-tile,.resource-row,.directory-row)>:not(svg){min-width:0;overflow-wrap:anywhere}
.cecomp-site .internal-page :is(.service-tile,.resource-row,.directory-row)>.icon{flex-shrink:0}
.cecomp-site .internal-page .service-tile strong{font-size:1rem;line-height:1.4}
.cecomp-site .internal-page .service-tile small{line-height:1.6;margin-top:5px}
.cecomp-site .internal-page .page-help-end{border:1px solid #cbdfe9;border-radius:10px;padding:22px 24px;margin-top:36px;background:#f5fafc;gap:24px}
.cecomp-site .internal-page .page-help-end>div:last-child{display:flex;flex-wrap:wrap;gap:12px 24px}
.cecomp-site .internal-page .page-help-end .text-link{display:inline-flex;align-items:center;min-height:44px}
.cecomp-site .internal-page .content-feedback{margin-top:28px;padding-top:20px;border-top:1px solid var(--line);font-size:.875rem;line-height:1.6}
@media(max-width:760px){
 .cecomp-site .internal-page .content-grid{grid-template-columns:1fr;gap:28px}
 .cecomp-site .internal-page .document-resource{padding:20px 18px}
 .cecomp-site .internal-page .page-help-end{padding:20px 18px}
}
@media(max-width:600px){
 .cecomp-site .internal-page .page-toc-inline{display:block;padding:14px 0;margin-bottom:24px}
 .cecomp-site .internal-page .page-toc-inline>strong{margin-bottom:10px}
 .cecomp-site .internal-page .page-toc-links{gap:8px}
 .cecomp-site .internal-page .page-toc-links a{padding:9px 11px;font-size:.8125rem}
 .cecomp-site .internal-page .document-detail{flex-direction:column;gap:8px}
 .cecomp-site .internal-page .document-resource .button{width:100%;justify-content:center}
}.cecomp-site .internal-page .page-index.page-toc-inline{border-left:0;padding-left:0}
.cecomp-site .internal-page .page-index.page-toc-inline>h2{font-family:var(--font-body);font-size:11px;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap;color:#5a7483;margin:0}
@media(max-width:600px){.cecomp-site .internal-page .page-index.page-toc-inline>h2{margin-bottom:10px}}

.cecomp-site #faculty-filter{max-width:680px;margin:0 0 14px;padding:20px 24px;background:#f5fafc;border:1px solid #d5e5ed;border-radius:10px}
.cecomp-site #faculty-filter label{font-size:1rem;margin-bottom:10px}
.cecomp-site #faculty-query{min-width:0;min-height:46px}
.cecomp-site #faculty-count{margin:0 0 24px;font-size:.875rem}
.cecomp-site .faculty-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cecomp-site .faculty-card{display:grid;grid-template-columns:104px minmax(0,1fr);grid-template-rows:auto 1fr;gap:6px 20px;padding:24px;align-items:start;box-shadow:none}
.cecomp-site .faculty-card>.portrait{grid-column:1;grid-row:1/3;width:104px;height:104px;border:3px solid #fff;box-shadow:0 0 0 1px #d3e5ee;object-fit:cover;object-position:50% 22%}
.cecomp-site .faculty-card>.role-label{grid-column:2;grid-row:1;margin:4px 0 0;font-size:.75rem;line-height:1.4;color:var(--muted)}
.cecomp-site .faculty-card h2{grid-column:2;grid-row:2;margin:0;font-size:1.125rem;line-height:1.4;overflow-wrap:anywhere}
.cecomp-site .faculty-card h2>a{padding:0 0 6px;text-decoration:none}
.cecomp-site .faculty-card h2>a:hover{text-decoration:underline;text-underline-offset:4px}
.cecomp-site .faculty-card:focus-within{border-color:#439cc4;background:#f8fcfe}
.cecomp-site .profile-heading .portrait{width:136px;height:136px;object-position:50% 22%;object-fit:cover}
.cecomp-site .profile-role{display:block;font-size:.875rem;font-weight:650;color:var(--blue-dark);margin-bottom:8px}
.cecomp-site .profile-heading p{font-size:.9375rem;line-height:1.6;color:var(--muted)}
.cecomp-site .profile-page .content-grid{grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start}
.cecomp-site .profile-page .prose{font-size:1.0625rem;line-height:1.8}
.cecomp-site .profile-page .prose>h2{font-family:var(--font-body);font-size:1.5rem;line-height:1.3;margin-bottom:20px}
.cecomp-site .profile-page .prose p{line-height:1.8;margin-bottom:1.3em}
.cecomp-site .profile-page .profile-contacts{border-top:3px solid var(--logo-blue);padding:24px}
.cecomp-site .profile-contact-label{display:block;font-size:.75rem;color:var(--muted);margin-bottom:4px}
.cecomp-site .profile-contacts .text-link{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere;max-width:100%;font-size:.9375rem}
.cecomp-site .profile-page .side-stack .service-tile{padding:16px 0;margin:0}
@media(max-width:1150px){.cecomp-site .faculty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .cecomp-site .profile-page .content-grid{grid-template-columns:1fr;gap:28px}
 .cecomp-site .faculty-card{grid-template-columns:88px minmax(0,1fr);gap:6px 16px;padding:20px}
 .cecomp-site .faculty-card>.portrait{width:88px;height:88px}
}
@media(max-width:600px){
 .cecomp-site .faculty-grid{grid-template-columns:1fr;gap:14px}
 .cecomp-site #faculty-filter{padding:18px 16px}
 .cecomp-site .faculty-card h2{font-size:1.1rem}
 .cecomp-site .profile-heading{flex-direction:column;gap:18px;padding:24px 20px}
 .cecomp-site .profile-heading .portrait{width:112px;height:112px}
 .cecomp-site .profile-heading h1{font-size:1.85rem;overflow-wrap:normal}
 .cecomp-site .profile-page .prose{font-size:1rem}
}
.cecomp-site .search-page .filter-form{max-width:780px;padding:24px;background:#f4f9fc;border:1px solid #d5e5ed;border-radius:12px}
.cecomp-site .search-page .input-group input{min-width:0;min-height:48px}
.cecomp-site .search-page .results-line{margin:28px 0 12px;overflow-wrap:anywhere}
.cecomp-site .search-page .search-results{max-width:900px}
.cecomp-site .search-page .search-result{display:block;padding:24px;margin:0 0 12px;border:1px solid #dce8ee;border-radius:12px}
.cecomp-site .search-page .search-result h2{font-size:1.3rem;line-height:1.4;margin:10px 0 8px;overflow-wrap:anywhere}
.cecomp-site .search-page .search-result-description{max-width:75ch;margin:0 0 14px;line-height:1.7}
.cecomp-site .search-shortcuts{margin:32px 0}
.cecomp-site .search-shortcuts h2{font-size:1.25rem}
.cecomp-site .search-shortcuts .search-suggestions{display:flex;flex-wrap:wrap;gap:12px}
.cecomp-site .search-shortcuts a{display:inline-flex;align-items:center;gap:24px;min-height:48px;padding:10px 16px;border:1px solid #d5e5ed;border-radius:8px}
@media(max-width:1150px){
 .cecomp-site .menu-toggle{min-height:44px}
 .cecomp-site .main-nav.is-open{max-height:calc(100vh - 180px);max-height:calc(100dvh - 180px);overflow-y:auto;overscroll-behavior-y:contain}
}
@media(max-width:600px){
 .cecomp-site .search-page .filter-form{padding:18px 16px}
 .cecomp-site .search-page .search-result{padding:20px 16px}
 .cecomp-site .search-page .search-result h2{font-size:1.125rem}
 .cecomp-site .search-shortcuts .search-suggestions{flex-direction:column}
}
.cecomp-site .systems-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.cecomp-site .system-card{padding:28px;border:1px solid #d2e2eb;border-top:3px solid #1595c5;border-radius:12px;box-shadow:0 6px 20px #13384b06}
.cecomp-site .system-card-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:16px}
.cecomp-site .system-card-heading .eyebrow{margin:0;font-size:.75rem;color:#476477}
.cecomp-site .system-access{font-size:.75rem;padding:4px 9px;border-radius:5px;background:#eef6fa;color:#27546c}
.cecomp-site .system-card h3{font-family:var(--font-body);font-size:1.4rem;line-height:1.35;margin:0 0 12px;overflow-wrap:anywhere}
.cecomp-site .system-card .system-description{margin:0 0 24px;line-height:1.7}
.cecomp-site .system-notes{padding:16px 18px;margin:0 0 24px;border-left:3px solid #7fbad5;background:#f5f9fb;border-radius:0 8px 8px 0}
.cecomp-site .system-notes h4{font-size:.875rem;font-family:var(--font-body);margin:0 0 8px;color:#123c52}
.cecomp-site .system-notes p{white-space:pre-line;overflow-wrap:anywhere;font-size:.875rem;line-height:1.7;margin:0}
.cecomp-site .system-card .catalog-card-footer{padding-top:18px}
.cecomp-site .system-card .system-external{margin:8px 0 18px;font-size:.75rem;color:var(--muted);text-align:right}
.cecomp-site .system-address{padding:16px;background:#f7fafc;border:1px solid #dce7ed;border-radius:8px;min-width:0}
.cecomp-site .system-address-label{display:block;font-size:.75rem;font-weight:650;color:#426073;margin-bottom:8px}
.cecomp-site .system-url{display:block;font-size:.8125rem;line-height:1.65;overflow-wrap:anywhere;word-break:break-word;text-decoration:underline;text-underline-offset:3px}
.cecomp-site .system-copy{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:12px;padding:8px 14px;border:1px solid #9bbfd2;border-radius:6px;background:#fff;color:#075d86;font:inherit;font-size:.8125rem;font-weight:650;cursor:pointer}
.cecomp-site .system-copy:hover{background:#eaf5fb;border-color:#1682b0}
.cecomp-site .system-copy[hidden]{display:none}
.cecomp-site .system-copy-status{display:block;font-size:.8125rem;line-height:1.5;color:#315b71;margin-top:6px}
.cecomp-site.student-hub .content-grid{grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:start}
.cecomp-site.student-hub .calendar-feature{padding:24px 28px;border:1px solid #d2e4ed;border-left:3px solid #1595c5;border-radius:12px;background:#f5fafc}
.cecomp-site.student-hub .calendar-feature h2{font-family:var(--font-body);font-size:1.4rem}
.cecomp-site.student-hub .directory-section{margin-top:36px}
.cecomp-site.student-hub .directory-section>h2{font-family:var(--font-body);font-size:1.4rem;margin-bottom:18px}
.cecomp-site.student-hub .student-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cecomp-site.student-hub .student-services .directory-row{display:flex;align-items:flex-start;gap:12px;margin:0;padding:22px 20px;border:1px solid #d2e2eb;border-radius:10px;background:#fff;min-width:0;height:100%}
.cecomp-site.student-hub .directory-row>span:first-child{flex:1;min-width:0}
.cecomp-site.student-hub .directory-row>svg{flex:none;width:18px;height:18px;margin-top:4px}
.cecomp-site.student-hub .directory-row strong{display:block;line-height:1.45;font-size:1rem}
.cecomp-site.student-hub .directory-description{display:block;line-height:1.65;margin-top:8px;font-size:.875rem}
.cecomp-site.student-hub .student-service-action{display:block;color:#006893;font-weight:650;font-size:.8125rem;margin-top:16px}
.cecomp-site.student-hub .student-external{display:block;color:#5a7483;font-size:.75rem;margin-top:6px}
.cecomp-site.student-hub .student-services .directory-row:hover{background:#f5fafc;border-color:#73aecb;box-shadow:0 4px 16px #13384b08}
.cecomp-site.student-hub .guide-box{background:#fff;border:1px solid #d2e4ed;border-top:3px solid #1595c5;border-radius:12px;padding:26px}
.cecomp-site.student-hub .guide-box h2{font-family:var(--font-body);font-size:1.4rem}
@media(max-width:1000px){
 .cecomp-site.student-hub .content-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
 .cecomp-site .systems-catalog,.cecomp-site.student-hub .student-services{grid-template-columns:1fr}
 .cecomp-site .system-card{padding:22px 18px}
 .cecomp-site .system-card .catalog-card-footer{align-items:stretch}
 .cecomp-site .system-card .catalog-card-footer .button{width:100%;justify-content:center}
 .cecomp-site .system-card .system-external{text-align:left}
 .cecomp-site.student-hub .calendar-feature,.cecomp-site.student-hub .guide-box{padding:22px 20px}
 .cecomp-site.student-hub .calendar-feature .button,.cecomp-site.student-hub .guide-box .button{width:100%;justify-content:center}
}
.cecomp-site .contact-channel{min-width:0}
.cecomp-site .contact-channel .contact-email{font-size:1.125rem;line-height:1.6;overflow-wrap:anywhere}
.cecomp-site .contact-channel .share-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.cecomp-site .contact-channel .share-status:empty{display:none}
.cecomp-site .contact-channel .share-status{margin:12px 0 0;font-size:.875rem}
.cecomp-site .contact-channel .copy-fallback input{display:block;max-width:100%;width:100%;padding:12px;margin-top:8px}
.cecomp-site.contact-page .contact-layout{grid-template-columns:minmax(0,1fr) 340px;gap:32px}
.cecomp-site.contact-page .contact-form,.cecomp-site.contact-page .contact-direct,.cecomp-site.contact-page .contact-info{padding:28px;border:1px solid #d3e3ed;border-top:3px solid #1595c5;border-radius:12px;background:#fff}
.cecomp-site .contact-intro,.cecomp-site .contact-direct>p{line-height:1.75;color:var(--muted)}
.cecomp-site .contact-form .eyebrow,.cecomp-site .contact-direct .eyebrow{display:block;margin-bottom:12px}
.cecomp-site .contact-form textarea{line-height:1.7}
.cecomp-site .contact-form button:disabled{opacity:.7;cursor:wait}
.cecomp-site .contact-routing{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;margin:0 0 28px;background:#f3f8fb;border:1px solid #d6e5ed;border-radius:10px}
.cecomp-site .contact-routing p{margin:0;line-height:1.6;font-size:.9375rem}
.cecomp-site .contact-routing a{flex-shrink:0;min-height:44px;display:inline-flex;align-items:center}
.cecomp-site .contact-email-alternative{padding:24px;margin-top:20px;border:1px solid #d3e3ed;border-radius:10px;background:#f7fafc}
.cecomp-site .contact-email-alternative h3{font-family:var(--font-body);font-size:1.125rem;margin:0 0 14px}
.cecomp-site .cecomp-form-status{padding:18px;border-radius:8px;border-left:3px solid #9d6422;background:#fff7ed;margin:20px 0}
.cecomp-site .cecomp-form-status p{margin:0;line-height:1.7}
.cecomp-site .cecomp-form-status a{display:inline-block;margin-top:10px;overflow-wrap:anywhere}
.cecomp-site .cecomp-form-status[data-contact-status="sent"]{background:#edf8f3;border-color:#267050}
.cecomp-site .support-card{background:#fff;border:1px solid #d3e3ed;border-top:3px solid #1595c5;border-radius:12px;padding:28px;align-items:flex-start}
.cecomp-site .support-card>.portrait{width:88px;height:88px;object-fit:cover;object-position:50% 22%;flex:none}
.cecomp-site .support-details{min-width:0;flex:1}
.cecomp-site .support-card h2{font-family:var(--font-body);margin:8px 0;font-size:1.5rem}
.cecomp-site .support-purpose{color:var(--muted);line-height:1.7;max-width:65ch;margin:18px 0}
.cecomp-site .support-profile-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:16px;font-size:.875rem}
.cecomp-site .support-guidance{padding:24px 28px;margin:24px 0 32px;border:1px solid #d6e5ed;border-radius:12px;background:#f5fafc}
.cecomp-site .support-guidance h2{font-family:var(--font-body);font-size:1.25rem;margin:0 0 12px}
.cecomp-site .support-guidance li{line-height:1.7;margin:8px 0}
.cecomp-site.support-page .service-tile{padding:22px;border:1px solid #d3e3ed;border-radius:10px}
@media(max-width:1000px){.cecomp-site.contact-page .contact-layout{grid-template-columns:1fr}}
@media(max-width:600px){
 .cecomp-site .contact-routing{align-items:flex-start;flex-direction:column;gap:6px}
 .cecomp-site.contact-page .contact-form,.cecomp-site.contact-page .contact-direct,.cecomp-site.contact-page .contact-info,.cecomp-site .support-card,.cecomp-site .support-guidance{padding:22px 18px}
 .cecomp-site .support-card{flex-direction:column;gap:18px}
 .cecomp-site .support-card>.portrait{width:72px;height:72px}
 .cecomp-site .contact-channel .share-actions{flex-direction:column}
 .cecomp-site .contact-channel .button{justify-content:center;width:100%;white-space:normal}
 .cecomp-site .contact-form>button{width:100%;justify-content:center}
}
.cecomp-site.contact-page .contact-layout>.side-stack{display:flex;flex-direction:column;gap:14px;min-width:0}
.cecomp-site.contact-page .contact-layout>.side-stack>.service-tile{width:100%;padding:20px;border:1px solid #d3e3ed;border-radius:10px;min-width:0}
.cecomp-site.contact-page .contact-layout>.side-stack>.service-tile>span{min-width:0}
.cecomp-site .search-page .filter-form{max-width:900px;padding:24px;background:#f2f8fb;border:1px solid #dce8ee;border-radius:14px;margin:24px 0}
.cecomp-site .search-page .filter-form label{display:block;font-weight:700;margin-bottom:10px}
.cecomp-site .search-result{background:#fff;transition:border-color .18s,box-shadow .18s}
.cecomp-site .search-result:hover,.cecomp-site .search-result:focus-visible{border-color:#007ca8;box-shadow:0 4px 18px #07394c12}
.cecomp-site .search-result-category{display:inline-block;background:#e6f5fb;color:#07516e;padding:4px 10px;border-radius:20px;font-size:.8rem;font-weight:700}
.cecomp-site .search-result-date{display:block;color:#466577;font-size:.85rem;margin:0 0 10px}
.cecomp-site .search-shortcuts{margin:32px 0}
.cecomp-site .search-suggestions,.cecomp-site .not-found-links{display:flex;flex-wrap:wrap;gap:12px}
.cecomp-site .search-suggestions a,.cecomp-site .not-found-links a{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:10px 16px;border:1px solid #c5dfe9;border-radius:8px;background:#fff;color:#07516e}
.cecomp-site .not-found-card{max-width:850px;margin:24px auto 48px;padding:clamp(24px,5vw,56px);background:linear-gradient(135deg,#edf8fc,#fff);border:1px solid #c5dfe9;border-top:4px solid #009ed8;border-radius:16px}
.cecomp-site .not-found-card h1{font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.2}
.cecomp-site .not-found-search{display:flex;gap:12px;margin:24px 0}
.cecomp-site .not-found-search input{flex:1;min-width:0}
@media(max-width:1150px){
 .cecomp-site .main-nav a,.cecomp-site .main-nav .course-toggle{min-height:48px}
 .cecomp-site .main-nav a[aria-current="page"]{background:#e6f5fb;border-radius:6px;color:#005879;font-weight:700;box-shadow:inset 3px 0 #009ed8}
 .cecomp-site .main-nav .nav-group.is-context>.nav-course-row{background:#f0f8fc;border-radius:6px}
 .cecomp-site .main-nav .course-toggle[aria-expanded="true"]{background:#e6f5fb}
}
@media(max-width:600px){
 .cecomp-site .not-found-search,.cecomp-site .search-page .input-group{display:flex;flex-direction:column;gap:10px}
 .cecomp-site .not-found-search .button,.cecomp-site .search-page .input-group .button{width:100%;min-height:46px}
 .cecomp-site .search-page .filter-form{padding:18px}
 .cecomp-site .search-suggestions a,.cecomp-site .not-found-links a{flex:1 1 180px}
}
@media(prefers-reduced-motion:reduce){.cecomp-site .search-result{transition:none}}

.cecomp-site .site-footer{padding-top:26px}
.cecomp-site .footer-grid.footer-grid-compact{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:28px}
.cecomp-site .footer-grid.footer-grid-compact>div{grid-column:auto;grid-row:auto;min-width:0}
.cecomp-site .footer-grid .cecomp-footer-links{list-style:none;padding:0;margin:0}
.cecomp-site .footer-grid h2{margin-bottom:8px}
.cecomp-site .footer-grid .cecomp-footer-links a{padding:5px 0;line-height:1.5}
.cecomp-site .footer-contact-row span{overflow-wrap:anywhere}
.cecomp-site .footer-bottom{margin-top:18px;padding-block:14px}
@media(max-width:850px){.cecomp-site .footer-grid.footer-grid-compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.cecomp-site .footer-grid.footer-grid-compact>.footer-identity{grid-column:1/-1}}
@media(max-width:600px){.cecomp-site .footer-grid.footer-grid-compact{grid-template-columns:1fr 1fr;gap:18px}.cecomp-site .footer-grid.footer-grid-compact>.footer-univasf{grid-column:1/-1}.cecomp-site .footer-grid .cecomp-footer-links a{min-height:44px;display:flex;align-items:center}.cecomp-site .footer-bottom{margin-top:16px}}

.cecomp-site main :is(.button,.system-copy):not(.cecomp-ppc *){min-height:44px;line-height:1.4;white-space:normal;text-align:center;gap:8px}
.cecomp-site main .button .icon:not(.cecomp-ppc *){flex-shrink:0;width:18px;height:18px}
.cecomp-site main :is(.service-tile,.resource-row,.directory-row)>span:not(.cecomp-ppc *){min-width:0;overflow-wrap:anywhere}
.cecomp-site main :is(.service-tile,.resource-row,.directory-row)>.icon:not(.cecomp-ppc *){flex-shrink:0}
.cecomp-site .page-heading>p:last-child{margin-bottom:0}
.cecomp-site .page-heading p{font-size:1rem;line-height:1.65}
.cecomp-site .section-heading{gap:12px 24px;flex-wrap:wrap}
.cecomp-site .section-heading h2{line-height:1.3;margin-bottom:0}
.cecomp-site .section-heading .text-link{min-height:44px;display:inline-flex;align-items:center}
.cecomp-site .internal-page .page-toc-inline{margin-bottom:24px}
.cecomp-site .profile-heading{margin-bottom:32px}
.cecomp-site .system-card{padding:24px}
.cecomp-site .system-card h3{font-size:1.25rem}
.cecomp-site .system-card .system-description{margin-bottom:18px}
.cecomp-site .system-notes{margin-bottom:18px}
.cecomp-site main :is(.panel,.guide-box,.document-resource)>p:last-child:not(.cecomp-ppc *){margin-bottom:0}
.cecomp-site main :is(.content-grid,.systems-catalog,.student-services)>*:not(.cecomp-ppc *){min-width:0}
.cecomp-site main :is(.system-card,.search-result,.profile-heading) :is(h1,h2,h3){overflow-wrap:anywhere}
@media(max-width:600px){
 .cecomp-site main :is(input,select,textarea):not(.cecomp-ppc *){font-size:16px}
 .cecomp-site .page-heading p{font-size:.9375rem}
 .cecomp-site .section-heading{gap:8px}
 .cecomp-site .section-heading h2{font-size:1.5rem}
 .cecomp-site .system-card{padding:20px 18px}
 .cecomp-site .systems-catalog{gap:16px}
 .cecomp-site .profile-heading{margin-bottom:24px}
 .cecomp-site .share-preview>div{min-width:0}
 .cecomp-site .share-preview p{overflow-wrap:anywhere}
 .cecomp-site .share-actions{gap:8px}
 .cecomp-site .share-actions .button{flex:1 1 140px}
 .cecomp-site .breadcrumb{flex-wrap:wrap;row-gap:4px;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){
 .cecomp-site main :is(.faculty-card,.search-result,.button):not(.cecomp-ppc *){transition:none}
}
.cecomp-site .extension-guide{max-width:900px}.cecomp-site .extension-guide section{margin-bottom:32px}.cecomp-site .extension-guide section[id]{scroll-margin-top:120px}.cecomp-site .extension-guide h2{font-family:var(--font-body);font-size:1.5rem;line-height:1.35}.cecomp-site .extension-guide .small{font-size:.875rem;color:#476477}.cecomp-site .extension-table{max-width:100%;overflow-x:auto;margin:20px 0}.cecomp-site .extension-table table{width:100%;border-collapse:collapse;font-size:.9375rem}.cecomp-site .extension-table caption{text-align:left;font-weight:600;padding:0 0 12px}.cecomp-site .extension-table th,.cecomp-site .extension-table td{text-align:left;vertical-align:top;border:1px solid #c9e2ed;padding:12px;line-height:1.6;overflow-wrap:anywhere}.cecomp-site .extension-table thead{background:#eaf6fb}.cecomp-site .extension-table tbody th{width:48%;font-weight:600}.cecomp-site .extension-links{display:flex;flex-wrap:wrap;gap:12px 24px}.cecomp-site .extension-links a{min-height:44px;display:inline-flex;align-items:center}.cecomp-site .extension-entry{margin:24px 0}.cecomp-site .extension-entry small{display:block}@media(max-width:600px){.cecomp-site .extension-table th,.cecomp-site .extension-table td{padding:9px;font-size:.875rem}.cecomp-site .extension-guide h2{font-size:1.3rem}}

.cecomp-site.student-hub .student-services .extension-entry{margin:0;border:1px solid #96c8dd;border-top:3px solid #1595c5;background:#f0f9fd;border-radius:10px;padding:22px}.cecomp-site.student-hub .extension-entry small{display:block;line-height:1.6;margin-top:8px;color:var(--muted)}.cecomp-site.student-hub .extension-entry strong{color:var(--navy)}.cecomp-site.student-hub .extension-entry:focus-visible{outline-offset:4px}

.search-page #search-kind{min-height:44px;max-width:100%;padding:10px 32px 10px 12px;border:1px solid #aec9d8;border-radius:6px;background:#fff;color:#173e52;font:inherit}
.search-page .input-group{flex-wrap:wrap;gap:10px}
.search-page .input-group input{flex:1 1 240px;min-width:0}
.reading-toggle{min-height:44px;border:0;background:transparent;color:#244c60;font:inherit;font-weight:600;padding:8px 0;cursor:pointer}
.reading-toggle:not([hidden]):after{content:' +';margin-left:10px}.reading-toggle:not([hidden])[aria-expanded="true"]:after{content:' −'}
.reading-toggle[hidden],.page-toc-links[hidden]{display:none!important}
.page-toc-inline.reading-compact>strong{display:none!important}
.reading-back{display:inline-block;margin:24px 0;font-size:.875rem;text-underline-offset:4px}
.internal-page h2[id],.page-toc-inline[id]{scroll-margin-top:130px}
@media(max-width:600px){.search-page #search-kind{flex:1 1 180px}}
@media print{.reading-back,.reading-toggle{display:none!important}}

.cecomp-site .home-news .news-copy>p{max-width:72ch}
.cecomp-site .home-news .news-card.featured.no-image .news-copy{max-width:880px}
.cecomp-site.student-hub .student-services .directory-row{align-items:stretch}
.cecomp-site.student-hub .student-services .directory-row>span:first-child{display:flex;flex-direction:column}
.cecomp-site.student-hub .student-services .student-service-action{margin-top:auto;padding-top:16px}

.cecomp-site .internal-page .graduate-section>article{border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;padding:24px 0}
.cecomp-site .internal-page .course-source-note{border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;padding:16px 0 0}
.cecomp-site .internal-page .graduate-number{display:none}

.cecomp-site .quick-secondary>span{color:#49697a}
.cecomp-site main .prose{overflow-wrap:anywhere}
.cecomp-site :is(a,button,input,select,textarea,summary,[tabindex="0"]):focus-visible{outline:3px solid #006a9c;outline-offset:3px;box-shadow:0 0 0 3px #fff}
.cecomp-site :is(a,button,input,select,textarea,summary,[tabindex]){scroll-margin-block:var(--cecomp-focus-offset,140px) 24px}
.cecomp-site .internal-page :is(h2,h3,section)[id],.cecomp-site .ppc-jump-links~* [id]{scroll-margin-top:var(--cecomp-focus-offset,140px)}
.cecomp-site .skip-link:focus{z-index:100000;max-width:calc(100% - 32px)}
.cecomp-site :is(.contact-form,.filter-form,.header-search,.not-found-search) :is(input:not([type="hidden"]),select,textarea){border-color:#6d8796}
.cecomp-site .contact-form :is(input,select,textarea)[aria-invalid="true"]{border:2px solid #a4262c}
.cecomp-site .field-error{color:#8c1f26;font-size:.875rem;line-height:1.5;margin:8px 0 20px}
.cecomp-site .contact-progress{color:#294e62;font-size:.9375rem}
.cecomp-site .contact-progress:empty{margin:0}
.cecomp-site #ppc-modulo .ppc-btn{background:#526971;color:#fff;min-height:44px}
.cecomp-site #ppc-modulo .ppc-btn[aria-pressed="true"]{background:#006a9c;color:#fff}
.cecomp-site #ppc-modulo .ppc-btn:hover{background:#294e62}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cecomp-site *, .cecomp-site *::before,.cecomp-site *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.cecomp-site :is(a,button,input,select,textarea,summary,[tabindex="0"]):focus-visible{outline:3px solid Highlight;box-shadow:none}.cecomp-site .contact-form :is(input,select,textarea)[aria-invalid="true"]{border:2px dashed CanvasText}}

@media(min-width:1151px){.cecomp-site .main-nav{flex-wrap:wrap}.cecomp-site .main-nav>a,.cecomp-site .main-nav>.nav-group{max-width:100%;min-width:0}.cecomp-site .main-nav a{overflow-wrap:anywhere}}

.cecomp-site .footer-public{padding-top:12px;padding-bottom:4px}
.cecomp-site .footer-public ul{display:flex;flex-wrap:wrap;gap:4px 24px;list-style:none;margin:0;padding:0}
.cecomp-site .footer-public a{display:inline-flex;align-items:center;min-height:44px;color:var(--footer-text,#d1e4ee);font-size:.875rem;text-underline-offset:3px}
.cecomp-site .footer-public a:hover{text-decoration:underline}
.cecomp-site #ppc-modulo .ppc-panel-cab p,.cecomp-site #ppc-modulo .ppc-meta dt,.cecomp-site #ppc-modulo .ppc-panel-rodape,.cecomp-site #ppc-modulo .ppc-item-ch,.cecomp-site #ppc-modulo .ppc-item-sigla{color:#526571}
.cecomp-site #ppc-modulo .ppc-meta dt,.cecomp-site #ppc-modulo .ppc-item-sigla{font-size:12px}
.cecomp-site #ppc-modulo .ppc-panel-rodape{font-size:12px}

@media(max-width:600px){.cecomp-site .footer-public ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px}.cecomp-site .footer-public li{min-width:0}.cecomp-site .footer-public a{overflow-wrap:anywhere}}

.cecomp-site .contrast-toggle[hidden]{display:none!important}
.cecomp-site .institution-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px 16px}
.cecomp-site .contrast-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:4px 8px;border:1px solid currentColor;border-radius:4px;background:transparent;color:#0c334a;font:inherit;line-height:1.4;white-space:nowrap}
.cecomp-site .contrast-toggle:hover{text-decoration:underline;text-underline-offset:3px}
.cecomp-site .contrast-symbol{font-size:1rem;line-height:1}
@media(max-width:600px){.cecomp-site .institution-strip .container{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding-block:4px}.cecomp-site .institution-strip .container>a{min-width:0;line-height:1.4}.cecomp-site .institution-actions{margin-left:0;max-width:120px;gap:4px}.cecomp-site .contrast-toggle{min-height:32px;padding:3px 6px;font-size:.6875rem}.cecomp-site .institution-actions .cecomp-utility-menu{flex-wrap:wrap}}
@media screen and (forced-colors:none){
 html.cecomp-high-contrast{color-scheme:dark;background:#000}
 html.cecomp-high-contrast .cecomp-site,
 html.cecomp-high-contrast .cecomp-site :where(*),
 html.cecomp-high-contrast .cecomp-site :where(*)::before,
 html.cecomp-high-contrast .cecomp-site :where(*)::after{background-color:#000!important;background-image:none!important;color:#fff!important;border-color:#fff!important;box-shadow:none!important;text-shadow:none!important;text-decoration-color:currentColor!important;transition:none!important}
 html.cecomp-high-contrast .cecomp-site :is(a,a *){color:#fff333!important;text-decoration-color:#fff333!important}
 html.cecomp-high-contrast .cecomp-site a{text-decoration:underline!important;text-underline-offset:3px}
 html.cecomp-high-contrast .cecomp-site :is(button,input,select,textarea,summary){border:1px solid #fff!important;accent-color:#fff333;opacity:1!important}
 html.cecomp-high-contrast .cecomp-site :is(input,textarea)::placeholder{color:#fff!important;opacity:1}
 html.cecomp-high-contrast .cecomp-site :is(button,a,summary):hover{outline:1px solid #fff333;outline-offset:2px}
 html.cecomp-high-contrast .cecomp-site :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #fff333!important;outline-offset:4px!important;box-shadow:0 0 0 2px #000!important}
 html.cecomp-high-contrast .cecomp-site :is([aria-pressed="true"],[aria-selected="true"],[aria-current="page"],[aria-current="date"],[aria-current="true"],input:checked){background-color:#fff333!important;color:#000!important;border-color:#fff333!important}
 html.cecomp-high-contrast .cecomp-site :is([aria-pressed="true"],[aria-selected="true"],[aria-current="page"],[aria-current="date"],[aria-current="true"]) *{background-color:transparent!important;color:#000!important}
 html.cecomp-high-contrast .cecomp-site :is(button:disabled,input:disabled,select:disabled,textarea:disabled,[aria-disabled="true"]){border-style:dashed!important;cursor:not-allowed}
 html.cecomp-high-contrast .cecomp-site :is([aria-invalid="true"],.field-error){border:2px dashed #fff333!important}
 html.cecomp-high-contrast .cecomp-site :is(svg,svg *,img,video,canvas){background-color:transparent!important}
 html.cecomp-high-contrast .cecomp-site svg{color:#fff!important}
 html.cecomp-high-contrast .cecomp-site svg [stroke]:not([stroke="none"]){stroke:currentColor!important}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo svg text{fill:#fff!important}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-node rect{fill:#000!important;stroke:#fff!important;stroke-width:2px}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-node:is(:hover,:focus,.ppc-locked) rect{stroke:#fff333!important;stroke-width:4px}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-edge{stroke:#fff!important}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-edge.ppc-hl{stroke:#fff333!important;stroke-width:3px}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo :is(.ppc-node,.ppc-edge).ppc-dim{opacity:1!important}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo svg :is(marker path,circle){fill:#fff!important}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-ponto-ext{background:#fff!important;border:1px solid #fff}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-node.ppc-geral rect{stroke-dasharray:8 3}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-node.ppc-flexivel rect{stroke-dasharray:2 3}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-node.ppc-complementar rect{stroke-dasharray:8 3 2 3}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-legenda > div:nth-child(2) .ppc-chip{border-style:dashed}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-legenda > div:nth-child(3) .ppc-chip{border-style:dotted}
 html.cecomp-high-contrast .cecomp-site #ppc-modulo .ppc-legenda > div:nth-child(4) .ppc-chip{border-style:double}
 html.cecomp-high-contrast .cecomp-site .brand img{background-color:#fff!important;padding:4px;border-radius:4px}
 html.cecomp-high-contrast .cecomp-site ::selection{background:#fff333!important;color:#000!important}
}
@media print{.cecomp-site .contrast-toggle{display:none!important}}
