/* A photographic assembly, with a separate, steady reading surface. */
.community-page{--community-ink:#414644;--community-muted:#665e57;--community-accent:#925248;color:var(--community-ink);background:var(--cream)}
.community-intro{padding:72px 6vw 48px;background:var(--warm-white)}
.community-eyebrow{display:block;font-size:12px;letter-spacing:.13em;text-transform:uppercase;line-height:1.6;color:var(--community-accent);font-weight:600}
.community-intro h1{font:400 clamp(48px,6.5vw,92px)/1.04 'Fraunces',serif;letter-spacing:-.045em;text-align:center;margin:24px auto 42px}
.community-page em{font-weight:400;color:var(--community-accent)}
.community-intro>.community-eyebrow{text-align:center}
.community-intro-bottom{max-width:1050px;margin:auto;display:grid;grid-template-columns:1.15fr 1fr;gap:7vw}
.community-intro-bottom p{font-size:16px;line-height:1.75;margin:0;color:var(--community-muted)}
.community-story{position:relative;background:var(--cream)}
.community-service-nav{display:flex;justify-content:center;gap:24px;padding:22px 3vw;border-bottom:1px solid #d7c9bc;background:var(--cream);position:relative;z-index:15}
.community-service-nav button{border:0;border-bottom:1px solid transparent;background:transparent;color:var(--community-muted);font:400 14px/1.5 'Plus Jakarta Sans',sans-serif;padding:8px 0;min-height:44px;text-align:left}
.community-service-nav button span{font:400 16px 'Fraunces',serif;margin-right:5px;color:var(--community-accent)}
.community-service-nav button[aria-current=true]{border-bottom-color:var(--community-accent);color:var(--community-ink)}
.community-service-nav button:hover{color:var(--community-accent)}
.community-stage{position:relative;max-width:1600px;margin:auto}
.community-thread,.community-watermark,.community-photo-field,.community-spread-note,.community-reader-controls{display:none}
.community-service{max-width:1160px;margin:auto;padding:85px 40px;display:grid;grid-template-columns:1fr 1.1fr;gap:8vw;align-items:center;scroll-margin-top:calc(var(--site-nav-height,130px) + 24px)}
.community-service+.community-service{border-top:1px solid #d7c9bc}
.community-mobile-photo{position:relative;isolation:isolate;padding:24px 0 0 20px}
.community-mobile-photo>span{font:400 italic clamp(120px,18vw,250px)/1 'Fraunces',serif;position:absolute;left:-20px;top:-45px;color:#ded0c2;z-index:-1}
.community-mobile-photo img{display:block;width:100%;height:400px;object-fit:cover;border-radius:5px;box-shadow:0 18px 38px #46362a18}
.community-copy h2{font:400 clamp(30px,3.1vw,46px)/1.12 'Fraunces',serif;letter-spacing:-.025em;margin:18px 0 24px}
.community-copy p{font-size:16px;line-height:1.75;margin:0 0 16px}
.community-copy p:last-of-type{margin-bottom:24px}
.community-text-link{font-size:14px;line-height:1.5;color:var(--community-accent);text-decoration:none;display:inline-flex;gap:28px;border-bottom:1px solid #b59183;padding:8px 0;min-height:44px}
.community-text-link span{font-size:22px}
.community-contact{padding:100px 8vw 110px!important;text-align:center;background:var(--warm-white)}
.community-contact h2{font:400 clamp(36px,4.5vw,64px)/1.12 'Fraunces',serif;letter-spacing:-.03em;margin:20px 0 26px}
.community-contact p{font-size:17px;line-height:1.75;max-width:680px;margin:0 auto 30px}
.community-contact>div{display:flex;gap:40px;justify-content:center;flex-wrap:wrap}
.community-contact a{font-size:15px;color:var(--community-ink);text-decoration:none;border-bottom:1px solid #b59183;padding:15px 0;display:flex;gap:28px;align-items:center}
.community-contact a span{font-size:25px}
/* Motion is enabled only when all copy fits in a comfortable desktop viewport. */
.community-motion .community-story{height:var(--community-story-height)}
.community-motion .community-sticky{position:sticky;top:var(--site-nav-height,130px)}
.community-motion .community-stage{height:var(--community-stage-height);min-height:540px;isolation:isolate;overflow:clip}
.community-motion .community-thread{display:block;position:absolute;width:100%;height:100%;inset:0;pointer-events:none;z-index:-1}
.community-thread path{fill:none;stroke:#b69580;stroke-width:.65;opacity:.55;vector-effect:non-scaling-stroke}
.community-motion .community-watermark{display:block;position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);font:400 italic clamp(130px,17vw,245px)/1 'Fraunces',serif;letter-spacing:-.05em;color:#dfd2c5;opacity:.52;pointer-events:none;white-space:nowrap}
.community-motion .community-photo-field{display:block;position:absolute;inset:0;pointer-events:none}
.community-photo{position:absolute;left:0;top:0;width:280px;height:330px;margin:0;padding:0;border:0;text-align:left;color:white;background:#5b594f;border-radius:5px;overflow:hidden;box-shadow:0 16px 36px #48392c1a;transform-origin:center;will-change:transform;pointer-events:auto}
.community-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:filter .3s}
.community-photo:hover img{filter:brightness(1.06)}
.community-photo-caption{position:absolute;bottom:0;left:0;right:0;padding:45px 16px 18px;background:linear-gradient(transparent,#201e1de6);display:grid;grid-template-columns:24px 1fr 16px;gap:7px;align-items:center;font-size:15px;line-height:1.4}
.community-photo-caption>span{font:400 19px 'Fraunces',serif}.community-photo-caption>b{font-size:21px;font-weight:400}
.community-motion .community-spread-note{display:flex;align-items:center;justify-content:center;gap:35px;position:absolute;bottom:17px;left:0;right:0;font-size:14px;z-index:10}
.community-spread-note button{background:transparent;border:0;border-bottom:1px solid #ac8f7c;min-height:44px;padding:8px 0;color:var(--community-ink);font:inherit}.community-spread-note button span{margin-left:20px}
.community-motion .community-reading{position:absolute;left:54%;width:40%;top:50%;transform:translateY(-50%);max-width:570px;z-index:8;background:var(--cream)}
.community-motion .community-service{display:block;padding:0;border:0;max-width:none;margin:0;scroll-margin:0}
.community-motion .community-service[hidden]{display:none}
.community-motion .community-mobile-photo{display:none}
.community-motion .community-copy h2{font-size:clamp(30px,2.7vw,43px);margin:16px 0 20px}
.community-motion .community-copy p{font-size:16px;line-height:1.65;margin-bottom:14px}
.community-motion .community-copy p:last-of-type{font-size:15px}
.community-motion .community-reader-controls{display:flex;position:absolute;bottom:18px;left:21%;width:25%;justify-content:center;align-items:center;gap:24px;z-index:12}
.community-reader-controls button{width:48px;height:48px;border:1px solid #b4a08e;border-radius:50%;background:var(--cream);font-size:26px;color:var(--community-ink)}
.community-reader-controls button:disabled{opacity:.28;cursor:default!important}
.community-reader-controls span{font:400 20px 'Fraunces',serif}
.community-page [hidden]{display:none!important}
@media(max-width:1100px){.community-service-nav{flex-wrap:wrap;gap:5px 25px}.community-service{gap:6vw}.community-intro{padding-top:55px}}
@media(max-width:700px){
.community-intro{padding:44px 22px 35px}.community-intro h1{font-size:48px;margin:22px 0 30px}.community-intro-bottom{display:block}.community-intro-bottom p+p{margin-top:18px}
.community-service-nav{justify-content:flex-start;padding:15px 0;gap:4px 20px}.community-service-nav button{font-size:14px}.community-service{display:block;padding:60px 0;scroll-margin-top:calc(var(--site-nav-height,130px) + 15px)}
.community-mobile-photo{max-width:380px;margin:0 auto 34px;padding:18px 0 0 15px}.community-mobile-photo>span{font-size:135px;left:-5px;top:-20px}.community-mobile-photo img{height:300px}.community-copy h2{font-size:34px}.community-eyebrow{font-size:12px}
.community-contact{padding:66px 24px!important}.community-contact h2{font-size:38px}.community-contact>div{gap:8px 28px}
}
/* Changing the foreground panel must never move the browser's scroll anchor. */
.community-story{overflow-anchor:none}
.community-motion.community-is-reading .community-photo{transition:transform .7s cubic-bezier(.22,.61,.36,1)}
.community-motion .community-copy p:last-of-type{font-size:16px}
.community-motion .community-copy p:nth-of-type(3){font-size:15px;color:var(--community-muted)}
.community-photo-caption{font-size:17px}
.community-back{display:block;border:0;background:transparent;color:var(--community-muted);font:400 14px/1.5 'Plus Jakarta Sans',sans-serif;margin-top:20px;padding:12px 0;min-height:44px}
.community-motion .community-back{display:none}
/* One floating control, with a shared selection that follows the active service. */
.community-service-nav{border:0;padding:22px 3vw 24px;gap:0;background:var(--cream)}
.community-nav-capsule{position:relative;isolation:isolate;display:flex;justify-content:center;gap:4px;padding:7px;max-width:100%;border:1px solid #d9c8b8;border-radius:999px;background:#fffaf4;box-shadow:0 8px 24px #69523b0d,0 2px 5px #69523b08}
.community-service-nav button{position:relative;z-index:1;display:flex;align-items:center;gap:8px;justify-content:center;margin:0;padding:12px 17px;border:0;border-radius:999px;color:#625c55;text-align:center;font-size:14px;line-height:1.45;transition:color .25s,background-color .25s}
.community-service-nav button span{font-size:20px;line-height:1;margin:0;color:#925248}
.community-service-nav button:hover{background:#f3e4d780;color:#463b34}
.community-service-nav button[aria-current=true]{border:0;background:#f6c0b7;color:#49352e}
.community-service-nav button[aria-current=true] span{color:#744239}
@media(max-width:1100px){.community-nav-capsule{flex-wrap:wrap;border-radius:32px}.community-service-nav button{padding:10px 14px}}
@media(max-width:700px){
.community-service-nav{padding:20px 0 24px;justify-content:center}
.community-nav-capsule{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;width:100%;padding:6px;border-radius:28px}
.community-service-nav button{grid-column:span 2;flex-direction:column;gap:6px;min-width:0;padding:12px 5px;font-size:14px;line-height:1.4;border-radius:21px}
.community-service-nav button:nth-of-type(4),.community-service-nav button:nth-of-type(5){grid-column:span 3}
.community-service-nav button span{font-size:21px}
}
@media(max-width:360px){.community-nav-capsule{grid-template-columns:repeat(2,minmax(0,1fr))}.community-service-nav button,.community-service-nav button:nth-of-type(4){grid-column:span 1}.community-service-nav button:nth-of-type(5){grid-column:span 2}}

/* Keep the choice visible; each button owns its selected appearance. */
.community-service-nav{position:sticky;top:var(--site-nav-height,130px);z-index:25;padding:16px 3vw;background:var(--cream);box-shadow:0 8px 18px #57483808}
.community-nav-capsule{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:min(1240px,100%);gap:6px;padding:8px;border-radius:22px;align-items:stretch}
.community-nav-capsule button{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;border:1px solid transparent;border-radius:15px;padding:13px 12px;text-align:left;min-width:0;font:400 clamp(17px,1.4vw,21px)/1.12 'Fraunces',serif;transition:background-color .25s,border-color .25s,color .25s}
.community-service-nav button .community-nav-number{display:grid;place-items:center;width:34px;height:34px;border:1px solid #cbb7a9;border-radius:50%;margin:0;font:400 20px/1 'Fraunces',serif;color:#925248;transition:background-color .3s,transform .3s,border-color .3s}
.community-service-nav button .community-nav-label{font:inherit;color:inherit;margin:0;line-height:1.12}
.community-nav-capsule button[aria-current=true]{border-color:#df9e92;box-shadow:inset 0 -2px 0 var(--coral-deep)}
.community-nav-capsule button[aria-current=true] .community-nav-number{background:var(--coral);border-color:#dc9086;color:#49352e;transform:rotate(-8deg)}
.community-nav-capsule button:hover,.community-nav-capsule button:focus-visible{translate:none;color:#744239}
.community-motion .community-service-nav{position:relative;top:auto}
@media(max-width:1100px){.community-nav-capsule{grid-template-columns:repeat(6,minmax(0,1fr))}.community-nav-capsule button{grid-column:span 2}.community-nav-capsule button:nth-of-type(4),.community-nav-capsule button:nth-of-type(5){grid-column:span 3}}
 .community-nav-mobile-label{display:none}
@media(max-width:700px){
 .community-service-nav{padding:12px 0;display:flex;flex-direction:column;align-items:stretch;gap:8px}
 .community-nav-mobile-label{display:flex;justify-content:space-between;gap:12px;font:500 12px/1.4 'Plus Jakarta Sans',sans-serif;color:var(--community-muted);padding:0 3px}
 .community-service{display:grid;grid-template-columns:minmax(0,1fr);padding:36px 0}
 .community-copy{display:contents}
 .community-copy>.community-eyebrow{grid-row:1}
 .community-copy>h2{grid-row:2}
 .community-mobile-photo{grid-row:3;width:100%}
 .community-nav-capsule{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:6px;padding:7px;border-radius:20px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#c89b90 transparent;scroll-snap-type:x proximity}
 .community-nav-capsule button{display:grid;grid-template-columns:32px minmax(0,1fr);flex:0 0 216px;align-items:center;gap:10px;min-height:72px;padding:12px;text-align:left;font-size:18px;line-height:1.12;border-radius:14px;scroll-snap-align:center}
 .community-service-nav button .community-nav-number{width:32px;height:32px;font-size:20px}
 .community-service-nav button .community-nav-label{min-width:0;max-width:100%}
}
@media(prefers-reduced-motion:reduce){.community-nav-capsule button,.community-service-nav button .community-nav-number{transition:none}.community-nav-capsule button[aria-current=true] .community-nav-number{transform:none}}
