@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
html{scroll-behavior:smooth}.site{overflow:clip}.site>.nav{height:84px;display:flex;align-items:center;gap:22px;padding:0 34px;background:#070707f7;position:sticky;top:0;z-index:100;border-bottom:1px solid #ffffff2e;backdrop-filter:blur(12px)}
.nav .brand,.footer-brand-head{display:flex;align-items:center;gap:12px;font:700 11px/1.25 'DM Sans',Arial,sans-serif;letter-spacing:.1em;color:#f4f0e9}.nav .brand{min-width:186px}.nav .brand img,.footer-brand-head img{width:60px;height:60px;object-fit:contain;clip-path:none!important;transform:none!important;background:transparent!important;filter:none!important;box-shadow:none;border-radius:0}.footer-brand-head img{width:72px;height:72px;flex:none;margin:0!important;opacity:1}
.nav .links{display:flex;flex:1;justify-content:space-between;gap:12px;min-width:0}.nav .links a{color:#e7e2d9;text-transform:uppercase;font:700 11px 'DM Sans',Arial,sans-serif;letter-spacing:.08em;white-space:nowrap;text-decoration:none}.nav .links a:hover,.nav .links a[aria-current=page]{color:#e6b98d!important}.nav a:focus-visible,.footer a:focus-visible{outline:2px solid #b7d7ed;outline-offset:4px}.nav .social,.footer-socials{display:flex;gap:10px}.nav .social a,.footer-socials a{display:grid;place-items:center;width:32px;height:32px;flex:none;border:1px solid #8d9699;border-radius:50%;transition:transform .25s,background .25s}.nav .social a:hover,.footer-socials a:hover{transform:translateY(-3px);background:#254d63}.social img,.footer-socials img{width:16px;height:16px;display:block}
.footer{background:#061015;color:#f4f0e9}.footer-grid{display:grid;grid-template-columns:1.25fr .72fr .98fr 1.08fr;gap:44px;padding:50px 7.4% 47px}.footer-brand{display:flex;flex-direction:column;gap:20px;min-width:0}.footer-brand h3{margin:4px 0 0;font:italic 20px/1.35 'Playfair Display',serif;color:#b7d7ed}.footer-brand p{margin:12px 0 0;font-size:15px;letter-spacing:.04em}.footer-col h4{margin:0 0 15px;font-size:14px}.footer-col h4:not(:first-child){margin-top:25px}.footer-col a,.footer-col p{display:block;margin:0 0 9px;font-size:13px;line-height:1.42;text-decoration:none;color:#eae8e3}.footer-col a:hover{color:#b7d7ed}.footer-mission{margin-top:58px!important;max-width:230px;font-size:14px!important}.footer-bottom{margin:0 7.4%;border-top:1px solid #ffffff38;padding:18px 0 22px;display:flex;justify-content:space-between;gap:20px}.footer-bottom small{font-size:10px;color:#c9d0d0}.map-options summary{cursor:pointer;font-size:13px;line-height:1.5;text-decoration:underline;text-underline-offset:4px;color:#b7d7ed}.map-options a{margin-top:12px}.bible-entry[aria-current=page]{color:#e6b98d}.footer-top{display:none!important}
@media(max-width:800px){.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:34px 24px;padding:38px 8%}.footer-brand{grid-column:1/-1}.footer-brand-head img{width:42px!important;height:42px!important}.footer-mission{margin-top:24px!important}.footer-bottom{display:block;margin:0 8%}.footer-bottom small{display:block;margin:4px 0}.footer-col{min-width:0;overflow-wrap:anywhere}}

/* Stable shared header, authentic emblem and locally rendered social icons. */
.nav .brand{min-width:205px;flex:0 0 205px}.nav .brand img,.footer-brand-head img{opacity:1!important;filter:none!important;background:transparent!important}.nav .social a,.footer-socials a{width:38px;height:38px;border-color:#aeb8bc;color:#fff;transition:transform .25s,background .25s,border-color .25s}.nav .social a:hover,.footer-socials a:hover{border-color:#b7d7ed}.social svg,.footer-socials svg{display:block;width:25px;height:25px;overflow:visible}.social img,.footer-socials img{display:none}.nav .links{flex-wrap:nowrap!important}.nav .links a{font-size:11px!important;letter-spacing:.07em!important}.map-address-button{appearance:none;border:0;background:transparent;padding:0;color:#b7d7ed;font:600 13px/1.5 'DM Sans',Arial,sans-serif;text-align:left;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.map-address-button:hover{color:#e6b98d}.map-dialog{width:min(560px,calc(100% - 32px));padding:42px;border:1px solid #b7d7ed66;background:#071015;color:#f4f0e9;box-shadow:0 30px 90px #000c}.map-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.map-dialog h2{margin:10px 0 12px;font:500 clamp(32px,5vw,48px)/1.05 'Playfair Display',serif}.map-dialog p{color:#d6e0e4;font-size:16px}.map-dialog-close{position:absolute;right:18px;top:14px;border:0;background:transparent;color:#fff;font-size:34px;cursor:pointer}.map-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.map-app-button{display:flex;justify-content:space-between;padding:17px 18px;border:1px solid #b7d7ed;color:#fff;text-decoration:none;font-weight:700}.map-app-button:hover{background:#b7d7ed;color:#071015}.animated-link{text-decoration:none}.animated-link span,.flip-hint b{display:inline-block;animation:arrow-invite 1.15s ease-in-out infinite}@keyframes arrow-invite{50%{transform:translateX(8px)}}
@media(max-width:1100px) and (min-width:801px){.site>.nav{gap:12px;padding-inline:18px}.nav .brand{min-width:205px;flex-basis:205px}.nav .links{gap:6px}.nav .links a{font-size:10px!important;letter-spacing:.035em!important}.nav .social a{width:36px;height:36px}}
@media(max-width:800px){.nav .brand{min-width:0;flex:1}.nav .social a{width:32px;height:32px}.social svg{width:18px;height:18px}}
@media(max-width:600px){.map-dialog{padding:34px 22px}.map-dialog-actions{grid-template-columns:1fr}}

/* Unified account and social controls. */
.nav .social .social-pending,.footer-socials .social-pending{display:grid;place-items:center;width:38px;height:38px;flex:none;border:1px dashed #8d9699;border-radius:50%;color:#aeb8bc}.nav .social .social-pending svg,.footer-socials .social-pending svg{width:25px;height:25px}.account-entry{flex:none;border:1px solid #e6b98d;background:transparent;color:#e6b98d;padding:10px 13px;font:700 10px 'DM Sans',Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}.account-entry:hover{background:#e6b98d;color:#071015}.auth-dialog{width:min(480px,calc(100% - 28px));padding:38px;border:1px solid #b7d7ed66;background:#071015;color:#f4f0e9;box-shadow:0 30px 90px #000d}.auth-dialog::backdrop{background:#000c;backdrop-filter:blur(6px)}.auth-dialog h2{margin:0 0 10px;font:500 42px/1.1 'Playfair Display',serif}.auth-dialog p{color:#cbd7dc}.auth-dialog form{display:grid;gap:15px;margin-top:24px}.auth-dialog label{display:grid;gap:6px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}.auth-dialog input{width:100%;border:1px solid #ffffff3d;background:#101a1f;color:#fff;padding:13px;font:16px 'DM Sans',Arial,sans-serif}.auth-dialog form button,.auth-switch{border:0;background:#254d63;color:#fff;padding:14px;font-weight:700;cursor:pointer}.auth-switch{width:100%;margin-top:12px;background:transparent;border:1px solid #ffffff33}.dialog-close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:#fff;font-size:32px;cursor:pointer}.auth-status{min-height:1.5em;margin:18px 0 0!important;color:#e6b98d!important}.footer-socials svg{width:28px!important;height:28px!important}
@media(max-width:800px){.account-entry{padding:8px;font-size:9px}.nav .social .social-pending{width:32px;height:32px}.nav .social .social-pending svg{width:18px;height:18px}}

/* Accessible shared Mais menu. */
.more-nav{position:relative;display:flex;align-items:center}.more-toggle{display:flex;align-items:center;gap:5px;border:0;background:transparent;color:#e7e2d9;padding:12px 0;font:700 11px 'DM Sans',Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;cursor:pointer}.more-toggle span{font-size:15px;transition:transform .24s ease}.more-nav.is-open .more-toggle span{transform:rotate(180deg)}.more-nav.is-current .more-toggle,.more-toggle:hover{color:#e6b98d}.more-toggle:focus-visible,.more-panel a:focus-visible{outline:2px solid #b7d7ed;outline-offset:4px}.more-panel{position:absolute;z-index:130;top:calc(100% + 19px);right:0;width:230px;padding:10px;border:1px solid #b7d7ed55;background:#07151c;box-shadow:0 22px 55px #000b}.more-panel[hidden]{display:none}.more-panel a{display:block;padding:13px 14px!important;border-bottom:1px solid #ffffff17;color:#eef2f3!important;font:700 12px 'DM Sans',Arial,sans-serif!important;letter-spacing:.04em!important;text-transform:none!important;text-decoration:none}.more-panel a:last-child{border-bottom:0}.more-panel a:hover,.more-panel a[aria-current=page]{background:#254d63;color:#fff!important}
@media(max-width:600px) and (orientation:portrait){.more-nav{display:block;width:100%}.more-toggle{width:100%;justify-content:space-between;padding:14px 0;color:#071015;font-size:14px}.more-panel{position:static;width:auto;padding:0 0 4px 16px;border:0;border-left:3px solid #254d63;background:transparent;box-shadow:none}.more-panel a{color:#071015!important;padding:12px 14px!important;border-bottom-color:#0710151c}.more-panel a:hover,.more-panel a[aria-current=page]{background:#dcebf2;color:#071015!important}}
@media(min-width:601px) and (max-width:900px),(orientation:landscape) and (max-height:600px){.more-panel{top:calc(100% + 12px)}}
@media(prefers-reduced-motion:reduce){.more-toggle span{transition:none}}

/* One immutable desktop header geometry shared by every route. */
:root{--header-brand-width:205px;--header-account-width:52px}.site>.nav{display:grid!important;grid-template-columns:var(--header-brand-width) minmax(0,1fr) 52px var(--header-account-width) auto!important;column-gap:16px!important;padding-inline:34px!important}.nav .brand{width:var(--header-brand-width)!important;min-width:var(--header-brand-width)!important;max-width:var(--header-brand-width)!important;flex:none!important}.nav .brand img{width:60px!important;height:60px!important}.nav .links{width:100%;display:flex!important;justify-content:space-between!important;gap:10px!important}.nav>.bible-entry,.account-entry{width:52px;height:58px;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0!important;border:0;background:transparent!important;color:#e6b98d!important}.account-entry-icon{display:block;width:27px;height:27px}.account-entry span{font:700 10px 'DM Sans',Arial,sans-serif;letter-spacing:.08em}.account-entry:hover{color:#fff!important;transform:translateY(-2px)}.nav .social{justify-content:flex-end;white-space:nowrap}.footer-socials a,.footer-socials .social-pending{width:42px!important;height:42px!important}.footer-socials svg{width:30px!important;height:30px!important}.footer-socials .social-pending{border-style:solid}
@media(max-width:1180px) and (min-width:801px){.site>.nav{grid-template-columns:185px minmax(0,1fr) 48px 48px auto!important;column-gap:9px!important;padding-inline:18px!important}.nav .brand{width:185px!important;min-width:185px!important;max-width:185px!important}.nav .links{gap:5px!important}.nav .links a{font-size:9px!important;letter-spacing:.025em!important}.nav>.bible-entry,.account-entry{width:48px}.nav .social{gap:6px}}
@media(max-width:800px){.site>.nav{display:flex!important;padding-inline:12px!important}.nav .brand{width:auto!important;min-width:0!important;max-width:none!important}.account-entry{width:38px;height:48px}.account-entry-icon{width:23px;height:23px}.account-entry span{font-size:8px}.footer-socials a,.footer-socials .social-pending{width:42px!important;height:42px!important}.footer-socials svg{width:30px!important;height:30px!important}}

/* “Mais” opens as an overlay on large screens and becomes ordinary drawer links on phones. */
@media(min-width:601px){.nav .links{overflow:visible!important}.more-panel{top:calc(100% + 26px);right:-14px;width:310px;padding:14px;background:#f4f0e9;border-color:#e6b98d66;box-shadow:0 26px 70px #000d}.more-panel a{padding:16px 18px!important;color:#071015!important;font-size:13px!important}.more-panel a:hover,.more-panel a[aria-current=page]{background:#254d63;color:#fff!important}}
@media(max-width:600px){.more-nav{display:block!important;width:100%}.more-toggle{display:none!important}.more-panel,.more-panel[hidden]{display:block!important;position:static!important;width:100%!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.more-panel a{display:block!important;padding:14px 0!important;border-bottom:1px solid #07101522!important;color:#071015!important;font:700 14px 'DM Sans',Arial,sans-serif!important;letter-spacing:.04em!important;text-transform:uppercase!important}.more-panel a:hover,.more-panel a[aria-current=page]{background:#dcebf2!important;color:#071015!important;padding-left:12px!important}}

/* Shared responsive navigation: one blue control, one drawer, no separator bands. */
.mobile-menu-toggle{display:none}.nav>.bible-entry{color:#e6b98d;text-decoration:none}.nav>.bible-entry svg{animation:bible-attention 5s ease-in-out infinite;transform-origin:center bottom}@keyframes bible-attention{0%,8%,100%{transform:rotate(0)}2%{transform:rotate(-8deg)}4%{transform:rotate(8deg)}6%{transform:rotate(-5deg)}}
@media(max-width:600px) and (orientation:portrait){
  .site>.nav{height:auto!important;min-height:82px;flex-wrap:wrap!important;row-gap:0!important;padding:0 12px!important;background:#070707!important}
  .nav .brand,.nav>.bible-entry,.nav>.account-entry,.nav>.social{margin:11px 0}
  .nav .brand{gap:7px;font-size:9px;letter-spacing:.05em}.nav .brand img{width:44px!important;height:44px!important}.nav .social{gap:5px}.nav .social a{width:30px!important;height:30px!important}.nav>.bible-entry,.nav>.account-entry{width:38px!important;height:48px!important}.nav>.bible-entry span,.nav>.account-entry span{font-size:8px!important}
  .mobile-menu-toggle{order:20;display:flex;flex:0 0 calc(100% + 24px);width:calc(100% + 24px);height:48px;margin:0 -12px;padding:0;align-items:center;justify-content:center;gap:6px;border:0;background:#254d63;color:#fff;cursor:pointer;box-shadow:inset 0 1px #ffffff25}
  .mobile-menu-icon{display:grid;width:24px;gap:5px;flex:0 0 24px}.mobile-menu-icon i{display:block;width:24px;height:2px;background:#fff;border-radius:2px}.mobile-menu-toggle b{display:block;margin-left:9px;font:700 12px 'DM Sans',Arial,sans-serif;letter-spacing:.14em}
  .nav .links{display:none!important;position:absolute!important;left:0;right:0;top:100%;z-index:140;padding:12px 24px 22px!important;max-height:calc(100dvh - 130px);overflow-y:auto;background:#071015!important;box-shadow:0 18px 35px #000b}
  .nav.menu-open .links{display:grid!important;grid-template-columns:1fr;gap:0!important}
  .nav .links>a,.nav .more-panel a{display:block!important;padding:14px 0!important;border-bottom:1px solid #ffffff20!important;color:#fff!important;font:700 14px 'DM Sans',Arial,sans-serif!important;letter-spacing:.04em!important;text-transform:uppercase!important}
  .nav .more-nav,.nav .more-panel,.nav .more-panel[hidden]{display:block!important;position:static!important;width:100%!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.nav .more-toggle{display:none!important}
  .site section{scroll-margin-top:130px}
}

/* Keep the home contribution cards inside the viewport on small phones. */
@media(max-width:600px){
  .giving{min-width:0;overflow:hidden}
  .giving-cards{grid-template-columns:minmax(0,1fr);width:100%;min-width:0}
  .giving-card{min-width:0;overflow-wrap:normal;word-break:normal;hyphens:none}
  .giving-card strong{font-size:20px;line-height:1.12;overflow-wrap:normal;word-break:normal;hyphens:none}
}
@media(min-width:601px),(orientation:landscape){.mobile-menu-toggle{display:none!important}.nav .links,.nav.menu-open .links{display:flex!important}}
@media(prefers-reduced-motion:reduce){.nav>.bible-entry svg{animation:none}}

/* Keep the official emblem legible at a glance in the shared church header. */
.nav .brand img{width:64px!important;height:64px!important;transform:scale(1.12)!important;transform-origin:center;margin:-4px!important}
@media(max-width:600px) and (orientation:portrait){.nav .brand img{width:48px!important;height:48px!important;transform:scale(1.08)!important;margin:-2px!important}}

/* Home: preserve the second ministry card's message and the pastor portrait on portrait phones. */
@media(max-width:600px){
  .cards{grid-template-columns:minmax(0,1fr);gap:20px;min-width:0}
  .cards .card,.cards .card:first-child{grid-column:auto;height:auto;aspect-ratio:16/9;min-width:0;overflow:hidden}
  .cards .card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
  .cards .card{border:1px solid rgba(183,215,237,.55);box-shadow:0 16px 35px rgba(0,0,0,.34)}
  .cards .card .caption{left:18px;right:18px;bottom:18px;max-width:calc(100% - 36px);box-sizing:border-box;padding:16px 17px;background:linear-gradient(90deg,rgba(7,21,28,.94),rgba(7,21,28,.58));border-left:2px solid #e6b98d;overflow-wrap:anywhere}
  .cards .card .caption strong{font-size:27px;line-height:1.05;overflow-wrap:anywhere}
  .message-panel{grid-template-columns:minmax(0,1fr);justify-items:center;gap:0;min-width:0}
  .message-portrait{display:grid;place-items:center;width:min(100%,420px);margin-inline:auto;height:auto;aspect-ratio:1122/1402;background:#101922;overflow:hidden;border:1px solid rgba(183,215,237,.55);box-shadow:0 16px 35px rgba(0,0,0,.34)}
  .message-portrait img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;object-position:center center;transform:none!important}
}
