/* An airy, editorial finish, built around the church's own colour palette. */
:root{--lux-gold:#C49A38;--lux-border:#C49A3847;--lux-shadow:0 18px 48px #14243A0C}
body{font-kerning:normal;-webkit-font-smoothing:antialiased}
body header{border-bottom:1px solid var(--lux-border);box-shadow:0 5px 28px #14243A07}
body header .brand>span{letter-spacing:1px;line-height:1.4}
body header .brand small{letter-spacing:1.8px}
body header nav a{border-radius:10px;border:1px solid #FFFFFF33;box-shadow:0 3px 10px #14243A0B;transition:background .25s,box-shadow .25s,transform .25s}
body header nav a:hover,body header nav a:focus-visible{box-shadow:0 5px 18px #14243A18;transform:translateY(-2px)}
body .hero-shade{background:linear-gradient(90deg,#14243AF2,#14243AC9 52%,#14243A50),linear-gradient(0deg,#14243AC4,transparent 65%)}
body .hero .kinetic-headline{letter-spacing:-1.5px;line-height:1.12;text-shadow:0 3px 24px #00000030;text-wrap:balance}
body .hero .hero-invitation{max-width:520px;font-style:italic;letter-spacing:-.3px}
body .hero-family .family-photo{border-color:#FFF8EE;outline:1px solid #C49A38;outline-offset:7px;box-shadow:0 24px 65px #00000033}
body .hero-family .family-caption{border-radius:12px;margin-top:25px;padding:22px 14px;background:#FFF8EE;box-shadow:0 14px 32px #00000014}
body .hero .cinema-orbit{opacity:.45}
body .hero .cinema-orbit-star{opacity:.65}
body .hero-bottom{border-color:#C49A3870;padding-top:24px}
body .section,body .values-section{padding-top:clamp(80px,8vw,124px);padding-bottom:clamp(80px,8vw,124px)}
body .section h2,body .values-section h2{font-family:'Libre Caslon Display',Georgia,serif;letter-spacing:-1.2px;line-height:1.12;text-wrap:balance}
body .section .eyebrow,body .values-section .eyebrow{display:flex;align-items:center;gap:15px;letter-spacing:2.1px;font-weight:700;margin-bottom:26px}
body .section .eyebrow:before,body .values-section .eyebrow:before{content:'';display:block;width:35px;height:1px;flex:0 0 35px;background:#C49A38}
body .section .lead{font-size:clamp(24px,2.2vw,29px);line-height:1.6}
body .about-copy>p,body .pastor-copy>p,body .visit-intro>p{max-width:64ch;line-height:1.8}
body .split-heading{gap:clamp(28px,5vw,80px);margin-bottom:48px}
body .split-heading>p{line-height:1.8}
body .button,body .hero-next-steps .button{border-radius:10px;background:linear-gradient(135deg,#176F87,#12647B);color:#FFFFFF;border:1px solid #FFFFFF30;box-shadow:0 7px 20px #12647B16;transition:background .25s,transform .25s,box-shadow .25s}
body .button:hover,body .button:focus-visible{background:#0B4B61;box-shadow:0 12px 28px #12647B23;transform:translateY(-3px)}
body .hero-next-steps .button:first-child{background:#0B4B61;border-color:#FFE06699}
body :is(a,button,input,textarea,summary):focus-visible{outline:3px solid #12647B;outline-offset:5px}
body .hero :is(a,button):focus-visible{outline-color:#FFE066}
body #services .service-time-card,body #ministries .ministry,body .membership-panel,body .contact-panel,body #giving .giving-bank-card{border:1px solid var(--lux-border);border-radius:18px;box-shadow:var(--lux-shadow);background:#FFF8EE}
body #services .service-time-card,body #ministries .ministry{padding:clamp(26px,3vw,40px);border-top:2px solid #C49A3875}
body #services .service-time-card:hover,body #ministries .ministry:hover{box-shadow:0 22px 50px #14243A12}
body #services .service-time-icon,body #ministries .icon{color:#12647B}
body .schedule-utility{padding:20px 0;border-top:1px solid var(--lux-border);border-bottom:1px solid var(--lux-border);margin-bottom:28px}
body .next-gathering{border-top:1px solid var(--lux-border);border-bottom:1px solid var(--lux-border);padding-top:42px;padding-bottom:42px}
body .service-countdown strong{font-family:'Libre Caslon Display',Georgia,serif;font-variant-numeric:tabular-nums}
body .service-countdown>div{border-radius:12px;border:1px solid var(--lux-border);box-shadow:0 5px 16px #14243A04}
body .visitor-questions details{padding:24px 0;border-bottom:1px solid var(--lux-border)}
body .visitor-questions summary{line-height:1.5}
body .visitor-questions details[open] summary{color:#12647B!important}
body .milestones{border-color:var(--lux-border);padding-top:30px}
body .milestones b{color:#14243A;font-family:'Libre Caslon Display',Georgia,serif;font-size:32px}
body #leadership .pastors{border:0;box-shadow:none;gap:clamp(36px,6vw,85px)}
body #leadership .pastor-gallery{background:transparent;padding:0;border:0;box-shadow:none;overflow:visible}
body .pastor-photo-stage{border-radius:20px 20px 4px 4px;overflow:hidden;border:1px solid var(--lux-border);box-shadow:var(--lux-shadow)}
body .pastor-photo-caption{background:transparent!important;border:0!important;box-shadow:none!important;padding:26px 8px 12px}
body #leadership .team-member{border:1px solid #C49A3838;border-radius:16px;padding:15px;background:#FFF8EE;box-shadow:0 10px 26px #14243A06}
body #leadership .team-member img{border-radius:10px}
body #leadership .team h4{margin-top:20px;line-height:1.4}
body .gallery-controls{border-color:var(--lux-border);padding-top:20px;padding-bottom:20px}
body .pastor-thumbnail{border-radius:8px;overflow:hidden}
body #church-life .life-photo,body .cinema-frame{border:1px solid #C49A3855;box-shadow:0 14px 36px #14243A12;border-radius:16px}
body .cinema-reel{padding-top:34px;padding-bottom:38px;border-top:1px solid var(--lux-border);border-bottom:1px solid var(--lux-border)}
body .cinema-reel-heading{padding-bottom:25px}
body #message .video-wrap{border-radius:18px;box-shadow:0 24px 60px #14243A14;border-color:#C49A3860}
body #message .message-play-symbol{background:#12647BEF;border-color:#FFE066B3;box-shadow:0 0 0 10px #FFFFFF0D}
body .children-church-video video,body #childrens-church video{border-radius:18px;border-color:#C49A3860;box-shadow:var(--lux-shadow)}
body #giving .giving-bank-card{border-top:3px solid #C49A38;padding:clamp(26px,4vw,48px)}
body .giving-card-heading,body .giving-bank-card dl>div{border-color:var(--lux-border)}
body .contact-panel>div{padding-top:25px;padding-bottom:25px;border-color:var(--lux-border)}
body .contact-icon{color:#12647B}
body footer{border-top:1px solid #C49A3860;padding-top:64px}
body .footer-bottom{border-top:1px solid var(--lux-border);padding-top:26px;margin-top:35px}
@media(max-width:1000px){body #leadership .pastors{gap:38px}}
@media(max-width:760px){body .section,body .values-section{padding-top:72px;padding-bottom:72px}body .hero .hero-invitation{font-size:29px}body .hero-family .family-caption{padding:20px 12px}body .section .eyebrow,body .values-section .eyebrow{letter-spacing:1.4px;gap:12px}body .split-heading{gap:24px;margin-bottom:32px}body #services .service-time-card,body #ministries .ministry{padding:28px}body #leadership .team-member{padding:10px}body .next-gathering{padding-top:34px;padding-bottom:34px}body footer{padding-top:44px}body .service-countdown>div{border-radius:8px}}
@media(prefers-reduced-motion:reduce){body header nav a,body .button,body .hero-next-steps .button{transition:none;transform:none}}
.motion-paused body header nav a,.motion-paused body .button{transition:none;transform:none}
