@font-face{font-family:Manrope;src:url('fonts/manrope-variable.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
:root{--primary:#086cd7;--primary-hover:#075ab5;--navy:#102d55;--sky:#eaf4ff;--mist:#fff;--text:#153454;--muted:#48617c;--surface:#fff;--border:#cbddee;--focus:#075ab5;--display:Manrope,sans-serif;--body:Manrope,sans-serif;--header:88px;--radius:14px;--v-blue:#086cd7;--v-white:#fff;--v-ink:#102d55;--v-sky:#eaf4ff;--v-line:#cbddee;--v-soft-text:#48617c;--v-space:clamp(64px,7vw,112px)}
body.visual-renewal{background:var(--surface);font-size:1rem;line-height:1.7;caret-color:var(--primary-hover)}
.visual-renewal ::selection{background:var(--primary-hover);color:var(--surface)}
.visual-renewal{scrollbar-color:var(--primary-hover) var(--sky)}
.visual-renewal h1,.visual-renewal h2,.visual-renewal h3{font-weight:750;letter-spacing:-.035em;text-wrap:balance}
.visual-renewal h1{font-size:clamp(2.75rem,4.7vw,4.75rem);line-height:1.06}
.visual-renewal h2{font-size:clamp(1.9rem,3.1vw,3rem);line-height:1.12}
.visual-renewal h3{font-size:1.25rem;line-height:1.3}
.visual-renewal p{max-width:65ch}
.visual-renewal .shell{width:min(1320px,calc(100% - 64px))}
.visual-renewal .site-header{background:var(--surface);backdrop-filter:none;border-bottom:1px solid var(--v-line)}
.visual-renewal .brand img{width:190px;height:auto}
.visual-renewal .nav{gap:24px}
.visual-renewal .nav-links{font-size:.82rem;gap:18px}
.visual-renewal .nav-links a{border-bottom:2px solid transparent}
.visual-renewal .nav-links a:hover,.visual-renewal .nav-links a[aria-current=page]{border-color:var(--primary-hover)}
.visual-renewal .button,.visual-renewal .header-visit{border-radius:8px;padding:15px 22px;font-size:.92rem;font-weight:750;white-space:normal;line-height:1.35;box-shadow:none}
.visual-renewal .button:hover,.visual-renewal .header-visit:hover{transform:none;box-shadow:none}
.visual-renewal .button:active{transform:translateY(1px)}
.visual-renewal .button.secondary{color:var(--primary-hover);border-color:var(--primary-hover)}
.visual-renewal .button.secondary:hover{color:var(--surface);background:var(--primary-hover)}
.visual-renewal .text-link{color:var(--primary-hover);min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:.22em;font-weight:750}
.visual-renewal :focus-visible{outline:3px solid var(--focus);outline-offset:5px}
.visual-renewal [hidden]{display:none!important}
.v-section{padding-block:var(--v-space)}
.v-sky{background:var(--v-sky)}
.v-ink{background:var(--v-ink);color:var(--surface)}
.v-ink h2,.v-ink h3{color:var(--surface)}
.v-ink .button{background:var(--surface);color:var(--v-ink);border-color:var(--surface)}
.v-ink .button:hover{background:var(--sky);border-color:var(--sky)}
.v-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:28px}
.v-heading{max-width:720px;margin-bottom:38px}
.v-heading p{margin-top:18px;color:var(--muted)}
.v-after{margin-top:34px}
.v-photo{display:block;overflow:hidden;border-radius:var(--radius)}
.v-photo img{width:100%;height:auto;display:block}
.v-home-hero{display:grid;grid-template-columns:42% 58%;background:var(--v-blue);color:var(--surface)}
.v-hero-copy{padding:clamp(44px,5vw,80px) clamp(28px,4vw,64px) clamp(44px,5vw,80px) max(32px,calc((100vw - 1320px)/2));align-self:center}
.v-hero-copy h1{color:var(--surface);max-width:12ch;font-size:clamp(3.3rem,4.8vw,4.65rem)}
.v-hero-copy p{margin-top:26px;color:var(--surface);max-width:42ch;font-size:1rem;line-height:1.75}
.v-hero-copy .button{background:var(--surface);border-color:var(--surface);color:var(--primary-hover)}
.v-hero-copy .button:hover{background:var(--v-ink);border-color:var(--v-ink);color:var(--surface)}
.v-hero-copy .button.secondary{color:var(--surface);background:transparent;border-color:var(--surface)}
.v-hero-copy .button.secondary:hover{background:var(--surface);color:var(--primary-hover)}
.v-hero-gallery{position:relative;min-height:520px;overflow:hidden;background:var(--v-ink)}
.v-welcome-slide{position:absolute;inset:0;opacity:0;transition:opacity 900ms ease;pointer-events:none}
.v-welcome-slide.is-active{opacity:1}
.v-welcome-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 42%}
.v-welcome-slide:nth-child(2) img{object-fit:contain;background:var(--v-ink)}
.v-welcome-slide:nth-child(3) img{object-position:50% 35%}
.v-welcome-slide:nth-child(4) img{object-position:50% 43%}
.v-gallery-controls{position:absolute;z-index:3;bottom:20px;right:20px;display:flex;align-items:center;gap:16px;color:var(--surface);background:var(--v-ink);border-radius:8px;padding:4px 6px 4px 16px;font-size:.8rem;font-variant-numeric:tabular-nums}
.v-gallery-controls button{min-height:44px;padding:8px 12px;border:0;border-radius:4px;color:var(--surface);background:transparent;cursor:pointer;font-size:.8rem}
.v-gallery-controls button:hover{background:var(--primary-hover)}
.v-sunday{background:var(--sky)}
.v-sunday-grid{display:grid;grid-template-columns:1fr 1.15fr .7fr;padding-block:28px;gap:28px}
.v-sunday-grid strong{display:block;font-weight:750;font-size:1rem}
.v-sunday-grid span,.v-sunday-grid a{display:block;color:var(--muted);font-size:.88rem;margin-top:5px}
.v-sunday-grid a{text-decoration:underline;text-underline-offset:.2em}
.v-belong{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,6vw,92px);align-items:center}
.v-belong-copy h2{max-width:12ch;margin-bottom:24px}
.v-belong-copy p{margin-bottom:18px}
.v-belong-copy .button{margin-top:12px}
.v-belong-photos{display:grid;grid-template-columns:1fr .95fr;gap:20px;align-items:center}
.v-belong-tall{aspect-ratio:3/4}
.v-belong-small{aspect-ratio:var(--photo-ratio);margin-top:100px}
.v-belong-tall img,.v-belong-small img{height:100%;object-fit:contain;object-position:50% 35%}
.v-pesca-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.v-pesca-card{display:block;min-width:0}
.v-pesca-card .v-photo{aspect-ratio:4/3}
.v-pesca-card img{height:100%;object-fit:cover;object-position:50% 27%;transition:transform 220ms ease-out}
.v-pesca-card:hover img{transform:scale(1.025)}
.v-pesca-card:nth-child(2) img{object-fit:contain;background:var(--surface)}
.v-pesca-card:nth-child(1) img{object-position:50% 5%}
.v-pesca-card:nth-child(3) img{object-position:50% 85%}
.v-pesca-card:nth-child(4) img{object-position:50% 5%}
.v-pesca-card span{display:flex;gap:8px;align-items:center;padding-block:18px;font-size:.94rem;font-weight:750;color:var(--v-ink)}
.v-pesca-card b{color:var(--primary-hover);font-size:1.65rem;font-weight:650;line-height:1}
.v-moment,.v-message,.v-story,.v-leadership{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(36px,6vw,88px)}
.v-moment{grid-template-columns:.75fr 1.25fr}
.v-moment h2,.v-message h2,.v-story h2,.v-leadership h2{margin-bottom:24px;max-width:16ch}
.v-moment p,.v-message p,.v-story p,.v-leadership p{margin-bottom:28px}
.v-message .v-photo{max-width:450px;aspect-ratio:var(--photo-ratio);margin:auto;width:100%}
.v-message img{height:100%;object-fit:cover;object-position:center 33%}
.v-clip{margin:0;position:relative;max-width:360px;width:100%;justify-self:center}
.v-clip video{display:block;width:100%;aspect-ratio:9/16;background:var(--v-ink);border-radius:var(--radius);object-fit:contain}
.v-clip-button{position:absolute;left:20px;right:20px;bottom:72px;padding:16px;border:0;border-radius:8px;background:var(--surface);color:var(--primary-hover);font-weight:750;font-size:.88rem;cursor:pointer;min-height:48px;box-shadow:0 6px 20px rgba(16,45,85,.15)}
.v-clip figcaption,.v-caption{font-size:.8rem;margin-top:16px;color:var(--muted)}
.v-video-error{margin-top:16px;color:var(--text)}
.v-social-title{margin-bottom:28px}
.v-social-title .v-heading{margin-bottom:4px}
.v-social-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.v-social-grid .v-photo{aspect-ratio:4/3}
.v-social-grid img{height:100%;object-fit:cover;object-position:50% 40%}
.v-social-grid a:first-child img{object-position:50% 25%}.v-social-grid a:nth-child(2) img{object-position:45% 50%}.v-social-grid a:nth-child(4) img{object-position:50% 18%}
.v-connect-call{padding-block:var(--v-space);background:var(--v-blue);color:var(--surface)}
.v-connect-call h2{color:var(--surface);font-size:clamp(2.1rem,4vw,3.8rem);max-width:19ch}
.v-connect-call p{margin-top:24px;max-width:49ch}
.v-connect-call .button{margin-top:12px;background:var(--surface);color:var(--primary-hover);border-color:var(--surface)}
.v-connect-call .button:hover{background:var(--v-ink);color:var(--surface);border-color:var(--v-ink)}
.v-visit-call{padding-block:68px;background:var(--sky);text-align:center}
.v-visit-call h2{font-size:clamp(2.3rem,4.5vw,4.5rem)}
.v-visit-call p{margin:18px auto 24px}
.v-page-hero{background:var(--sky);padding:48px 0 64px}
.v-page-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.v-page-split h1{max-width:14ch}
.v-page-split p{margin-top:24px;max-width:45ch}
.v-page-photo{aspect-ratio:var(--photo-ratio);width:100%;justify-self:center}
.v-page-photo img{height:100%;object-fit:contain;object-position:center}
.v-page-photo:has(img[src*='predicaciones-']),.v-page-photo:has(img[src*='eventos-']){width:min(100%,360px)}
.v-story .v-photo{max-width:420px;aspect-ratio:var(--photo-ratio);width:100%;justify-self:center}
.v-story img{height:100%;object-fit:contain;object-position:50% 30%}
.v-story .v-photo:has(img[src*='predicaciones-escucha']) img{object-fit:contain;background:var(--sky)}
.v-leadership{grid-template-columns:.8fr 1.2fr}
.v-leader-photo{max-width:410px;margin:auto}
.v-leader-photo img{height:auto}
.v-title{padding:72px 0;background:var(--sky)}
.v-title h1{max-width:19ch}
.v-title p{margin-top:26px;max-width:55ch}
.v-ministry-index{display:flex;gap:14px 24px;flex-wrap:wrap;margin-top:34px}
.v-ministry-index a{display:inline-flex;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:5px;color:var(--primary-hover);font-weight:750}
.v-ministry-list{display:grid;gap:96px}
.v-ministry{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,88px);align-items:center;scroll-margin-top:calc(var(--header) + 30px)}
.v-ministry:nth-child(even)>picture{grid-column:2;grid-row:1}
.v-ministry:nth-child(even)>div{grid-column:1;grid-row:1}
.v-ministry .v-photo{aspect-ratio:5/4}
.v-ministry img{height:100%;object-fit:contain;background:var(--sky)}
.v-ministry-letter{font-size:clamp(3rem,7vw,5.8rem);font-weight:600;color:var(--primary-hover);line-height:1;display:block;margin-bottom:16px}
.v-ministry h2{margin-bottom:20px}
.v-ministry p{margin-bottom:28px;max-width:48ch}
.v-protocol{border-top:1px solid var(--v-line);padding-top:56px}
.v-sermon{margin-top:24px;padding-block:24px;border-bottom:1px solid var(--v-line)}
.v-resource-list{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:44px}
.v-resource-list article{border-top:1px solid var(--v-line);padding-top:32px}
.v-resource-list h2{margin:12px 0 24px}
.v-resource-type{font-size:.86rem;color:var(--muted)}
.visual-renewal .filter-chip{min-height:44px;border-radius:8px;font-weight:700;padding:10px 18px}
.v-visit-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,6vw,88px);align-items:center}
.v-visit-details{margin:36px 0}
.v-visit-details>div{display:grid;grid-template-columns:90px 1fr;padding:18px 0;border-bottom:1px solid var(--v-line);gap:20px}
.v-visit-details dt{font-weight:750}
.v-visit-details dd{margin:0;max-width:45ch}
.v-visit-photo{aspect-ratio:var(--photo-ratio)}
.v-visit-photo img{height:100%;object-fit:contain;object-position:50% 30%}
.v-giving{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}
.v-zelle{display:inline-block;color:var(--primary-hover);font-size:clamp(1.15rem,2vw,1.6rem);font-weight:750;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:.2em;margin-bottom:28px}
.visual-renewal .site-footer{background:var(--v-ink);padding-top:64px}
.visual-renewal .footer-grid{grid-template-columns:1.2fr .8fr 1.3fr 1fr;gap:40px}
.visual-renewal .site-footer h3{font-size:.98rem;letter-spacing:0;font-family:var(--body);font-weight:750;color:var(--surface)}
.visual-renewal .site-footer .footer-brand img{width:190px}
.visual-renewal .site-footer a:hover{text-decoration:underline;text-underline-offset:.2em}
.visual-renewal .site-footer .fine{font-size:.8rem}
.visual-renewal .site-footer address{overflow-wrap:anywhere}
.visual-renewal .legal-header{background:var(--sky);padding-block:72px}
.visual-renewal .legal-content{background:var(--surface)}
@media(max-width:1100px){.visual-renewal .brand img{width:160px}.visual-renewal .nav{gap:16px}.visual-renewal .nav-links{gap:12px;font-size:.76rem}.visual-renewal .header-visit{padding:12px 15px}.v-pesca-grid{gap:12px}.v-pesca-card span{font-size:.82rem;gap:6px}.v-hero-copy h1{font-size:3.5rem}.v-hero-gallery{min-height:510px}}
@media(max-width:900px){.visual-renewal .shell{width:calc(100% - 40px)}.visual-renewal .nav-links{position:absolute;top:var(--header);left:0;right:0;display:none;margin:0;padding:20px;background:var(--surface);box-shadow:0 12px 24px rgba(16,45,85,.08);font-size:1rem;gap:4px;max-height:calc(100dvh - var(--header));overflow-y:auto}.visual-renewal .nav-links.open{display:grid}.visual-renewal .nav-links a{padding:8px 10px;min-height:48px;border:0}.visual-renewal .nav-links a[aria-current=page]{background:var(--sky);border-radius:6px}.visual-renewal .menu-toggle{display:block;border-radius:8px;min-width:60px}.visual-renewal .nav-actions{margin-left:auto}.v-home-hero{grid-template-columns:1fr}.v-hero-copy{padding:40px 32px}.v-hero-copy h1{font-size:clamp(2.9rem,7vw,4.25rem);max-width:18ch}.v-hero-copy p{max-width:55ch;margin-top:22px}.v-hero-gallery{min-height:0;aspect-ratio:3/2}.v-sunday-grid{grid-template-columns:1fr 1fr;gap:20px}.v-sunday-grid>div:last-child{grid-column:1/-1}.v-belong{gap:36px;grid-template-columns:1fr 1.2fr}.v-belong-photos{gap:12px}.v-belong-small{margin-top:56px}.v-pesca-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.v-page-split{gap:36px}.v-page-split h1{font-size:3rem}.visual-renewal .footer-grid{grid-template-columns:1fr 1fr;gap:36px}.v-ministry-list{gap:72px}.v-ministry{gap:36px}.v-moment,.v-message,.v-story,.v-leadership{gap:36px}}
@media(max-width:600px){:root{--header:76px;--v-space:64px}.visual-renewal .brand img{width:145px}.visual-renewal .nav{gap:12px}.visual-renewal .header-visit{font-size:.8rem;padding:10px 13px}.visual-renewal .menu-toggle{font-size:.82rem;min-width:54px}.visual-renewal h1{font-size:2.75rem}.visual-renewal h2{font-size:2rem}.v-hero-copy{padding:32px 22px 36px}.v-hero-copy h1{font-size:2.95rem;max-width:13ch}.v-hero-copy p{font-size:.93rem;line-height:1.65;margin-top:20px}.v-hero-copy p br{display:none}.v-actions{gap:10px;margin-top:24px}.v-hero-copy .v-actions{display:grid;grid-template-columns:1fr}.v-hero-copy .button{min-height:49px;width:100%}.v-hero-gallery{aspect-ratio:3/2}.v-gallery-controls{bottom:12px;right:12px;gap:8px}.v-sunday-grid{grid-template-columns:1fr;padding-block:28px;gap:20px}.v-sunday-grid>div:last-child{grid-column:auto}.v-belong,.v-moment,.v-message,.v-story,.v-leadership,.v-page-split,.v-visit-layout,.v-giving{grid-template-columns:1fr;gap:32px}.v-belong-copy h2{max-width:none}.v-belong-photos{gap:12px}.v-belong-small{margin-top:44px}.v-pesca-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.v-pesca-card span{font-size:.83rem;gap:7px;padding-top:14px}.v-pesca-card:last-child{max-width:260px;grid-column:1/-1;justify-self:center;width:100%}.v-moment>div{grid-row:1}.v-clip{max-width:280px}.v-message .v-photo{max-width:300px}.v-message>div{grid-row:1}.v-social-grid{grid-template-columns:1fr 1fr;gap:14px}.v-connect-call h2{font-size:2.2rem}.v-visit-call{padding-block:56px}.v-visit-call h2{font-size:2.7rem}.v-page-hero{padding:36px 0 40px}.v-page-split h1{font-size:2.7rem}.v-page-split p{margin-top:20px}.v-page-split .v-page-photo:has(img[src*='predicaciones-']),.v-page-split .v-page-photo:has(img[src*='eventos-']){width:min(100%,300px);max-height:none}.v-title{padding-block:48px}.v-title h1{font-size:2.6rem}.v-ministry-index{gap:8px 18px;font-size:.92rem;margin-top:26px}.v-ministry{grid-template-columns:1fr;gap:28px}.v-ministry:nth-child(even)>picture,.v-ministry:nth-child(even)>div{grid-column:auto;grid-row:auto}.v-ministry-letter{font-size:3.5rem;margin-bottom:12px}.v-ministry-list{gap:68px}.v-ministry .button{font-size:.88rem}.v-resource-list{grid-template-columns:1fr;gap:40px}.v-story .v-photo{max-width:320px;max-height:none}.v-leader-photo{max-width:300px}.v-visit-layout h2{font-size:1.9rem}.v-visit-details>div{grid-template-columns:76px 1fr;gap:12px}.v-giving{gap:26px}.v-zelle{font-size:1.15rem}.visual-renewal .footer-grid{grid-template-columns:1fr 1fr;gap:32px 20px}.visual-renewal .footer-brand{grid-column:1/-1}.visual-renewal .footer-contact{grid-column:1/-1;grid-row:3}.visual-renewal .site-footer .footer-brand img{width:190px}.visual-renewal .legal-header{padding-block:44px}}
@media(prefers-reduced-motion:reduce){.v-welcome-slide,.v-pesca-card img{transition:none}.v-pesca-card:hover img{transform:none}.visual-renewal{scroll-behavior:auto}.visual-renewal .button,.visual-renewal .header-visit{transition:none}}

.v-hero-copy :focus-visible,.v-gallery-controls :focus-visible,.v-connect-call :focus-visible,.v-ink :focus-visible{outline-color:#fff}

/* Natural portrait proportions keep ministry faces intact without letterboxing. */
.v-ministry .v-photo{aspect-ratio:auto;max-width:480px;width:100%;justify-self:center}
.v-ministry .v-photo img{height:auto}
@media(max-width:600px){.v-zelle{font-size:1rem}.v-page-split .v-page-photo:has(img[src*='nosotros-']){aspect-ratio:auto;max-height:none}.v-page-split .v-page-photo:has(img[src*='nosotros-']) img{height:auto}}

/* At 320 px, the logo/actions need 278 px inside the 280 px nav.
   Stack footer tracks so Instagram's intrinsic width cannot expand the grid. */
@media(max-width:374px){
 body.visual-renewal .brand img{width:130px}
 body.visual-renewal .nav{gap:8px}
 body.visual-renewal .header-visit{padding-inline:9px;min-height:44px}
 body.visual-renewal .footer-grid{grid-template-columns:minmax(0,1fr)}
}
