/* Content-only refinements. Reference navigation and footer are isolated in shadow DOM. */
body[data-reference-shell] main[data-shell-content] {
  --page-card-border: var(--enx-border);
  overflow-wrap: break-word;
}
body[data-reference-shell] main[data-shell-content] :is(.grid,.flex,[class*="-grid"],[class$="__grid"]) > * { min-width: 0; }
body[data-reference-shell] main[data-shell-content] :is(h1,h2,h3,h4,h5,h6,p,li,a,button,label,summary) { letter-spacing: 0; }
body[data-reference-shell] main[data-shell-content] :is(.ea-card,.upx-card,.enx-card,.lux-card,.ts-feature-card,.price-card,.pricing-card,.service-card,.course-card,.faq-item) { border-radius: 8px; }
body[data-reference-shell] main[data-shell-content] :is(.ea-card,.upx-card,.enx-card,.lux-card,.service-card,.course-card) {
  transition: border-color 200ms,box-shadow 200ms,transform 200ms;
}
body[data-reference-shell] main[data-shell-content] :is(.ea-card,.upx-card,.enx-card,.lux-card,.service-card,.course-card):hover { box-shadow: 0 8px 24px rgb(var(--enx-text-rgb) / 6%); }
body[data-reference-shell] main[data-shell-content] :is(.ea-card,.upx-card,.enx-card,.lux-card,.service-card,.course-card) :is(h3,h4) { line-height: 1.35; overflow-wrap: anywhere; }
body[data-reference-shell] main[data-shell-content] :is(button,.ea-btn,.upx-btn,.enx-btn,.btn) { max-width: 100%; }
body[data-reference-shell] main[data-shell-content] :is(button,a,summary):focus-visible { outline: 3px solid var(--enx-link); outline-offset: 3px; }
body[data-reference-shell] main[data-shell-content] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select:not(.hidden),textarea):focus-visible { outline: 0; border-color: var(--enx-link); box-shadow: 0 0 0 3px rgb(var(--enx-primary-rgb) / 12%); }
body[data-reference-shell] main[data-shell-content] :is(input,textarea,select) { max-width: 100%; min-width: 0; }
body[data-reference-shell] main[data-shell-content] :is(img,video) { max-width: 100%; }
body[data-reference-shell] main[data-shell-content] :is(.ea-card,.upx-card,.lux-card,.pricing-card) :is(.section-kicker,.section-label) { font-size: 11px; line-height: 1.5; }
body[data-reference-shell] main[data-shell-content] :is(.accordion-trigger,summary) { cursor: pointer; }
body[data-reference-shell] main[data-shell-content]:has(> .ea-container > .article-body) .article-body { font-size: 16px; line-height: 1.8; }
body[data-reference-shell] main[data-shell-content]:has(> .ea-container > .article-body) .article-body h2 { font-size: 26px; line-height: 1.35; margin-block: 36px 16px; }
body[data-reference-shell] main[data-shell-content]:has(> .ea-container > .article-body) .article-body h3 { font-size: 20px; line-height: 1.4; margin-block: 24px 12px; }
@media (hover: none) {
  body[data-reference-shell] main[data-shell-content] :is(.hover-lift,.ea-card,.upx-card,.lux-card,.course-card):hover { transform: none; }
}
@media (max-width: 767px) {
  body[data-reference-shell] main[data-shell-content]:has(> .ea-container > .article-body) > .ea-container { padding: 28px 20px !important; }
  body[data-reference-shell] main[data-shell-content]:has(> .ea-container > .article-body) h1 { font-size: 30px !important; line-height: 1.2 !important; }
  body[data-reference-shell] main[data-shell-content]:has(> .ea-container > .article-body) .article-body h2 { font-size: 23px; }
  body[data-reference-shell] main[data-shell-content] :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea) { font-size: 16px; }
  body[data-reference-shell] main[data-shell-content] :is(.ea-card,.upx-card,.enx-card,.lux-card,.service-card,.course-card) { padding: 20px; }
  body[data-reference-shell] main[data-shell-content] :is(.ea-card,.upx-card,.enx-card,.lux-card,.service-card,.course-card) :is(h3,h4) { font-size: 22px; }
  body[data-reference-shell] main[data-shell-content] :is(.ea-card,.upx-card,.enx-card,.lux-card,.service-card,.course-card) :is(p,li) { line-height: 1.7; }
  body[data-reference-shell] main[data-shell-content] :is(.section-kicker,.section-label,.ea-chip) { font-size: 11px; line-height: 1.5; white-space: normal; }
  body[data-reference-shell] main[data-shell-content] :is(.ea-btn,.upx-btn,.enx-btn,.btn) { min-height: 44px; white-space: normal; text-align: center; line-height: 1.4; }
  body[data-reference-shell] main[data-shell-content] :is(.ea-hero-actions,.upx-hero-actions,.enx-hero-actions) { gap: 12px; }
  body[data-reference-shell] main[data-shell-content] :is(.ea-grid-2,.ea-grid-3,.ea-grid-4,.upx-grid-3,.upx-grid-4,.enx-grid-3,.enx-grid-4) { grid-template-columns: minmax(0,1fr); }
  body[data-reference-shell] main[data-shell-content] :is(.ea-card,.upx-card,.enx-card,.lux-card,.service-card,.course-card) [class~="whitespace-nowrap"] { white-space: normal; }
  body[data-reference-shell] main[data-shell-content] :is(.overflow-x-auto,.table-responsive) { max-width: 100%; overscroll-behavior-x: contain; }
  body[data-reference-shell] main[data-shell-content] :is([class~="text-[8px]"],[class~="text-[9px]"]) { font-size: 11px; line-height: 1.5; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-reference-shell] main[data-shell-content] *,body[data-reference-shell] main[data-shell-content] *::before,body[data-reference-shell] main[data-shell-content] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

body[data-page="registration"] #apply { min-width: 0; }
body[data-page="registration"] #cardContainer { width: 100%; max-width: 600px; padding: 20px !important; border: 1px solid var(--enx-border); border-radius: 8px; background: var(--enx-surface); box-shadow: 0 18px 48px rgb(var(--enx-text-rgb) / 6%); backdrop-filter: none; -webkit-backdrop-filter: none; }
body[data-page="registration"] #cardContainer::before { display: none; }
body[data-page="registration"] #cardContainer:hover { transform: none; border-color: var(--enx-border); box-shadow: 0 18px 48px rgb(var(--enx-text-rgb) / 6%); }
body[data-page="registration"] #student-registration-form .input-academic { height: 52px; padding-top: 18px; padding-bottom: 6px; border: 1px solid var(--enx-input-border); border-radius: 8px; background: var(--enx-surface); box-shadow: none; transition: border-color 180ms,box-shadow 180ms,background-color 180ms; }
body[data-page="registration"] #student-registration-form .input-academic:focus { transform: none; border-color: var(--enx-link); outline: none; box-shadow: 0 0 0 3px rgb(var(--enx-primary-rgb) / 12%); }
body[data-page="registration"] #student-registration-form .custom-select-trigger { padding-right: 48px; }
body[data-page="registration"] #student-registration-form .custom-select-trigger:focus-visible { outline: none; border-color: var(--enx-link); box-shadow: 0 0 0 3px rgb(var(--enx-primary-rgb) / 12%); }
body[data-page="registration"] #student-registration-form .schedule-field { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body[data-page="registration"] #student-registration-form .schedule-field:focus-within { border: 0; background: transparent; box-shadow: none; }
body[data-page="registration"] #student-registration-form .schedule-field .input-academic { height: 52px; padding: 14px 44px 14px 16px; border: 1px solid var(--enx-input-border); border-radius: 8px; background: var(--enx-surface); box-shadow: none; appearance: none; -webkit-appearance: none; }
body[data-page="registration"] #student-registration-form .schedule-field .input-academic:focus { border-color: var(--enx-link); box-shadow: 0 0 0 3px rgb(var(--enx-primary-rgb) / 12%); }
body[data-page="registration"] #student-registration-form .schedule-field .input-icon { right: 14px; }
body[data-page="registration"] #student-registration-form .custom-search input { min-height: 44px; padding: 10px 14px; border: 1px solid var(--enx-border); border-radius: 8px; background: var(--enx-bg); box-shadow: none; }
body[data-page="registration"] #student-registration-form .custom-search input:focus { border-color: var(--enx-link); box-shadow: 0 0 0 3px rgb(var(--enx-primary-rgb) / 12%); }
@media (min-width: 640px) {
  body[data-page="registration"] #cardContainer { padding: 28px !important; }
}
@media (min-width: 1024px) {
  body[data-page="registration"] #apply { display: flex; justify-content: flex-end; }
  body[data-page="registration"] #cardContainer { padding: 32px !important; }
}
/* Shared article/course guide framing, without changing the website shell. */
.enx-guide { max-width:1040px;margin:0 auto;padding:48px 24px 72px;color:var(--enx-text); }
.enx-guide > nav { display:flex;flex-wrap:wrap;gap:10px;font-size:13px;color:var(--enx-muted);margin-bottom:32px; }
.enx-guide > header { max-width:780px;margin-bottom:40px; }
.enx-guide h1 { font-size:40px;line-height:1.15;letter-spacing:0;margin:0 0 20px;color:var(--enx-heading); }
.enx-guide h2 { font-size:26px;line-height:1.3;letter-spacing:0;margin:0 0 16px; }
.enx-guide h3 { font-size:19px;line-height:1.35;letter-spacing:0;margin:0 0 12px; }
.enx-guide p,.enx-guide li { font-size:16px;line-height:1.75;color:var(--enx-muted);overflow-wrap:anywhere; }
.enx-guide p { margin:0 0 16px; }.enx-guide li { margin-bottom:8px; }
.enx-guide > section { padding:32px 0;border-top:1px solid var(--enx-border); }
.enx-guide-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:24px 0; }
.enx-guide a { color:var(--enx-link);font-weight:600; }
.enx-guide-actions { display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:24px; }
.enx-guide a.enx-guide-primary { display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:8px;background:var(--enx-button-background);color:var(--enx-on-primary);text-decoration:none; }
@media(max-width:640px) { .enx-guide { padding:28px 20px 48px; }.enx-guide h1 { font-size:30px; }.enx-guide h2 { font-size:23px; }.enx-guide-grid { grid-template-columns:minmax(0,1fr);gap:20px; }.enx-guide-actions { align-items:stretch;flex-direction:column;gap:16px; } }
