@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600&family=Noto+Serif+TC:wght@400;500;600&display=swap');
:root{--paper:#f7f6f0;--ink:#303c2e;--olive:#4b5b42;--muted:#71786c;--line:#dedfd4;--serif:'Noto Serif SC','Songti SC',Georgia,serif;--sans:Arial,'Microsoft YaHei',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.8}html[lang=zh-Hant]{--serif:'Noto Serif TC','PMingLiU',Georgia,serif}html[lang=en]{--serif:Georgia,'Times New Roman',serif}a{color:inherit;text-decoration:none}button,select,input{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid #a47f3a;outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.55;letter-spacing:.035em}h1{font-size:clamp(42px,4.3vw,76px)}h2{font-size:clamp(30px,2.65vw,43px)}h3{font-size:18px;font-weight:500}p{color:var(--muted)}.site-header{height:104px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;gap:28px;background:rgba(247,246,240,.96);position:sticky;top:0;z-index:20;border-bottom:1px solid #e6e6dd;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:14px;flex-shrink:0}.brand-cross{font-size:51px;font-family:Georgia;font-weight:400;line-height:1;align-self:center}.brand strong{font-family:var(--serif);font-size:19px;letter-spacing:.09em;font-weight:600;display:block}.brand small{font-size:8px;line-height:1.65;letter-spacing:1.7px;display:block;margin-top:3px}#navigation{display:flex;align-items:center;gap:30px}#navigation a{font-size:13px;position:relative;padding:9px 0;white-space:nowrap}#navigation a:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--olive);transform:scaleX(0);transition:transform .25s}#navigation a:hover:after,#navigation a[aria-current]:after{transform:scaleX(1)}.header-tools{display:flex;gap:16px;align-items:center}#language{border:1px solid var(--line);background:transparent;color:var(--ink);padding:6px 9px;font-size:12px;cursor:pointer;border-radius:0}#menu-toggle{display:none;background:none;border:0;width:30px;padding:4px}#menu-toggle span{height:1px;display:block;background:var(--ink);margin:6px 0}.hero{height:min(730px,calc(100svh - 104px));min-height:560px;position:relative;color:#fff;overflow:hidden;margin:0 22px}.hero-image{position:absolute;inset:0;object-position:center 45%;animation:hero-in 1.6s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,32,24,.69),rgba(22,31,22,.22) 75%),linear-gradient(0deg,rgba(18,26,15,.35),transparent 30%)}.hero-content{position:relative;padding:86px 7%;max-width:950px;animation:arrive .9s ease both}.eyebrow{font-size:11px;letter-spacing:.21em;color:var(--olive);font-weight:500;margin-bottom:22px}.hero .eyebrow{color:#ebe9d6;margin-bottom:27px}.hero h1{line-height:1.45;text-shadow:0 2px 30px #0001}.hero h1 span{color:#dbe2c4}.hero-intro{margin-top:26px;color:#f0f0e6;line-height:2.1;font-size:14px;letter-spacing:.035em}.hero-actions{display:flex;gap:16px;margin-top:34px}.button{min-height:49px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:12px 24px;font-size:13px;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.button span,.text-link span{font-size:20px;line-height:1}.cream{background:#f2f1e4;color:var(--ink)}.outline{border:1px solid #ffffff65;color:white;background:#ffffff05}.outline:hover{background:#ffffff15}.primary{background:var(--olive);color:white}.hero-bottom{position:absolute;bottom:27px;left:7%;right:7%;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.18em;color:#f1f1e4}.hero-bottom a{display:flex;gap:22px;align-items:center}.hero-bottom a span{font-size:24px}.hero-side{position:absolute;right:26px;top:44%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.3em;color:#ecebd3}.visit-strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;padding:38px 8%;border-bottom:1px solid var(--line)}.visit-strip>div{display:flex;gap:18px;padding:3px 20px 3px 0;border-right:1px solid var(--line)}.visit-strip>div:last-child{border:0;padding:3px 0}.line-icon{font-family:Georgia;font-size:30px;line-height:1.3;color:#7d876e}.visit-strip h3{font-size:14px;margin-bottom:5px}.visit-strip p{font-size:12px}.visit-strip .text-link{font-size:11px;margin-top:7px;padding-bottom:2px;border:0}.section{padding:100px 8%}.story{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:11%;padding-top:112px;padding-bottom:112px}.story-photo{position:relative;padding-right:26px}.story-photo img{height:440px;object-position:center;border-radius:180px 180px 0 0}.story-photo p{font-size:10px;letter-spacing:.15em;margin-top:18px;text-align:center}.photo-stamp{position:absolute;bottom:53px;right:-16px;background:#e9ebdf;width:133px;height:133px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;font-family:Georgia;font-size:20px;line-height:1.5;transform:rotate(-9deg);border:6px solid var(--paper)}.photo-stamp i{font-size:18px}.story-copy>p:not(.eyebrow){margin-top:24px;font-size:14px;line-height:2.1}.text-link{display:inline-flex;gap:30px;align-items:center;font-size:13px;border-bottom:1px solid #a2aa96;padding-bottom:7px;transition:gap .25s}.text-link:hover{gap:40px}.story-copy .text-link{margin-top:30px}.community{background:#eeefe7}.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:42px}.section-heading .eyebrow{margin-bottom:14px}.section-heading>div>p:last-child{margin-top:18px;max-width:680px}.section-heading h2{font-size:clamp(27px,2.5vw,39px)}.section-heading .text-link{flex-shrink:0;margin-bottom:8px}.group-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.image-wrap{height:265px;position:relative;overflow:hidden;background:#d6dbcc}.image-wrap img{transition:transform .7s}.group-card:hover img{transform:scale(1.04)}.image-number{position:absolute;bottom:12px;left:18px;color:white;font:italic 28px Georgia;text-shadow:0 2px 5px #0007}.group-card h3{font-family:var(--serif);font-size:22px;margin:23px 0 10px}.group-card p{font-size:13px;line-height:1.95;max-width:340px}.verse{padding:85px 7%;text-align:center;background:#e3e7d9;position:relative}.verse-cross{font-family:Georgia;font-size:35px;color:#7d8a6f;display:block;margin-bottom:22px}.verse blockquote{font-family:var(--serif);font-size:clamp(21px,2.15vw,33px);font-weight:400;line-height:1.9;margin:0}.verse p{font-size:10px;letter-spacing:.2em;margin-top:18px}.verse-line{width:35px;height:1px;background:#99a38b;margin:28px auto 0}.connect{position:relative;display:flex;justify-content:space-between;align-items:center;overflow:hidden}.connect h2{line-height:1.6}.connect p:not(.eyebrow){margin-top:20px;font-size:14px}.connect-cross{position:absolute;right:26%;top:0;font:300px Georgia;color:#e9ebdf;z-index:-1;transform:rotate(12deg)}.contact-pending{padding:15px 25px;border:1px solid var(--line);font-size:13px;display:inline-block;color:var(--muted)}footer{padding:50px 8% 22px;background:#303e2e;color:#f1f1e8}.footer-main{display:flex;justify-content:space-between;gap:35px;align-items:start}.footer-brand{display:flex;gap:17px;align-items:start}.footer-brand>span{font:45px Georgia}.footer-brand h3{font-family:var(--serif);font-size:17px}.footer-brand p{font-size:10px;line-height:1.6;color:#b8c1ae;margin-top:8px}.footer-main>p{font-family:var(--serif);font-size:15px;color:#d9dfce}.footer-main nav{display:grid;grid-template-columns:1fr 1fr;gap:8px 26px;font-size:12px;color:#e3e7dc}.footer-notice{font-size:10px;color:#b8c1ae;margin-top:30px}.footer-bottom{margin-top:24px;border-top:1px solid #59634f;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#b8c1ae}.page-hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:460px;background:#e9ecdf}.page-hero>div{padding:66px 10% 66px 15%}.page-hero h1{font-size:clamp(38px,4vw,60px);line-height:1.45}.page-hero>div>p:last-child{margin-top:24px;font-size:14px;max-width:470px}.page-hero>img{max-height:520px;min-height:100%}.belief>p:not(.eyebrow){max-width:730px;margin-top:24px;line-height:2}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:55px}.values article{border-top:1px solid var(--line);padding-top:20px}.values span{font:italic 22px Georgia;color:#8e987d}.values h3{margin:16px 0 12px;font-family:var(--serif);font-size:22px}.values p{font-size:14px}.newcomer{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;background:#eeefe7}.faq details{border-bottom:1px solid #cfd3c3;padding:22px 0}.faq details:first-child{border-top:1px solid #cfd3c3}.faq summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;font-size:15px}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:23px;font-weight:300}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{margin-top:18px;font-size:14px}.editorial-note{font-size:12px;margin-top:35px;padding-top:20px;border-top:1px solid var(--line)}.empty-state{text-align:center;max-width:620px;margin:0 auto}.empty-state>span{font-size:45px;color:#839372}.empty-state h2{font-size:30px;margin:20px 0}.empty-state p{font-size:15px}.sermon-section>.button{display:flex;width:fit-content;margin:35px auto 0}.search-label{display:block;font-size:12px;margin-bottom:8px}#sermon-search{border:1px solid var(--line);background:transparent;padding:15px;width:100%;max-width:500px;color:var(--ink);margin-bottom:35px}.sermon-row{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px 0;border-bottom:1px solid var(--line)}.sermon-row time{font-size:12px}.sermon-row div{flex:1}.sermon-row p{font-size:13px}.giving-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.giving-panel{padding:45px;background:#e9ecdf}.giving-symbol{font-size:44px}.giving-panel h2,.giving-aside h2{font-size:28px;margin:15px 0}.giving-panel p,.giving-aside p{font-size:14px}.giving-panel small{display:block;color:var(--muted);font-size:11px;margin-top:22px}.giving-panel .button,.giving-aside .button{margin-top:25px}.giving-panel .pending{padding:14px 18px;border:1px solid #bcc5ad;margin-top:28px;color:var(--olive)}.giving-aside .contact-pending{margin-top:25px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.group-card:nth-child(2){transition-delay:80ms}.group-card:nth-child(3){transition-delay:160ms}main:focus{outline:none}.skip-link{position:fixed;top:-80px;left:15px;background:var(--paper);padding:10px;z-index:100}.skip-link:focus{top:10px}@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes hero-in{from{transform:scale(1.035)}to{transform:scale(1)}}
@media(min-width:1600px){body{max-width:1920px;margin:auto}.hero-content{padding-top:110px}}
@media(max-width:1100px){.site-header{padding:0 4%;gap:15px}.brand strong{font-size:16px}.brand small{font-size:7px}#navigation{gap:18px}#navigation a{font-size:12px}.brand-cross{font-size:42px}.hero-content{padding-top:80px}.section{padding:75px 7%}.visit-strip{padding:30px 5%;gap:20px}.story{gap:8%}.story-photo img{height:390px}.image-wrap{height:220px}.footer-main>p{display:none}.newcomer{gap:40px}html[lang=en] #navigation{gap:13px}}
@media(max-width:780px){.site-header{height:84px;padding:0 5%}.brand strong{font-size:15px}.brand small{font-size:6px;letter-spacing:1.3px}.brand-cross{font-size:37px}.brand{gap:9px}#menu-toggle{display:block}#language{font-size:11px;padding:5px 6px}.header-tools{gap:12px}#navigation{display:none;position:absolute;top:84px;left:0;right:0;background:var(--paper);padding:18px 6% 25px;border-bottom:1px solid var(--line);box-shadow:0 12px 25px #28331c12}#navigation.open{display:flex;flex-direction:column;align-items:stretch;gap:3px}#navigation a{padding:12px;font-size:14px}#navigation a[aria-current]{background:#e9ecdf}#navigation a:after{display:none}.hero{margin:0 10px;min-height:590px;height:calc(88svh - 84px);max-height:760px}.hero-content{padding:72px 7%}.hero-image{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#15271bb8,#15271b30),linear-gradient(0deg,#15271b55,transparent)}.hero h1{font-size:46px}.hero-intro{font-size:13px;line-height:2}.hero .eyebrow{font-size:9px}.hero-bottom{font-size:8px;left:7%;right:7%}.hero-side{display:none}.hero-actions{flex-wrap:wrap;gap:12px}.button{font-size:12px;padding:12px 18px;gap:22px}.visit-strip{grid-template-columns:1fr;padding:26px 7%;gap:0}.visit-strip>div{border-right:0;border-bottom:1px solid var(--line);padding:20px 0;gap:22px}.visit-strip>div:last-child{padding:20px 0 8px}.visit-strip h3{font-size:15px}.visit-strip p{font-size:13px}.line-icon{width:28px;text-align:center}.section{padding:64px 7%}.story{grid-template-columns:1fr;gap:45px}.story-photo{padding:0 20px 0 0;max-width:500px;width:100%;margin:auto}.story-photo img{height:390px}.photo-stamp{right:0}.story-copy>p:not(.eyebrow){font-size:14px}.eyebrow{font-size:10px;margin-bottom:18px}.section-heading{display:block;margin-bottom:30px}.section-heading .text-link{margin-top:22px}.group-grid{grid-template-columns:1fr;gap:36px}.image-wrap{height:290px}.group-card h3{margin-top:17px}.group-card p{max-width:none}.verse{padding:60px 8%}.verse blockquote{font-size:22px}.connect{display:block}.connect>div:nth-child(2){margin-top:30px}.connect-cross{right:5%;font-size:240px}.footer-main{flex-direction:column;gap:30px}.footer-main nav{display:flex;flex-wrap:wrap;gap:20px}.footer-bottom{display:block;line-height:2}.footer-bottom span{display:block}footer{padding:40px 7% 20px}.page-hero{grid-template-columns:1fr}.page-hero>div{padding:50px 7%}.page-hero h1{font-size:43px}.page-hero>img{height:270px;min-height:0;max-height:none}.values{grid-template-columns:1fr;gap:24px;margin-top:35px}.values article{padding-top:16px}.newcomer{grid-template-columns:1fr;gap:32px}.giving-layout{grid-template-columns:1fr;gap:40px}.giving-panel{padding:28px}.sermon-row{flex-wrap:wrap;gap:15px}.sermon-row time{width:100%}.sermon-row h3{font-size:17px}.desktop-break{display:none}html{scroll-padding-top:100px}html[lang=en] .hero h1{font-size:46px}html[lang=en] .hero-intro{max-width:340px}}
@media(max-width:370px){.brand strong{font-size:13px}.brand small{font-size:5px}.header-tools{gap:7px}.hero h1,html[lang=en] .hero h1{font-size:39px}.hero-content{padding-top:55px}.hero-actions{gap:10px}.hero-actions .button{padding:10px 13px;gap:12px}.image-wrap{height:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

.group-card .group-schedule{font-size:11px;color:var(--olive);margin:0 0 10px;letter-spacing:.04em}.donation-email{display:block;overflow-wrap:anywhere;font-size:17px;margin-top:8px}.giving-panel .pending{padding:18px;border:1px solid #bcc5ad;margin-top:25px}.pending .button{border:0;margin-top:16px}.pending #copy-status{display:block;font-size:12px;margin-top:8px}

.sermon-archive{font-size:11px;color:var(--muted);max-width:150px}
@media(max-width:780px){html:not([lang=en]) .hero h1{font-size:clamp(29px,9vw,46px)}.hero-actions{max-width:360px}}
/* Refinement: more readable type, softer imagery, and restrained motion. */
.brand-logo{width:330px;height:auto;object-fit:contain}
.site-header{transition:box-shadow .4s,background .4s}
.site-header.scrolled{box-shadow:0 5px 28px #303c2e0c;background:rgba(247,246,240,.97)}
.site-header:after{content:'';position:absolute;bottom:0;left:0;height:2px;width:100%;background:#879576;transform:scaleX(var(--scroll-progress,0));transform-origin:left;pointer-events:none}
body{font-size:17px}
#navigation a{font-size:15px}
#language{font-size:14px}
.hero-intro,.story-copy>p:not(.eyebrow),.page-hero>div>p:last-child,.connect p:not(.eyebrow){font-size:16px}
.button,.text-link{font-size:15px}
.eyebrow{font-size:13px}
.visit-strip h3{font-size:16px}
.visit-strip p,.visit-strip .text-link{font-size:14px}
.group-card p,.values p,.faq details p,.giving-panel p,.giving-aside p{font-size:16px}
.group-card .group-schedule{font-size:13px}
.faq summary{font-size:17px}
.editorial-note,.search-label,.sermon-row time,.sermon-row p{font-size:14px}
.footer-main nav{font-size:14px}
.footer-main>p{font-size:17px}
.footer-notice,.footer-bottom,.giving-panel small{font-size:12px}
.hero{mask-image:linear-gradient(#000 0%,#000 89%,transparent 100%);margin-bottom:-16px}
.hero-bottom{bottom:42px}
.page-hero{overflow:hidden;position:relative}
.page-hero>img{mask-image:linear-gradient(90deg,transparent 0%,#000 23%);transform-origin:center;animation:picture-settle 1.4s ease-out both}
.story-photo img{mask-image:linear-gradient(#000 0%,#000 88%,transparent 100%)}
.image-wrap:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#eeefe730,transparent 45%);pointer-events:none}
.reveal{transform:translateY(22px);transition:opacity .95s ease,transform 1.1s cubic-bezier(.2,.65,.25,1);transition-delay:var(--reveal-delay,0ms)}
.reveal.visible{transform:none}
.hero-content>.eyebrow,.hero-content>h1,.hero-intro,.hero-actions{animation:soft-rise 1s both}
.hero-content>h1{animation-delay:80ms}.hero-intro{animation-delay:160ms}.hero-actions{animation-delay:240ms}
.hero-content{animation:none}
.verse-line{transform:scaleX(.2);transition:transform 1.2s .25s}.verse.visible .verse-line{transform:scaleX(1)}
.verse blockquote{transition:opacity .8s .1s,transform .9s .1s}.verse:not(.visible) blockquote{opacity:0;transform:translateY(12px)}
.group-card h3,.group-card p{transition:transform .4s}.group-card:hover h3{transform:translateX(4px)}
.faq details[open] p{animation:soft-rise .35s ease-out}
.sermon-thumbnail{flex:0 0 220px;aspect-ratio:16/9;position:relative;overflow:hidden;background:#dde2d5}
.sermon-thumbnail img{transition:transform .6s;object-fit:cover}
.sermon-thumbnail>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #ffffffa0;background:#283723a6;color:white;border-radius:50%;width:43px;height:43px;display:grid;place-items:center;font-size:15px;transition:background .3s}
.sermon-thumbnail:hover img{transform:scale(1.045)}.sermon-thumbnail:hover>span{background:#283723ed}
.sermon-row h3{font-family:var(--serif);font-size:23px;margin-top:8px}.sermon-row .text-link{white-space:nowrap}
@keyframes soft-rise{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
@keyframes picture-settle{from{scale:1.035;opacity:.6}to{scale:1;opacity:1}}
@media(max-width:1100px){.brand-logo{width:280px}#navigation{gap:18px}#navigation a{font-size:14px}.site-header{gap:20px}.story-copy>p:not(.eyebrow){font-size:16px}}
@media(max-width:950px) and (min-width:781px){.brand-logo{width:240px}#navigation{gap:12px}#navigation a{font-size:13px}.site-header{padding:0 3%;gap:12px}}
@media(max-width:780px){.brand-logo{width:clamp(185px,53vw,300px)}#language{font-size:13px}.header-tools{gap:10px}#navigation a{font-size:16px}.hero .eyebrow{font-size:11px}.hero-intro{font-size:15px}.hero-content{padding-top:62px}.button,.text-link{font-size:14px}.hero-actions{gap:12px}.hero{min-height:650px}.hero-bottom{font-size:9px;bottom:43px}.page-hero>img{mask-image:linear-gradient(0deg,#000 0%,#000 68%,transparent 100%);margin-top:-28px;height:300px}.page-hero>div{padding-bottom:36px;position:relative;z-index:1}.section-heading h2{font-size:30px}.visit-strip h3{font-size:17px}.visit-strip p{font-size:15px}.eyebrow{font-size:12px}.group-card p{font-size:16px}.sermon-row{gap:20px}.sermon-thumbnail{flex-basis:100%;max-width:440px}.sermon-row h3{font-size:22px}.sermon-row time{width:auto}.footer-bottom{font-size:11px}.giving-panel small{font-size:13px}}
@media(max-width:370px){.brand-logo{width:180px}.site-header{padding:0 4%}.header-tools{gap:6px}.hero-intro{font-size:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.hero-image{translate:none!important}.reveal,.verse:not(.visible) blockquote{opacity:1;transform:none}.verse-line{transform:none}}
.footer-logo{width:300px;height:auto;filter:invert(1);opacity:.9}.sermon-thumbnail{flex-grow:0!important}
