/* Complementos isolados: banners, ministérios e acolhimento. */
.servir-banner { position:relative;overflow:hidden;isolation:isolate;background:var(--primary-dark,#101b30); }
.servir-banner__photo,.servir-banner__shade { position:absolute;inset:0;width:100%;height:100%;z-index:-2; }
.servir-banner__photo { object-fit:cover; }
.servir-banner__shade { z-index:-1;background:linear-gradient(90deg,rgba(9,18,36,var(--servir-shade,.7)),rgba(9,18,36,.42)),linear-gradient(0deg,rgba(13,20,39,.45),rgba(74,27,78,.15)); }
.servir-banner__copy { max-width:800px; }
.servir-banner__copy.is-glass { padding:28px 32px;border:1px solid rgba(255,255,255,.2);border-radius:22px;background:rgba(10,18,35,.58);box-shadow:0 16px 48px rgba(0,0,0,.12);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px); }
.servir-banner .eyebrow { color:#f1b4db; }
.servir-banner p { color:#f1f3f7; }
.servir-banner .crumbs { color:#e0e4ed; }
.servir-mega.nav__sub { width:min(760px,90vw);grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-height:75vh;overflow:auto; }
.servir-mega section>strong { display:block;padding:10px 12px;color:var(--text-2);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em; }
.servir-mega.nav__sub a { padding:10px 12px;display:block; }
.servir-mega.nav__sub .servir-menu-all { grid-column:1/-1;border-top:1px solid var(--line,#ddd);font-weight:700; }
.servir-help-menu.nav__sub { width:440px;grid-template-columns:repeat(2,minmax(0,1fr)); }
.servir-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0 48px; }
.servir-card { overflow:hidden;border:1px solid var(--line,#ddd);border-radius:20px;background:var(--surface,#fff); }
.servir-card__image { width:100%;height:220px;object-fit:cover; }
.servir-card__body { padding:24px; }
.servir-card__body h2,.servir-card__body h3 { font-size:1.35rem;margin:0 0 12px; }
.servir-card__body p { color:var(--text-2);margin-bottom:22px; }
.servir-card__logo { width:64px;height:64px;object-fit:contain;margin-bottom:15px; }
.servir-ministry { display:grid;grid-template-columns:1fr 1fr;min-height:620px; }
.servir-ministry__copy { padding:64px clamp(24px,5vw,90px);background:var(--surface,#fff); }
.servir-ministry h1 { font-size:clamp(2.3rem,4vw,4rem);line-height:1.1;letter-spacing:-.035em;margin:22px 0; }
.servir-lead { font-size:1.2rem;font-weight:600; }
.servir-crumbs { color:var(--text-2);font-size:.85rem;margin-bottom:34px; }
.servir-logo { width:110px;height:110px;object-fit:contain;display:block;margin-bottom:22px; }
.servir-ministry__photo { position:relative;background:var(--primary-dark,#101b30);min-height:480px; }
.servir-ministry__photo img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover; }
.servir-ministry__photo:after { content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,rgba(10,15,30,.8)); }
.servir-ministry__photo>span { position:absolute;bottom:30px;left:30px;right:30px;z-index:1;color:white;font-weight:700; }
.servir-actions { display:flex;flex-wrap:wrap;gap:12px;margin-top:26px; }
.servir-help-layout { display:grid;grid-template-columns:250px minmax(0,1fr);gap:48px; }
.servir-help-nav { align-self:start;padding:24px;border-radius:18px;background:var(--surface-2,#f8f3f7); }
.servir-help-nav a { display:block;padding:14px 0;border-bottom:1px solid var(--line,#ddd); }
.servir-contact { padding:30px;border:1px solid var(--line,#ddd);border-radius:20px;margin-top:36px; }
@media(min-width:1101px){.header__inner{gap:18px}.nav{gap:4px}.nav>a,.nav__grupo>button{font-size:.86rem}.logo__img{max-width:180px}.servir-mega.nav__sub{left:50%;transform:translateX(-50%)} }
@media(max-width:1100px){.servir-mega.nav__sub,.servir-help-menu.nav__sub{width:100%;grid-template-columns:1fr;max-height:none;overflow:visible}.servir-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.servir-ministry{grid-template-columns:1fr}.servir-ministry__photo{min-height:420px;order:-1}.servir-help-layout{grid-template-columns:1fr}.servir-help-nav{position:static}.servir-ministry__copy{padding:32px 24px} }
@media(max-width:600px){.servir-grid{grid-template-columns:1fr}.servir-banner__copy.is-glass{padding:22px 18px}.servir-banner{padding:40px 0}.servir-ministry__photo{min-height:300px}.servir-contact{padding:22px}.servir-actions .btn{width:100%} }
@media(min-width:1201px){.servir-mega.nav__sub,.servir-help-menu.nav__sub{display:grid}.nav__grupo:hover .servir-mega.nav__sub,.nav__grupo:focus-within .servir-mega.nav__sub,.nav__grupo.is-open .servir-mega.nav__sub{transform:translateX(-50%)} }
@media(max-width:1200px){
 :root{--header-h:68px}.header{backdrop-filter:none;background:var(--surface)}.menu-toggle{display:inline-grid}
 .nav{position:fixed;inset:var(--header-h) 0 0;z-index:49;flex-direction:column;align-items:stretch;gap:0;padding:12px 20px 40px;background:var(--surface);overflow-y:auto;margin:0;transform:translateX(100%);visibility:hidden;transition:transform .25s,visibility .25s}
 .nav.is-open{transform:none;visibility:visible}.nav>a,.nav__grupo>button{width:100%;justify-content:space-between;padding:15px 4px;border-radius:0;border-bottom:1px solid var(--line);font-size:1.05rem}
 .nav__sub,.servir-mega.nav__sub,.servir-help-menu.nav__sub{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:4px 0 8px 8px;display:none;min-width:0;width:100%;max-height:none;overflow:visible}
 .nav__grupo:hover .nav__sub{display:none}.nav__grupo.is-open .nav__sub,.nav__grupo.is-open:hover .nav__sub{display:block;transform:none}
 .nav__mobile-extra{display:grid;gap:10px;margin-top:22px}.header__actions{margin-left:auto}body.menu-aberto{overflow:hidden}
}
