:root[data-theme="jaune-bleu"]{--deep:#102b57;--ink:#102b57;--accent:#ffe000;--accent-text:#1852a6;--accent-light:#ffe66b;--paper:#ffffff;--surface:#f1f6fd;--line:#d9e2f0;--muted:#52647d;--on-deep-muted:#dbe7fa;--on-accent:#102b57;--on-accent-soft:#24446e;--tint:#fff8cc;--focus:#235ec2;--deep-rgb:16 43 87;--accent-rgb:255 224 0;--on-accent-rgb:16 43 87;--accent-soft-rgb:255 230 107;}
:root[data-theme="jaune-bleu"] :is(.hero,.location-card,.pastor-card:not(.pastor-card-accent),.footer,.navigation.open){--focus:#ffe000;}
:root[data-theme="solaire"]{--deep:#251c18;--ink:#2b201a;--accent:#ff762b;--accent-text:#ac3c08;--accent-light:#ffbf87;--paper:#ffffff;--surface:#fff4ed;--line:#eadbd3;--muted:#6c5e56;--on-deep-muted:#f2dfd2;--on-accent:#251c18;--on-accent-soft:#51311e;--tint:#fff0e4;--focus:#b64512;--deep-rgb:37 28 24;--accent-rgb:255 118 43;--on-accent-rgb:37 28 24;--accent-soft-rgb:255 191 135;}
:root[data-theme="violet"]{--deep:#21172c;--ink:#2b1e38;--accent:#8338b9;--accent-text:#7831ab;--accent-light:#dfb4ff;--paper:#ffffff;--surface:#f7f2fa;--line:#e4d9ea;--muted:#6b5e74;--on-deep-muted:#ebdff4;--on-accent:#ffffff;--on-accent-soft:#f4e8ff;--tint:#f4e9fc;--focus:#8b39c0;--deep-rgb:33 23 44;--accent-rgb:131 56 185;--on-accent-rgb:255 255 255;--accent-soft-rgb:223 180 255;}
:root[data-theme="emeraude"]{--deep:#142921;--ink:#183529;--accent:#057b5c;--accent-text:#006849;--accent-light:#86e5bd;--paper:#ffffff;--surface:#f0f7f3;--line:#d4e4dc;--muted:#55685f;--on-deep-muted:#d6ebe0;--on-accent:#ffffff;--on-accent-soft:#d6fae8;--tint:#e5f5ed;--focus:#137b5c;--deep-rgb:20 41 33;--accent-rgb:5 123 92;--on-accent-rgb:255 255 255;--accent-soft-rgb:134 229 189;}
:root[data-theme="monochrome"]{--deep:#161616;--ink:#202020;--accent:#272727;--accent-text:#202020;--accent-light:#dedede;--paper:#ffffff;--surface:#f3f3f3;--line:#dddddd;--muted:#636363;--on-deep-muted:#dddddd;--on-accent:#ffffff;--on-accent-soft:#e5e5e5;--tint:#eeeeee;--focus:#6b6b6b;--deep-rgb:22 22 22;--accent-rgb:39 39 39;--on-accent-rgb:255 255 255;--accent-soft-rgb:222 222 222;}
:root{--paper:#fff;--accent-text:#2856ef;--deep-rgb:7 19 38;--accent-rgb:40 86 239;--accent-soft-rgb:166 187 217;--on-deep-muted:#d6e0f0;--on-accent:#fff;--on-accent-rgb:255 255 255;--on-accent-soft:#e4ecff;--tint:#edf2ff;--focus:#84b0ff}
:root[data-theme="catalan"]{--deep:#211719;--ink:#251a1d;--accent:#ca2838;--accent-text:#b62132;--accent-light:#ffb4a9;--paper:#fff;--surface:#f6f2f1;--line:#e4d9d8;--muted:#6e6062;--deep-rgb:33 23 25;--accent-rgb:202 40 56;--accent-soft-rgb:255 180 169;--on-deep-muted:#f0ddde;--on-accent:#fff;--on-accent-rgb:255 255 255;--on-accent-soft:#ffebdf;--tint:#fcecef;--focus:#ad2837}
:root[data-theme="bordeaux"]{--deep:#28171e;--ink:#35242b;--accent:#80273f;--accent-text:#80273f;--accent-light:#edb7c5;--paper:#fffaf2;--surface:#f5ede5;--line:#e4d5d5;--muted:#705e63;--deep-rgb:40 23 30;--accent-rgb:128 39 63;--accent-soft-rgb:237 183 197;--on-deep-muted:#ead8dc;--on-accent:#fffaf2;--on-accent-rgb:255 250 242;--on-accent-soft:#f6dce3;--tint:#f7e9ee;--focus:#a65b70}
:root[data-theme="carbone"]{--deep:#1c1d20;--ink:#25262a;--accent:#dbb451;--accent-text:#806018;--accent-light:#f1cd73;--paper:#fffdf8;--surface:#f4f1ea;--line:#ded9ce;--muted:#656259;--deep-rgb:28 29 32;--accent-rgb:219 180 81;--accent-soft-rgb:241 205 115;--on-deep-muted:#dfdbcf;--on-accent:#1c1d20;--on-accent-rgb:28 29 32;--on-accent-soft:#443716;--tint:#fcf1d5;--focus:#99700e}
body{background:var(--paper)}.header{background:var(--paper)}.brand{mix-blend-mode:multiply}.button{color:var(--on-accent)}.button-white{color:var(--deep)}.button:hover{color:#fff}.button-white:hover{color:var(--on-accent)}.hero .highlight,.values-band,.city-tabs button[aria-selected=true],.common-service,.pastor-card-accent,.faith{color:var(--on-accent)}.values-band .outline,.faith .outline{-webkit-text-stroke-color:var(--on-accent)}.common-symbol{border-color:rgb(var(--on-accent-rgb)/.45)}.common-next{border-color:rgb(var(--on-accent-rgb)/.45)}.common-next>a{border-color:rgb(var(--on-accent-rgb)/.65)}.pastor-card-accent .pastor-top,.pastor-card-accent .pastor-bottom,.pastor-card-accent .pastor-bottom details[open] summary{border-color:rgb(var(--on-accent-rgb)/.4)}.pastor-card-accent .pastor-index{color:var(--on-accent-soft)}.pastor-card-accent .pastor-bottom>span,.pastor-card-accent .pastor-bottom details>p,.pastor-card-accent .pastor-bottom .text-link:hover{color:var(--on-accent-soft)}.faith-details{border-color:rgb(var(--on-accent-rgb)/.5)}.about-details{margin-top:55px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.about-details summary{display:flex;justify-content:space-between;align-items:center;gap:24px;list-style:none;cursor:pointer;padding:23px 0;font-size:1.1rem;font-weight:600}.details-plus{font-size:28px;transition:transform .25s}.about-details[open] .details-plus{transform:rotate(45deg)}.about-text{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:5px 0 30px;color:var(--muted);font-size:1rem;line-height:1.85}.about-text p{max-width:none}.faith-layout{align-items:start;grid-template-columns:.9fr 1.1fr;gap:65px}.faith-copy .faith-details{margin-top:26px}.faith-details .confession-text p{font-size:1rem;line-height:1.85;padding:0;margin:0 0 21px}.faith-details .confession-text p:last-child{margin-bottom:27px}.confession-closing{font-weight:600}.faith-copy>.lead{font-size:1.35rem}.about-details summary:hover{color:var(--accent-text)}.large-plus{color:var(--accent-text)}
@media(max-width:650px){.about-details{margin-top:34px}.about-details summary{font-size:1rem;line-height:1.5}.about-text{grid-template-columns:1fr;gap:20px;padding-bottom:26px}.faith-layout{grid-template-columns:1fr;gap:28px}.faith-copy>.lead{font-size:1.2rem}.faith-details .confession-text p{font-size:1rem;line-height:1.8}}
.direct-contact-list{display:flex;flex-direction:column;gap:21px}.direct-contact-list>a{display:grid;position:relative;padding:0 30px 15px 0;border-bottom:1px solid var(--line);line-height:1.55;transition:color .25s}.direct-contact-list>a:hover{color:var(--accent-text)}.contact-label{font-size:.75rem;color:var(--muted);margin-bottom:4px}.direct-contact-list strong{font-size:1.03rem;font-weight:600;overflow-wrap:anywhere}.contact-person{font-size:.8125rem;color:var(--muted);margin-top:3px}.contact-arrow{position:absolute;right:0;top:18px;font-size:22px;transition:transform .25s}.direct-contact-list>a:hover .contact-arrow{transform:translate(3px,-3px)}.social-area{margin-top:48px;border-top:1px solid var(--line);padding-top:27px}.social-area>.eyebrow{color:var(--muted)}.social-links{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.social-links>a{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);padding:22px 25px;transition:background .25s,color .25s,transform .25s}.social-links>a:hover{background:var(--deep);color:white;transform:translateY(-3px)}.social-links>a>span:first-child{display:flex;flex-direction:column;gap:5px}.social-links strong{font-family:var(--display);font-size:2rem;line-height:1.1;text-transform:uppercase;font-weight:600}.social-links>a>span:first-child>span{font-size:.875rem}.social-links>a>span:last-child{font-size:28px;transition:transform .25s}.social-links>a:hover>span:last-child{transform:translate(4px,-4px)}.footer-socials{display:flex;gap:28px;padding-top:22px;font-size:.875rem}.footer-socials>a{border-bottom:1px solid #ffffff65;padding:5px 0;transition:color .25s}.footer-socials>a:hover{color:var(--accent-light)}
@media(max-width:650px){.social-area{margin-top:36px}.social-links{grid-template-columns:1fr;gap:13px}.social-links>a{padding:19px 22px}.direct-contact-list{max-width:450px}}

.pastor-grid > .pastor-card{display:flex;flex-direction:column;min-width:0}
.pastor-grid > .pastor-card > h3{margin-block:auto}
.pastor-card-portrait{isolation:isolate;min-height:640px;border-top:5px solid var(--accent);--focus:var(--accent-light)}
.pastor-portrait{position:absolute;inset:0;z-index:-2;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 20%;filter:saturate(.92) contrast(1.03);transition:transform .8s cubic-bezier(.2,.7,.3,1),filter .8s}
.pastor-card-portrait::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgb(var(--deep-rgb)/.85) 0%,rgb(var(--deep-rgb)/0) 23%,rgb(var(--deep-rgb)/.04) 35%,rgb(var(--deep-rgb)/.85) 67%,rgb(var(--deep-rgb)/.98) 89%)}
.pastor-grid > .pastor-card-portrait > h3{margin:auto 0 0;padding-bottom:26px}
.pastor-card-portrait .pastor-index{color:var(--accent-light)}
.pastor-card-portrait .pastor-bottom .text-link:hover{color:var(--accent-light)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.pastor-card-portrait:hover .pastor-portrait,.pastor-card-portrait:focus-within .pastor-portrait{transform:scale(1.035);filter:saturate(1) contrast(1.03)}}
@media(max-width:650px){.pastor-card-portrait{min-height:600px}.pastor-grid > .pastor-card-portrait > h3{font-size:clamp(3rem,12vw,4.6rem);padding-top:210px;padding-bottom:24px}}
.hero-photo{object-position:50% 62%}
.phone-disclosure{border-bottom:1px solid var(--line);padding-bottom:15px}
.phone-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none}
.phone-copy{display:flex;flex-direction:column;line-height:1.55}
.phone-icon{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;color:var(--deep);background:var(--accent);transition:transform .25s,background .25s,color .25s}
.phone-icon svg{width:22px;height:22px}
.phone-disclosure summary:hover .phone-icon{transform:rotate(-12deg);background:var(--deep);color:white}
.phone-open,.phone-disclosure[open] .phone-closed{display:none}
.phone-disclosure[open] .phone-open{display:inline}
.revealed-phone{display:inline-block;margin-top:17px;font-size:1.3rem;font-weight:600;color:var(--accent-text);border-bottom:1px solid currentColor}
.revealed-phone:hover{color:var(--deep)}
@media(max-width:650px){.hero-photo{object-position:42% 65%}}
.pastor-card-portrait .pastor-top{border-bottom:0}
.contact-form-area{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;margin-top:70px;padding:44px;background:var(--surface);border-top:5px solid var(--accent)}
.form-intro h3{font-size:clamp(2.8rem,4vw,4.5rem);margin:16px 0 22px}
.form-intro p{color:var(--muted);line-height:1.8}
.contact-form{min-width:0}
.form-help,.field-help,.form-privacy{font-size:.875rem;color:var(--muted);line-height:1.6}
.form-help{margin-bottom:22px}
.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.form-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.form-field label{font-size:.9375rem;font-weight:600}
.form-field label>span{font-weight:400;color:var(--muted)}
.form-field input,.form-field textarea{display:block;width:100%;min-width:0;border:1px solid var(--line);border-radius:0;background:white;color:var(--ink);font:inherit;font-size:1rem;padding:14px 15px;transition:border-color .2s,box-shadow .2s}
.form-field textarea{min-height:150px;resize:vertical}
.form-field input:focus,.form-field textarea:focus{outline:2px solid var(--focus);outline-offset:2px;border-color:var(--focus)}
.form-wide{grid-column:1/-1}
.form-consent{display:flex;align-items:flex-start;gap:12px;font-size:.875rem;line-height:1.6;margin:24px 0 14px;cursor:pointer}
.form-consent input{width:19px;height:19px;flex-shrink:0;margin:3px 0 0;accent-color:var(--accent-text)}
.form-consent input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.form-privacy a{text-decoration:underline;text-underline-offset:3px}
.contact-form .button{margin-top:24px}
.form-honeypot{display:none}
.thanks-page{min-height:100dvh;display:grid;place-items:center;padding:30px;background:var(--deep);color:white}
.thanks-card{max-width:720px;border-top:5px solid var(--accent);padding:44px;background:rgb(255 255 255/.05)}
.thanks-card h1{font-size:clamp(3.5rem,8vw,6rem);margin:22px 0}
.thanks-card p{color:var(--on-deep-muted);line-height:1.8}
.thanks-card .button{margin-top:30px}
@media(max-width:900px){.contact-form-area{grid-template-columns:1fr;gap:28px;padding:32px}}
@media(max-width:650px){.contact-form-area{margin-top:45px;padding:26px 20px}.form-fields{grid-template-columns:1fr;gap:20px}.contact-form .button{width:100%;justify-content:center}.thanks-card{padding:28px}}
.invite-hours{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.invite-hours strong{font-size:1.65rem;white-space:nowrap}
@media(max-width:650px){.invite-title,.invite-hours{grid-column:1/-1}.invite-hours{gap:12px;margin-top:18px}}

.contact-direct .button{margin-top:24px;max-width:100%;white-space:normal;text-align:center;padding:16px 20px}.contact-form>.form-help:last-child{margin-top:20px}.contact-form>.form-help a{text-decoration:underline;text-underline-offset:3px}

.legal-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:28px;padding-top:22px;border-top:1px solid currentColor;font-size:.875rem}.legal-links a{text-decoration:underline;text-underline-offset:4px;padding:6px 0}.legal-links a:hover{opacity:.8}.legal-links a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
