@font-face{font-family:'Libre Baskerville';src:url('../fonts/libre-baskerville-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Libre Baskerville';src:url('../fonts/libre-baskerville-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Libre Baskerville';src:url('../fonts/libre-baskerville-italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
:root{--ink:#292c2d;--muted:#5d6365;--silver:#d1d4d3;--line:#d7dad8;--paper:#f5f5f3;--company:#14284b;--institute:#303921;--academy:#35221a;--gutter:clamp(24px,5vw,80px);--max:1320px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:28px}body{margin:0;background:#fff;color:var(--ink);font:400 15px/1.8 'Libre Baskerville',Baskerville,Georgia,serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{font:inherit}button,a{touch-action:manipulation}img{display:block;max-width:100%}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:400;line-height:1.3;text-wrap:balance}p{text-wrap:pretty}::selection{background:#dfe4e1;color:#111}.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.eyebrow{font-size:10px;font-weight:700;line-height:1.5;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:22px}h2{font-size:clamp(28px,2.7vw,40px);letter-spacing:-.035em}h3{font-size:22px;letter-spacing:-.025em}.section-space{padding-block:100px}.text-link{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;line-height:1.6;text-decoration:none;padding-bottom:11px;border-bottom:1px solid currentColor;transition:gap .2s}.text-link span[aria-hidden]{font-family:Arial,sans-serif;font-size:23px;font-weight:400;line-height:1}.text-link:hover{gap:30px}.text-link:hover,.navigation a:hover,.contact a:hover{color:#666e70}:focus-visible{outline:2px solid #434e52;outline-offset:6px}.skip-link{position:absolute;left:20px;top:-100px;z-index:100;padding:12px 18px;background:#fff;color:#111}.skip-link:focus{top:16px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:65px;margin-bottom:52px}.section-heading>p{max-width:410px;justify-self:end;color:var(--muted);font-size:14px;line-height:1.9}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.activity{--activity:var(--company);color:var(--activity);background:#f1f5f8;border-top:3px solid var(--activity);padding:0 30px 31px;display:flex;flex-direction:column}.activity.institute{--activity:var(--institute);background:#f2f3ee}.activity.academy{--activity:var(--academy);background:#f5f1ee}.activity-identity h3{text-align:center;font-size:22px;line-height:1.4}.logo-space{height:174px;display:flex;justify-content:center;align-items:center;padding:38px 8px;margin-inline:0}.logo-space img{width:min(234px,100%);height:auto;max-height:98px}.activity.academy .logo-space img{width:min(234px,100%)}.motto{font-size:21px;line-height:1.6;letter-spacing:-.025em;text-align:center;margin-top:22px;margin-bottom:35px;min-height:134px;text-wrap:balance}.activity-purpose{flex:1}.activity-role{font-size:9px;line-height:1.6;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin-bottom:15px}.activity-purpose>p:last-child{font-size:12px;line-height:1.9;color:var(--activity)}.activity-link{margin-top:33px;font-size:12px}.activity-link:hover{color:var(--activity);border-bottom-width:2px;padding-bottom:10px}.connection{background:#f5f5f3}.connection-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px}.connection-heading h2{max-width:440px}.connection-copy>p{font-size:13px;color:#555b5d;margin-top:22px}.connection-copy>p.lead{font-size:19px;line-height:1.7;color:var(--ink);margin-top:0}.relationship{margin-top:38px;font-size:11px;line-height:1.7}.relationship strong{font-size:12px;font-weight:400}.relationship span{display:block;color:#626967;font-size:10px}.relationship-heading{border-top:1px solid #aeb5b2;border-bottom:1px solid #aeb5b2;padding:16px 0;font-size:14px}.relationship-heading span{float:right;line-height:2.4}.relationship-branches{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;padding-top:22px}.relationship-company{color:var(--company)}.relationship-institute{color:var(--institute)}.relationship-academy{border-left:1px solid #9c918a;margin-top:20px;padding-left:15px;color:var(--academy)}.principle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px}.principle-grid article{border-top:1px solid #b8bfbc;padding-top:21px}.principle-number{font-size:10px;color:#626a67;display:block;margin-bottom:33px}.principle-grid h3{font-size:19px;line-height:1.4;margin-bottom:18px}.principle-grid p{font-size:12px;line-height:1.95;color:var(--muted)}.contact{border-top:1px solid var(--line);background:#f8f9f7}.contact-heading{margin-bottom:47px}.contact-heading h2{max-width:440px}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:54px}.contact-grid article{border-top:1px solid #b8bfbc;padding-top:26px;display:flex;flex-direction:column;align-items:flex-start}.contact-grid h3{font-size:22px}.contact-grid .activity-role{font-size:9px}.company-contact{color:var(--company)}.institute-contact{color:var(--institute)}.academy-contact{color:var(--academy)}.contact-locations{font-size:11px;color:#5b6360;margin-top:13px;margin-bottom:26px}.contact a{font-size:12px;text-decoration:none;display:flex;gap:17px;line-height:2.4;border-bottom:1px solid #b8bfbc;margin-top:8px}.contact a span{font:18px/1.6 Arial,sans-serif}.site-footer{background:#eceeeb;border-top:1px solid #d5d9d4;padding-block:32px}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:10px;color:#555e59}.footer-name{font-size:17px;color:#292f2c;margin-bottom:3px}.copyright{margin-left:auto}.back-top{display:flex;gap:22px;align-items:center;text-decoration:none;margin-left:35px;white-space:nowrap}.back-top span{font:20px Arial,sans-serif}
/* The family layout: navigation over a full-width photographic hero. */
.masthead{position:relative;background:#50585a}
.site-header{position:absolute;inset:0 0 auto;z-index:10;color:#d1d4d3;background:linear-gradient(180deg,rgba(17,23,25,.82),rgba(17,23,25,.60) 74%,transparent);padding-bottom:42px}
.header-inner{display:flex;justify-content:space-between;align-items:center;gap:40px;min-height:176px;max-width:none;padding-inline:clamp(38px,4vw,80px)}
.brand{display:flex;flex-shrink:0;padding-block:42px;margin-left:auto}
.brand img{width:312px;height:auto}
.navigation{display:flex;gap:clamp(24px,3vw,46px);align-items:center;font-size:16px;line-height:1.6}
.navigation a{text-decoration:none;padding-block:12px;text-shadow:0 1px 3px #1116}
.navigation a:hover{color:#e6e8e7;text-decoration:underline;text-underline-offset:7px}
.navigation .nav-contact{display:flex;gap:15px;align-items:center}
.site-header :focus-visible{outline-color:#d1d4d3}
.menu-toggle{display:none}
.hero-figure{position:relative;margin:0;width:100%;height:clamp(600px,54vw,840px);overflow:hidden}
.hero-figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%}
.hero-figure figcaption{position:absolute;right:30px;bottom:19px;left:30px;z-index:1;text-align:right;color:#d1d4d3;font-size:10px;line-height:1.6;text-shadow:0 1px 4px #111}
.hero-figure::after{content:'';position:absolute;inset:auto 0 0;height:80px;pointer-events:none;background:linear-gradient(transparent,rgba(13,22,26,.3))}
.group-introduction{padding-block:34px 39px;background:#e5e7e5;text-align:center;border-bottom:1px solid #d1d5d2}
.group-introduction h1{font-size:clamp(28px,3.1vw,43px);line-height:1.4;letter-spacing:-.035em}
.hero-intro{font-size:14px;line-height:1.9;max-width:820px;margin:14px auto 0;color:#48504e}
.activities{background:var(--paper);padding-block:48px 78px}
.activity{background:#fff;border:1px solid #d7dcdf;border-top:3px solid var(--activity);border-radius:12px;box-shadow:0 1px 5px #28302d05}
.activity.institute{background:#fff;border-color:#d6dbd1;border-top-color:var(--institute)}
.activity.academy{background:#faf7f2;border-color:#ddd5cf;border-top-color:var(--academy)}
@media(min-width:1500px){.hero-figure{height:840px}}
@media(max-width:1100px){.navigation{gap:23px;font-size:14px}.header-inner{gap:24px}.brand img{width:270px}.activity{padding-inline:23px}.activity-grid{gap:16px}.logo-space{padding-inline:0}.logo-space img{width:min(234px,calc(100% - 30px));min-width:189px}.motto{font-size:19px;min-height:148px}.activity-identity h3{font-size:20px}.connection-layout{gap:50px}.principle-grid{gap:24px}}
@media(max-width:980px){.section-space{padding-block:72px}.activities{padding-top:40px}.section-heading{gap:35px}.section-heading>p{font-size:12px}.activity-grid{grid-template-columns:1fr;gap:24px}.activity{padding:0 38px 32px}.logo-space{height:180px;padding:38px;max-width:340px;margin-inline:auto}.logo-space img{width:234px;min-width:189px}.activity-identity h3{font-size:26px}.motto{max-width:520px;margin:22px auto 32px;min-height:0;font-size:25px}.activity-purpose{max-width:520px;margin-inline:auto;width:100%}.activity-purpose>p:last-child{font-size:14px}.activity-link{width:100%;max-width:520px;margin-inline:auto;margin-top:30px;font-size:13px}.connection-layout{grid-template-columns:1fr;gap:35px}.connection-heading h2{max-width:none}.connection-copy{max-width:620px}.connection-copy>p{font-size:14px}.principle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.principle-grid p{font-size:13px}.contact-grid{gap:25px}.contact-grid h3{font-size:19px}.contact-locations{min-height:40px}.contact a{font-size:11px;gap:12px}.footer-inner{flex-wrap:wrap}.copyright{margin-left:0}}
@media(max-width:980px){
.header-inner{min-height:164px;gap:18px;position:relative;padding-inline:38px}.brand{padding-block:38px}.brand picture{display:block}.brand img{width:150px}
.menu-toggle{display:flex;align-items:center;gap:11px;cursor:pointer;border:0;background:none;color:#d1d4d3;padding:12px 10px 12px 0;font-size:15px}.menu-lines{width:20px;height:9px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}.menu-toggle[aria-expanded=true] .menu-lines{border-bottom:0;transform:rotate(45deg);height:1px}.menu-toggle[aria-expanded=true] .menu-lines:after{content:'';position:absolute;top:-1px;left:0;width:20px;border-top:1px solid currentColor;transform:rotate(90deg)}
.navigation{position:absolute;z-index:20;top:100%;left:20px;right:20px;background:#292f31;box-shadow:0 12px 25px #1114;padding:15px 25px 20px;display:none;flex-direction:column;align-items:stretch;gap:0;font-size:14px;border:1px solid #8a9090;border-radius:3px}.navigation.is-open{display:flex}.navigation a{padding-block:15px;border-bottom:1px solid #737a7b;text-shadow:none}.navigation .nav-contact{justify-content:space-between;border-bottom:0}
.hero-figure{height:600px}.hero-figure img{object-position:49% 50%}.hero-figure figcaption{right:22px;left:22px;font-size:9px}
.group-introduction{padding-block:28px 31px}.group-introduction h1{font-size:32px;max-width:620px;margin:auto}.hero-intro{font-size:13px;max-width:540px}
}
@media(max-width:600px){:root{--gutter:24px}.hero-figure{height:540px}.group-introduction h1{font-size:29px;line-height:1.45}.hero-intro{font-size:12px;margin-top:15px}.section-space{padding-block:62px}.activities{padding-top:30px}.section-heading{grid-template-columns:1fr;gap:26px;margin-bottom:34px}.section-heading>p{justify-self:start;font-size:13px;max-width:440px}h2{font-size:30px;line-height:1.35}.eyebrow{font-size:9px;margin-bottom:18px}.activity{padding:0 24px 30px}.logo-space{height:178px;padding:38px 0;max-width:234px;width:calc(100% - 28px)}.logo-space img,.activity.academy .logo-space img{width:100%;min-width:0}.activity-identity h3{font-size:23px}.motto{font-size:23px;margin-bottom:30px;line-height:1.55;max-width:400px}.activity-purpose>p:last-child{font-size:13px}.activity-role{font-size:9px}.activity-link{font-size:12px}.connection-layout{gap:30px}.connection-copy>p.lead{font-size:18px}.connection-copy>p{font-size:13px}.relationship-heading{font-size:13px}.relationship-heading span{float:none;line-height:1.7;margin-top:2px}.relationship-branches{gap:18px;grid-template-columns:1fr 1.2fr}.relationship strong{font-size:11px}.relationship span{font-size:9px}.principle-grid{gap:33px 22px}.principle-grid h3{font-size:17px;line-height:1.5;min-height:51px;overflow-wrap:normal}.principle-grid p{font-size:11px}.principle-number{margin-bottom:22px}.contact-grid{grid-template-columns:1fr;gap:33px}.contact-grid h3{font-size:23px}.contact-grid article{padding-top:23px}.contact-locations{min-height:0;margin-top:10px;margin-bottom:14px}.contact a{font-size:13px}.contact-grid .activity-role{margin-bottom:12px}.footer-inner{display:grid;grid-template-columns:1fr auto;gap:22px}.footer-inner>div{grid-column:1/-1}.copyright{font-size:9px}.back-top{font-size:10px;margin-left:0;gap:14px}.footer-name{font-size:19px}}
@media(max-width:350px){:root{--gutter:16px}.hero-figure{height:500px}.group-introduction h1{font-size:26px}}
@media(min-width:981px) and (max-width:1100px){.activity.academy .logo-space img{width:min(234px,calc(100% - 30px))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
@media print{.menu-toggle,.navigation,.hero-link,.back-top{display:none}.hero{grid-template-columns:1fr 1fr}.section-space{padding-block:35px}.activity-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.activity{break-inside:avoid;padding-inline:20px}.logo-space{padding:38px 0}.logo-space img{width:189px;min-width:189px}.activity-identity h3{font-size:16px}.motto{font-size:16px;min-height:115px}.activity-purpose>p:last-child{font-size:10px}.contact-grid{grid-template-columns:repeat(3,1fr)}}

.arrow-out{display:block;flex:0 0 auto}.nav-contact .arrow-out{width:16px;height:16px}.contact .arrow-out{margin-top:6px;width:16px;height:16px}


/* Family revision: stacked homepage excerpts and a single silver menu. */
@media screen{
.header-inner{position:relative;justify-content:flex-end;min-height:218px;align-items:flex-start;padding-inline:clamp(38px,4vw,80px)}
.header-identity{width:312px;display:flex;flex-direction:column;align-items:center;padding-block:38px 24px;flex-shrink:0}
.brand{padding:0;margin:0}.brand img{width:312px;height:auto;filter:none}
.menu-toggle{display:flex;align-items:center;justify-content:center;border:0;background:none;color:#c5cece;cursor:pointer;padding:10px 24px;margin-top:12px;font:400 18px/1.6 'Libre Baskerville',Baskerville,Georgia,serif;letter-spacing:-.025em}
.menu-toggle::after{content:'';width:6px;height:6px;border-right:1px solid #c5cece;border-bottom:1px solid #c5cece;transform:rotate(45deg);margin-left:12px;margin-top:-4px}.menu-toggle[aria-expanded=true]::after{transform:rotate(225deg);margin-top:3px}
.navigation{display:none;position:absolute;top:calc(100% - 12px);right:clamp(38px,4vw,80px);left:auto;width:312px;padding:14px 26px 20px;background:#263137;border:1px solid #7d898c;box-shadow:0 12px 28px #1114;border-radius:0;flex-direction:column;align-items:stretch;gap:0;font-size:16px;line-height:1.6}
.navigation.is-open{display:flex}.navigation a,.navigation .nav-pending{display:block;padding-block:13px;border-bottom:1px solid #637074;color:#d1d8d8;text-shadow:none;text-decoration:none}.navigation>:last-child{border-bottom:0}.navigation .nav-pending{cursor:default}.navigation a:hover{text-decoration:underline;text-underline-offset:6px}.menu-toggle:focus-visible{outline:2px solid #d1d8d8;outline-offset:4px}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
.menu-label,.navigation a,.navigation .nav-pending{background-image:linear-gradient(180deg,#eef1f0 0%,#b5bfc0 27%,#e1e6e5 46%,#a4afb0 55%,#c5cece 82%,#e1e6e5 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:#c5cece}
}
.family{background:#fff}.family-heading{padding-block:70px 58px}.family-heading h2{font-size:clamp(30px,3.5vw,48px)}.family-heading>p:last-child{margin-top:18px;font-size:14px;color:var(--muted)}
.family-section{--family-colour:var(--company);--family-paper:#eff2f6}.family-section.institute{--family-colour:var(--institute);--family-paper:#eef0e8}.family-section.academy{--family-colour:var(--academy);--family-paper:#f5f0e8}
.family-hero{height:clamp(320px,34vw,540px);width:100%;position:relative;overflow:hidden;background:var(--family-colour)}.family-hero>img{width:100%;height:100%;object-fit:cover;object-position:center 52%;display:block}.family-hero::after{content:'';position:absolute;inset:auto 0 0;height:110px;background:linear-gradient(transparent,#1119);pointer-events:none}.family-hero figcaption{position:absolute;bottom:25px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:20px;color:#dce1df;z-index:1;font-size:11px;line-height:1.6;text-shadow:0 1px 3px #111}.family-hero figcaption>span:first-child{font-size:15px}
.family-body{background:var(--family-paper);color:var(--family-colour);border-top:3px solid var(--family-colour)}.family-content{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,7vw,100px);align-items:center;padding-block:68px 80px}.family-identity{text-align:center}.family-logo{min-height:176px;padding:38px;display:flex;align-items:center;justify-content:center}.family-logo img{width:260px;height:auto;max-height:108px}.family-identity h3{font-size:clamp(28px,3vw,38px);line-height:1.35}.family-motto{font-size:23px;line-height:1.65;margin:22px auto 0;max-width:480px;text-wrap:balance}.family-copy>p{font-size:14px;line-height:1.95;margin-top:20px}.family-copy>p.eyebrow{font-size:10px;margin:0 0 20px;color:var(--family-colour)}.family-copy>p.family-line{font-size:clamp(26px,2.5vw,34px);line-height:1.5;margin-top:0;text-wrap:balance;letter-spacing:-.03em}.family-copy>p.family-location{font-size:11px;line-height:1.8;margin-top:26px}.family-link{margin-top:24px;font-size:13px}.family-link:hover{color:var(--family-colour)}
@media(max-width:980px){.header-inner{min-height:206px}.header-identity{width:190px;padding-top:32px}.brand img{width:160px}.menu-toggle{margin-top:6px;font-size:18px}.navigation{width:280px}.family-content{gap:40px;padding-block:50px 60px}.family-logo{padding:38px 24px;min-height:155px}.family-logo img{width:230px}.family-motto{font-size:21px}.family-copy>p{font-size:13px}.family-copy>p.family-line{font-size:27px}}
@media(max-width:650px){.header-inner{padding-inline:24px}.header-identity{width:160px}.brand img{width:150px}.navigation{right:24px;width:min(280px,calc(100vw - 48px))}.family-heading{padding-block:48px 42px}.family-heading>p:last-child{font-size:12px}.family-hero{height:270px}.family-hero figcaption{bottom:18px;font-size:9px;gap:15px}.family-hero figcaption>span:first-child{font-size:12px}.family-hero figcaption>span:last-child{max-width:135px;text-align:right}.family-content{grid-template-columns:1fr;gap:40px;padding-block:20px 50px}.family-logo{min-height:164px;padding:38px}.family-logo img{width:234px;max-width:100%}.family-identity h3{font-size:31px}.family-motto{font-size:22px;max-width:470px}.family-copy>p.family-line{font-size:27px}.family-copy>p{font-size:13px}.family-copy>p.eyebrow{font-size:9px}.family-link{font-size:12px}}
@media(forced-colors:active){.menu-label,.navigation a,.navigation .nav-pending{background:none;-webkit-text-fill-color:CanvasText;color:CanvasText}}
}
@media print{.header-identity{display:none}.family-hero{height:220px;overflow:hidden}.family-hero img{width:100%;height:100%;object-fit:cover}.family-content{padding:30px;break-inside:avoid}.family-motto{font-size:20px}}
