:root { --purple-deep:#2D1557; --purple-dark:#3D1F70; --purple:#5B2D8E; --purple-mid:#7B45B0; --purple-light:#C4A0E0; --purple-pale:#F3EDFB; --purple-ghost:#FAF6FF; --gold:#A8822A; --gold-mid:#C9A84C; --gold-light:#E8CC7A; --white:#FFFFFF; --off-white:#F8F7FB; --border:#E2D9EF; --border-light:#EDE8F5; --text:#1A1020; --text2:#3D2F55; --muted:#7A6E8A; } *, *::before, *::after { box-sizing:border-box; margin:0; padding:0; } html { scroll-behavior:smooth; } body { font-family:'Barlow', sans-serif; background:var(--white); color:var(--text); overflow-x:hidden; } #email-overlay { position:fixed; inset:0; background:rgba(45,21,87,0.80); z-index:9999; display:flex; align-items:center; justify-content:center; padding:1rem; animation:fadeIn 0.4s ease forwards; } @keyframes fadeIn { from{opacity:0} to{opacity:1} } #email-modal { background:var(--white); border-top:5px solid var(--purple); max-width:520px; width:100%; padding:3rem 2.5rem 2.5rem; text-align:center; position:relative; animation:slideUp 0.45s ease 0.1s both; box-shadow:0 32px 70px rgba(45,21,87,0.22); } @keyframes slideUp { from{transform:translateY(28px);opacity:0} to{transform:translateY(0);opacity:1} } .modal-cross { position:absolute; top:1rem; right:1.25rem; font-size:1.3rem; color:var(--muted); cursor:pointer; background:none; border:none; line-height:1; } .modal-cross:hover { color:var(--purple); } .modal-eyebrow { font-family:'Barlow Condensed',sans-serif; font-size:0.7rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--gold); margin-bottom:0.6rem; display:block; } #email-modal h2 { font-family:'Playfair Display',serif; font-size:2rem; font-weight:900; color:var(--purple-deep); line-height:1.15; margin-bottom:0.75rem; } #email-modal h2 em { color:var(--gold); font-style:italic; } .modal-body { font-size:0.92rem; color:var(--muted); line-height:1.75; margin-bottom:1rem; } .modal-field-row { display:flex; gap:0.5rem; margin-bottom:0.5rem; } .modal-field-row input { flex:1; width:100%; padding:0.8rem 1rem; background:var(--purple-ghost); border:1px solid var(--border); color:var(--text); font-family:'Barlow',sans-serif; font-size:0.88rem; outline:none; transition:border-color 0.2s; } .modal-field-row input:focus { border-color:var(--purple-mid); background:var(--white); } .modal-field-row input::placeholder { color:var(--muted); } .modal-field-submit button { padding:0.8rem 1.4rem; background:var(--purple); color:var(--white); font-family:'Barlow Condensed',sans-serif; font-size:0.82rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; border:none; cursor:pointer; white-space:nowrap; } .modal-field-submit button:hover { background:var(--purple-dark); } .modal-disclaimer { font-size:0.72rem; color:#bbb; margin-top:1rem; } .form-success { display:none; color:var(--purple); font-family:'Barlow Condensed',sans-serif; letter-spacing:0.08em; font-size:0.95rem; padding:0.9rem 1rem; border:1px solid var(--purple-light); background:var(--purple-pale); margin-top:1rem; } nav { position:fixed; top:0; left:0; right:0; z-index:1000; display:flex; align-items:center; justify-content:space-between; padding:1rem 3rem; background:rgba(255,255,255,0.97); border-bottom:1px solid var(--border-light); backdrop-filter:blur(8px); } .nav-logo { font-family:'Barlow Condensed',sans-serif; font-size:1rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:var(--purple-deep); text-decoration:none; line-height:1.2; } .nav-logo span { color:var(--gold); display:block; font-size:0.65rem; font-weight:600; letter-spacing:0.18em; } .nav-links { display:flex; gap:1.75rem; list-style:none; align-items:center; } .nav-links a { font-family:'Barlow Condensed',sans-serif; font-size:0.78rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:var(--text2); text-decoration:none; } .nav-links a:hover { color:var(--purple); } .nav-cta { padding:0.5rem 1.2rem; background:var(--purple) !important; color:var(--white) !important; } .nav-cta:hover { background:var(--purple-dark) !important; } #hero { min-height:100vh; display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; text-align:center; padding:8rem 2rem 5rem; } .hero-bg { position:absolute; inset:0; background:linear-gradient(155deg, var(--purple-deep) 0%, #4a1a80 50%, var(--purple-deep) 100%); } .hero-bg::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 80% 65% at 50% 45%, rgba(201,168,76,0.12) 0%, transparent 68%); } .hero-lines { position:absolute; inset:0; background-image: repeating-linear-gradient(0deg, transparent, transparent 79px, rgba(196,160,224,0.07) 80px), repeating-linear-gradient(90deg, transparent, transparent 79px, rgba(196,160,224,0.07) 80px); } .hero-arc { position:absolute; bottom:-2px; left:0; right:0; height:80px; overflow:hidden; } .hero-arc svg { width:100%; height:100%; display:block; } .hero-content { position:relative; z-index:2; max-width:820px; } .hero-eyebrow { font-family:'Barlow Condensed',sans-serif; font-size:0.72rem; letter-spacing:0.35em; text-transform:uppercase; color:var(--gold-light); margin-bottom:1.25rem; display:block; } .hero-title { font-family:'Playfair Display',serif; font-size:clamp(2.8rem,7vw,5.5rem); font-weight:900; color:#FFFFFF; line-height:1.05; margin-bottom:1.5rem; } .hero-title em { font-style:italic; color:var(--gold-light); } .hero-verse { font-family:'Playfair Display',serif; font-style:italic; font-size:1rem; color:rgba(255,255,255,0.6); line-height:1.85; margin-bottom:2.5rem; max-width:600px; margin-left:auto; margin-right:auto; } .hero-verse strong { display:block; font-style:normal; font-size:0.7rem; font-family:'Barlow Condensed',sans-serif; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold-light); margin-top:0.5rem; } .hero-buttons { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; } .btn-gold { display:inline-block; padding:0.9rem 2rem; background:var(--gold-mid); color:var(--white); font-family:'Barlow Condensed',sans-serif; font-size:0.82rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; text-decoration:none; } .btn-gold:hover { background:var(--gold); } .btn-outline-white { display:inline-block; padding:0.9rem 2rem; border:1px solid rgba(255,255,255,0.4); color:rgba(255,255,255,0.9); font-family:'Barlow Condensed',sans-serif; font-size:0.82rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; text-decoration:none; } .btn-outline-white:hover { border-color:var(--gold-light); color:var(--gold-light); } .service-strip { background:var(--purple); padding:1.1rem 3rem; display:flex; align-items:center; justify-content:center; gap:3rem; flex-wrap:wrap; } .service-item { text-align:center; } .service-item .s-day { font-family:'Barlow Condensed',sans-serif; font-size:0.65rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold-light); } .service-item .s-time { font-family:'Barlow Condensed',sans-serif; font-size:1.1rem; font-weight:800; color:#fff; } .service-item .s-detail { font-size:0.72rem; color:rgba(255,255,255,0.65); margin-top:0.1rem; } .strip-div { width:1px; height:38px; background:rgba(255,255,255,0.2); } section { padding:6rem 2rem; } .container { max-width:1100px; margin:0 auto; } .eyebrow { font-family:'Barlow Condensed',sans-serif; font-size:0.68rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--gold); margin-bottom:0.6rem; display:block; } .sec-title { font-family:'Playfair Display',serif; font-size:clamp(1.9rem,4vw,2.9rem); font-weight:700; color:var(--purple-deep); line-height:1.15; margin-bottom:1.25rem; } #leadership { background:var(--white); padding-top:6rem; } .leadership-grid { display:grid; grid-template-columns:minmax(250px,1fr) minmax(280px,360px) minmax(250px,1fr); gap:4rem; align-items:center; } .leader-column-left { text-align:left; } .leader-column-right { text-align:right; } .leader-kicker { font-family:'Barlow Condensed',sans-serif; font-size:0.7rem; letter-spacing:0.28em; text-transform:uppercase; color:var(--gold); margin-bottom:0.75rem; } .leader-name { font-family:'Playfair Display',serif; font-size:clamp(2.2rem,4vw,3.4rem); line-height:1.05; color:var(--purple-deep); margin-bottom:1rem; } .leader-summary { font-size:0.95rem; line-height:1.9; color:var(--muted); max-width:380px; } .leader-column-left .leader-summary, .leader-column-left .leader-quote { margin-right:auto; } .leader-column-right .leader-summary, .leader-column-right .leader-quote { margin-left:auto; } .leader-quote { margin-top:1.5rem; padding-top:1rem; border-top:1px solid var(--border-light); color:var(--purple-light); font-family:'Playfair Display',serif; font-style:italic; font-size:1.05rem; max-width:380px; } .leader-image-column { position:relative; display:flex; justify-content:center; } .leader-photo-frame { width:min(100%,360px); position:relative; background:var(--purple-pale); border:2px solid var(--purple-light); padding:0.55rem; } .leader-photo-frame::before { content:''; position:absolute; top:-1rem; left:-1rem; right:1rem; bottom:1rem; border:2px solid var(--purple-light); z-index:0; } .leader-photo { position:relative; z-index:1; width:100%; height:100%; object-fit:cover; object-position:center 18%; display:block; aspect-ratio:3 / 4; } #connect { background:var(--off-white); } .connect-header { text-align:center; margin-bottom:3rem; } .connect-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--border); } .connect-card { background:var(--white); padding:2.5rem 1.75rem; text-align:center; text-decoration:none; display:block; } .connect-card:hover { background:var(--purple-ghost); } .card-icon { width:54px; height:54px; border:1.5px solid var(--purple-light); background:var(--purple-ghost); display:flex; align-items:center; justify-content:center; margin:0 auto 1.25rem; } .card-icon svg { width:22px; height:22px; stroke:var(--purple-mid); fill:none; stroke-width:1.5; } .connect-card h3 { font-family:'Barlow Condensed',sans-serif; font-size:0.95rem; font-weight:700; letter-spacing:0.15em; text-transform:uppercase; color:var(--purple-deep); margin-bottom:0.6rem; } .connect-card p { font-size:0.86rem; line-height:1.75; color:var(--muted); } .card-link { display:inline-block; margin-top:1rem; font-family:'Barlow Condensed',sans-serif; font-size:0.72rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--gold); text-decoration:none; } #gallery { background:var(--white); padding:5rem 0; overflow:hidden; } .gallery-header { text-align:center; padding:0 2rem; margin-bottom:2.5rem; } .carousel-outer { overflow:hidden; padding:0 2rem; } .carousel-track { display:flex; transition:transform 0.5s ease; will-change:transform; } .carousel-slide { min-width:calc(33.333% - 1rem); margin-right:1.5rem; flex-shrink:0; overflow:hidden; } .photo-box { aspect-ratio:4/3; background:var(--purple-ghost); overflow:hidden; position:relative; } .photo-box img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.4s ease; } .carousel-slide:hover .photo-box img { transform:scale(1.04); } .slide-caption { padding:0.8rem 0.25rem 0; font-family:'Barlow Condensed',sans-serif; font-size:0.73rem; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; color:var(--purple-mid); } .carousel-controls { display:flex; align-items:center; justify-content:center; gap:1rem; margin-top:2.5rem; padding:0 2rem; } .carousel-btn { width:44px; height:44px; border:1.5px solid var(--border); background:var(--white); cursor:pointer; display:flex; align-items:center; justify-content:center; color:var(--purple-mid); } .carousel-btn svg { width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:2; } .carousel-dots { display:flex; gap:0.5rem; } .dot { width:8px; height:8px; background:var(--border); border-radius:50%; cursor:pointer; } .dot.active { background:var(--purple); transform:scale(1.3); } .carousel-cta { text-align:center; margin-top:2rem; padding:0 2rem; } #prayer { background:var(--off-white); padding:5.5rem 2rem; } .prayer-inner { max-width:960px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:center; } .prayer-info h2 { font-family:'Playfair Display',serif; font-size:2.1rem; font-weight:700; color:var(--purple-deep); margin-bottom:1rem; line-height:1.2; } .prayer-info p { font-size:0.93rem; color:var(--muted); line-height:1.85; margin-bottom:0.9rem; } .prayer-details { background:var(--white); border-left:3px solid var(--purple); padding:2rem; box-shadow:0 2px 24px rgba(91,45,142,0.08); } .prayer-detail-row { display:flex; align-items:flex-start; gap:1rem; margin-bottom:1.1rem; } .pdr-label { font-family:'Barlow Condensed',sans-serif; font-size:0.65rem; letter-spacing:0.2em; text-transform:uppercase; color:var(--gold); min-width:70px; } .pdr-value { font-size:0.92rem; color:var(--text); line-height:1.5; } #movement { background:var(--purple-deep); text-align:center; } #movement .eyebrow { color:var(--gold-light); } .movement-quote { font-family:'Playfair Display',serif; font-size:clamp(1.3rem,3vw,1.9rem); font-style:italic; color:rgba(255,255,255,0.92); max-width:760px; margin:0 auto 0.75rem; line-height:1.55; } .movement-ref { font-family:'Barlow Condensed',sans-serif; font-size:0.75rem; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold-light); margin-bottom:3rem; } .movement-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:rgba(255,255,255,0.08); max-width:800px; margin:0 auto; } .movement-item { background:rgba(255,255,255,0.04); padding:2.25rem 2rem; text-align:left; } .movement-item h4 { font-family:'Barlow Condensed',sans-serif; font-size:0.8rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--gold-light); margin-bottom:0.5rem; } .movement-item p { font-size:0.88rem; color:rgba(255,255,255,0.55); line-height:1.75; } #give { background:linear-gradient(135deg, var(--gold) 0%, var(--gold-mid) 100%); text-align:center; padding:5rem 2rem; } #give .eyebrow { color:rgba(255,255,255,0.65); } #give .sec-title { color:var(--white); } #give p { font-size:1rem; color:rgba(255,255,255,0.85); max-width:500px; margin:0 auto 2rem; line-height:1.8; } .btn-purple, .btn-primary-purple { display:inline-block; padding:1rem 2.5rem; background:var(--purple-deep); color:var(--white); font-family:'Barlow Condensed',sans-serif; font-size:0.85rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; text-decoration:none; } footer { background:var(--purple-deep); padding:4rem 2rem 2rem; } .footer-grid { max-width:1100px; margin:0 auto 3rem; display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:3rem; } .footer-brand h3 { font-family:'Playfair Display',serif; font-size:1.1rem; color:var(--white); margin-bottom:0.75rem; } .footer-brand p { font-size:0.84rem; color:rgba(255,255,255,0.45); line-height:1.8; margin-bottom:1.25rem; } .footer-social { display:flex; gap:0.6rem; } .footer-social a { width:34px; height:34px; border:1px solid rgba(255,255,255,0.18); display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,0.45); text-decoration:none; font-size:0.78rem; } .footer-col h4 { font-family:'Barlow Condensed',sans-serif; font-size:0.68rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold-light); margin-bottom:1rem; } .footer-col ul { list-style:none; } .footer-col ul li { margin-bottom:0.45rem; } .footer-col ul li a { font-size:0.83rem; color:rgba(255,255,255,0.4); text-decoration:none; } .footer-bottom { max-width:1100px; margin:0 auto; border-top:1px solid rgba(255,255,255,0.08); padding-top:1.5rem; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; } .footer-bottom p { font-size:0.76rem; color:rgba(255,255,255,0.25); } .footer-tax { font-family:'Barlow Condensed',sans-serif; font-size:0.68rem; letter-spacing:0.15em; text-transform:uppercase; color:rgba(255,255,255,0.25); } @media (max-width:900px) { nav { padding:1rem 1.5rem; } .nav-links { display:none; } .leadership-grid, .prayer-inner { grid-template-columns:1fr; gap:3rem; } .connect-grid { grid-template-columns:1fr 1fr; } .carousel-slide { min-width:calc(50% - 0.75rem); } .movement-grid { grid-template-columns:1fr; } .footer-grid { grid-template-columns:1fr 1fr; } .service-strip { gap:1.5rem; padding:1rem; } .strip-div { display:none; } .leader-column-left, .leader-column-right { text-align:center; } .leader-column-left .leader-summary, .leader-column-left .leader-quote, .leader-column-right .leader-summary, .leader-column-right .leader-quote { margin-left:auto; margin-right:auto; } .leader-image-column { order:-1; } } @media (max-width:600px) { .connect-grid { grid-template-columns:1fr; } .footer-grid { grid-template-columns:1fr; } .carousel-slide { min-width:calc(88% - 0.75rem); } .modal-field-submit { flex-direction:column; } #email-modal { padding:2rem 1.5rem; } }