/* CERC institutional page: scoped, responsive, CMS-driven, zero dependency on Divi internals. */
.cercsb-page{width:100%;max-width:none;color:var(--cercsb-text,#2c2c2c);font-family:var(--cercsb-body-font,Georgia,serif);line-height:1.72;overflow:clip}
.cercsb-page *{box-sizing:border-box}
.cercsb-page .cercsb-section{padding:clamp(48px,6vw,94px) 24px;margin:0}
.cercsb-page .cercsb-container{max-width:var(--cercsb-max-width,1240px);margin:0 auto}
.cercsb-page .cercsb-section--intro{background:var(--cercsb-surface,#f8f6f2)}
.cercsb-page .cercsb-section--vision,.cercsb-page .cercsb-section--research{background:var(--cercsb-surface,#f8f6f2)}
.cercsb-page .cercsb-eyebrow{margin:0 0 14px;color:var(--cercsb-primary,#c0392b);font:700 12px/1.5 var(--cercsb-heading-font,Arial,sans-serif);letter-spacing:.15em;text-transform:uppercase}
.cercsb-page .cercsb-title{font:700 var(--cercsb-heading-size,38px)/1.18 var(--cercsb-heading-font,Arial,sans-serif);letter-spacing:-.025em;color:var(--cercsb-text,#2c2c2c);margin:0 0 22px;max-width:850px}
.cercsb-page .cercsb-lead{font:500 clamp(16px,1.7vw,21px)/1.6 var(--cercsb-heading-font,Arial,sans-serif);color:#5c5955;margin:0 0 22px;max-width:740px}
.cercsb-page .cercsb-prose{max-width:780px;font-size:clamp(15px,1.4vw,var(--cercsb-body-size,17px));color:var(--cercsb-text,#2c2c2c)}
.cercsb-page .cercsb-prose p{margin:0 0 17px;line-height:1.78}
.cercsb-page .cercsb-prose p:last-child{margin-bottom:0}
.cercsb-page .cercsb-hero,.cercsb-page .cercsb-split{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);gap:clamp(30px,5vw,80px);align-items:center}
.cercsb-page .cercsb-hero{min-height:360px}
.cercsb-page .cercsb-hero-content{min-width:0}
.cercsb-page .cercsb-hero-mark{min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(192,57,43,.19);border-radius:var(--cercsb-radius,12px);background:linear-gradient(145deg,#fff 0%,#f5ede8 100%);box-shadow:0 15px 38px rgba(41,32,24,.05)}
.cercsb-page .cercsb-hero-mark span{font:700 clamp(58px,9vw,130px)/1 var(--cercsb-heading-font,Arial,sans-serif);color:var(--cercsb-primary,#c0392b);letter-spacing:-.05em}
.cercsb-page .cercsb-hero-mark small{font:600 13px/1.5 var(--cercsb-heading-font,Arial,sans-serif);color:#666}
.cercsb-page .cercsb-photo-wrap{min-width:0;overflow:hidden;border-radius:var(--cercsb-radius,12px);box-shadow:0 18px 42px rgba(41,32,24,.12);background:#e8e5df}
.cercsb-page img.cercsb-photo{display:block;width:100%;height:clamp(275px,31vw,460px);object-fit:cover;max-width:none;margin:0}
.cercsb-page .cercsb-split.no-photo{display:block;max-width:900px}
.cercsb-page .cercsb-two-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:33px}
.cercsb-page .cercsb-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:35px}
.cercsb-page .cercsb-card{background:#fff;border:1px solid #ece5e1;padding:clamp(22px,3vw,34px);border-radius:var(--cercsb-radius,12px);box-shadow:0 8px 24px rgba(32,24,20,.035);min-width:0}
.cercsb-page .cercsb-card h3{color:var(--cercsb-text,#2c2c2c);font:700 clamp(18px,1.6vw,23px)/1.3 var(--cercsb-heading-font,Arial,sans-serif);margin:8px 0 14px}
.cercsb-page .cercsb-card .cercsb-prose{font-size:clamp(15px,1.2vw,17px)}
.cercsb-page .cercsb-card-line{display:block;width:54px;height:4px;background:var(--cercsb-primary,#c0392b);border-radius:8px}
.cercsb-page .cercsb-number{font:800 34px/1 var(--cercsb-heading-font,Arial,sans-serif);color:var(--cercsb-primary,#c0392b);opacity:.72}
.cercsb-page .cercsb-axes{padding:0;margin:35px 0 0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:none}
.cercsb-page .cercsb-axes li{border:1px solid #e6ddda;padding:26px;background:#fff;border-radius:var(--cercsb-radius,12px);min-width:0}
.cercsb-page .cercsb-axis-num{display:block;color:var(--cercsb-primary,#c0392b);font:800 28px/1 var(--cercsb-heading-font,Arial,sans-serif);margin-bottom:22px}
.cercsb-page .cercsb-axes h3{font:650 clamp(16px,1.4vw,19px)/1.45 var(--cercsb-heading-font,Arial,sans-serif);margin:0;color:var(--cercsb-text,#2c2c2c)}
@media(max-width:900px){.cercsb-page .cercsb-hero,.cercsb-page .cercsb-split{grid-template-columns:1fr;gap:32px}.cercsb-page .cercsb-hero{min-height:0}.cercsb-page .cercsb-axes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.cercsb-page .cercsb-section{padding:45px 18px}.cercsb-page .cercsb-two-cards,.cercsb-page .cercsb-cards,.cercsb-page .cercsb-axes{grid-template-columns:1fr}.cercsb-page .cercsb-photo-wrap img.cercsb-photo{height:265px}.cercsb-page .cercsb-hero-mark{min-height:240px}.cercsb-page .cercsb-lead{font-size:16px}}

@media(max-width:600px){.cercsb-page .cercsb-title{font-size:clamp(24px,7vw,var(--cercsb-heading-size,38px))}}
.cercsb-page .cercsb-title,.cercsb-page .cercsb-card h3,.cercsb-page .cercsb-axes h3{overflow-wrap:anywhere}

/* Explicit administrative layout controls override section defaults. */
.cercsb-page .cercsb-section.cercsb-bg--beige{background:var(--cercsb-surface,#f8f6f2)}
.cercsb-page .cercsb-section.cercsb-bg--white{background:#fff}
.cercsb-page .cercsb-section.cercsb-space--compact{padding-top:clamp(32px,4vw,54px);padding-bottom:clamp(32px,4vw,54px)}
.cercsb-page .cercsb-section.cercsb-space--spacious{padding-top:clamp(64px,8vw,120px);padding-bottom:clamp(64px,8vw,120px)}
.cercsb-page .cercsb-image--left .cercsb-photo-wrap{order:-1}
@media(max-width:900px){.cercsb-page .cercsb-image--left .cercsb-photo-wrap{order:0}}

/* Robust CSS isolation: Divi 5 can reset common heading and paragraph styles. */
.cercsb-page{display:block!important;position:relative;width:100%;font-size:var(--cercsb-body-size,17px);font-family:var(--cercsb-body-font,Arial,Helvetica,sans-serif);line-height:1.7;-webkit-font-smoothing:antialiased}
.cercsb-page .cercsb-section{display:block;min-width:0}
.cercsb-page .cercsb-container{width:100%;max-width:var(--cercsb-max-width,1180px)}
.cercsb-page .cercsb-title{font-size:clamp(27px,3vw,var(--cercsb-heading-size,38px));font-weight:700;line-height:1.22;display:block}
.cercsb-page .cercsb-section--intro .cercsb-title{font-size:clamp(30px,3.4vw,52px)}
.cercsb-page .cercsb-prose{font-size:var(--cercsb-body-size,17px);line-height:1.75}
.cercsb-page .cercsb-prose p{font-size:inherit;line-height:inherit}
.cercsb-page .cercsb-eyebrow{display:block;letter-spacing:.13em;font-size:12px;font-weight:800}
.cercsb-page .cercsb-hero-mark{background:linear-gradient(145deg,#fff,#eee7de)}
.cercsb-page .cercsb-two-cards,.cercsb-page .cercsb-cards,.cercsb-page .cercsb-axes{align-items:stretch}
.cercsb-page .cercsb-card h3,.cercsb-page .cercsb-axes h3{line-height:1.35}
.cercsb-page .cercsb-section.cercsb-bg--white{background:#fff}
.cercsb-page .cercsb-section.cercsb-bg--beige{background:var(--cercsb-surface,#f7f3ed)}
@media(max-width:767px){.cercsb-page .cercsb-title{font-size:clamp(27px,7vw,36px)}.cercsb-page .cercsb-section--intro .cercsb-title{font-size:clamp(29px,7vw,40px)}.cercsb-page .cercsb-section{padding-left:18px;padding-right:18px}}
