/* Shekinah 8.7 — approved homepage finishing pass. One system, no needless repeats.
 * Uses the same fonts, colours, button style and imagery as the shared templates.
 * Page Builder can still reorder or customise individual sections. */
body.sai-website.home {--sai-final-plum:var(--sai-v6-hero-bg,#280733);--sai-final-gold:var(--gold,#f3be49);--sai-final-heading:var(--sai-v6-heading-font,Georgia,'Times New Roman',serif);}
body.sai-website.home .sai-home-hero {position:relative; overflow:hidden; background:linear-gradient(115deg,#23032e,#4e185b 72%,#280733);}
body.sai-website.home .sai-home-worship-back {inset:0;filter:none;opacity:.54;background-image:linear-gradient(90deg,#24032ff2 0%,#2f083bd9 52%,#351040af 100%),url('church/community-real.jpg');background-size:cover;background-position:center 45%}
body.sai-website.home .sai-home-hero-grid {min-height:clamp(520px,46vw,690px);padding-block:clamp(50px,5.5vw,78px);gap:clamp(24px,4vw,70px);}
body.sai-website.home .sai-home-hero-copy h1{font-family:var(--sai-final-heading);font-weight:400;font-size:clamp(4.35rem,6.7vw,7.65rem);letter-spacing:-.068em;line-height:.96;max-width:780px;}
body.sai-website.home .sai-home-hero-copy h1 em{font-family:var(--sai-final-heading);font-weight:400;color:var(--sai-final-gold);}
body.sai-website.home .sai-home-hero-lead{max-width:575px;font-size:clamp(1.035rem,1.3vw,1.2rem)!important;line-height:1.72;color:#f4eaf4!important;}
body.sai-website.home .sai-home-hero-photo{height:clamp(380px,37vw,515px);border-radius:22px 145px 22px 22px;box-shadow:0 28px 80px #1300198c;}
body.sai-website.home .sai-home-hero-photo>img{object-position:center 24%;}
body.sai-website.home .sai-home-pastor-ids b{font:400 1.2rem/1.25 var(--sai-final-heading)}
body.sai-website.home .sai-home-pastor-ids small{font-size:.8rem;line-height:1.4}
body.sai-website.home .sai-home-hero .btn {min-height:48px}
/* Service section: stronger images and typography, compact enough to avoid a wall of filler. */
body.sai-website.home .sai-home-services{background:#fffdfa!important;}
body.sai-website.home .sai-home-services>.container{padding-top:clamp(40px,4.5vw,65px);padding-bottom:clamp(35px,4vw,56px);gap:24px 28px;}
body.sai-website.home .sai-home-services-heading h2{font-family:var(--sai-final-heading);font-weight:400;letter-spacing:-.05em;line-height:1.07;color:#281430;font-size:clamp(2.65rem,3.8vw,4.4rem);}
body.sai-website.home .sai-home-services-heading p {font-size:clamp(1rem,1.2vw,1.125rem);color:#54475c;line-height:1.7;}
body.sai-website.home .sai-home-service-grid{gap:17px;}
body.sai-website.home .sai-home-service-card{border-radius:17px;overflow:hidden;border:1px solid #e8dfe7;background:#fff;box-shadow:0 12px 35px #25073012;}
body.sai-website.home .sai-home-service-card>img{height:clamp(165px,15vw,210px);width:100%;object-fit:cover;}
body.sai-website.home .sai-home-service-text{display:flex;flex-direction:column;gap:10px;min-height:285px;padding:19px 18px 20px;}
body.sai-website.home .sai-home-service-text h3{font:400 clamp(1.45rem,1.65vw,1.85rem)/1.16 var(--sai-final-heading);letter-spacing:-.03em;margin:0;color:#280c33}
body.sai-website.home .sai-home-service-text>span{font-size:.77rem;letter-spacing:.13em;font-weight:800;line-height:1.35;color:#751f81}
body.sai-website.home .sai-home-service-text p {font-size:1rem;line-height:1.62;margin:0;color:#564a60;min-height:0;flex:1}
body.sai-website.home .sai-home-service-text small{font-size:.9rem;line-height:1.5;color:#5c4a66}
body.sai-website.home .sai-home-service-text .sai-home-time{font-size:1rem;color:#4f1d62;font-weight:800;margin-top:10px}
body.sai-website.home .sai-home-service-text .sai-service-action{font-size:.95rem;line-height:1.35;min-height:45px;align-self:start;margin-top:10px;border-radius:50px;}
/* Details ribbon is informative but not a separate oversized section. */
body.sai-website.home .sai-home-service-ribbon{padding:18px 22px;border-radius:16px;margin-top:0;gap:15px}
body.sai-website.home .sai-home-service-ribbon strong{font-size:.91rem}
body.sai-website.home .sai-home-service-ribbon small{font-size:.82rem}
body.sai-website.home .sai-home-service-ribbon>a{font-size:.9rem;min-height:44px;display:inline-flex;align-items:center}
/* Church story uses the real congregation photograph; no invented congregants. */
body.sai-website.home .sai-home-about{background:#fff9f1;padding-block:clamp(52px,5.3vw,78px)!important;}
body.sai-website.home .sai-home-about-grid{gap:clamp(25px,3.7vw,58px);}
body.sai-website.home .sai-home-about-photo{border-radius:18px 85px 18px 18px;max-height:460px}
body.sai-website.home .sai-home-about-photo img{height:clamp(330px,33vw,460px);object-fit:cover;}
body.sai-website.home .sai-home-about-copy h2{font:400 clamp(2.7rem,3.6vw,4.15rem)/1.08 var(--sai-final-heading);letter-spacing:-.052em;color:#270e33}
body.sai-website.home .sai-home-about-copy p{font-size:1.04rem;line-height:1.72;color:#53455c}
body.sai-website.home .sai-home-values>div{font-size:1rem;line-height:1.4}
/* The approved change: ONE compact ministries invitation, not five repeated cards. */
body.sai-website.home .sai-home-ministry-invite{background:radial-gradient(circle at 92% -20%,#7b308a 0,transparent 36%),linear-gradient(110deg,#250430,#471353 72%,#2a0633);padding-block:clamp(36px,4vw,60px)!important;color:white;isolation:isolate}
body.sai-website.home .sai-ministry-invite-layout{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 40px;align-items:center;position:relative;z-index:1}
body.sai-website.home .sai-ministry-invite-layout h2{font:400 clamp(2.35rem,3.45vw,4.2rem)/1.09 var(--sai-final-heading);letter-spacing:-.046em;margin:9px 0 12px;max-width:820px;color:white}
body.sai-website.home .sai-ministry-invite-layout p{font-size:1.03rem;line-height:1.65;max-width:680px;color:#e9dce9;margin:0}
body.sai-website.home .sai-ministry-invite-layout .sai-home-kicker{color:#ffd16b;font-size:.8rem;letter-spacing:.15em}
body.sai-website.home .sai-ministry-invite-action{min-height:52px;border-radius:10px;white-space:nowrap;padding-inline:23px}
/* Theme lives in the builder now, can move between sections, no duplicate footer insert. */
body.sai-website.home .sai-home-theme.sai-v8-year{margin:0;padding-top:0!important;padding-bottom:0!important}
body.sai-website.home .sai-home-sermons{padding-block:clamp(40px,4.5vw,60px)!important}
/* Harmonise sticky header, buttons, typography and footer across site. */
body.sai-website .site-header{position:sticky!important;top:var(--sai-visible-toolbar-height,0px)!important}
body.sai-website .site-footer :is(a,p,li){line-height:1.6}
body.sai-website .btn{min-height:46px;line-height:1.35}
@media(max-width:1160px){
 body.sai-website.home .sai-home-services>.container{grid-template-columns:1fr;}
 body.sai-website.home .sai-home-service-grid{grid-column:1}
 body.sai-website.home .sai-home-service-text{min-height:245px}
 body.sai-website.home .sai-home-hero-copy h1{font-size:clamp(3.6rem,7vw,5.8rem)}
}
@media(max-width:800px){
 body.sai-website.home .sai-home-hero-grid{grid-template-columns:1fr;padding-block:35px 38px;min-height:0;gap:28px}
 body.sai-website.home .sai-home-hero-photo{height:420px;max-width:620px;width:100%;justify-self:center;border-radius:20px 95px 20px 20px}
 body.sai-website.home .sai-home-hero-copy h1{font-size:clamp(3.7rem,11vw,6rem);margin:18px 0 24px}
 body.sai-website.home .sai-home-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
 body.sai-website.home .sai-home-service-text{padding:15px 13px;min-height:285px}
 body.sai-website.home .sai-home-service-text h3{font-size:1.4rem}
 body.sai-website.home .sai-home-service-card>img{height:140px}
 body.sai-website.home .sai-ministry-invite-layout{grid-template-columns:1fr}
 body.sai-website.home .sai-ministry-invite-action{justify-self:start}
}
@media(max-width:680px){
 body.sai-website.home .sai-home-hero-grid{padding-block:34px;gap:24px}
 body.sai-website.home .sai-home-hero-copy h1{font-size:clamp(3.5rem,12.4vw,5.25rem);line-height:1.02}
 body.sai-website.home .sai-home-hero-lead{font-size:1.055rem!important;line-height:1.65}
 body.sai-website.home .sai-home-hero-photo{height:360px;border-radius:18px 75px 18px 18px}
 body.sai-website.home .sai-home-services>.container{padding-top:36px;padding-bottom:38px}
 body.sai-website.home .sai-home-services-heading h2{font-size:clamp(2.45rem,9vw,3.7rem)}
 body.sai-website.home .sai-home-service-grid{grid-template-columns:1fr;gap:17px}
 body.sai-website.home .sai-home-service-card>img{height:auto;max-height:none;aspect-ratio:16/8.5}
 body.sai-website.home .sai-home-service-text{min-height:0;padding:20px 22px;gap:11px}
 body.sai-website.home .sai-home-service-text p{flex:initial;font-size:1rem}
 body.sai-website.home .sai-home-service-ribbon{grid-template-columns:1fr;gap:13px}
 body.sai-website.home .sai-home-service-ribbon>div{border-right:0;border-bottom:1px solid #ffffff22;padding-bottom:11px}
 body.sai-website.home .sai-home-service-ribbon>a{grid-column:1;justify-content:center}
 body.sai-website.home .sai-home-about-grid{grid-template-columns:1fr;gap:25px}
 body.sai-website.home .sai-home-about-photo img{height:300px}
 body.sai-website.home .sai-ministry-invite-layout h2{font-size:clamp(2.3rem,9vw,3.45rem)}
 body.sai-website.home .sai-ministry-invite-action{white-space:normal}
}
@media(prefers-reduced-motion:reduce){body.sai-website.home *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Studio per-section controls are honoured by the homepage as well. */
body.sai-website .sai-home-section :is(h1,h2,h3){font-family:var(--sai-section-heading-font,var(--sai-v6-heading-font,Georgia,serif));}
/* Restore theme-specific heading sizes after font scaling (multiplying the base sizes). */
body.sai-website.home .sai-home-hero-copy h1{font-size:calc(clamp(4.35rem,6.7vw,7.65rem) * var(--sai-section-heading-scale,1))}
body.sai-website.home .sai-home-services-heading h2{font-size:calc(clamp(2.65rem,3.8vw,4.4rem) * var(--sai-section-heading-scale,1))}
body.sai-website.home .sai-home-about-copy h2{font-size:calc(clamp(2.7rem,3.6vw,4.15rem) * var(--sai-section-heading-scale,1))}
body.sai-website.home .sai-ministry-invite-layout h2{font-size:calc(clamp(2.35rem,3.45vw,4.2rem) * var(--sai-section-heading-scale,1))}
@media(max-width:680px){body.sai-website.home .sai-home-section.sai-hide-mobile{display:none!important}}
@media(min-width:681px){body.sai-website.home .sai-home-section.sai-hide-desktop{display:none!important}}
