@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Inter:wght@400;500;600;700&display=swap');
:root{--ink:#0d0117;--plum:#321444;--gold:#c9a227;--soft:#e1be63;--ivory:#f4ede3;--muted:#c9bdcf;--line:#e1be6338}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ink);color:var(--ivory);font-family:Inter,Arial,sans-serif;font-size:22.5px;line-height:1.8}a{color:inherit;text-decoration:none}a:hover{color:var(--soft)}button,select{font:inherit}button,a,select{touch-action:manipulation}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--soft);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.08}h1{font-size:clamp(44px,4.7vw,76px);letter-spacing:-1.8px;margin-bottom:24px}h2{font-size:clamp(36px,4vw,56px);letter-spacing:-.8px;margin-bottom:24px}h3{font-size:30px;margin-bottom:17px}em{font-weight:400;color:var(--soft)}p{max-width:76ch}.wrap{width:min(1230px,88%);margin:auto}.topline{text-align:center;background:#261034;color:var(--soft);font-size:13.5px;font-weight:600;letter-spacing:2.8px;padding:9px 16px}header{position:sticky;top:0;z-index:10;background:#100619f5;border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}.navwrap{width:94%;max-width:1600px;margin:auto;min-height:91px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:12px;align-items:center;flex-shrink:0;font-size:18px;font-weight:500;letter-spacing:1.2px;line-height:1.4}.brand small{display:block;font-size:13.5px;letter-spacing:4.6px;margin-top:5px}.seal{display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;width:45px;height:45px;font:32px Georgia;color:var(--soft)}nav{display:flex;align-items:center;gap:18px}nav a{font-size:16.5px;white-space:nowrap}nav a[aria-current]{color:var(--soft)}.navstart{border:1px solid var(--line);padding:9px 13px;color:var(--soft)}#menu-toggle{display:none;color:var(--soft);background:transparent;border:1px solid var(--line);padding:8px 13px}.eyebrow{text-transform:uppercase;color:var(--soft);font-size:15px;letter-spacing:2.8px;font-weight:600;margin-bottom:24px}.homehero{position:relative;min-height:680px;display:flex;align-items:center;isolation:isolate;overflow:hidden}.heroimage{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,#0d0117 0%,#0d0117e8 23%,#0d011794 46%,#0d011700 70%),url('/assets/leaders.png');background-size:cover;background-position:center}.herocopy{padding:85px 0 115px}.herocopy h1{font-size:clamp(42px,4.05vw,65px);max-width:760px;line-height:1.12}.herocopy>p:not(.eyebrow){max-width:520px;color:#e4dae5;font-size:22.5px}.herocopy .eyebrow{max-width:460px;line-height:2}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:33px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;background:var(--soft);color:var(--ink);padding:14px 22px;font-size:16.5px;font-weight:600;letter-spacing:.25px;margin:12px 12px 0 0;border:1px solid var(--soft);transition:background .2s,transform .2s}.button:hover{background:#f3d488;color:var(--ink);transform:translateY(-2px)}.button.outline{background:transparent;color:var(--ivory);border-color:#e1be636e}.button.outline:hover{background:#e1be6315}.herocaption{position:absolute;bottom:32px;right:6%;font-size:15px;letter-spacing:.4px;color:#f1e4d0}.declaration{display:flex;justify-content:center;gap:38px;flex-wrap:wrap;border-block:1px solid var(--line);padding:23px 15px;font-size:15px;letter-spacing:3px;color:var(--soft);text-align:center}.declaration span{color:var(--ivory)}.section{padding:100px 0;border-bottom:1px solid #e1be6315}.section:nth-of-type(2n+3){background:#170b21}.section .intro{color:var(--muted);font-size:24px;margin-bottom:40px}.section.light{background:var(--ivory);color:#291636}.light .eyebrow{color:#795b0c}.light .intro,.light .card p{color:#63576b}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:42px}.card{padding:30px 0;border-top:1px solid var(--line)}.light .card{border-color:#a386444b}.number{display:block;font-size:15px;letter-spacing:2px;color:var(--soft);margin-bottom:22px}.light .number{color:#80631d}.card p{font-size:21px;color:var(--muted)}.textlink{display:inline-block;color:var(--soft);font-size:18px;border-bottom:1px solid var(--line);padding:8px 0;margin-top:9px}.light .textlink{color:#654d11;border-color:#b48e3555}.leadership{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center}.leadership img{width:100%;border:1px solid var(--line)}.leadership p{color:var(--muted)}.leadership .eyebrow{color:var(--soft)}.pagehero{padding:92px 0 80px;background:radial-gradient(ellipse at 90% 0,#4a275380,transparent 65%),#160921;border-bottom:1px solid var(--line)}.pagehero h1{max-width:1000px}.intro{font-size:25.5px;color:var(--muted);max-width:790px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:50px}.columns p{color:inherit}.fullportrait{width:100%;max-height:580px;object-fit:contain;background:#1b0928}.profiles h2{font-size:42px}.profiles p{color:var(--muted)}.beliefs{display:grid;grid-template-columns:1fr 1fr;gap:42px 60px}.beliefs article{border-top:1px solid #32144425;padding-top:28px}.beliefs h2{font-size:31px}.books{display:grid;grid-template-columns:repeat(3,1fr);gap:55px 40px}.books article img{width:100%;height:320px;object-fit:contain;object-position:left;background:#e6dfd5;padding:20px}.books .eyebrow{margin:20px 0 12px}.books h3{font-size:28px}.notice{border-left:3px solid #8b6b20;padding:25px 30px;background:#e6dece;margin:40px 0}.notice h3{font-size:27px}.notice p{margin:0}label{display:block;font-size:19.5px;font-weight:600;margin-bottom:10px}select{max-width:100%;width:640px;background:#fffdf8;border:1px solid #98889d;color:#291636;padding:16px;font-size:21px}#inquiry-description{font-size:19.5px;margin-top:15px}.closing{text-align:center;padding:88px 6%;background:radial-gradient(ellipse at bottom,#442052,#170922 75%)}.closing p{margin-inline:auto}.closing h2{font-size:clamp(36px,4.5vw,62px)}footer{background:#09020f;padding:65px 0 0}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footergrid h3{font-family:Inter,Arial;font-size:16.5px;letter-spacing:2px;color:var(--soft);text-transform:uppercase}.footergrid a:not(.brand){display:block;font-size:18px;color:var(--muted);margin-bottom:8px}.footergrid p{font-size:19.5px;color:var(--muted);margin-top:22px}.copyright{border-top:1px solid var(--line);margin-top:45px;padding:23px 0;font-size:15px;color:var(--muted)}.skip{position:fixed;top:-100px;background:var(--soft);color:var(--ink);padding:10px;z-index:30}.skip:focus{top:0}@media(min-width:1600px){.homehero{min-height:770px}}@media(max-width:1800px){#menu-toggle{display:block}nav{display:none;position:absolute;top:100%;left:0;right:0;background:#14071e;padding:25px 6%;max-height:80dvh;overflow:auto;border-bottom:1px solid var(--line)}nav.open{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}nav a{font-size:19.5px;padding:13px 0;border-bottom:1px solid #e1be6320}.navstart{margin-top:10px;padding-inline:12px}.navwrap{min-height:80px}.homehero{min-height:630px}.herocopy h1{max-width:620px}.grid{gap:22px}}@media(max-width:760px){.topline{font-size:10.5px;letter-spacing:1.3px}.navwrap{width:88%;min-height:75px}.brand{font-size:15px;gap:9px}.brand small{font-size:12px;letter-spacing:3px}.seal{width:36px;height:36px;font-size:26px}#menu-toggle{font-size:16.5px}.homehero{display:block;min-height:0;padding-top:54vw}.heroimage{height:56vw;background-image:linear-gradient(0deg,#0d0117 0%,transparent 40%),url('/assets/leaders.png');background-size:cover;background-position:center top}.herocopy{padding:20px 0 65px}.herocopy h1{font-size:clamp(36px,7.5vw,54px);letter-spacing:-.8px}.herocopy .eyebrow{font-size:12px;letter-spacing:1.6px}.herocopy>p:not(.eyebrow){font-size:21px}.herocaption{position:static;padding:0 6% 28px;font-size:13.5px}.actions{gap:8px}.button{padding:13px 17px;font-size:15px;gap:15px}.actions .button{margin:0}.declaration{gap:6px 15px;font-size:12px;letter-spacing:1.5px}.section{padding:65px 0}.grid,.beliefs,.columns,.leadership{grid-template-columns:1fr;gap:24px}.grid{margin-top:30px}.card{padding:24px 0 10px}.leadership{gap:36px}.pagehero{padding:65px 0 50px}.pagehero h1{font-size:44px;letter-spacing:-1px}.intro,.section .intro{font-size:22.5px}.books{grid-template-columns:1fr 1fr;gap:36px 20px}.books article img{height:240px;padding:12px}.books h3{font-size:25px}.footergrid{grid-template-columns:1fr 1fr;gap:30px}.footergrid>div:first-child{grid-column:1/-1}.copyright{line-height:1.7}.profiles h2{font-size:38px}h2{font-size:38px}}@media(max-width:370px){.brand{font-size:13.5px;letter-spacing:.7px}.seal{width:30px;height:30px}.navwrap{gap:10px}.books{grid-template-columns:1fr}.books article img{height:320px}.herocopy h1{font-size:34px}nav.open{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(min-width:761px){.heroimage{background-position:center top}}
/* KPM institutional identity: crowned lion, burgundy, black marble, and gold. */
:root{--ink:#100706;--plum:#49100f;--gold:#c9a227;--soft:#e1be63;--ivory:#f4ede3;--muted:#cfc0b7;--line:#d5af513d}
body{background:var(--ink)}header{background:#130907f5}.topline{background:#3b0d0d}.brandcrest{width:64px;height:64px;object-fit:contain}.navwrap{min-height:98px}.homehero{min-height:720px;background:#270808}.heroimage{background-image:linear-gradient(90deg,#140605f7 0%,#210707e0 33%,#25070780 65%,#16080730 100%),url('/assets/kpm-ministry-office.webp');background-position:center;background-size:cover}.herocopy{position:relative;padding-top:100px;padding-bottom:125px;z-index:1}.herocopy h1{font-size:clamp(42px,4.1vw,65px);max-width:780px}.herocopy>p:not(.eyebrow){max-width:570px}.herocopy .eyebrow{max-width:590px;color:#e7c969}.herocrest{position:absolute;right:5%;top:50%;transform:translateY(-50%);width:clamp(260px,28vw,430px);text-align:center;z-index:0}.herocrest img{width:100%;height:auto;filter:drop-shadow(0 12px 25px #0009)}.herocrest p{margin:12px 0 0;font-size:15px;line-height:2.3;letter-spacing:3px;color:#f1d78c;text-shadow:0 2px 4px #000}.herocrest span{font-size:12px;letter-spacing:4px}.herocaption{left:6%;right:auto;color:#d4b875;letter-spacing:1px;border-top:1px solid #d5af5155;padding-top:15px}.section:nth-of-type(2n+3){background:#1d0b09}.pagehero{background:linear-gradient(90deg,#170807f5,#3b0c0bdf),url('/assets/kpm-ministry-office.webp') center/cover}.closing{background:radial-gradient(ellipse at bottom,#641716,#1d0a08 75%)}footer{background:#0b0504}.leadership img{border:1px solid #d5af5160}.light .eyebrow{color:#77571c}.light .textlink{color:#6d4912}.light{--muted:#65574f}.section.light{color:#301b15}.light .intro,.light .card p{color:#65574f}.fullportrait{background:#1d0a08}nav{background-color:transparent}.footergrid .brandcrest{width:80px;height:80px}
@media(min-width:1100px) and (max-width:1400px){.herocopy h1{font-size:55px;max-width:680px}.herocrest{right:3%;width:29vw}.herocopy>p:not(.eyebrow){max-width:510px}}
@media(min-width:761px) and (max-width:1099px){.herocrest{width:28vw;right:3%}.herocopy h1{font-size:44px;max-width:65%}.herocopy>p:not(.eyebrow){max-width:58%}.herocopy .eyebrow{max-width:60%}.homehero{min-height:680px}}
@media(max-width:1800px){nav{background:#1a0907}.navwrap{min-height:86px}}
@media(max-width:760px){.brandcrest{width:49px;height:49px}.navwrap{min-height:79px}.homehero{padding-top:0;display:flex;flex-direction:column;min-height:0}.heroimage{height:100%;background-image:linear-gradient(0deg,#130706f5,#290908a8 70%,#1d070780),url('/assets/kpm-ministry-office.webp');background-position:65% top}.herocrest{position:relative;right:auto;top:auto;transform:none;width:min(58%,270px);margin:35px auto 15px;order:0}.herocrest p{font-size:12px;letter-spacing:2px;margin-top:4px}.herocrest span{font-size:10.5px;letter-spacing:2px}.herocopy{order:1;padding:20px 0 45px;text-align:center}.herocopy h1{font-size:clamp(34px,7.5vw,53px);max-width:none}.herocopy>p:not(.eyebrow),.herocopy .eyebrow{max-width:none;margin-inline:auto}.herocopy .eyebrow{font-size:12px}.actions{justify-content:center}.herocaption{order:2;position:relative;left:auto;right:auto;width:88%;text-align:center;font-size:12px;padding:15px 0 25px}.footergrid .brandcrest{width:65px;height:65px}}
/* High-contrast typography on the burgundy content sections. */
.section.light{background:#24100e;color:#fff7ed;--muted:#eaded3}
.section.light h2,.section.light h3{color:#fff7ed}
.section.light .intro,.section.light p,.section.light .card p{color:#eaded3}
.section.light .eyebrow,.section.light .number,.section.light .textlink{color:#f0cf7b}
.section.light .card,.section.light .textlink,.section.light .beliefs article{border-color:#e1be6366}
.section.light .textlink:hover{color:#ffe7aa}
.section.light .notice{background:#3b1c14;border-left-color:#f0cf7b}
.section.light label{color:#fff7ed}
.section .intro,.card p,.leadership p,.profiles p{color:#e4d7cb}
.courseart{width:100%;aspect-ratio:16/10;object-fit:contain;background:#150a07;border:1px solid var(--line);margin-bottom:25px}
/* Supplied program imagery stays uncropped and readable at every width. */
.cardart{display:block;width:100%;height:215px;object-fit:contain;background:#140907;border:1px solid var(--line);margin-bottom:25px}
.suppliedvisual{margin:38px auto;max-width:1100px}.suppliedvisual img{display:block;width:100%;height:auto;object-fit:contain;border:1px solid var(--line)}
.suppliedvisual:has(img[src*="emblem"]) {max-width:430px}
.fullportrait{display:block;max-width:820px;max-height:none;height:auto;margin-inline:auto;object-fit:contain}
.leadership img{object-fit:contain;height:auto}
@media(max-width:760px){.cardart{height:auto;max-height:320px}.suppliedvisual{margin:28px auto}}

/* Layout space for the requested 150% reading size. */
body{overflow-wrap:break-word}.grid>*{min-width:0}.button{white-space:normal}.herocopy>p:not(.eyebrow){line-height:1.65}.card p,.intro{line-height:1.7}
.navwrap .brand{flex-shrink:1;min-width:0}.brandcrest{flex-shrink:0}#menu-toggle{flex-shrink:0}
@media(max-width:760px){.navwrap{min-height:94px;gap:12px}.navwrap .brand{letter-spacing:.5px}.navwrap .brandcrest{width:38px;height:38px}.navwrap .brand>span{min-width:0;overflow-wrap:normal}.navwrap .brand small{letter-spacing:2px}nav.open{grid-template-columns:1fr}.herocopy{padding-bottom:45px}.herocaption{bottom:auto}.button{max-width:100%}.actions{flex-direction:column;align-items:stretch}.actions .button{justify-content:center}.footergrid{column-gap:20px}.herocrest p{line-height:1.8}}
.learning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.learning-grid{grid-template-columns:1fr}}
.prayer-cta{background:linear-gradient(120deg,#400e0b,#140806);border-block:1px solid #e1be6360}
.prayer-cta-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center}.prayer-cta-art{display:block}.prayer-cta-art img{display:block;width:100%;height:auto;border:1px solid #e1be6370}.prayer-cta-copy .intro{font-size:24px;margin-bottom:25px}.prayer-schedule{color:#f0cf7b;font-weight:600;font-size:20px}.prayer-cta .actions{gap:8px}.prayer-cta .button{margin-right:0;padding-inline:18px;gap:12px}
@media(max-width:1100px){.prayer-cta-layout{grid-template-columns:1fr;gap:40px}.prayer-cta-art{max-width:850px}.prayer-cta-copy{max-width:850px}}
.giving-embed{max-width:800px;margin:35px auto 0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#0e021c}.giving-embed iframe{display:block;width:100%;height:1520px;border:0}.embed-help{font-size:18px;line-height:1.6}.modal-open{overflow:hidden}#inquiry-dialog{width:min(900px,94vw);max-height:94dvh;padding:24px;border:1px solid var(--gold);border-radius:16px;background:#351019;color:#f4ede3}#inquiry-dialog::backdrop{background:rgba(0,0,0,.8)}.dialog-heading{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:16px}.dialog-heading h2{font-size:30px;margin:0}.dialog-heading button{background:#c5a36a;color:#231010;border:0;border-radius:6px;padding:12px;cursor:pointer;font:inherit;font-size:18px;white-space:nowrap}#inquiry-frame{display:block;width:100%;height:68dvh;border:0;background:#351019}.button{cursor:pointer}button.button{font-family:inherit}a:focus-visible,button:focus-visible{outline:3px solid #ebd390;outline-offset:4px}@media(max-width:600px){#inquiry-dialog{padding:14px}.dialog-heading h2{font-size:23px}.giving-embed iframe{height:1640px}.embed-help{font-size:18px}}

/* Hero crest: 40% larger, with the right inset reduced by 30%. */
@media(min-width:1401px){.herocrest{right:3.5%;width:clamp(364px,39.2vw,602px)}}
@media(min-width:1100px) and (max-width:1400px){.herocrest{right:2.1%;width:40.6vw}}
@media(min-width:761px) and (max-width:1099px){.herocrest{right:2.1%;width:39.2vw}}
@media(max-width:760px){.herocrest{width:min(81.2%,378px);left:2.61%;right:auto}}
/* Keep both tagline lines centered directly beneath the hero logo. */
.herocrest{display:flex;flex-direction:column;align-items:center}.herocrest img{display:block;flex:none}.herocrest p{width:100%;max-width:none;margin:-5% 0 0;padding:0;text-align:center;align-self:center}.herocrest span{display:inline-block;text-align:center}
/* Header navigation: visible bar on desktop/tablet, in-flow mobile menu. */
header{z-index:20;isolation:isolate;background:#130907}
header .navwrap{width:94%;max-width:1600px;display:flex;flex-wrap:wrap;gap:0 24px;align-items:center;padding:12px 0;min-height:98px}
header .brand{flex-shrink:0}header #menu-toggle{display:none}
header #main-nav{display:flex;position:static;align-items:center;justify-content:center;gap:6px;flex-wrap:nowrap;width:100%;padding:8px 0 0;margin:10px 0 0;max-height:none;overflow:visible;background:transparent;border:0;border-top:1px solid var(--line)}
header #main-nav a,header .nav-disclosure{font:500 16px/1.4 Inter,Arial,sans-serif;letter-spacing:0;white-space:nowrap;padding:12px 13px;border:0;color:var(--ivory);background:transparent;text-align:left;cursor:pointer}
header #main-nav a:hover,header .nav-disclosure:hover,header #main-nav a[aria-current],header .nav-disclosure[aria-expanded=true]{color:var(--soft);background:#e1be6310}
header #main-nav .navstart{border:1px solid var(--line);margin:0 0 0 6px;color:var(--soft)}
.navgroup{position:relative}.nav-disclosure{display:flex;align-items:center;gap:7px}.nav-disclosure span{font-size:17px}.nav-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:240px;padding:8px;background:#1a0907;border:1px solid var(--line);box-shadow:0 15px 35px #0008;z-index:30}.nav-dropdown[hidden]{display:none}header #main-nav .nav-dropdown a{display:block;padding:12px 14px;white-space:normal}
@media(min-width:1450px){header .navwrap{flex-wrap:nowrap}header #main-nav{width:auto;margin:0;padding:0;border:0;flex:1;justify-content:flex-end}}
@media(min-width:761px) and (max-width:950px){header #main-nav{gap:0;justify-content:space-between}header #main-nav>a,header .nav-disclosure{padding:12px 8px;font-size:14px}}
@media(max-width:760px){header .navwrap{width:88%;gap:0 12px;min-height:86px;padding:12px 0}header .brand{flex:1;min-width:0;flex-shrink:1}header #menu-toggle{display:block;font-size:15px;padding:9px 12px;line-height:1.4}header #main-nav{display:none;width:100%;margin-top:12px;padding-top:8px;max-height:65dvh;overflow:auto}header #main-nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}header #main-nav>a,header .nav-disclosure{display:flex;width:100%;justify-content:space-between;font-size:16px;padding:13px 8px;border-bottom:1px solid #e1be6320}header #main-nav .navstart{margin:10px 0 0;justify-content:center}.nav-dropdown{position:static;min-width:0;margin:0 0 8px;padding:4px 8px;box-shadow:none;border:0;border-left:2px solid var(--gold);background:#260e09}header #main-nav .nav-dropdown a{padding:12px 14px;font-size:15px}}

/* Crest and navigation share one header row. */
@media(min-width:761px){header .navwrap{flex-wrap:nowrap;gap:20px;min-height:90px}header .brand{flex:0 0 auto}header #main-nav{width:auto;flex:1;justify-content:flex-end;border:0;padding:0;margin:0}header .brandcrest{width:64px;height:64px}}
@media(min-width:761px) and (max-width:950px){header .navwrap{gap:10px}header .brandcrest{width:52px;height:52px}header #main-nav>a,header .nav-disclosure{font-size:14px;padding-inline:7px}}
