:root{--paper:#F4EDDF;--ink:#111;--orange:#ED6C14;--blue:#5676DB;--yellow:#EAB51F;--green:#777F28;--m:56px}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--paper);scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:Jost,Arial,sans-serif;font-size:19px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.lb{font-family:Jost,Arial,sans-serif;font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.big{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.02em;line-height:.95;font-variation-settings:"SOFT" 50}
.btn{display:inline-block;background:var(--ink);color:var(--paper);font-family:Jost,Arial,sans-serif;font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;padding:17px 28px;border:0;cursor:pointer}
.link{font-family:Jost,Arial,sans-serif;font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;border-bottom:2px solid var(--ink);padding-bottom:4px}
.s{position:absolute;mix-blend-mode:multiply;pointer-events:none}
.wrap{max-width:1440px;margin:0 auto;padding:0 var(--m)}
header{position:relative;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:30px var(--m);max-width:1440px;margin:0 auto}
header .brand{display:inline-flex;flex-direction:column;align-items:center;text-align:center;gap:5px}header .brand>span{display:block}header .name{margin-right:-.2em}header .tag{margin-right:-.14em}header .name{font-family:Jost,Arial,sans-serif;font-weight:700;font-size:14px;letter-spacing:.2em;line-height:1}header .tag{font-family:Jost,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);line-height:1}.menu-btn{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px}.menu-btn i{display:block;width:26px;height:2.5px;background:var(--ink);transition:.2s}
header nav{display:flex;gap:30px}
/* hero */
.hero{position:relative;max-width:1440px;margin:0 auto;height:900px;overflow:hidden}
.hero .art{position:absolute;right:0;top:0;width:58%;height:100%}
.hero .c1{width:62%;aspect-ratio:1;border-radius:50%;background:var(--orange);left:10%;top:4%}
.hero .c2{width:50%;height:78%;border-radius:999px 999px 0 0;background:var(--blue);right:-4%;bottom:0}
.hero .c3{width:30%;aspect-ratio:1;background:var(--yellow);left:4%;bottom:0;border-radius:0 0 0 100%}
.hero .c4{width:12%;aspect-ratio:1;background:var(--green);right:6%;top:6%}
.hero h1{position:relative;z-index:3;padding:80px var(--m) 0;font-size:clamp(56px,7.4vw,106px)}
.hero .txt{position:absolute;z-index:3;left:var(--m);bottom:56px;max-width:470px}
.hero .txt p{font-size:19px;margin-bottom:24px}
/* sections */
section.sec{position:relative;padding:130px 0;overflow-x:clip}
.eyebrow{margin-bottom:20px}
.eyebrow i{display:inline-block;width:10px;height:10px;margin-right:10px;vertical-align:0}
/* about */
.about .wrap{display:grid;grid-template-columns:5fr 7fr;gap:70px;align-items:center}
.about .pic{position:relative;height:640px}
.about .pic img{position:absolute;z-index:2;left:12%;top:60px;width:68%;aspect-ratio:4/5;object-fit:cover}
.about .pic .a1{width:46%;height:70%;border-radius:999px 999px 0 0;background:var(--blue);right:0;top:0;z-index:1}
.about .pic .a2{width:34%;aspect-ratio:1;border-radius:50%;background:var(--orange);left:0;top:0;z-index:1}
.about .pic .a3{width:22%;aspect-ratio:1;background:var(--green);left:4%;bottom:10%;z-index:1}
.about h2{font-size:clamp(48px,6vw,84px);margin-bottom:28px}
.about p{margin-bottom:18px;max-width:36em;font-size:17px}
.about .link{display:inline-block;margin-top:16px}
/* help */
.help h2{font-size:clamp(48px,6vw,84px);margin-bottom:60px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.card{border-top:2px solid var(--ink);padding-top:28px}
.card .ic{height:90px;position:relative;margin-bottom:24px}
.card .ic i{position:absolute;left:0;top:0;width:90px;height:90px}
.card h3{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:34px;letter-spacing:-.01em;margin-bottom:10px}
.card p{margin-bottom:20px}
/* verse */
.verse{text-align:center;overflow:hidden}
.verse .v1{width:300px;height:300px;border-radius:50%;background:var(--orange);right:-120px;top:40px}
.verse blockquote{position:relative;z-index:2;font-family:Fraunces,Georgia,serif;font-size:clamp(34px,4vw,54px);line-height:1.15;max-width:15em;margin:0 auto 24px}
.verse .lb{position:relative;z-index:2}
/* policy */
.policy .wrap{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.cover{position:relative;aspect-ratio:8.5/11;max-width:420px;width:100%;margin:0 auto;background:#FBF7EE;overflow:hidden;box-shadow:0 30px 60px -36px rgba(0,0,0,.5)}
.cover .p1{width:80%;aspect-ratio:1;border-radius:50%;background:var(--yellow);right:-22%;top:-12%}
.cover .p2{width:46%;height:54%;border-radius:999px 999px 0 0;background:var(--blue);left:8%;bottom:0}
.cover .t{position:absolute;z-index:2;left:28px;right:28px;top:30px;font-family:Fraunces,Georgia,serif;font-weight:600;font-size:46px;line-height:.95;letter-spacing:-.02em}.cover .sub{position:absolute;z-index:2;left:28px;top:160px}
.cover .by{position:absolute;z-index:2;right:28px;bottom:26px}
.policy h2{font-size:clamp(44px,5vw,72px);margin-bottom:24px}
.policy p{margin-bottom:28px;max-width:28em}
/* newsletter */
.news{background:var(--green);color:var(--paper);overflow:hidden}
.news .n1{width:420px;aspect-ratio:1;border-radius:50%;background:var(--yellow);right:-120px;top:-140px;mix-blend-mode:normal;opacity:1}
.news .wrap{position:relative;z-index:2}
.news h2{font-size:clamp(48px,6vw,84px);margin-bottom:22px}
.news p{max-width:30em;margin-bottom:34px}
.news form{display:flex;gap:14px;max-width:620px;flex-wrap:wrap}
.news input{flex:1 1 280px;min-width:0;background:transparent;border:0;border-bottom:2px solid var(--paper);color:var(--paper);font:inherit;font-size:20px;padding:12px 0;outline:0}
.news input::placeholder{color:rgba(244,237,223,.75)}
.news .btn{background:var(--paper);color:var(--ink)}
.news .status{flex-basis:100%;font-size:16px}
footer .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;padding-top:40px;padding-bottom:50px}
footer nav{display:flex;gap:26px;flex-wrap:wrap}
@media(max-width:900px){
:root{--m:20px}
header{padding:18px var(--m);position:relative}
.menu-btn{display:flex}
header nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);flex-direction:column;gap:0;padding:6px var(--m) 18px;border-bottom:2px solid var(--ink);z-index:20}
header nav a{padding:14px 0;border-bottom:1px solid rgba(0,0,0,.12);font-size:14px}
header nav a[aria-current]{border-bottom:1px solid rgba(0,0,0,.12)!important;padding-bottom:14px!important;color:var(--orange)}
.nav-open header nav{display:flex}
.nav-open .menu-btn i:nth-child(1){transform:translateY(8.5px) rotate(45deg)}.nav-open .menu-btn i:nth-child(2){opacity:0}.nav-open .menu-btn i:nth-child(3){transform:translateY(-8.5px) rotate(-45deg)}
.hero{height:auto;min-height:0;padding-bottom:0;display:flex;flex-direction:column}
.hero h1{order:1;padding-top:36px;font-size:15vw}
.hero .txt{order:2;position:relative;left:auto;bottom:auto;padding:24px var(--m) 0;max-width:none}
.hero .art{order:3;position:relative;width:100%;height:300px;margin-top:40px}
section.sec{padding:80px 0}
.about .wrap,.policy .wrap{grid-template-columns:1fr;gap:40px}
.about .pic{height:480px}
.cards{grid-template-columns:1fr}
.verse .v1{width:150px;height:150px;left:auto;right:-50px;top:-75px}
.news .n1{width:260px;right:-100px;top:-100px}
}
/* multi-page additions */
header nav a[aria-current]{border-bottom:2px solid var(--ink);padding-bottom:3px}
.phero{position:relative;max-width:1440px;margin:0 auto;padding:110px var(--m) 90px;min-height:520px;overflow:hidden}
.phero .s{z-index:0}
.phero h1{position:relative;z-index:2;font-size:clamp(52px,7vw,104px);max-width:9em}
.phero p{position:relative;z-index:2;max-width:32em;margin-top:28px;font-size:21px}
.phero .eyebrow{position:relative;z-index:2}
.ph1{width:340px;aspect-ratio:1;border-radius:50%;background:var(--orange);right:180px;top:40px}
.ph2{width:240px;height:380px;border-radius:999px 999px 0 0;background:var(--blue);right:var(--m);bottom:0}
.ph3{width:180px;aspect-ratio:1;background:var(--yellow);right:300px;bottom:0;border-radius:0 0 0 180px}
.ph4{width:110px;aspect-ratio:1;background:var(--green);right:420px;top:70px}
.teaser .wrap{display:grid;grid-template-columns:5fr 7fr;gap:70px;align-items:center}
.teaser h2{font-size:clamp(44px,5vw,72px);margin-bottom:24px}
.teaser p{max-width:32em;margin-bottom:24px}
.rows{border-top:2px solid var(--ink)}
.rows>div{display:grid;grid-template-columns:120px 1.1fr 1fr;gap:30px;padding:26px 0;border-bottom:1px solid rgba(0,0,0,.2);align-items:baseline}
.rows h3{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:28px;line-height:1.1}
.rows .k{display:flex;align-items:center;gap:10px}
.rows .k i{width:12px;height:12px;display:inline-block;flex:none}
.rows p{font-size:17px}
.sec h2.big.mb{font-size:clamp(44px,5vw,72px);margin-bottom:50px}
.focus{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.focus>div{border-top:2px solid var(--ink);padding-top:22px}
.focus h3{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:28px;margin:10px 0 8px}
.focus p{font-size:17px}
.cta-band{background:var(--orange);overflow:hidden}
.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;position:relative;z-index:2}
.cta-band h2{font-size:clamp(40px,5vw,72px)}
.contact .wrap{display:grid;grid-template-columns:4fr 7fr;gap:80px}
.info>div{border-top:2px solid var(--ink);padding:16px 0 22px}
.info .lb{margin-bottom:6px}
.form{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.form label{display:flex;flex-direction:column;gap:8px}
.form .wide{grid-column:1/-1}
.form input,.form select,.form textarea{font:inherit;font-size:18px;border:0;border-bottom:2px solid var(--ink);background:transparent;padding:10px 0;outline:0;border-radius:0;color:var(--ink)}
.form textarea{min-height:130px;border:2px solid var(--ink);padding:12px}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips label{flex-direction:row;align-items:center;gap:8px;border:2px solid var(--ink);border-radius:99px;padding:7px 16px;font-size:16px;cursor:pointer}
.chips input{accent-color:var(--orange)}
.status{font-size:16px}
@media(max-width:900px){
.phero{padding:60px var(--m) 220px}
.ph1{width:200px;right:auto;left:var(--m);top:auto;bottom:20px}.ph2{width:140px;height:220px}.ph3{width:110px;right:170px}.ph4{width:70px;right:30px;top:auto;bottom:240px}
.teaser .wrap,.contact .wrap{grid-template-columns:1fr;gap:40px}
.rows>div{grid-template-columns:1fr;gap:8px}
.focus{grid-template-columns:1fr 1fr}
.form{grid-template-columns:1fr}
}

.about.first{padding-top:80px}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.post{display:block;border-top:2px solid var(--ink);padding-top:26px;position:relative}
.post .s{position:relative;display:block;width:64px;height:64px;margin-bottom:22px;mix-blend-mode:multiply}
.post h3{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:30px;line-height:1.1;margin:10px 0}
.post p{font-size:17px;margin-bottom:18px}
.rows.dl>div{grid-template-columns:120px 1.1fr 1fr auto}
.btn.sm{padding:12px 20px;font-size:11px;white-space:nowrap}
.cta-band h2{max-width:14em}
@media(max-width:900px){
.hero{position:relative}
.hero .art{position:absolute!important;order:0;right:0;top:0;width:190px;height:330px;margin:0!important;z-index:0;overflow:hidden}
.hero .c1{width:150px!important;aspect-ratio:1;left:10px!important;top:24px!important;right:auto!important}
.hero .c2{width:96px!important;height:190px!important;right:-14px!important;left:auto!important;top:110px!important;bottom:auto!important}
.hero .c3{width:84px!important;left:22px!important;top:178px!important;bottom:auto!important}
.hero .c4{width:40px!important;right:22px!important;top:30px!important;left:auto!important}
.hero h1,.hero .txt{position:relative;z-index:2}
.about .pic{height:auto;padding:24px 0 0}
.about .pic img{position:relative;left:auto;top:auto;width:100%;max-width:420px;display:block}
.about .pic .a1{display:none}
.about .pic .a2{width:90px;left:-14px;top:0}
.about .pic .a3{width:80px;left:auto;right:-10px;bottom:-24px}
.focus{grid-template-columns:1fr}
.focus h3{font-size:26px}
.posts{grid-template-columns:1fr}
.rows.dl>div{grid-template-columns:1fr}
.rows.dl .btn{justify-self:start}
.about.first{padding-top:30px}
}
/* article */
.essay{max-width:1440px;margin:0 auto}
.ehead{position:relative;overflow:hidden;padding:90px var(--m) 70px;border-bottom:2px solid var(--ink);margin:0 var(--m);padding-left:0;padding-right:0}
.ehead .eh1{width:300px;aspect-ratio:1;border-radius:50%;background:var(--orange);right:120px;top:40px}
.ehead .eh2{width:200px;height:300px;border-radius:999px 999px 0 0;background:var(--blue);right:0;bottom:0}
.ehead h1{position:relative;z-index:2;font-size:clamp(40px,5.4vw,76px);max-width:11em}
.ehead .eyebrow{position:relative;z-index:2}
.dek{position:relative;z-index:2;font-size:22px;max-width:28em;margin:24px 0 20px}
.byline{position:relative;z-index:2}
.ebody{max-width:720px;margin:0 auto;padding:70px var(--m) 110px}
.ebody p{margin-bottom:20px;font-size:19px;line-height:1.65}
.ebody h2{font-family:Jost,Arial,sans-serif;font-weight:700;font-size:13px;letter-spacing:.18em;text-transform:uppercase;margin:80px 0 14px;display:flex;align-items:center;gap:12px}
.ebody h2:first-child{margin-top:0}
.ebody h2 .num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--orange);color:var(--ink);font-size:12px;letter-spacing:0}
.ebody h3{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:clamp(30px,3.6vw,42px);line-height:1.08;margin-bottom:26px}
.ebody h4{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:25px;line-height:1.2;margin:38px 0 12px}
.ebody blockquote{border-left:4px solid var(--blue);padding:4px 0 4px 20px;margin:0 0 16px;font-style:italic;font-size:19px}
.ebody cite{display:block;font-style:normal;font-family:Jost,Arial,sans-serif;font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin-top:8px}
.box{background:#FBF7EE;border-top:4px solid var(--yellow);padding:28px 30px;margin:40px 0}
.box .lb{margin-bottom:16px}
.box dt{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:21px;margin-top:18px}
.box dd{font-size:17px;margin:6px 0 0}
.pull{position:relative;margin:60px 0;padding:40px 0;text-align:center}
.pull .s{width:180px;height:180px;border-radius:50%;background:var(--yellow);left:50%;top:50%;transform:translate(-50%,-50%);z-index:0}
.pull p{position:relative;z-index:1;font-family:Fraunces,Georgia,serif;font-weight:600;font-size:clamp(26px,3vw,34px)!important;line-height:1.25!important}
.pull .lb{position:relative;z-index:1}
.practices{list-style:none;counter-reset:p;padding:0}
.practices li{counter-increment:p;position:relative;padding:26px 0 8px 64px;border-top:2px solid var(--ink)}
.practices li:before{content:counter(p,decimal-leading-zero);position:absolute;left:0;top:30px;font-family:Jost,Arial,sans-serif;font-weight:700;font-size:13px;letter-spacing:.14em}
.practices h4{margin-top:0}
.tip{font-size:17px!important;background:#FBF7EE;padding:14px 18px;border-left:4px solid var(--green)}
.tip .lb{display:block;margin-bottom:4px}
ol.simple{padding-left:24px;margin-bottom:20px}
ol.simple li{margin-bottom:14px;font-size:18px;padding-left:6px}
.prayer{background:var(--blue);color:#fff;padding:34px 32px;margin:50px 0 30px}
.prayer .lb{margin-bottom:12px}
.prayer p{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:22px!important;line-height:1.45!important;margin:0!important}
.note{font-size:14px!important;color:#5f5a4f}
@media(max-width:900px){
.ehead{padding:40px 0 40px}
.ehead .eh1{width:110px;right:96px;top:auto;bottom:16px}
.ehead .eh2{width:80px;height:120px}
.dek{font-size:19px}
.ebody{padding:40px var(--m) 70px}
.practices li{padding-left:44px}
.box{padding:22px 20px}
}

.cover.img{background:none;box-shadow:0 30px 60px -30px rgba(0,0,0,.45);display:block}
.cover.img img{display:block;width:100%;height:auto}
.dlgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
.dlitem img{display:block;width:100%;max-width:300px;box-shadow:0 24px 50px -30px rgba(0,0,0,.45);margin-bottom:24px}
.dlitem h3{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:28px;line-height:1.12;margin:8px 0 10px}
.dlitem p{font-size:17px;margin-bottom:20px;max-width:30em}
@media(max-width:900px){.dlgrid{grid-template-columns:1fr;gap:48px}.dlitem img{max-width:240px}}

/* page hero cluster */
.phero .pa{position:absolute;right:var(--m);top:40px;width:420px;height:440px;z-index:0}
.phero .pa .s{right:auto;left:auto;top:auto;bottom:auto}
.phero .pa .ph1{width:280px;height:280px;border-radius:50%;background:var(--orange);left:0;top:20px}
.phero .pa .ph2{width:190px;height:330px;border-radius:999px 999px 0 0;background:var(--blue);right:0;top:110px}
.phero .pa .ph3{width:150px;height:150px;border-radius:0 0 0 150px;background:var(--yellow);left:70px;top:290px}
.phero .pa .ph4{width:80px;height:80px;background:var(--green);right:30px;top:10px}
.phero h1,.phero p,.phero .eyebrow{max-width:min(9.5em,60%)}
.phero p{max-width:min(32em,55%)}
@media(max-width:900px){
.phero{padding:40px var(--m) 50px;min-height:0}
.phero .pa{right:0;top:0;width:160px;height:215px;overflow:hidden}
.phero .pa .ph1{width:112px;height:112px;left:8px;top:26px}
.phero .pa .ph2{width:74px;height:125px;right:-10px;top:90px}
.phero .pa .ph3{width:60px;height:60px;border-radius:0 0 0 60px;left:22px;top:126px}
.phero .pa .ph4{width:32px;height:32px;right:16px;top:28px}
.phero h1{max-width:none;padding-top:40px}
.phero p{max-width:none}
.phero .eyebrow{max-width:none}
}

/* email gate */
.gate{position:fixed;inset:0;z-index:100;background:rgba(17,17,17,.55);display:flex;align-items:center;justify-content:center;padding:20px}
.gate[hidden]{display:none}
.gate-box{position:relative;background:var(--paper);max-width:520px;width:100%;padding:44px 40px 34px;border-top:6px solid var(--blue);max-height:calc(100vh - 40px);overflow:auto}
.gate-x{position:absolute;right:14px;top:10px;background:none;border:0;font-size:30px;line-height:1;cursor:pointer;color:var(--ink);padding:6px}
.gate h2{font-size:clamp(32px,4vw,44px);margin-bottom:14px}
.gate p{font-size:17px;margin-bottom:22px}
.gate form{display:flex;flex-direction:column;gap:14px}
.gate input[type=email]{font:inherit;font-size:19px;border:0;border-bottom:2px solid var(--ink);background:transparent;padding:10px 0;outline:0;border-radius:0;color:var(--ink)}
.fine{font-size:13px!important;line-height:1.5;color:#5f5a4f;margin:4px 0 0!important}
.news .fine{color:rgba(244,237,223,.85);flex-basis:100%;max-width:40em}
