/* Full-width photography, distinct page compositions and a consistent school grid. */
.core .core-cover { position:relative; padding:0; isolation:isolate; color:#fff; background:var(--c2-deep); overflow:hidden; }
.core-cover-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.core-cover::after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,#061f3438,transparent 38%,#061f34cf); }
.core-cover-inner { position:relative; display:flex; flex-direction:column; min-height:650px; padding-top:20px; padding-bottom:64px; }
.core-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:14px; font-size:12px; color:#fff; margin-bottom:32px; }
.core-breadcrumb a { display:flex; align-items:center; min-height:44px; }
.core-breadcrumb a:hover { text-decoration:underline; }
.core-cover-copy { margin-top:auto; }
.core .core-cover h1 { font:400 clamp(48px,4.7vw,72px)/1.06 var(--alt-font); letter-spacing:-2px; color:#fff; text-wrap:balance; }
.core-cover h1 em { color:#ead8b4; }
.core-cover .c2-eyebrow { color:#fff; margin-bottom:18px !important; }
.core-cover-link { display:inline-flex; min-height:48px; align-items:center; gap:32px; font-size:14px; font-weight:500; border-bottom:1px solid #ffffff80; margin-top:22px; }
.core-cover-link:hover { border-color:#fff; }
.core-cover-link > span { font:24px/1 Arial,sans-serif; }
.core-cover-caption { position:absolute; z-index:1; bottom:24px; right:32px; font-size:12px; color:#fff; }
a.core-cover-caption { text-decoration:underline; text-decoration-color:#ffffff66; text-underline-offset:4px; }
a.core-cover-caption:hover,a.core-cover-caption:focus-visible { text-decoration-color:#fff; }
.core-cover-partnerships .core-cover-image { object-position:50% 45%; }
.core-cover-partnerships::after { background:linear-gradient(180deg,#031b2b66,transparent 25%,#031b2b20 45%,#031b2bf0 100%); }
.core-cover-partnerships .core-cover-copy { max-width:960px; }
.core-cover-schools .core-cover-inner { min-height:620px; padding-bottom:70px; }
.core-cover-schools .core-cover-copy { max-width:680px; margin-top:auto; }
.core-cover-schools .core-cover-image { object-position:55% 50%; }
.core-cover-schools::after { background:linear-gradient(90deg,#041e3bf2 0%,#041e3bc9 34%,#041e3b42 62%,transparent 82%),linear-gradient(180deg,#041e3b2e,transparent 62%,#041e3b63); }
.core-cover-schools .core-cover-copy > p:not(.c2-eyebrow) { margin:24px 0 0; font-size:18px; max-width:480px; color:white; }
.core-cover-cases .core-cover-inner { min-height:660px; padding-bottom:60px; }
.core-cover-cases .core-cover-copy { margin-top:auto; max-width:700px; padding-bottom:36px; }
.core-cover-cases .core-cover-image { object-position:50% 52%; }
.core-cover-cases::after { background:linear-gradient(90deg,#062a45d6 0%,#062a4573 32%,transparent 58%),linear-gradient(180deg,#062a454d 0%,transparent 32%,transparent 72%,#062a457a 100%); }
.core-cover-cases .core-cover-intro { max-width:590px; margin-top:24px; color:rgba(255,255,255,.9); font-size:18px; line-height:1.55; }
.core-campus-explore { align-self:flex-start; margin-top:24px; color:#fff; }
.core-cover-project { align-self:end; margin-top:auto; background:white; color:var(--c2-deep) !important; padding:20px 72px 22px 24px; position:relative; }
.core-cover-project > span:first-child { display:block; font-size:12px; color:var(--medium-gray); margin-bottom:8px; }
.core-cover-project strong { font:400 22px/1.3 var(--alt-font); }
.core-project-arrow { position:absolute; right:24px; bottom:28px; color:#96743a; font:30px/1 Arial,sans-serif; }
.core-cover-project:hover strong { text-decoration:underline; text-underline-offset:4px; }
.core-opening { background:white; }
.core-opening .container { display:grid; grid-template-columns:1fr 1fr; gap:100px; padding-block:36px; align-items:center; }
.core-opening p:first-child { font:400 25px/1.45 var(--alt-font); }
.core-opening strong { font-weight:400; color:#96743a; }
.core-opening p:last-child { font-size:16px; color:var(--medium-gray); }
.core-lead { font-size:18px; line-height:1.75; margin-top:28px !important; max-width:570px; }
.core .core-school-directory { background:var(--c2-paper); padding-block:80px; }
.core-school-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.core-school-card { background:#fff; display:flex; flex-direction:column; scroll-margin-top:120px; }
.core-school-photo { display:block; aspect-ratio:4/3; overflow:hidden; }
.core-school-photo img { width:100%; height:100%; object-fit:cover; object-position:50% 50%; transition:transform .3s; }
.core-school-photo:hover img { transform:scale(1.025); }
.core-school-card-body { flex:1; display:flex; flex-direction:column; padding:28px; }
.core-school-card .c2-eyebrow { font-size:12px; letter-spacing:.08em; margin-bottom:16px !important; }
.core .core-school-card h2 { font:400 29px/1.18 var(--alt-font); letter-spacing:-.6px; margin-bottom:20px; }
.core-school-description { color:var(--medium-gray); font-size:15px; line-height:1.75; }
.core-school-card-bottom { border-top:1px solid var(--c2-line); display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:auto; padding-top:16px; }
.core-school-description + .core-school-card-bottom { margin-top:auto; }
.core-school-description { padding-bottom:26px; }
.core-school-card-bottom > span { color:var(--medium-gray); font-size:12px; white-space:nowrap; }
.core-school-card-bottom .c2-text-link { font-size:13px; gap:14px; }
.core-school-invitation { padding:36px; display:flex; flex-direction:column; align-items:start; color:#fff; background:var(--c2-navy); }
.core-school-invitation .c2-eyebrow { color:var(--c2-gold); }
.core .core-school-invitation h2 { color:white; font:400 39px/1.15 var(--alt-font); letter-spacing:-1px; }
.core-school-invitation h2 em { color:var(--c2-gold); }
.core-school-invitation > p:not(.c2-eyebrow) { font-size:16px; color:#dce8ef; margin-top:26px; }
.core-school-invitation .c2-button { margin-top:auto; font-size:13px; padding-inline:18px; gap:12px; }
.core-invitation-mark { font:76px/1 Arial,sans-serif; color:var(--c2-gold); margin:auto 0 40px; }
.core-network-story { background:white; }
.core-network-story .col-lg-5 > p:not(.c2-eyebrow) { margin-top:24px; color:var(--medium-gray); }
.core-network-story .c2-text-link { margin-top:24px; }

/* Launch-critical pages: about, contact and reusable detail templates. */
.core-breadcrumb-dark { color:var(--c2-deep); }
.core-editorial-hero { padding:28px 0 0 !important; background:#fff; }
.core-editorial-title { display:grid; grid-template-columns:1.35fr .65fr; gap:88px; align-items:end; padding:44px 0 56px; }
.core .core-editorial-title h1 { color:var(--c2-deep); font:400 clamp(52px,5vw,76px)/1.04 var(--alt-font); letter-spacing:-2.4px; }
.core-editorial-title h1 em { color:#9a7840; }
.core-editorial-title > p { color:var(--medium-gray); font-size:17px; line-height:1.8; padding-bottom:8px; }
.core-about-photo { margin:0 !important; }
.core .core-about-photo img { aspect-ratio:16/8.2; object-fit:cover; object-position:50% 48%; }
.core-about-story { background:#fff; }
.core-story-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:88px; border-top:1px solid var(--c2-line); padding-top:48px; }
.core-story-year span { display:block; color:var(--medium-gray); font-size:13px; text-transform:uppercase; letter-spacing:.1em; }
.core-story-year strong { display:block; color:#9a7840; font:italic 72px/1.15 var(--alt-font); margin:8px 0 18px; }
.core-story-year p,.core-story-copy p { color:var(--medium-gray); }
.core-story-copy { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.core-story-copy h3 { font-size:27px; margin-bottom:18px; }
.core-principles { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--c2-line); border-bottom:1px solid var(--c2-line); }
.core-principles article { padding:38px 34px; border-right:1px solid var(--c2-line); }
.core-principles article:last-child { border-right:0; }
.core-principles span { color:#9a7840; font:italic 28px/1 var(--alt-font); }
.core-principles h3 { margin:50px 0 18px; }
.core-principles p { color:var(--medium-gray); }
.core-about-story,.core-about-why,.core-about-video { scroll-margin-top:120px; }
.core-principles--five { grid-template-columns:repeat(6,1fr); }
.core-principles--five article { grid-column:span 2; }
.core-principles--five article:nth-child(3) { border-right:0; }
.core-principles--five article:nth-child(n+4) { grid-column:span 3; border-top:1px solid var(--c2-line); }
.core-principles--five article:nth-child(5) { border-right:0; }
.core-about-accreditation-entry { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:36px; align-items:end; margin-top:56px; padding-top:32px; border-top:1px solid var(--c2-line); }
.core-about-accreditation-entry h3 { margin:12px 0 10px; font-size:clamp(27px,2.25vw,36px); }
.core-about-accreditation-entry p:not(.c2-eyebrow) { max-width:710px; margin:0; color:var(--medium-gray); font-size:16px; line-height:1.75; }
.core-about-accreditation-entry .c2-text-link { white-space:nowrap; margin-bottom:4px; }
.core-about-video { background:#fff; }
.core-about-video__grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(48px,7vw,100px); align-items:center; }
.core-about-video__copy > p:not(.c2-eyebrow) { max-width:520px; margin-top:24px; color:var(--medium-gray); font-size:17px; line-height:1.8; }
.core-about-video__copy .c2-text-link { margin-top:28px; }
.core-about-video__media { overflow:hidden; background:var(--c2-deep); box-shadow:0 24px 60px #052f4a1c; }
.core-about-video__media video { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; background:var(--c2-deep); }
.core-action-row { display:flex; align-items:center; flex-wrap:wrap; gap:24px 34px; margin-top:28px; }
.core-dark .c2-text-link { color:#fff; }
.core-dark .c2-text-link span { color:var(--c2-gold); }

.core-contact-hero { padding:32px 0 88px !important; color:#fff; background:var(--c2-navy); }
.core-contact-intro { display:grid; grid-template-columns:1.25fr .75fr; gap:100px; align-items:end; min-height:460px; padding:52px 0 64px; }
.core-contact-intro h1 { font-size:clamp(54px,5vw,76px); }
.core-contact-intro h1 em { color:var(--c2-gold); }
.core-contact-intro > div:last-child > p { color:#dce7ed; font-size:17px; margin-bottom:28px; }
.core-contact-email { display:grid; grid-template-columns:180px 1fr auto; gap:32px; align-items:center; border-top:1px solid #ffffff55; border-bottom:1px solid #ffffff55; min-height:104px; }
.core-contact-email > span:first-child { font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:var(--c2-gold); }
.core-contact-email strong { font:400 clamp(24px,2.8vw,40px)/1.2 var(--alt-font); }
.core-contact-email > span:last-child { color:var(--c2-gold); font:32px/1 Arial,sans-serif; }
.core-contact-prep { background:#fff; }
.core-contact-list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--c2-line); }
.core-contact-list li { padding:30px 24px; border-right:1px solid var(--c2-line); }
.core-contact-list li:last-child { border-right:0; }
.core-contact-list span { display:block; color:#9a7840; font:italic 23px/1 var(--alt-font); margin-bottom:42px; }
.core-contact-list strong { display:block; font-size:14px; margin-bottom:12px; }
.core-contact-list p { color:var(--medium-gray); font-size:14px; }
.core-contact-next > .container > div { display:grid; grid-template-columns:repeat(3,1fr); margin-top:26px; }
.core-contact-next a { display:flex; justify-content:space-between; align-items:center; min-height:84px; padding:16px 24px; border-top:1px solid var(--c2-line); border-right:1px solid var(--c2-line); font:400 20px/1.35 var(--alt-font); }
.core-contact-next a:last-child { border-right:0; }
.core-contact-next a span:last-child { color:#9a7840; font:24px/1 Arial,sans-serif; }

.core-cover-detail .core-cover-inner { min-height:590px; }
.core-cover-detail .core-cover-image { inset:0 0 0 auto; width:min(45vw,840px); }
.core-cover-detail::after { background:linear-gradient(90deg,#061f34 0%,#061f34 46%,#061f34d9 58%,#061f3438 78%,#061f3410 100%),linear-gradient(0deg,#061f3470,transparent 40%); }
.core-cover-detail .core-cover-copy { max-width:820px; }
.core-cover-detail .core-cover-copy h1 { max-width:850px; }
.core-detail-lead { color:#fff; font:400 22px/1.5 var(--alt-font); max-width:580px; margin-top:22px !important; }
.core-section-nav a[aria-current=page] { color:#755b2e; font-weight:600; }
.core-profile-intro > .container { display:grid; grid-template-columns:.62fr 1.38fr; gap:96px; }
.core-profile-intro aside { border-top:2px solid var(--base-color); padding-top:24px; }
.core-profile-intro dl { margin:0 0 30px; }
.core-profile-intro dl > div { padding:18px 0; border-top:1px solid var(--c2-line); }
.core-profile-intro dt { font-size:12px; letter-spacing:.05em; text-transform:uppercase; margin-bottom:7px; }
.core-profile-intro dd { color:var(--medium-gray); font-size:15px; margin:0; }
.core-profile-intro h2 { max-width:760px; }
.core-profile-body { color:var(--medium-gray); font-size:17px; line-height:1.85; margin-top:26px !important; }
.core-profile-points { list-style:none; padding:0; margin:32px 0 0; }
.core-profile-points li { position:relative; padding:18px 0 18px 30px; border-top:1px solid var(--c2-line); }
.core-profile-points li::before { content:'↗'; position:absolute; left:0; color:#9a7840; }
.core-detail-gallery { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.core-detail-gallery figure { margin:0; }
.core .core-detail-gallery img { width:100%; aspect-ratio:4/3; object-fit:cover; }

/* Complete U.S. partner-school profiles. */
.core-school-story__copy .core-profile-body { max-width:800px; }
.core-school-story__copy .core-profile-body + .core-profile-body { margin-top:18px !important; }
.core-school-heading h2 em { color:#9a7840; }
.core-school-snapshot,.core-school-highlights,.core-school-connection,.core-profile-gallery,.core-school-video { padding-block:88px !important; }
.core-school-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(155px,1fr)); margin:0; border-bottom:1px solid var(--c2-line); }
.core-school-stats > div { min-width:0; padding:28px 24px 30px; border-top:1px solid var(--c2-line); border-right:1px solid var(--c2-line); }
.core-school-stats > div:last-child { border-right:0; }
.core-school-stats dt { color:#9a7840; font:italic 42px/1 var(--alt-font); letter-spacing:-1px; }
.core-school-stats dd { max-width:170px; margin:14px 0 0; color:var(--medium-gray); font-size:13px; line-height:1.55; text-transform:uppercase; letter-spacing:.045em; }
.core-school-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--c2-line); border-bottom:1px solid var(--c2-line); }
.core-school-feature-grid article { min-width:0; padding:32px; border-right:1px solid var(--c2-line); }
.core-school-feature-grid article:last-child { border-right:0; }
.core-school-feature-grid article > span { display:block; color:#9a7840; font:italic 28px/1 var(--alt-font); }
.core-school-feature-grid h3 { margin:48px 0 20px; font-size:28px; }
.core-school-feature-grid p { color:var(--medium-gray); font-size:16px; line-height:1.75; }
.core-school-connection > .container { display:grid; grid-template-columns:.78fr 1.22fr; gap:clamp(56px,8vw,120px); align-items:start; }
.core-school-connection h2 { max-width:570px; font-size:clamp(40px,4vw,60px); }
.core-school-connection > .container > div:last-child > p { max-width:720px; color:#dbe7ef; font-size:17px; line-height:1.8; }
.core-school-connection > .container > div:last-child > p + p { margin-top:18px; }
.core-school-connection__links { display:flex; flex-wrap:wrap; gap:16px 32px; margin-top:32px; }
.core-school-connection__links .c2-text-link { min-height:44px; margin:0; }
.core-school-gallery { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.core-school-gallery figure { min-width:0; }
.core .core-school-gallery img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; }
.core-school-gallery figcaption { padding-top:12px; font-size:13px; }
.core-school-video { background:#fff; }
.core-school-video > .container { display:grid; grid-template-columns:.62fr 1.38fr; gap:clamp(48px,7vw,104px); align-items:center; }
.core-school-video__copy h2 { max-width:520px; margin-top:16px; }
.core-school-video__copy > p:last-child { max-width:520px; margin-top:24px; color:var(--medium-gray); font-size:17px; line-height:1.8; }
.core-school-video__frame { overflow:hidden; background:var(--c2-deep); box-shadow:0 24px 60px #052f4a1c; }
.core-school-video__frame iframe { display:block; width:100%; aspect-ratio:16/9; border:0; }
.core-school-sources { padding-block:36px !important; border-top:1px solid var(--c2-line); border-bottom:1px solid var(--c2-line); background:var(--c2-paper); }
.core-school-sources > .container { display:grid; grid-template-columns:.38fr 1fr auto; gap:32px; align-items:center; }
.core-school-sources h2 { font:600 13px/1.5 var(--primary-font); letter-spacing:.06em; text-transform:uppercase; }
.core-school-sources p { max-width:650px; color:var(--medium-gray); font-size:13px; line-height:1.65; }
.core-school-sources ul { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px 24px; margin:0; padding:0; list-style:none; }
.core-school-sources a { display:inline-flex; align-items:center; gap:10px; min-height:44px; font-size:13px; font-weight:600; text-decoration:underline; text-decoration-color:#9a784066; text-underline-offset:5px; }
.core-school-sources a:hover { text-decoration-color:#9a7840; }
.core-school-sources a span { color:#9a7840; }

.core-project-hero { padding:28px 0 76px !important; background:var(--c2-paper); }
.core-project-title { display:grid; grid-template-columns:1.3fr .7fr; gap:80px; align-items:end; padding-top:54px; }
.core .core-project-title h1 { color:var(--c2-deep); font:400 clamp(52px,5.2vw,78px)/1.04 var(--alt-font); letter-spacing:-2.5px; }
.core-project-title h1 em { color:#9a7840; }
.core-project-title > p:last-child { border-top:1px solid var(--c2-line); padding-top:22px; color:var(--medium-gray); font-size:17px; }
.core-project-content { background:#fff; }
.core-project-content > .container { display:grid; grid-template-columns:.38fr 1.62fr; gap:80px; }
.core-project-index { border-top:2px solid var(--base-color); padding-top:20px; }
.core-project-index span { color:#9a7840; font:italic 38px/1 var(--alt-font); }
.core-project-index p { margin-top:12px; color:var(--medium-gray); font-size:13px; text-transform:uppercase; letter-spacing:.06em; }
.core-project-main > h2 { max-width:820px; }
.core-project-main > p { color:var(--medium-gray); font-size:18px; line-height:1.8; margin-top:24px !important; max-width:820px; }
.core-project-facts { display:grid; grid-template-columns:1fr 1fr; gap:0 46px; margin:48px 0 0; }
.core-project-facts > div { padding:24px 0; border-top:1px solid var(--c2-line); }
.core-project-facts dt { font-size:12px; text-transform:uppercase; letter-spacing:.05em; margin-bottom:9px; }
.core-project-facts dd { margin:0; color:var(--medium-gray); }

.core-not-found { min-height:calc(100vh - 138px); display:flex; align-items:center; color:#fff; background:var(--c2-navy); overflow:hidden; }
.core-not-found > .container { position:relative; }
.core-404-number { position:absolute; right:0; top:50%; transform:translateY(-50%); font:400 clamp(170px,26vw,380px)/.8 var(--alt-font); color:#ffffff0a; }
.core .core-not-found h1 { font-size:clamp(48px,5.6vw,82px); max-width:920px; position:relative; }
.core-not-found h1 em { color:var(--c2-gold); }
.core-not-found > .container > p:not(.c2-eyebrow):not(.core-404-number) { color:#dce7ed; font-size:17px; max-width:600px; margin-top:28px; position:relative; }
.core-not-found .core-action-row { position:relative; }

/* Shared design B interior-page system. All changes are scoped to .core. */
.core .c2-navigation a[aria-current=page] { color:#755b2e; box-shadow:inset 0 -2px var(--base-color); }
.core figure img { width:100%; height:auto; }
.core figcaption { font:400 12px/1.6 var(--primary-font); color:var(--medium-gray); padding:12px 0 0; }
.core-section-nav { background:var(--c2-paper); border-bottom:1px solid var(--c2-line); }
.core-section-nav > .container { display:flex; gap:32px; flex-wrap:wrap; padding-block:12px; }
.core-section-nav a { display:flex; align-items:center; min-height:44px; font-size:14px; line-height:1.5; }
.core-section-nav a:hover { color:#806334; text-decoration:underline; text-underline-offset:5px; }
.core-heading { display:grid; grid-template-columns:1.25fr 1fr; gap:80px; align-items:end; margin-bottom:48px; }
.core-heading > p,.core-heading > div > p:not(.c2-eyebrow) { color:var(--medium-gray); font-size:17px; }
.core-heading .c2-button { margin-top:24px; }
.core-partner-schools { border-left:2px solid var(--base-color); padding:4px 0 4px 24px; }
.core-partner-label { display:block; margin-bottom:12px; color:#806334; font:600 12px/1.4 var(--primary-font); letter-spacing:.09em; text-transform:uppercase; }
.core .core-partner-schools h3 { display:flex; flex-direction:column; gap:5px; margin:0; color:var(--c2-deep); font:500 22px/1.35 var(--primary-font); letter-spacing:-.2px; }
.core-partner-cross { color:#9a753c; font-size:18px; line-height:1; }
.core-index { font:italic 38px/1 var(--alt-font); color:#987744; display:block; margin-bottom:30px; }
.core-model { height:100%; display:flex; flex-direction:column; padding:32px; border:1px solid var(--c2-line); border-top:3px solid var(--base-color); }
.core-model .c2-eyebrow { margin-bottom:16px !important; }
.core h3 { font:400 30px/1.25 var(--alt-font); letter-spacing:-.6px; }
.core-model h3 { min-height:75px; margin-bottom:20px; }
.core-model > p:not(.c2-eyebrow) { color:var(--medium-gray); }
.core-model-fit { padding-top:24px; margin-top:auto !important; font-size:14px; }
.core-model-fit strong { color:var(--c2-deep); font-size:12px; letter-spacing:.04em; text-transform:uppercase; display:block; margin-bottom:10px; }
.core-model .c2-text-link { margin-top:22px; }
.core-paper { background:var(--c2-paper); }
.core-responsibility { display:grid; grid-template-columns:.85fr 1fr 1.15fr; gap:48px; border-top:1px solid #c7d1d5; padding:40px 0; scroll-margin-top:110px; }
.core-responsibility .core-index { font-size:24px; margin-bottom:18px; }
.core-responsibility h3 { font-size:27px; }
.core-responsibility h4,.core-case-facts dt { font:600 13px/1.5 var(--primary-font); margin:0 0 12px; letter-spacing:.035em; }
.core-responsibility p { color:var(--medium-gray); }
.core-focus { font-size:13px; margin-top:16px !important; }
.core-note { border-left:3px solid var(--base-color); background:#eae8df; color:#415965; padding:22px 26px; font-size:14px; line-height:1.8; margin-top:32px; }
.core-note strong { display:block; color:var(--c2-deep); margin-bottom:6px; }
.core-example p:not(.c2-eyebrow) { color:var(--medium-gray); margin-top:24px; }
.core-example .c2-text-link { margin-top:20px; }
.core .c2-details { margin-top:0; }
.core .c2-details summary { font-size:17px; gap:20px; }
.core .c2-details details > div { padding-left:0; }
.core .c2-details p { font-size:16px; }
.core-next { padding-block:56px !important; }
.core-next a { display:block; position:relative; padding-right:72px; }
.core-next .c2-eyebrow { display:block; margin-bottom:14px !important; }
.core-next h2 { font-size:34px; }
.core-next-arrow { position:absolute; right:0; top:50%; transform:translateY(-50%); color:var(--base-color); font:40px/1 Arial,sans-serif; }
.core-next a:hover h2,.core-pathways a:hover h3 { text-decoration:underline; text-underline-offset:7px; }
.core-school-nav .container { column-gap:28px; row-gap:0; flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; scroll-snap-type:x proximity; }
.core-school-nav .container::-webkit-scrollbar { display:none; }
.core-school-nav a { flex:0 0 auto; font-size:13px; white-space:nowrap; scroll-snap-align:start; }
.core-points { padding:0; list-style:none; margin:24px 0; }
.core-points li { position:relative; padding:12px 0 12px 23px; border-top:1px solid var(--c2-line); font-size:14px; }
.core-points li::before { content:''; width:5px; height:5px; background:var(--base-color); position:absolute; left:0; top:22px; }
.core-dark { background:var(--c2-navy); color:white; }
.core-dark h2,.core-dark h3 { color:white; }
.core-dark h2 em,.core-dark .c2-eyebrow { color:var(--c2-gold); }
.core-dark .core-heading p:not(.c2-eyebrow) { color:#dbe7ef; }
.core-dark .core-heading:last-child { margin-bottom:0; }
.core-pathways a { position:relative; display:block; padding:28px 64px 28px 0; border-top:1px solid #ffffff50; height:100%; }
.core-pathways a > span:first-child { font-size:13px; color:#dce6ed; }
.core-pathways h3 { margin-top:16px; font-size:27px; }
.core-case-intro { font-size:19px; line-height:1.7; color:var(--c2-deep); }
.core-case-facts { margin:26px 0 12px; }
.core-case-facts > div { padding:22px 0; border-top:1px solid var(--c2-line); }
.core-case-facts dt { margin-bottom:8px; }
.core-case-facts dd { color:var(--medium-gray); font-size:16px; margin:0; }
.core-case-gallery { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.core .core-case-gallery img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.core-case-panorama { max-width:1050px; margin-inline:auto !important; }
.core .core-case-panorama img { width:100%; height:auto; }
.core-case-story { margin-top:40px; }
.core-case-story h3 { margin-bottom:22px; }
.core-case-story p { color:var(--medium-gray); }
.core-case-story .c2-text-link { margin-top:24px; }
.core-case-story .core-case-facts { margin-top:0; }
.core-campus-group + .core-campus-group { margin-top:48px; }
.core-campus-group > h3 { font:500 18px/1.5 var(--primary-font); letter-spacing:0; margin-bottom:20px; }
.core-campus-directory { display:grid; grid-template-columns:1fr 1fr; gap:0 48px; }
.core-campus-directory a { position:relative; padding:24px 36px 24px 0; border-top:1px solid var(--c2-line); }
.core-campus-directory h4 { font:400 24px/1.35 var(--alt-font); margin:0; }
.core-campus-directory a:hover h4 { text-decoration:underline; text-underline-offset:4px; }
.core-small-arrow { position:absolute; right:0; top:50%; transform:translateY(-50%); font:25px/1 Arial,sans-serif; color:#94723c; }
.core-directory-note { font-size:13px; color:var(--medium-gray); border-top:1px solid var(--c2-line); padding-top:24px; margin-top:32px !important; }
@media(max-width:1199px) { .core-heading { gap:40px; } .core-model { padding:26px; } .core-model h3 { font-size:27px; } .core-responsibility { gap:32px; } .core-school-copy { padding-left:24px; } }
@media(max-width:991px) {
    .core-heading { grid-template-columns:1fr; gap:24px; margin-bottom:32px; }
    .core-responsibility { grid-template-columns:1fr 1fr; }
    .core-responsibility > div:first-child { grid-column:1/-1; }
    .core-model h3 { min-height:0; }
    .core .c2-details { margin-top:32px; }
    .core-case-story { margin-top:16px; }
    .core-case-story .offset-lg-1 { margin-top:32px; }
    .core-editorial-title,.core-contact-intro,.core-project-title { grid-template-columns:1fr; gap:30px; }
    .core-story-grid,.core-profile-intro > .container,.core-project-content > .container { gap:48px; }
    .core-principles { grid-template-columns:1fr; }
    .core-principles--five { grid-template-columns:1fr; }
    .core-principles--five article,.core-principles--five article:nth-child(n+4) { grid-column:auto; border-right:0; border-top:0; }
    .core-principles article { border-right:0; border-bottom:1px solid var(--c2-line); }
    .core-principles article:last-child { border-bottom:0; }
    .core-about-accreditation-entry { grid-template-columns:1fr; align-items:start; gap:22px; margin-top:42px; padding-top:28px; }
    .core-about-accreditation-entry .c2-text-link { white-space:normal; margin:0; }
    .core-about-video__grid { grid-template-columns:1fr; gap:38px; }
    .core-about-video__copy > p:not(.c2-eyebrow) { max-width:none; }
    .core-school-feature-grid { grid-template-columns:1fr; }
    .core-school-feature-grid article { border-right:0; border-bottom:1px solid var(--c2-line); }
    .core-school-feature-grid article:last-child { border-bottom:0; }
    .core-school-feature-grid h3 { margin-top:28px; }
    .core-school-connection > .container,.core-school-video > .container { grid-template-columns:1fr; gap:40px; }
    .core-school-sources > .container { grid-template-columns:1fr; gap:14px; }
    .core-school-sources ul { justify-content:flex-start; }
    .core-contact-list { grid-template-columns:repeat(2,1fr); }
    .core-contact-list li { border-bottom:1px solid var(--c2-line); }
    .core-contact-next > .container > div { grid-template-columns:1fr; }
    .core-contact-next a { border-right:0; }
}
@media(max-width:575px) {
    .core .c2-navigation { gap:8px; }
    .core .c2-menu { font-size:14px; }
    .core-section-nav > .container { gap:0 22px; padding-block:12px; }
    .core-section-nav a { font-size:13px; }
    .core-heading > p,.core-heading > div > p:not(.c2-eyebrow) { font-size:16px; }
    .core-partner-schools { padding-left:18px; }
    .core .core-partner-schools h3 { font-size:20px; }
    .core-responsibility { grid-template-columns:1fr; gap:24px; padding-block:32px; }
    .core-note { padding:18px 20px; }
    .core-school-directory { padding-bottom:56px !important; }
    .core-case-intro { font-size:18px; }
    .core-case-gallery { grid-template-columns:1fr; gap:28px; }
    .core-campus-directory { grid-template-columns:1fr; }
    .core-campus-directory h4 { font-size:22px; }
    .core-next h2 { font-size:29px; }
    .core-next-arrow { font-size:32px; }
    .core .c2-contact h2 { font-size:36px; }
    .core-editorial-title { padding-top:24px; }
    .core .core-editorial-title h1,.core .core-project-title h1 { font-size:39px; letter-spacing:-1px; overflow-wrap:anywhere; }
    .core-editorial-title > *,.core-project-title > *,.core-contact-intro > * { min-width:0; }
    .core .core-about-photo img { aspect-ratio:4/3; object-position:55% 50%; }
    .core-story-grid,.core-story-copy,.core-profile-intro > .container,.core-project-content > .container { grid-template-columns:1fr; gap:36px; }
    .core-story-year strong { font-size:58px; }
    .core-contact-hero { padding-bottom:58px !important; }
    .core-contact-intro { min-height:0; padding-block:32px 48px; }
    .core-contact-intro h1 { font-size:43px; letter-spacing:-1.2px; }
    .core-contact-email { grid-template-columns:1fr auto; gap:10px 18px; padding-block:18px; }
    .core-contact-email > span:first-child { grid-column:1/-1; }
    .core-contact-email strong { font-size:22px; overflow-wrap:anywhere; }
    .core-contact-list { grid-template-columns:1fr; }
    .core-contact-list li { border-right:0; }
    .core-contact-list span { margin-bottom:24px; }
    .core-cover-detail .core-cover-inner { min-height:560px; }
    .core-cover-detail::after { background:linear-gradient(0deg,#061f34ed 0%,#061f3468 72%,#061f3438); }
    .core-detail-lead { font-size:19px; }
    .core-detail-gallery,.core-project-facts { grid-template-columns:1fr; }
    .core-school-snapshot,.core-school-highlights,.core-school-connection,.core-profile-gallery,.core-school-video { padding-block:56px !important; }
    .core-school-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .core-school-stats > div { padding:24px 16px; }
    .core-school-stats > div:nth-child(2n) { border-right:0; }
    .core-school-stats dt { font-size:36px; }
    .core-school-gallery { grid-template-columns:1fr; gap:32px; }
    .core-school-connection h2 { font-size:40px; }
    .core-school-connection__links { align-items:flex-start; flex-direction:column; gap:8px; }
    .core-school-sources { padding-block:28px !important; }
    .core-school-sources ul { align-items:flex-start; flex-direction:column; gap:0; }
    .core-project-title { padding-top:24px; }
    .core-project-content > .container { display:block; }
    .core-project-index { margin-bottom:38px; }
    .core-404-number { right:-36px; }
    .core-not-found .core-action-row { align-items:flex-start; flex-direction:column; }
}

@media(min-width:1600px) { .core-cover-partnerships .core-cover-inner,.core-cover-cases .core-cover-inner { min-height:720px; } .core-cover-schools .core-cover-inner { min-height:650px; } }
@media(max-width:1199px) { .core-school-grid { gap:24px; } .core-school-card-body { padding:22px; } .core-school-invitation { padding:26px; } .core .core-school-invitation h2 { font-size:34px; } .core-school-card-bottom { flex-wrap:wrap; } .core-opening .container { gap:48px; } }
@media(max-width:991px) { .core-school-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .core .core-cover h1 { font-size:58px; } .core-cover-inner { min-height:620px; } .core-cover-cases .core-cover-inner { min-height:620px; } .core-cover-schools .core-cover-inner { min-height:560px; } .core-cover-detail .core-cover-image { inset:0; width:100%; } .core-opening .container { gap:32px; } }
@media(max-width:575px) {
    .core .core-cover h1 { font-size:42px; line-height:1.09; letter-spacing:-1.2px; }
    .core-cover .c2-eyebrow { font-size:12px; letter-spacing:.08em; }
    .core-cover-inner { min-height:600px; padding-top:8px; padding-bottom:70px; }
    .core-cover-caption { left:24px; right:24px; bottom:18px; font-size:12px; line-height:1.5; }
    .core-cover-partnerships .core-cover-image { object-position:51% 50%; transform:none; }
    .core-cover-partnerships .core-cover-inner { min-height:610px; }
    .core-cover-partnerships .core-cover-copy { padding-top:180px; }
    .core-cover-schools .core-cover-inner { min-height:530px; padding-bottom:70px; }
    .core-cover-schools .core-cover-image { object-position:63% 50%; }
    .core-cover-schools::after { background:linear-gradient(0deg,#041e3bf2 0%,#041e3ba8 58%,#041e3b2b 100%); }
    .core-cover-schools .core-cover-copy > p:not(.c2-eyebrow) { font-size:16px; }
    .core-cover-cases .core-cover-inner { min-height:620px; }
    .core-cover-cases .core-cover-image { object-position:55% 60%; }
    .core-cover-cases .core-cover-copy { margin-top:auto; padding-bottom:0; }
    .core-cover-cases .core-cover-intro { font-size:16px; }
    .core-cover-project { padding:16px 56px 18px 20px; align-self:stretch; }
    .core-cover-project strong { font-size:20px; }
    .core-project-arrow { right:20px; }
    .core-opening .container { grid-template-columns:1fr; gap:20px; padding-block:28px; }
    .core-opening p:first-child { font-size:23px; }
    .core-school-grid { grid-template-columns:1fr; gap:28px; }
    .core .core-school-directory { padding-block:52px; }
    .core-school-card-body { padding:24px; }
    .core-school-card-bottom { flex-wrap:nowrap; }
    .core-school-invitation { padding:32px; min-height:460px; }
    .core .core-school-invitation h2 { font-size:40px; }
    .core-invitation-mark { margin-block:18px 30px; }
    .core-school-invitation .c2-button { margin-top:32px; }
}

/* White-paper reading template: editorial, text-first and intentionally image-light. */
.core .cic-whitepaper-hero { padding:28px 0 96px !important; background:var(--c2-paper); }
.cic-whitepaper-hero .core-breadcrumb { margin-bottom:58px; }
.cic-whitepaper-hero__grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr); gap:92px; align-items:center; }
.core .cic-whitepaper-hero__copy h1 { color:var(--c2-deep); font:400 clamp(52px,5.2vw,82px)/1.02 var(--alt-font); letter-spacing:-2.6px; max-width:720px; }
.cic-whitepaper-hero__copy h1 em { color:#9a7840; }
.cic-whitepaper-hero__dek { max-width:560px; margin-top:28px !important; color:var(--medium-gray); font-size:19px; line-height:1.7; }
.cic-whitepaper-meta { display:flex; flex-wrap:wrap; gap:10px 28px; margin-top:34px; padding-top:18px; border-top:1px solid var(--c2-line); color:#6b7c85; font-size:12px; letter-spacing:.04em; text-transform:uppercase; }
.cic-whitepaper-cover { position:relative; display:flex; flex-direction:column; min-height:520px; padding:34px; overflow:hidden; color:#fff; background:var(--c2-navy); isolation:isolate; box-shadow:18px 18px 0 #d8ccb3; }
.cic-whitepaper-cover::before,.cic-whitepaper-cover::after { content:''; position:absolute; z-index:-1; border:1px solid #ead8b466; transform:rotate(-20deg); }
.cic-whitepaper-cover::before { width:290px; height:390px; right:-90px; top:-90px; }
.cic-whitepaper-cover::after { width:240px; height:320px; right:-50px; top:-50px; }
.cic-whitepaper-cover__kicker { font:600 12px/1.5 var(--primary-font); letter-spacing:.15em; color:var(--c2-gold); }
.cic-whitepaper-cover strong { margin-top:auto; font:400 clamp(46px,5vw,76px)/.98 var(--alt-font); letter-spacing:-2px; }
.cic-whitepaper-cover strong em { color:var(--c2-gold); font-weight:400; }
.cic-whitepaper-cover__rule { width:72px; height:2px; margin-top:28px; background:var(--c2-gold); }
.cic-whitepaper-cover__footer { margin-top:24px; font-size:12px; line-height:1.7; color:#dbe4e8; letter-spacing:.04em; }
.core .cic-whitepaper-reading { padding:104px 0 112px; background:#fff; }
.cic-whitepaper-reading__intro { display:grid; grid-template-columns:.72fr 1.28fr; gap:80px; max-width:980px; padding-bottom:58px; border-bottom:1px solid var(--c2-line); }
.cic-whitepaper-reading__intro > p:last-child { margin:0; color:var(--c2-deep); font:400 26px/1.5 var(--alt-font); }
.cic-whitepaper-reading__layout { display:grid; grid-template-columns:.72fr 1.28fr; gap:80px; max-width:980px; margin-top:58px; }
.cic-whitepaper-reading__rail { display:flex; flex-direction:column; gap:10px; align-self:start; position:sticky; top:130px; color:#7b8b92; font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.cic-whitepaper-reading__rail span::before { content:'—'; margin-right:8px; color:#b99d68; }
.cic-whitepaper-reading__body { min-width:0; }
.cic-whitepaper-section { display:grid; grid-template-columns:58px 1fr; gap:28px; padding:0 0 54px; margin-bottom:54px; border-bottom:1px solid var(--c2-line); }
.cic-whitepaper-section:last-child { margin-bottom:0; }
.cic-whitepaper-section__number { color:#9a7840; font:italic 28px/1 var(--alt-font); }
.core .cic-whitepaper-section h2 { margin:0 0 18px; color:var(--c2-deep); font:400 clamp(30px,3vw,43px)/1.12 var(--alt-font); letter-spacing:-1px; }
.cic-whitepaper-section p { color:var(--medium-gray); font-size:16px; line-height:1.8; }
.cic-whitepaper-section ul { margin:20px 0 0; padding:0; list-style:none; }
.cic-whitepaper-section li { position:relative; padding:12px 0 12px 22px; border-top:1px solid #e5e6e2; color:#425e70; font-size:15px; line-height:1.65; }
.cic-whitepaper-section li::before { content:''; position:absolute; left:0; top:22px; width:6px; height:6px; background:var(--base-color); border-radius:50%; }
.cic-whitepaper-checklist { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; margin-top:92px; padding:48px 52px; background:var(--c2-paper); }
.core .cic-whitepaper-checklist h2 { margin:0; font:400 clamp(32px,3.5vw,48px)/1.08 var(--alt-font); letter-spacing:-1.4px; }
.cic-whitepaper-checklist h2 em { color:#9a7840; }
.cic-whitepaper-checklist ol { margin:0; padding:0; list-style:none; counter-reset:checklist; }
.cic-whitepaper-checklist li { counter-increment:checklist; display:grid; grid-template-columns:34px 1fr; gap:12px; padding:12px 0; border-bottom:1px solid var(--c2-line); color:#425e70; font-size:15px; line-height:1.6; }
.cic-whitepaper-checklist li::before { content:counter(checklist, decimal-leading-zero); color:#9a7840; font:italic 18px/1.5 var(--alt-font); }
.cic-whitepaper-closing { max-width:760px; margin:58px auto 0 !important; color:var(--c2-deep); font:italic 24px/1.55 var(--alt-font); text-align:center; }
.core .cic-whitepaper-next { padding:92px 0 !important; }
.cic-whitepaper-next .core-action-row { display:flex; align-items:center; flex-wrap:wrap; gap:22px 28px; margin-top:24px; }
.cic-whitepaper-next .c2-text-link { color:#fff; }
.cic-insights-whitepaper { padding-block:0 !important; }
.cic-insights-whitepaper__inner { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr); gap:72px; align-items:end; padding:56px 0 60px; border-block:1px solid var(--c2-line); }
.cic-insights-whitepaper__inner h2 { margin:0; color:var(--c2-deep); font:400 clamp(34px,4vw,54px)/1.08 var(--alt-font); letter-spacing:-1.4px; }
.cic-insights-whitepaper__inner h2 em { color:#9a7840; }
.cic-insights-whitepaper__inner > div:last-child { max-width:460px; }
.cic-insights-whitepaper__inner > div:last-child p { margin:0 0 24px; color:var(--medium-gray); font-size:17px; line-height:1.7; }
.cic-insights-whitepaper__inner .cic-text-link { color:var(--c2-deep); }
@media(max-width:991px) {
    .cic-whitepaper-hero__grid,.cic-whitepaper-reading__intro,.cic-whitepaper-reading__layout,.cic-whitepaper-checklist,.cic-insights-whitepaper__inner { grid-template-columns:1fr; gap:34px; }
    .cic-whitepaper-cover { min-height:440px; max-width:540px; }
    .cic-whitepaper-reading__rail { position:static; flex-direction:row; flex-wrap:wrap; }
    .cic-whitepaper-checklist { padding:36px; }
}
@media(max-width:575px) {
    .core .cic-whitepaper-hero { padding-bottom:68px !important; }
    .cic-whitepaper-hero .core-breadcrumb { margin-bottom:38px; }
    .core .cic-whitepaper-hero__copy h1 { font-size:43px; letter-spacing:-1.2px; }
    .cic-whitepaper-hero__dek { font-size:17px; }
    .cic-whitepaper-cover { min-height:390px; padding:24px; box-shadow:10px 10px 0 #d8ccb3; }
    .cic-whitepaper-cover strong { font-size:54px; }
    .core .cic-whitepaper-reading { padding-block:68px 76px; }
    .cic-whitepaper-reading__intro > p:last-child { font-size:22px; }
    .cic-whitepaper-reading__layout { margin-top:42px; }
    .cic-whitepaper-section { grid-template-columns:42px 1fr; gap:16px; padding-bottom:38px; margin-bottom:38px; }
    .core .cic-whitepaper-section h2 { font-size:31px; }
    .cic-whitepaper-section p,.cic-whitepaper-section li,.cic-whitepaper-checklist li { font-size:15px; }
    .cic-whitepaper-checklist { margin-top:62px; padding:28px 24px; }
    .cic-whitepaper-closing { margin-top:42px !important; font-size:21px; }
    .core .cic-whitepaper-next { padding:70px 0 !important; }
    .cic-insights-whitepaper__inner { padding-block:42px 46px; }
    .cic-insights-whitepaper__inner > div:last-child p { font-size:16px; }
}
