/* YCKBC static homepage: screenshot-matched layout, larger typography and responsive images */
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Noto+Sans+TC:wght@300;400;500;600;700&display=swap');
:root{--green:#139b61;--deep-green:#287e48;--pale:#f2f9fc;--text:#626262;--blue:#4388ff;--orange:#f4a24a;--border:#e6e8e8}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--text);font-family:'Open Sans','Noto Sans TC','Microsoft JhengHei',sans-serif;font-size:18px;font-weight:400;line-height:1.8;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}a:focus-visible,button:focus-visible{outline:3px solid #f4b942;outline-offset:3px}.container{width:min(1120px,92%);margin-inline:auto}
.topbar{background:#111;color:#fff;font-size:13px;line-height:1.45}.topbar-inner{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar a{color:#fff}.social-links{display:flex;gap:8px}.social-links a{display:grid;place-items:center;border:1px solid #ddd;border-radius:2px;width:22px;height:22px;font-weight:700;font-size:14px}.site-header{background:#fff;box-shadow:0 2px 8px #0000000c;position:sticky;top:0;z-index:20}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:22px}.brand{display:flex;align-items:center;gap:8px;min-width:190px;color:var(--deep-green)}.logo-img{width:48px;height:48px;object-fit:contain}.logo-fallback{display:flex;flex-direction:column;font-size:16px;line-height:1.3}.logo-fallback b{font-size:16px;font-weight:500;letter-spacing:.03em}.logo-fallback small{font-size:9px;letter-spacing:.04em}.main-nav{display:flex;align-items:center;gap:clamp(10px,1.6vw,22px);font-size:15px;color:#287eae}.main-nav a{padding:9px 0;white-space:nowrap}.main-nav a:hover{color:var(--green)}.menu-toggle{display:none;background:none;border:1px solid var(--border);border-radius:4px;padding:8px 10px;color:#377b5a;font-size:18px}
.hero{height:clamp(300px,31.25vw,600px);position:relative;overflow:hidden;display:grid;place-items:center;background:#d7e0df}.hero-overlay{position:absolute;inset:4% 0;overflow:hidden}.hero-overlay img{width:100%;height:125%;object-fit:cover;object-position:center;display:block;transform:translateY(var(--parallax-y,0px));will-change:transform}.hero-content{position:relative;width:min(650px,68%);display:flex;justify-content:center;align-items:center}.hero-content>span{display:block;width:100%;text-align:center}.hero-content>span img{display:block;width:100%;max-height:calc(31.25vw * .78);object-fit:contain;margin:auto}.section{padding-block:54px}.anniversary{min-height:300px;display:flex;align-items:center;justify-content:center;gap:0;padding-block:50px}.anniversary-copy{width:48%;min-height:205px;background:#e0f0e7;padding:32px 36px;box-shadow:0 3px 8px #0002;display:flex;flex-direction:column;justify-content:center;z-index:1}.eyebrow{font-family:'Open Sans',sans-serif;font-size:13px;font-style:italic;color:#666}.anniversary h2{font-size:clamp(24px,2.5vw,32px);line-height:1.45;font-weight:300;margin:8px 0 16px;color:#444}.anniversary-cover{width:37%;height:auto;aspect-ratio:793/574;margin-left:-18px;box-shadow:0 4px 12px #0002;z-index:2;background:#e9e5c6}.anniversary-cover span{display:block;width:100%;height:100%}.anniversary-cover img{display:block;width:100%;height:100%;object-fit:contain}.button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 17px;border-radius:3px;color:#fff;font-size:15px;line-height:1.4;border:0;cursor:pointer}.button-pink{background:linear-gradient(90deg,#f5a64d,#d83291);align-self:flex-start}
.tint-section{background:var(--pale)}.section-heading{text-align:center;margin:0 auto 30px;max-width:520px;position:relative}.section-heading h2{font-size:32px;font-weight:300;margin:0 0 10px;line-height:1.45;color:#666}.heading-mark{display:flex;align-items:center;justify-content:center;color:var(--green);font-size:16px;line-height:1}.heading-mark:before,.heading-mark:after{content:"";height:1px;background:var(--green);width:35%;margin:0 12px}.section-heading.orange .heading-mark{color:var(--orange)}.section-heading.orange .heading-mark:before,.section-heading.orange .heading-mark:after{background:var(--orange)}.section-heading.blue .heading-mark{color:var(--blue)}.section-heading.blue .heading-mark:before,.section-heading.blue .heading-mark:after{background:var(--blue)}.news-grid{display:flex;justify-content:center}.news-card{width:min(100%,600px);min-height:128px;background:#fff;border:1px solid #e6eaec;border-radius:3px;padding:22px 20px 15px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:16px;text-align:center;transition:transform .2s,box-shadow .2s}.news-card:hover{transform:translateY(-3px);box-shadow:0 5px 15px #0000000d}.news-card span{font-weight:400;color:#555;font-size:17px}.news-card small{background:#00b987;color:#fff;border-radius:2px;padding:6px 15px;font-size:13px}.compact-section{padding-top:24px;padding-bottom:45px}.sunday-section .section-heading{margin-bottom:22px}.muted{color:#999;font-size:15px}.center{text-align:center}.sunday-note{margin:18px auto 0;max-width:520px;display:flex;flex-direction:column;align-items:center;gap:5px;color:#777;font-size:15px}.schedule-section{min-height:410px}.schedule-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;max-width:850px;margin:0 auto}.schedule-image{width:min(100%,360px);min-height:300px;margin:auto;background:#fff;border:1px solid #d8d8d8;box-shadow:0 2px 6px #0002;padding:5px;cursor:zoom-in;transition:transform .2s,box-shadow .2s}.schedule-image:hover{transform:translateY(-3px);box-shadow:0 5px 15px #00000018}.schedule-image span{display:block;width:100%;height:100%}.schedule-image img{display:block;width:100%;height:auto;max-height:430px;object-fit:contain}.schedule-church{text-align:center;color:#31864e}.cross-logo{display:flex;align-items:center;justify-content:center;position:relative;min-height:115px}.cross-logo img{width:105px;height:105px;object-fit:contain}.cross-logo>span{position:absolute;font-size:25px;line-height:1}.schedule-church h3{font-size:19px;font-weight:400;margin:12px 0 0}.schedule-church p{font-size:15px;margin:0}.quote-section{background:var(--pale)}.quote-section .section{padding-block:45px}blockquote{text-align:center;margin:0;color:#888;font-size:18px;line-height:1.9;font-weight:300}blockquote small{font-size:16px}
.ministry-section{text-align:center;padding-block:52px}.ministry-cover{width:200px;height:200px;max-width:100%;aspect-ratio:1/1;margin:0 auto 16px;box-shadow:0 4px 12px #0002;background:#d8eaf0}.ministry-cover span{display:block;width:100%;height:100%}.ministry-cover img{display:block;width:100%;height:100%;object-fit:contain}.document-actions{display:flex;justify-content:center;align-items:center;gap:8px}.document-actions .button{min-width:105px}.button-purple{background:#9b79ff}.button-blue{background:#5489f6}.team-section{padding-block:52px}.team-list{max-width:820px;margin:0 auto}.team-lead,.team-grid>div{background:#fff;border:1px solid #eee;min-height:48px;padding:12px 14px;text-align:center;font-size:16px;color:#555;box-shadow:0 2px 5px #0000000c,0 8px 12px -8px #0003}.team-lead{width:50%;margin:0 auto 14px}.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.giving-section{background:#fff}.giving-section .section{padding-block:50px}.giving-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 40px}.giving-item{display:flex;gap:14px;align-items:flex-start}.giving-icon{width:48px;height:48px;flex:0 0 48px;border:1px solid #139ad1;color:#139ad1;border-radius:50%;display:grid;place-items:center;font-size:23px}.giving-item h3{font-size:16px;font-weight:500;color:#1687ae;margin:0 0 5px}.giving-item p{font-size:15px;line-height:1.8;margin:3px 0;overflow-wrap:anywhere}.giving-notes{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:30px 0 0;font-size:14px;color:#888}.giving-notes p{margin:5px 0}.giving-notes ol{margin:0;padding-left:20px;columns:2}.contact-section{padding-block:52px 68px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;max-width:850px;margin:0 auto}.contact-card{text-align:center;font-size:15px}.contact-brand{display:flex;justify-content:center;align-items:center;margin-bottom:14px;min-height:58px}.contact-brand img{width:min(100%,322px);height:auto;max-height:82px;object-fit:contain}.contact-card h3{font-size:18px;font-weight:400;margin:0 0 8px;color:#444}.contact-card p{margin:6px 0}.contact-card a{color:#4d8c7b}.map-placeholder{height:auto;aspect-ratio:5/3;margin-top:14px;background:#e8f0e7;border:0}.map-placeholder span{display:block;width:100%;height:100%;padding:0}.map-placeholder img{display:block;width:100%;height:100%;object-fit:cover}.site-footer{box-shadow:0 -3px 9px #0002;padding:18px 0;text-align:center;color:#aaa;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.modal{display:none;position:fixed;inset:0;z-index:100;background:#000c;padding:24px;align-items:center;justify-content:center}.modal.is-open{display:flex}.modal-dialog{position:relative;max-width:min(100%,1000px);max-height:90vh;background:#fff;padding:14px;box-shadow:0 8px 40px #0006}.modal-dialog img{display:block;max-width:100%;max-height:calc(90vh - 28px);object-fit:contain}.modal-close{position:absolute;top:-15px;right:-15px;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:#333;font-size:24px;cursor:pointer;box-shadow:0 2px 8px #0003}
@media(max-width:760px){.nav-wrap{min-height:64px;position:relative}.logo-img{width:40px;height:40px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 8px 12px #0001;padding:10px 4%;flex-direction:column;align-items:stretch;gap:0}.main-nav.is-open{display:flex}.main-nav a{padding:12px 4px;border-bottom:1px solid #f1f1f1;font-size:16px}.hero{height:clamp(260px,48vw,380px)}.hero-content{width:min(75%,560px)}.hero-content>span img{max-height:70vw}.anniversary{min-height:250px;padding-block:36px}.anniversary-copy{width:62%;padding:22px 18px;min-height:160px}.anniversary-cover{width:42%;margin-left:-12px}.section{padding-block:42px}.schedule-layout{gap:24px;grid-template-columns:1fr 1fr}.schedule-image{min-height:230px}.ministry-cover{width:min(200px,100%);height:auto}.ministry-cover span{aspect-ratio:1/1}.giving-grid{gap:24px 20px}.giving-item{gap:10px}.giving-icon{width:42px;height:42px;flex-basis:42px;font-size:20px}.contact-grid{gap:26px}}
@media(max-width:480px){body{font-size:16px}.topbar-inner{font-size:11px;min-height:30px}.brand{min-width:0}.logo-fallback b{font-size:14px}.logo-fallback small{font-size:8px}.hero{height:260px}.hero-content{width:88%}.hero-content>span img{max-height:68vw}.anniversary{width:94%;padding-block:30px}.anniversary-copy{padding:16px 12px;width:64%;min-height:145px}.anniversary h2{font-size:21px}.anniversary-cover{width:42%;aspect-ratio:793/574}.section-heading h2{font-size:28px}.schedule-layout{grid-template-columns:1fr;max-width:340px}.schedule-image{width:100%;min-height:0}.schedule-church{padding:10px 0}.team-lead{width:100%}.giving-grid{grid-template-columns:1fr}.giving-notes{grid-template-columns:1fr;gap:12px}.contact-grid{grid-template-columns:1fr;gap:38px}.map-placeholder{max-width:360px;margin-inline:auto;margin-top:14px}.modal{padding:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-overlay img{transform:none!important}}

.schedule-image-link{display:block;width:min(100%,360px);margin:auto;cursor:zoom-in}.schedule-image-link:focus-visible{outline:3px solid #4388ff;outline-offset:4px}


/* Refined hero banner: match the 1920x600 source ratio and avoid empty bands. */
.hero{height:clamp(260px,31.25vw,600px)}
.hero-overlay{inset:0}
.hero-overlay img{position:absolute;inset:-24px 0;width:100%;height:calc(100% + 48px);object-fit:cover;object-position:center;transform:translate3d(0,var(--parallax-y,0px),0);}

/* Keep the 300x272 ministry cover at its natural maximum size. */
.ministry-cover{display:block;width:min(300px,100%);height:auto;aspect-ratio:auto;padding:0;box-shadow:none;background:transparent}
.ministry-cover span{display:block;width:100%;height:auto}
.ministry-cover img{display:block;width:100%;height:auto;max-width:300px;object-fit:contain}
@media(max-width:760px){.hero{height:clamp(260px,48vw,380px)}}
@media(max-width:480px){.hero{height:260px}}

/* Global heading typography */
h1,
h2,
h3,
.anniversary h2,
.section-heading h2,
.schedule-church h3,
.contact-card h3,
.giving-item h3 {
    font-weight: 700;
}
