/* Every feature is visible, with compact aligned icons and natural card height. */
.church-features{background:#f3efe6;padding:48px 0 34px}
.features-heading{margin-bottom:25px}.features-heading .eyebrow{color:#806332;font-size:.75rem;letter-spacing:.13em;margin-bottom:13px}
.features-heading h2{font-size:clamp(2.3rem,4.3vw,3.7rem);line-height:1.02;letter-spacing:-.05em}.features-heading h2 span{color:#8c713e}
.feature-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.feature-board .board-feature{position:relative;min-width:0;padding:20px;display:flex;flex-direction:column;align-items:flex-start;border:1px solid #ddd4c2;border-radius:12px;background:#fffdf8;transition:border-color .2s,box-shadow .2s}
.feature-title{display:flex;align-items:center;gap:12px;width:100%}.feature-title h3{font-size:clamp(1.125rem,1.55vw,1.3125rem);line-height:1.25;letter-spacing:-.03em}
.feature-icon-wrap{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:9px;background:#f2eadb;color:#9e7938}
.feature-icon-wrap .icon{width:25px;height:25px;stroke-width:1.5}
.feature-content{display:block;width:100%;padding-top:12px}.feature-content>p{font-size:.9375rem;line-height:1.55;color:#62616a;margin:0}
.feature-tag{display:block;margin-top:12px;color:#796744;font-size:.7rem;line-height:1.5;border-top:1px solid #e2d8c3;padding-top:9px;width:100%}
.feature-footnote{display:block;font-size:.6875rem;line-height:1.5;color:#766e5e;margin-top:7px}
#languages,#simultaneous-streams,#small-rooms{scroll-margin-top:108px}
.board-feature[data-icon-motion=on][data-icon-seen=true] .feature-icon-wrap{animation:feature-icon-welcome .8s ease-out both}
@keyframes feature-icon-welcome{0%{transform:scale(.94)}45%{transform:scale(1.13);box-shadow:0 0 0 6px #c9ab6a18}100%{transform:scale(1);box-shadow:0 0 0 0 #c9ab6a00}}
@media(hover:hover){.feature-board .board-feature:hover{border-color:#bfa573;box-shadow:0 5px 16px #6b542b0a}}
/* A compact, aligned language footer shares the proportions of the other cards. */
.feature-language-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px 12px;border-top:1px solid #e2d8c3;padding-top:8px;margin-top:12px}
.language-reveal{display:flex;align-items:center;gap:8px;flex:1;min-width:160px;width:auto;color:#806025;margin:0}
.language-reel-window{display:block;height:2rem;width:108px;flex:0 1 108px;min-width:78px;position:relative;overflow:hidden}
.language-reel-window #total-languages{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:1.75rem;line-height:1;font-weight:650;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.language-reel-track{display:none;position:absolute;inset:0 0 auto}
.language-reel-row{display:flex;align-items:center;justify-content:center;height:2rem;padding:0 2px;font-size:.8125rem;font-weight:550;letter-spacing:-.02em;line-height:1.15;color:#615435;text-align:center}
.language-reel-row.language-reel-number{font-size:1.75rem;color:#806025;font-weight:650;letter-spacing:-.05em}
.language-reveal[data-state=playing] .language-reel-track{display:block;will-change:transform}.language-reveal[data-state=playing] #total-languages{opacity:0}
.language-reveal-label{font-size:.7rem;line-height:1.3;color:#6e6146;max-width:65px}
.board-languages .text-link{display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:3px 0;flex:none;border:0;background:none;font-size:.75rem;line-height:1.35;text-align:left;text-decoration:underline;text-underline-offset:4px}
/* The shared-value photograph now introduces the usage calculator. */
.feature-value-banner{display:grid;grid-template-columns:minmax(270px,.95fr) minmax(0,1.1fr) auto;gap:26px;align-items:center;background:#ead9b2;border:1px solid #dcc99f;border-radius:12px;overflow:hidden}
.feature-value-banner>img{height:100%;min-height:225px;width:100%;object-fit:cover;object-position:50% 38%}
.value-benefit{padding:24px 0}
.value-benefit h3{font-size:clamp(1.5rem,2.3vw,1.9rem);line-height:1.1}
.value-benefit p{font-size:1rem;line-height:1.5;color:#62553a;max-width:350px;margin-top:11px}
.value-price{padding:24px 26px 24px 0;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.value-price>p{font-size:1rem;line-height:1.2;color:#5c4e31}
.value-price strong{font-size:2.85rem;font-weight:650;letter-spacing:-.06em;color:#332d21;margin:0 3px}
.value-price>span{font-size:.75rem;line-height:1.5;color:#64583d}
.pricing-section .feature-value-banner{margin-bottom:22px}
/* Expanded reviews remain collapsible. A quote mark leads each card. */
.testimonials-section{padding-top:22px;padding-bottom:22px}
.stories-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;min-height:78px;border-top:1px solid #e6dfd2;border-bottom:1px solid #e6dfd2;font-size:clamp(1.3rem,2.2vw,1.8rem);font-weight:600;line-height:1.3;letter-spacing:-.035em}
.stories-disclosure>summary::-webkit-details-marker{display:none}
.stories-disclosure>summary span{display:grid;place-items:center;width:28px;height:28px;flex:none;margin-left:auto;font-size:1.5rem;font-weight:400;line-height:1}
.stories-disclosure[open]>summary span{transform:rotate(45deg)}
.stories-disclosure .testimonial-grid{margin-top:20px}
.testimonial-card>.testimonial-quote{width:28px;height:28px;fill:#b5914d;stroke:none}
/* One compact FAQ disclosure keeps the page short, with matching plus/minus marks. */
#pricing{padding-bottom:14px}#faq{padding-top:22px;padding-bottom:38px}
.faq-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:86px;padding:18px 4px;list-style:none;cursor:pointer;border-top:1px solid #d8cfbe;border-bottom:1px solid #d8cfbe}
.faq-disclosure>summary::-webkit-details-marker{display:none}
.faq-disclosure>summary h2{font-size:clamp(1.25rem,2.1vw,1.65rem);line-height:1.25}
.faq-disclosure>summary p{font-size:.8125rem;line-height:1.4;color:#756d5c;margin-top:6px}
.faq-disclosure>summary .disclosure-mark{display:grid;place-items:center;flex:none;width:28px;height:28px}
.faq-disclosure[open]>summary .disclosure-vertical{opacity:0;transform:rotate(90deg)}
.faq-content{padding-top:20px}
.faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;align-items:start}
.faq-list .faq{border-bottom:1px solid #dfd8ca}.faq-column>.faq:first-child{border-top:1px solid #dfd8ca}
.faq-list .faq summary{display:flex;align-items:center;gap:16px;min-height:68px;padding:17px 0;font-size:.9375rem;line-height:1.45;font-weight:550;list-style:none}.faq-list .faq summary::-webkit-details-marker{display:none}.faq-list .faq summary::after{display:none}
.faq-list .faq summary>span:first-child{flex:1;min-width:0}
.faq-list .disclosure-mark{display:grid;place-items:center;flex:none;width:28px;height:28px}
.faq-list .faq[open] .disclosure-vertical{opacity:0;transform:rotate(90deg)}
.faq-list .faq p{padding:0 28px 20px 0;font-size:.875rem;line-height:1.7;color:#63626a}
.faq-contact{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;padding-top:22px;font-size:.875rem;color:#626051}.faq-contact .faq-email,.faq-contact .ask-inline{margin:0;min-height:44px;display:inline-flex;align-items:center;font-size:.875rem}
@media(max-width:1100px){.feature-board{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-board .board-feature:last-child{grid-column:1/-1}.feature-value-banner{grid-template-columns:minmax(240px,.9fr) 1.1fr;gap:0 25px}.feature-value-banner>img{grid-row:1/3;min-height:260px}.value-benefit{padding:22px 23px 0 0}.value-price{padding-top:15px}}
@media(max-width:700px){
 .church-features{padding:34px 0 26px}.features-heading h2{font-size:2.5rem}.features-heading{margin-bottom:22px}.feature-board{grid-template-columns:1fr;gap:11px}.feature-board .board-feature,.feature-board .board-feature:last-child{grid-column:auto;padding:18px 20px}.feature-title h3{font-size:1.1875rem}.feature-content{padding-top:10px}
 .feature-value-banner{grid-template-columns:1fr;gap:0}.feature-value-banner>img{grid-row:auto;height:auto;min-height:0;aspect-ratio:3/2;object-fit:contain;object-position:center}.value-benefit{padding:22px 22px 0}.value-benefit h3{font-size:1.75rem}.value-price{padding:16px 22px 22px}
 .stories-disclosure>summary{min-height:72px;font-size:1.4rem}.faq-disclosure>summary{min-height:82px;padding:16px 0;gap:16px}.faq-list{grid-template-columns:1fr}.faq-column+.faq-column>.faq:first-child{border-top:0}.faq-contact{gap:4px 20px}.faq-contact>span{flex-basis:100%}
}
@media(prefers-reduced-motion:reduce){.feature-icon-wrap{animation:none!important}.language-reveal .language-reel-track{display:none!important}.language-reveal #total-languages{opacity:1!important}}
/* Shared summary geometry across all three pricing disclosures. */
.pricing-section .pricing-disclosure{padding:0;margin:0;border:0;border-bottom:1px solid #d8cfbe;border-radius:0;background:transparent}
.pricing-section .pricing-disclosure.plan-inclusions{margin-top:26px;border-top:1px solid #d8cfbe}
.pricing-section .pricing-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;min-height:76px;padding:20px 4px;font-size:1rem;line-height:1.45;font-weight:600}
.pricing-section .pricing-disclosure>summary::-webkit-details-marker{display:none}
.pricing-section .pricing-disclosure>summary .disclosure-title{margin:0;font:inherit;transform:none}
.pricing-section .pricing-disclosure>summary .disclosure-mark{margin:0;display:grid;place-items:center;flex:none;width:28px;height:28px;font-size:inherit;transform:none}
.disclosure-mark svg{display:block;width:20px;height:20px;fill:none;stroke:#8b713c;stroke-width:1.6;stroke-linecap:round}
.disclosure-vertical{transition:transform .2s,opacity .2s;transform-origin:12px 12px}
.pricing-disclosure[open] .disclosure-vertical{transform:rotate(90deg);opacity:0}
.pricing-section .pricing-disclosure>ul{margin:0;padding:3px 4px 25px}
.pricing-section .pricing-disclosure .table-scroll{padding:3px 4px 25px}
.pricing-section .pricing-disclosure .pricing-notes{padding:3px 4px 25px;margin:0}
@media(max-width:700px){.pricing-section .pricing-disclosure>summary{min-height:72px;font-size:.9rem;padding:18px 0;gap:16px}}

/* Consistent feature card footers. */
.feature-board :is(.board-rooms,.board-branding,.board-scripture) .feature-title{min-height:calc(clamp(1.125rem,1.55vw,1.3125rem)*2.5)}
.feature-board :is(.board-rooms,.board-branding,.board-scripture) .feature-content{display:flex;flex-direction:column;flex:1;gap:12px}
.feature-board :is(.board-rooms,.board-branding,.board-scripture) .feature-content>p{margin:0}
.feature-board :is(.board-rooms,.board-branding,.board-scripture) :is(.feature-tag,.feature-footnote){display:block;width:100%;margin-top:auto;border-top:1px solid #e2d8c3;padding-top:9px;color:#796744;font-size:.7rem;font-weight:600;line-height:1.5}
@media(max-width:700px){.feature-board :is(.board-rooms,.board-branding,.board-scripture) .feature-title{min-height:40px}}

/* Align the first text line, icons and description across every card row. */
.feature-board .board-feature .feature-title{align-items:flex-start;min-height:calc(clamp(1.125rem,1.55vw,1.3125rem)*2.5)}
.feature-board .board-feature .feature-title h3{margin:0}
@media(max-width:700px){.feature-board .board-feature .feature-title{min-height:2.96875rem}}

/* Keep supporting lines on the same baseline throughout each row. */
.feature-board .board-feature .feature-content{display:flex;flex-direction:column;flex:1;gap:12px}
.feature-board .board-feature .feature-content>p{margin:0}
.feature-board .board-feature .feature-tag{margin-top:auto}
.feature-board .board-feature .feature-footnote{color:#796744;font-size:.7rem;font-weight:600;line-height:1.5}
.feature-board .board-languages .feature-language-footer{margin-top:auto}
.feature-board .board-languages .feature-footnote{margin-top:0}

/* Keep the full conversation visible in a wide photo above the mobile copy. */
@media(max-width:700px){.feature-value-banner>img{width:100%;height:auto!important;min-height:0!important;aspect-ratio:16/9!important;object-fit:contain!important;object-position:center!important;}}
