@charset "UTF-8";
@font-face{font-family:'Lyfe Serif';src:url('assets/fonts/serif-regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Lyfe Serif';src:url('assets/fonts/serif-italic.woff') format('woff');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Lyfe Sans';src:url('assets/fonts/sans-regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Lyfe Sans';src:url('assets/fonts/sans-bold.woff') format('woff');font-weight:700;font-style:normal;font-display:swap}
:root{--pink:#ff0054;--raspberry:#982f52;--gold:#aa8749;--cream:#fffaf8;--ink:#382e31;--muted:#63565d;--line:#e8d9d4;--serif:'Lyfe Serif',Georgia,serif;--sans:'Lyfe Sans','Avenir Next',Avenir,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:50px}
body{position:relative;isolation:isolate;margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2,h3,.calling-quote{font-family:var(--serif)}em{font-weight:400}
::selection{background:#f4d5e0;color:var(--ink)}
:focus-visible{outline:2px solid var(--raspberry);outline-offset:6px}
.wrap{width:min(1220px,calc(100% - 120px));margin-inline:auto}
.section-space{padding-block:116px}
.eyebrow{font-size:.75rem;letter-spacing:.18em;font-weight:500;line-height:1.75;display:flex;align-items:center;gap:16px;color:#78636c}
.gold-rule{display:inline-block;width:43px;height:1px;background:var(--gold);flex:none}
.skip-link{position:fixed;top:-100px;left:20px;padding:12px 20px;background:var(--ink);color:white;z-index:100}.skip-link:focus{top:12px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.opening-art{position:absolute;z-index:-1;top:0;left:0;width:100%;height:1090px;background:url('assets/silk-painting.webp') center 37%/cover no-repeat;opacity:.76;mask-image:linear-gradient(#000 0%,#000 66%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 66%,transparent 100%);pointer-events:none}
.site-header{position:relative;z-index:30;background:transparent}
.header-inner{display:flex;justify-content:space-between;align-items:center;min-height:148px;gap:30px}
.brand-logo{display:block;flex:none;width:194px;line-height:0}
.brand-logo>img{width:100%;height:133px;object-fit:contain}
.main-navigation{display:flex;align-items:center;gap:34px;font-size:.875rem}
.main-navigation>a:not(.nav-contact){padding-block:14px;position:relative}
.main-navigation>a:not(.nav-contact)::after{position:absolute;content:'';height:1px;bottom:6px;left:0;right:100%;background:var(--raspberry);transition:right .3s}
.main-navigation>a:hover::after{right:0}
.nav-contact{padding:10px 25px;border:1px solid #a784725c;border-radius:50px;transition:background .3s,border-color .3s}
.nav-contact:hover{background:#fffaf8b3;border-color:var(--gold)}
.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:1.22fr 1fr;gap:70px;align-items:center;padding-top:50px;padding-bottom:86px;min-height:640px}
.hero-copy{padding-block:10px}
.hero h1{font-size:clamp(3.6rem,6.4vw,5.75rem);letter-spacing:-.035em;line-height:1.1;margin-top:29px}
.hero h1 em{color:var(--raspberry)}
.hero-intro{font-size:1.0625rem;color:#65545d;line-height:1.95;margin-top:30px;max-width:470px}
.hero-actions{display:flex;align-items:center;gap:31px;margin-top:35px;flex-wrap:wrap}
.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;text-align:center;font-size:.875rem;letter-spacing:.025em;padding:14px 28px;font-weight:500;line-height:1.6;border-radius:60px;transition:background .3s,box-shadow .3s,color .3s}
.button-pink{background:#f8dbe3d9;border:1px solid #d877974d;color:#7e2644;box-shadow:0 3px 15px #a95a7210}
.button-pink:hover{background:#f3c3d3;box-shadow:0 5px 22px #a95a7217;color:#692139}
.text-link{font-size:.875rem;display:inline-block;border-bottom:1px solid #b593a0;padding-block:4px;transition:color .3s,border-color .3s}
.text-link:hover{color:var(--raspberry);border-color:var(--raspberry)}
.hero-note{display:flex;align-items:center;gap:15px;margin-top:40px;color:var(--muted)}
.hero-note p{font-size:.875rem;line-height:1.65}
.note-line{width:1px;height:41px;background:#b59b6a}
.hero-visual{position:relative;z-index:0;padding:0 8px 0 14px;max-width:470px;justify-self:end;width:100%}
.hero-photo-frame{position:relative;aspect-ratio:4/4.95;border-radius:49% 49% 46% 46%;max-height:550px;box-shadow:0 20px 80px #8b536920}
.hero-photo-frame::before{content:'';position:absolute;inset:-17px 15px 17px -15px;border:1px solid #b2966069;border-radius:49% 49% 46% 46%;z-index:-1}
.hero-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center 31%;border-radius:inherit}
.photo-caption{position:relative;bottom:auto;left:auto;text-align:center;margin-top:25px;color:#615057}
.photo-caption>span{display:block;font-size:.75rem;letter-spacing:.18em;margin-bottom:7px}
.photo-caption>strong{font-family:var(--serif);font-size:1.5rem;font-style:italic;font-weight:400}
.side-caption{display:none}
.belief-strip{padding:25px 0 27px;color:#766168}
.belief-strip>.wrap{display:flex;align-items:center;justify-content:center;gap:52px;border-top:1px solid #e5d4cd;border-bottom:1px solid #e5d4cd;padding-block:22px}
.belief-strip span{font-family:var(--serif);font-size:1.2rem;font-style:italic}
.belief-strip i{color:var(--gold);font-size:1rem;font-style:normal}
.about-section{display:grid;grid-template-columns:.91fr 1.09fr;gap:96px;align-items:center}
.about-visual{position:relative;padding-bottom:32px;align-self:center;padding-left:14px;z-index:0}
.about-visual::before{content:'';position:absolute;top:18px;left:0;right:18px;bottom:44px;border:1px solid #c2a86f70;border-radius:180px 180px 15px 15px;z-index:-1}
.about-visual>img{aspect-ratio:3/4;width:100%;height:auto;object-fit:cover;object-position:50% 35%;border-radius:180px 180px 12px 12px}
.about-photo-label{position:relative;bottom:auto;right:auto;left:auto;padding:25px 12px 0;text-align:center;color:var(--muted)}
.about-photo-label>span{font-size:.75rem;letter-spacing:.15em}
.about-photo-label>p{font-family:var(--serif);font-style:italic;font-size:1.8rem;margin-top:5px;line-height:1.4;color:var(--ink)}
.about-copy h2,.section-heading h2,.story-heading h2,.connect-copy h2{font-size:clamp(2.5rem,3.95vw,3.5rem);line-height:1.16;letter-spacing:-.025em;margin-top:21px}
.about-copy h2 em,.section-heading h2 em,.story-heading h2 em,.connect-copy h2 em{color:var(--raspberry)}
.about-copy>p:not(.eyebrow){font-size:1rem;line-height:1.9;color:var(--muted);margin-top:22px}
.about-copy blockquote{margin:31px 0 22px;padding-left:24px;border-left:1px solid #bca674;font-family:var(--serif);font-size:1.3rem;font-style:italic;line-height:1.7;color:#67515b}
.approach-section{background:#f8efed;border-radius:44% 44% 0 0 / 40px 40px 0 0;padding-top:108px}
.section-heading{display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:110px}
.section-heading>p{color:var(--muted);max-width:380px;padding-bottom:8px;font-size:1rem}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);margin:60px 0 35px;border-bottom:1px solid #e0cac2}
.pillar{padding:28px 45px 48px 0}
.pillar+.pillar{padding-left:45px;border-left:1px solid #e0cac2}
.pillar-number{font-size:.75rem;letter-spacing:.13em;color:#8f6876}
.pillar h3{font-size:2.2rem;line-height:1.25;letter-spacing:-.035em;margin-top:28px}
.pillar p{margin-top:24px;font-size:1rem;line-height:1.9;color:var(--muted)}
.story-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}
.story-signature{font-family:var(--serif);font-size:1.75rem;letter-spacing:-.035em;font-style:italic;margin-top:37px;color:#7c656e}
.story-signature>span{color:var(--raspberry)}
.story-copy{padding-top:5px}
.story-copy .large-copy{font-family:var(--serif);font-size:1.75rem;line-height:1.6;letter-spacing:-.02em;color:#6c4f5d;margin:0 0 27px}
.story-copy>p{color:var(--muted);margin-top:23px;font-size:1rem;line-height:1.95}
.workshop-section{background:#f6eceb;border-radius:38px;margin-inline:28px;color:var(--ink)}
.workshop-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.workshop-copy h2{font-size:clamp(3rem,4.8vw,4.4rem);line-height:1.16;letter-spacing:-.045em;margin-top:25px}
.workshop-copy h2 em{color:var(--raspberry)}
.workshop-copy>p:not(.eyebrow){color:var(--muted);margin-top:25px;max-width:440px;font-size:1rem;line-height:1.95}
.workshop-copy .button{margin-top:32px}
.faith-journey{margin-top:42px;padding-top:25px;border-top:1px solid #dac5bd}
.faith-journey>span{font-size:.75rem;letter-spacing:.16em;color:#866b76}
.faith-journey>p{font-size:.875rem;margin-top:10px;line-height:2}
.faith-journey b{color:var(--gold);font-weight:400;padding-inline:8px}
.workshop-stages{padding-top:10px}
.stages-label{font-size:.75rem;letter-spacing:.15em;color:#866b76;margin-bottom:23px}
.workshop-stages details{border-top:1px solid #dcc6c0}
.workshop-stages details:last-child{border-bottom:1px solid #dcc6c0}
.workshop-stages summary{display:flex;align-items:center;gap:20px;padding:25px 0;list-style:none;cursor:pointer;font-family:var(--serif);font-size:1.55rem;line-height:1.4}
.workshop-stages summary::-webkit-details-marker{display:none}
.stage-number{font-family:var(--sans);font-size:.75rem;color:#806332;min-width:21px;letter-spacing:.08em}
.expand-mark{margin-left:auto;position:relative;flex:none;width:15px;height:15px}
.expand-mark::before,.expand-mark::after{content:'';background:#a78890;position:absolute;left:0;right:0;top:7px;height:1px}
.expand-mark::after{transform:rotate(90deg)}
details[open] .expand-mark::after{transform:rotate(0)}
details[open] summary{color:var(--raspberry)}
.stage-content{padding:0 25px 29px 41px;color:var(--muted);font-size:1rem;line-height:1.9}
details[open] .stage-content{animation:soft-arrival .3s ease-out}
@keyframes soft-arrival{from{opacity:.2;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.reflection{margin-top:19px;font-family:var(--serif);font-size:1.2rem;font-style:italic;color:#72535e}
.reflection>span{font-family:var(--sans);display:block;font-size:.75rem;letter-spacing:.11em;color:#866b76;font-style:normal;margin-bottom:7px}
.calling-section{text-align:center;padding:116px 0 112px;margin-top:35px;background:linear-gradient(#fffaf864,#fffaf899),url('assets/silk-painting.webp') center 70%/cover no-repeat;isolation:isolate}
.calling-section .eyebrow{justify-content:center;color:#75606b}
.calling-quote{font-size:clamp(2.3rem,4.5vw,4.1rem);line-height:1.25;letter-spacing:-.04em;margin-block:30px 35px}
.calling-quote>em{color:var(--raspberry)}
.calling-section .gold-rule{width:65px}
.connect-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px;align-items:center}
.connect-portrait{max-width:360px;margin-left:32px;position:relative;z-index:0}
.connect-portrait::before{content:'';position:absolute;inset:17px -17px -17px 17px;border:1px solid #bd9e6370;border-radius:180px 180px 5px 5px;z-index:-1}
.connect-portrait>img{width:100%;aspect-ratio:3/4.3;object-fit:cover;object-position:50% 28%;border-radius:180px 180px 5px 5px}
.connect-copy>p:not(.eyebrow){color:var(--muted);margin-top:25px;max-width:460px;font-size:1rem}
.connect-copy>.button{margin-top:28px}
.contact-details{display:flex;gap:38px;margin-top:37px;flex-wrap:wrap}
.contact-details>div>span{display:block;font-size:.75rem;letter-spacing:.16em;color:var(--muted);margin-bottom:5px}
.contact-details a{font-size:1rem;overflow-wrap:anywhere}
.contact-details a:hover{color:var(--raspberry)}
.business-card{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:18px;row-gap:16px;align-items:center;width:100%;max-width:550px;margin-top:34px;padding:24px;border:1px solid #ba8d737a;border-radius:24px;background:linear-gradient(120deg,#f9e9e9,#fff7f1);color:var(--ink);box-shadow:0 10px 28px #8951600c;transition:background .45s ease,border-color .45s ease,box-shadow .45s ease}
.business-card:hover,.business-card:focus-visible{border-color:var(--raspberry);background:linear-gradient(120deg,#f6dfe4,#fff5ed);box-shadow:0 12px 30px #89516018}
.business-card-symbol{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:15px;background:#fffaf8;border:1px solid #bc9d6566}
.business-card-copy{display:block;min-width:0}
.business-card-title{display:block;font-family:var(--serif);font-size:1.5rem;line-height:1.25;color:#592738;text-wrap:balance}
.business-card-note{display:block;margin-top:7px;font-size:.875rem;line-height:1.65;color:var(--muted)}
.business-card-action{grid-column:2;justify-self:start;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 22px;border-radius:50px;background:var(--raspberry);color:#fffaf8;font-size:.875rem;line-height:1.6;text-align:center;transition:background .45s ease}
.business-card:hover .business-card-action,.business-card:focus-visible .business-card-action{background:#792642}
.card-icon{width:22px;height:16px;border:1px solid var(--muted);border-radius:3px;display:flex;align-items:center;gap:3px;padding:3px;flex:none}
.card-icon>span:first-child{width:4px;height:5px;background:var(--muted)}
.card-icon>span:last-child{width:8px;height:4px;border-top:1px solid var(--muted);border-bottom:1px solid var(--muted)}
.site-footer{background:#f6eeeb;color:var(--ink);padding:35px 0 26px;border-top:1px solid #e8d9d4}
.workshop-moments{display:grid;grid-template-columns:1.16fr 1fr;gap:36px;align-items:start;margin-top:86px;padding-top:48px;border-top:1px solid #dcc6c0}
.workshop-moment{margin:0;min-width:0}
.workshop-moment img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;box-shadow:0 15px 35px #89646e10}
.moment-wide img{border-radius:24px 100px 24px 24px}
.moment-intimate{padding-top:37px}.moment-intimate img{border-radius:90px 24px 24px 24px}
.workshop-moment figcaption{padding:21px 2px 0;color:var(--muted);font-size:.875rem;line-height:1.8}
.workshop-moment figcaption>span{display:block}
.workshop-moment .moment-title{font-family:var(--serif);font-size:1.6rem;font-style:italic;letter-spacing:-.015em;color:#745361;line-height:1.5;margin-bottom:7px}
.hero-photo-frame img,.about-visual>img,.connect-portrait>img,.workshop-moment img{transition:filter .5s;filter:saturate(.94)}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:27px}
.footer-logo{width:170px}.footer-logo>img{height:118px}
.footer-top nav{display:flex;gap:30px;font-size:.875rem;color:#735e68}
.footer-top nav a:hover{color:var(--raspberry)}
.footer-bottom{padding-top:23px;border-top:1px solid #dfcdc7;display:flex;justify-content:space-between;gap:20px;color:#7d6e74;font-size:.75rem}
@media(min-width:1600px){.hero{min-height:720px}.opening-art{height:1170px}}
@media(max-width:1150px){.wrap{width:calc(100% - 80px)}.hero{gap:45px;padding-top:42px}.hero h1{font-size:5.6vw}.main-navigation{gap:24px}.about-section,.workshop-grid,.story-section,.connect-section{gap:60px}.section-heading{gap:65px}.belief-strip>.wrap{gap:36px}.pillar{padding-right:28px}.pillar+.pillar{padding-left:28px}.workshop-section{margin-inline:16px}.connect-portrait{margin-left:10px}.hero-visual{padding-left:10px}.photo-caption>strong{font-size:1.4rem}}
@media(max-width:850px){.wrap{width:calc(100% - 48px)}.header-inner{min-height:126px}.brand-logo{width:159px}.brand-logo>img{height:111px}.main-navigation{gap:18px;font-size:.875rem}.nav-contact{padding:10px 18px}.hero{gap:33px;padding-block:35px 58px;min-height:590px}.hero h1{font-size:3.45rem}.hero .eyebrow{font-size:.75rem;letter-spacing:.1em;gap:10px}.hero .gold-rule{width:24px}.hero-intro{font-size:1rem}.hero-actions{gap:22px}.hero-actions .button{padding:13px 23px}.hero-note{margin-top:27px}.hero-photo-frame{aspect-ratio:4/5.3}.photo-caption>strong{font-size:1.2rem}.photo-caption>span{font-size:.75rem;letter-spacing:.1em}.section-space{padding-block:84px}.about-section{gap:42px}.about-copy h2,.section-heading h2,.story-heading h2,.connect-copy h2{font-size:2.6rem}.about-copy blockquote{font-size:1.18rem}.about-photo-label{padding-top:20px}.about-photo-label>p{font-size:1.55rem}.belief-strip>.wrap{gap:25px}.belief-strip span{font-size:1.1rem}.section-heading{gap:35px}.pillar{padding-right:22px}.pillar+.pillar{padding-left:22px}.pillar h3{font-size:1.9rem}.story-section,.workshop-grid,.connect-section{gap:40px}.workshop-stages summary{font-size:1.35rem;gap:12px}.stage-content{padding-left:33px;padding-right:0}.faith-journey b{padding-inline:3px}.connect-portrait{margin-left:0}.contact-details{gap:20px}.footer-top nav{gap:22px}.opening-art{height:960px}.workshop-section{margin-inline:12px;border-radius:28px}}
@media(max-width:700px){html{scroll-padding-top:25px}.wrap{width:calc(100% - 44px)}.section-space{padding-block:72px}.header-inner{min-height:122px}.brand-logo{width:164px}.brand-logo>img{height:112px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;align-items:center;width:44px;height:44px;border:0;background:transparent;cursor:pointer;z-index:32}.menu-toggle span{display:block;background:var(--ink);width:25px;height:1px;transition:transform .3s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}.main-navigation{display:none;position:absolute;top:122px;left:14px;right:14px;background:#fffaf8fa;padding:25px 25px 32px;border:1px solid var(--line);border-radius:24px;box-shadow:0 15px 40px #6e344317;flex-direction:column;align-items:stretch;font-size:1rem;gap:7px}.main-navigation.open{display:flex}.main-navigation>a:not(.nav-contact){padding:14px 0}.main-navigation>.nav-contact{margin-top:14px;text-align:center}.hero{grid-template-columns:1fr;gap:41px;min-height:0;padding-top:31px;padding-bottom:40px}.hero-copy{padding:0}.hero .eyebrow{font-size:.75rem;letter-spacing:.1em}.hero h1{font-size:clamp(3.35rem,11vw,4.9rem);margin-top:23px;line-height:1.15}.hero-intro{margin-top:24px;max-width:430px}.hero-actions{margin-top:28px;gap:28px}.hero-actions .button{font-size:.875rem;padding:14px 25px}.hero-note{display:none}.hero-visual{width:min(80%,360px);justify-self:center;padding:0;margin-top:4px}.hero-photo-frame{aspect-ratio:4/4.85;max-height:445px}.hero-photo-frame img{object-position:50% 29%}.hero-photo-frame::before{inset:-12px 11px 12px -11px}.photo-caption{margin-top:23px}.photo-caption>strong{font-size:1.35rem}.photo-caption>span{font-size:.75rem;letter-spacing:.17em}.opening-art{height:1250px;background-position:57% top;opacity:.7;mask-image:linear-gradient(#000 0%,#000 72%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 72%,transparent 100%)}.belief-strip{padding:24px 0 0}.belief-strip>.wrap{gap:12px;flex-wrap:wrap;padding-block:19px}.belief-strip span{font-size:1.1rem}.belief-strip i{font-size:.875rem}.belief-strip span:last-child{width:100%;text-align:center}.belief-strip i:last-of-type{display:none}.about-section{grid-template-columns:1fr;gap:30px}.about-visual{width:calc(100% - 18px);max-width:375px;justify-self:center;padding-bottom:10px}.about-visual>img{aspect-ratio:4/4.7;object-position:50% 24%;border-radius:170px 170px 8px 8px}.about-visual::before{bottom:110px;top:14px;right:10px;border-radius:170px 170px 8px 8px}.about-photo-label{padding-top:23px}.about-photo-label>span{font-size:.75rem;letter-spacing:.08em}.about-photo-label>p{font-size:1.65rem}.about-copy h2,.section-heading h2,.story-heading h2,.connect-copy h2{font-size:clamp(2.4rem,8vw,3.1rem);margin-top:18px}.about-copy>p:not(.eyebrow){font-size:1rem;margin-top:22px}.about-copy blockquote{font-size:1.35rem;padding-left:19px}.about-copy blockquote br{display:none}.approach-section{border-radius:44% 44% 0 0 / 25px 25px 0 0}.section-heading{grid-template-columns:1fr;gap:25px}.section-heading>p{max-width:100%}.pillars{grid-template-columns:1fr;margin-top:30px;margin-bottom:27px}.pillar,.pillar+.pillar{border-left:0;padding:29px 0 33px;border-bottom:1px solid #e0cac2;display:grid;grid-template-columns:1fr 1.25fr;column-gap:25px}.pillar:last-child{border-bottom:0}.pillar-number{grid-column:1/-1;margin-bottom:18px;font-size:.75rem}.pillar h3{font-size:1.95rem;margin:0}.pillar p{margin:0;font-size:1rem}.story-section{grid-template-columns:1fr;gap:32px}.story-signature{display:none}.story-copy{padding:0}.story-copy .large-copy{font-size:1.7rem}.workshop-section{margin-inline:10px;padding-block:55px;border-radius:25px}.workshop-grid{grid-template-columns:1fr;gap:42px;width:calc(100% - 40px)}.workshop-copy h2{font-size:3.6rem}.workshop-copy .eyebrow{font-size:.75rem;letter-spacing:.08em}.faith-journey{margin-top:32px}.faith-journey>p{font-size:.875rem}.faith-journey b{padding-inline:5px}.workshop-stages{padding-top:0}.workshop-stages summary{font-size:1.5rem;gap:16px;padding-block:24px}.stage-content{padding-left:37px;font-size:1rem}.reflection{font-size:1.2rem}.calling-section{padding-block:85px;margin-top:20px;background-position:63% 50%}.calling-section .eyebrow{font-size:.75rem;letter-spacing:.1em}.calling-quote{font-size:clamp(2.1rem,7.5vw,3.15rem);line-height:1.3}.connect-section{grid-template-columns:1fr;gap:48px}.connect-portrait{width:73%;max-width:320px;justify-self:center}.connect-portrait>img{aspect-ratio:4/5.1;object-position:50% 22%}.contact-details{gap:25px}.contact-details a{font-size:1rem}.business-card{font-size:.875rem}.footer-top{align-items:flex-start;flex-direction:column;gap:17px;padding-bottom:30px}.footer-top nav{flex-wrap:wrap;gap:25px;font-size:.875rem}.footer-bottom{flex-direction:column;gap:13px}.site-footer{padding-top:24px}.footer-logo{width:165px}.footer-logo>img{height:112px}}
@media(max-width:370px){.wrap{width:calc(100% - 36px)}.hero h1{font-size:3.05rem}.hero-actions{gap:22px}.hero-actions .button{padding-inline:23px}.pillar,.pillar+.pillar{column-gap:18px}.pillar h3{font-size:1.7rem}.workshop-copy h2{font-size:3.25rem}.workshop-stages summary{font-size:1.35rem;gap:12px}.stage-content{padding-left:32px}.belief-strip>.wrap{gap:10px}.belief-strip span{font-size:1.05rem}.contact-details{flex-direction:column;gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(max-width:850px){.workshop-moments{gap:25px;margin-top:65px;padding-top:38px}.workshop-moment .moment-title{font-size:1.4rem}.moment-intimate{padding-top:25px}.moment-wide img{border-top-right-radius:70px}.moment-intimate img{border-top-left-radius:70px}}
@media(max-width:700px){.workshop-moments{grid-template-columns:1fr;width:calc(100% - 40px);gap:32px;margin-top:44px;padding-top:35px}.moment-intimate{padding-top:0}.workshop-moment img{aspect-ratio:3/2}.workshop-moment figcaption{padding-top:18px}.workshop-moment .moment-title{font-size:1.5rem}.hero h1{font-size:clamp(3.4rem,11.7vw,4.9rem);line-height:1.1}.about-copy h2,.section-heading h2,.story-heading h2,.connect-copy h2{font-size:clamp(2.5rem,8.8vw,3.2rem);line-height:1.15}}
@media(max-width:370px){.hero h1{font-size:3.1rem}.workshop-moment .moment-title{font-size:1.4rem}.calling-quote{font-size:2rem}}
@media print{.menu-toggle,.hero-actions,.button,.main-navigation,.belief-strip,.site-footer,.opening-art{display:none}.wrap{width:100%}.section-space{padding-block:30px}.hero{min-height:0}.hero-visual{max-width:240px}.workshop-section{background:white;color:black;margin:0}.workshop-stages details{break-inside:avoid}.about-section,.connect-section{break-inside:avoid}}

/* Section photographs and quiet, progressive entrance motion. */
h1,h2,h3,.calling-quote{text-wrap:balance}
.section-heading{align-items:center;gap:85px}
.section-heading-copy>p:not(.eyebrow){font-size:1rem;line-height:1.9;max-width:420px;color:var(--muted);margin-top:27px}
.section-photo{margin:0;min-width:0}
.section-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.section-photo figcaption{font-size:.75rem;color:#75616b;line-height:1.8;margin-top:14px;letter-spacing:.025em}
.approach-photo img{border-radius:110px 24px 24px 24px;box-shadow:0 12px 36px #89646e12}
.story-photo{margin-top:34px;max-width:470px}
.story-photo img{border-radius:24px 90px 24px 24px}
.story-signature{margin-top:24px}
.story-copy{padding-top:73px}
.workshop-banner{margin-top:0;margin-bottom:64px}
.workshop-banner img{width:100%;height:auto;border-radius:28px;display:block;box-shadow:0 12px 36px #89646e10}
.workshop-banner figcaption{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-top:18px;font-family:var(--serif);font-size:1.65rem;font-style:italic;line-height:1.55;color:#745361}
.calling-photo{max-width:640px;margin:0 auto 42px}
.calling-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:32px 100px 32px 32px;box-shadow:0 16px 36px #89646e10}
.connect-portrait{margin-left:0;justify-self:center;max-width:360px}
.connect-portrait::before{inset:-10px;border-radius:38px;border-color:#bd9e6370}
.connect-portrait>img{height:auto;aspect-ratio:2/3;object-fit:contain;object-position:center;border-radius:28px;box-shadow:0 16px 42px #89646e12}
.is-arriving{animation:quiet-text-arrival 1.1s cubic-bezier(.16,1,.3,1) both}
.section-photo.is-arriving,.hero-visual.is-arriving,.about-visual.is-arriving,.connect-portrait.is-arriving,.workshop-banner.is-arriving,.workshop-moment.is-arriving,.calling-photo.is-arriving{animation-name:quiet-photo-arrival;animation-duration:1.25s}
@keyframes quiet-text-arrival{from{transform:translateY(8px)}to{transform:translateY(0)}}
@keyframes quiet-photo-arrival{from{opacity:.6;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1150px){.section-heading{gap:50px}.story-copy{padding-top:65px}}
@media(max-width:850px){.section-heading{gap:35px}.approach-photo img{border-top-left-radius:75px}.story-copy{padding-top:55px}.workshop-banner{margin-bottom:48px}.workshop-banner figcaption{font-size:1.4rem}}
@media(max-width:700px){.section-heading{gap:33px}.section-heading-copy>p:not(.eyebrow){max-width:none;margin-top:24px}.approach-photo{max-width:470px}.approach-photo img{border-top-left-radius:80px}.story-photo{margin-top:29px;max-width:none}.story-photo img{border-top-right-radius:70px}.story-copy{padding-top:0}.workshop-banner{width:calc(100% - 40px);margin-bottom:38px}.workshop-banner img{border-radius:20px}.workshop-banner figcaption{flex-direction:column;gap:7px;font-size:1.35rem;margin-top:15px}.calling-photo{width:90%;max-width:390px;margin-bottom:35px}.calling-photo img{border-radius:85px 85px 16px 16px}.connect-portrait{width:80%;max-width:320px}.connect-portrait>img{aspect-ratio:2/3;object-fit:contain;border-radius:24px}.connect-portrait::before{inset:-8px;border-radius:32px}}
@media(prefers-reduced-motion:reduce){.is-arriving{animation:none!important;transform:none!important}}
@media print{.is-arriving{animation:none!important;transform:none!important}.story-copy{padding-top:0}}

/* Clear type, generous touch targets, and restrained finishing details. */
h1,h2,h3{overflow-wrap:break-word}
.hero-copy,.about-copy,.section-heading-copy,.story-heading,.story-copy,.workshop-copy,.workshop-stages,.connect-copy{min-width:0}
.eyebrow,.hero .eyebrow,.workshop-copy .eyebrow,.calling-section .eyebrow{font-size:.875rem;letter-spacing:.105em;color:#6b525e;font-weight:400}
.pillar-number,.faith-journey>span,.stages-label,.reflection>span,.contact-details>div>span{font-size:.875rem;letter-spacing:.105em;color:#6b525e}
.photo-caption>span,.about-photo-label>span{font-size:.8125rem;letter-spacing:.12em}
.section-photo figcaption{font-size:.875rem;letter-spacing:0;margin-top:16px;color:var(--muted)}
.hero-intro,.about-copy>p:not(.eyebrow),.section-heading-copy>p:not(.eyebrow),.pillar p,.story-copy>p,.workshop-copy>p:not(.eyebrow),.connect-copy>p:not(.eyebrow),.stage-content>p{text-wrap:pretty}
.workshop-banner figcaption{display:block;margin-top:20px;max-width:38ch;line-height:1.45}
.workshop-moment figcaption{padding-top:20px}
.workshop-moment .moment-title{margin-bottom:0;line-height:1.45}
.workshop-stages summary>span:nth-child(2){min-width:0;overflow-wrap:break-word}
.expand-mark::before,.expand-mark::after{transition:transform .45s ease}
details[open] .stage-content{animation-duration:.55s}
.button,.nav-contact{transition:background .45s ease,border-color .45s ease,box-shadow .45s ease,color .45s ease}
.main-navigation>a:not(.nav-contact)::after{transition:right .45s ease}
.main-navigation>a:not(.nav-contact):focus-visible::after{right:0}
.footer-top nav a{display:inline-flex;align-items:center;min-height:44px}
.business-card{min-height:44px}
.footer-bottom{font-size:.8125rem;color:#6a5961}
@media(max-width:850px){.eyebrow,.pillar-number,.faith-journey>span,.stages-label,.reflection>span{letter-spacing:.075em}}
@media(max-width:700px){
  .hero .eyebrow{letter-spacing:.06em;gap:10px}
  .hero .gold-rule{width:24px}
  .calling-section .eyebrow{letter-spacing:.075em}
  .main-navigation{max-height:calc(100vh - 146px);max-height:calc(100dvh - 146px);overflow-y:auto;overscroll-behavior:contain}
  .main-navigation.open{animation:quiet-text-arrival .5s ease both}
  .workshop-banner figcaption{font-size:1.35rem;margin-top:17px}
  .workshop-moment figcaption{padding-top:17px}
  .footer-top nav{gap:8px 24px}
  html:not(.js-enabled) .menu-toggle{display:none}
  html:not(.js-enabled) .header-inner{flex-wrap:wrap;padding-bottom:20px;gap:0}
  html:not(.js-enabled) .main-navigation{display:flex;position:static;flex-direction:row;flex-wrap:wrap;width:100%;max-height:none;gap:8px 24px;padding:0;border:0;background:transparent;box-shadow:none}
  html:not(.js-enabled) .main-navigation>a{margin:0;padding:10px 0}
  html:not(.js-enabled) .main-navigation>.nav-contact{padding:9px 20px}
}
@media(prefers-reduced-motion:reduce){.main-navigation.open,details[open] .stage-content{animation:none!important}}

@media(max-width:700px){.calling-photo{width:100%;max-width:480px;margin-bottom:35px}.calling-photo img{border-radius:24px 65px 24px 24px}.business-card{grid-template-columns:44px minmax(0,1fr);column-gap:14px;padding:22px 18px;border-radius:22px}.business-card-symbol{width:44px;height:44px;border-radius:13px}.business-card-title{font-size:1.4rem}.business-card-action{padding-inline:18px}}
