/* TPF-20 leadership page; scoped CSS. Works with TPF-163 and legacy shell. */
.tpf-page {color:var(--tpf-color-text,#193d35);font:400 16px/1.65 var(--tpf-font-body,Inter,ui-sans-serif,system-ui,sans-serif);background:#fff;min-width:0}
.tpf-page,.tpf-page *,.tpf-page *::before,.tpf-page *::after {box-sizing:border-box}
.tpf-page__container{max-width:1170px;width:calc(100% - 2 * clamp(16px,4vw,32px));margin-inline:auto}
.tpf-page__intro{background:radial-gradient(circle at 88% 23%,#285c49 0%,transparent 40%),linear-gradient(115deg,#153a30,#1d4c3b);color:#fff;padding:clamp(58px,7vw,100px) 0 clamp(70px,7vw,110px);position:relative;overflow:hidden}
.tpf-page__intro:before{content:"";width:430px;height:430px;position:absolute;border:1px solid rgba(244,209,152,.22);border-radius:50%;right:-130px;top:-245px;box-shadow:0 0 0 84px rgba(255,255,255,.02);pointer-events:none}
.tpf-page__crumbs{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 34px;font-size:13px;color:#d5e9d9}
.tpf-page__crumbs a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.tpf-page__crumbs [aria-current]{font-weight:750;color:#fff}
.tpf-page__kicker{font-size:12px;letter-spacing:.2em;font-weight:800;color:#eac17e;margin:0 0 17px;text-transform:uppercase}
.tpf-page__title{font-family:var(--tpf-font-display,Georgia,serif);font-size:clamp(44px,6.3vw,82px);font-weight:500;letter-spacing:-.044em;line-height:1.1;max-width:960px;margin:0}
.tpf-page__lead{color:#d7e6da;font-size:clamp(16px,2vw,20px);line-height:1.8;max-width:740px;margin:22px 0 0}
.tpf-leadership{background:#fffefb;color:#244b3a;min-width:0;overflow:hidden;font-family:var(--tpf-font-body,Inter,system-ui,sans-serif);font-size:15px;line-height:1.75}
.tpf-leadership h2,.tpf-leadership h3,.tpf-leadership h4,.tpf-leadership p{margin-top:0}
.tpf-leadership h2{font-family:var(--tpf-font-display,Georgia,serif);font-weight:500;font-size:clamp(34px,4.1vw,53px);line-height:1.15;letter-spacing:-.04em;color:#1b4737;margin-bottom:22px}
.tpf-leadership h3{font-family:var(--tpf-font-display,Georgia,serif);font-weight:600;line-height:1.25}
.tpf-leadership__eyebrow{font-size:11px;font-weight:850;letter-spacing:.19em;color:#a77736;text-transform:uppercase;margin:0 0 19px}
.tpf-leadership__intro{padding:clamp(74px,9vw,125px) 0;background:#fffdfa}
.tpf-leadership__intro-grid{display:grid;grid-template-columns:.96fr 1.04fr;gap:clamp(35px,6vw,100px);align-items:center}
.tpf-leadership__intro-copy>p:not(.tpf-leadership__eyebrow){max-width:535px;color:#607568;font-size:16px;line-height:1.95;margin-bottom:20px}
.tpf-leadership__signature{font:italic 21px/1.6 Georgia,serif;color:#b18445}
.tpf-leadership__visual{position:relative;background:#e9eee4;border-radius:46% 46% 18px 18px;min-width:0;display:flex;align-items:center;flex-direction:column;padding:20px 13px 0;min-height:360px}
.tpf-leadership__visual:before{content:"";position:absolute;inset:-15px 13px 15px -13px;border-radius:46% 46% 18px 18px;border:1px solid #d9b981;pointer-events:none}
.tpf-leadership__visual img{position:relative;width:min(100%,590px);height:auto;display:block;object-fit:contain;filter:drop-shadow(0 20px 16px rgba(16,54,37,.09))}
.tpf-leadership__visual p{position:relative;font:italic 19px/1.4 Georgia,serif;color:#30614a;margin:0 0 24px}
.tpf-leadership__people{padding:clamp(80px,9vw,122px) 0;background:#f5f7f2}
.tpf-leadership__section-top{display:grid;grid-template-columns:1fr .65fr;gap:48px;align-items:end;margin-bottom:41px}
.tpf-leadership__section-top h2{margin-bottom:0;max-width:760px}
.tpf-leadership__section-top>p{color:#607468;margin:0 0 7px;max-width:430px;font-size:15px;line-height:1.8}
.tpf-leadership__empty{border:1px solid #dfebdf;background:#fff;box-shadow:0 12px 48px rgba(16,64,39,.04);border-radius:20px;padding:clamp(28px,5vw,60px);display:grid;grid-template-columns:115px 1fr;gap:33px;align-items:center}
.tpf-leadership__empty-symbol{background:linear-gradient(145deg,#f9e9c7,#eef5e6);color:#b58645;width:112px;height:112px;border-radius:50%;display:grid;place-items:center;font:normal 80px Georgia,serif}
.tpf-leadership__empty h3{font-size:clamp(23px,2.7vw,32px);color:#244c3b;margin:0 0 12px}
.tpf-leadership__empty p:last-child{max-width:630px;color:#62746a;margin:0}
.tpf-leadership__group{margin-top:40px}
.tpf-leadership__group>h3{font-size:29px;margin:0 0 24px}
.tpf-leadership__profiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.tpf-leadership__profile{background:white;border:1px solid #e0e9de;border-radius:16px;overflow:hidden;min-width:0;box-shadow:0 12px 30px rgba(19,59,40,.045)}
.tpf-leadership__portrait{height:300px;display:grid;place-items:center;background:linear-gradient(145deg,#e6ede4,#f2e4c8);font-family:Georgia,serif;font-size:76px;color:#2e6650}
.tpf-leadership__portrait img{width:100%;height:100%;object-fit:cover;display:block}
.tpf-leadership__profile-content{padding:24px 27px 30px}
.tpf-leadership__profile h4{font-size:24px;line-height:1.2;margin:0 0 10px;color:#1e4635}
.tpf-leadership__role{font-weight:750;color:#a37738;margin:0 0 11px}
.tpf-leadership__bio{color:#5f7265;font-size:14px;line-height:1.8;margin:0}
.tpf-leadership__principles{padding:clamp(75px,9vw,115px) 0 125px;background:#fffdf8}
.tpf-leadership__principles-title{max-width:760px;margin:0 auto 45px;text-align:center}
.tpf-leadership__principles-title p:last-child{font-size:16px;color:#65786c;max-width:640px;margin:0 auto}
.tpf-leadership__principles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tpf-leadership__principle{border-radius:14px;border:1px solid #e7e9de;background:#fff;padding:37px 31px 43px;box-shadow:0 18px 44px rgba(26,62,43,.04);min-height:300px;position:relative}
.tpf-leadership__principle:before{content:"";position:absolute;top:0;left:32px;right:32px;height:3px;background:#dfb56f}
.tpf-leadership__principle>span{display:grid;place-items:center;border-radius:50%;width:60px;height:60px;background:#f7eddb;color:#aa7f44;font:500 26px Georgia,serif;margin-bottom:35px}
.tpf-leadership__principle h3{font-size:25px;color:#244b3b;margin:0 0 12px}
.tpf-leadership__principle p{color:#65776a;font-size:14px;line-height:1.85;margin:0}
.tpf-leadership__closing{position:relative;padding:clamp(68px,8vw,105px) 0;background:linear-gradient(130deg,#143b30,#205240);color:#fff;overflow:hidden}
.tpf-leadership__closing:after{content:"";border:1px solid rgba(255,255,255,.13);width:400px;height:400px;position:absolute;border-radius:50%;top:-190px;right:-70px;pointer-events:none;box-shadow:0 0 0 78px rgba(255,255,255,.02)}
.tpf-leadership__closing-inner{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;position:relative;z-index:1}
.tpf-leadership__closing h2{color:#fff8e9;max-width:710px;margin-bottom:15px}
.tpf-leadership__closing>div>div>p:last-child{color:#d4e4da;margin:0;font-size:15px}
.tpf-leadership__closing .tpf-leadership__eyebrow{color:#e9b66a}
.tpf-leadership__actions{display:grid;gap:19px;justify-items:center}
.tpf-leadership__button{white-space:nowrap;min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:15px 27px;background:#e9b05b;border-radius:5px;color:#173d35!important;text-decoration:none;font-weight:800}
.tpf-leadership__button:hover{background:#f3c17c}
.tpf-leadership__about-link{color:#fff!important;font-size:14px;font-weight:750;text-decoration:underline;text-underline-offset:5px;display:flex;gap:17px;align-items:center;min-height:44px}
.tpf-page a:focus-visible,.tpf-leadership a:focus-visible{outline:3px solid #d49b3e;outline-offset:4px}
@media(max-width:920px){.tpf-leadership__intro-grid{gap:44px;grid-template-columns:1fr 1fr}.tpf-leadership__profiles{grid-template-columns:repeat(2,minmax(0,1fr))}.tpf-leadership__section-top{gap:20px}}
@media(max-width:740px){.tpf-leadership__intro-grid{grid-template-columns:1fr;gap:48px}.tpf-leadership__visual{max-width:540px;margin-inline:auto;width:100%}.tpf-leadership__section-top{grid-template-columns:1fr;gap:13px}.tpf-leadership__principles-grid{grid-template-columns:1fr;gap:15px}.tpf-leadership__principle{min-height:0}.tpf-leadership__closing-inner{grid-template-columns:1fr;gap:30px}.tpf-leadership__actions{justify-items:start}}
@media(max-width:540px){.tpf-page__title{font-size:clamp(41px,11vw,60px)}.tpf-leadership__intro,.tpf-leadership__people,.tpf-leadership__principles{padding:65px 0}.tpf-leadership h2{font-size:clamp(31px,8vw,40px)}.tpf-leadership__empty{grid-template-columns:1fr;gap:18px}.tpf-leadership__empty-symbol{width:82px;height:82px;font-size:60px}.tpf-leadership__profiles{grid-template-columns:1fr}.tpf-leadership__portrait{height:270px}.tpf-leadership__visual{min-height:0}.tpf-leadership__visual p{font-size:16px}.tpf-leadership__principle{padding:32px 27px}.tpf-leadership__button{width:100%;white-space:normal}.tpf-leadership__actions{width:100%}.tpf-leadership__about-link{justify-self:start}}
@media(prefers-reduced-motion:reduce){.tpf-leadership *, .tpf-leadership *::before,.tpf-leadership *::after{animation:none!important;transition:none!important}}
