/* Grupo DFDC e Serviços — regras isoladas das seis novas páginas. */
/* Nas galerias de três imagens, a fotografia central ocupa as duas linhas. */
@media (min-width: 781px) {
  .group-gallery:has(.group-placeholder:nth-child(3):last-child) .group-placeholder:nth-child(2) { grid-row: span 2; }
}
.nav-dropdown--grupo .nav-dropdown-menu{left:auto;right:0;width:min(390px,calc(100vw - 48px));transform:translate(0,-7px)}
.nav-dropdown--grupo.is-open .nav-dropdown-menu{transform:translate(0,0)}
.nav-dropdown--grupo .nav-dropdown-menu a{list-style:none}
.mobile-dropdown-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;padding:15px 0;border:0;background:transparent;color:var(--green);font:500 21px var(--serif);text-align:left;cursor:pointer;text-transform:uppercase}
.mobile-dropdown-toggle span{font:300 27px/1 var(--sans)}
.mobile-nav-dropdown .mobile-submenu{list-style:none}
.group-service-page{background:var(--ivory)}
.group-service-page main{overflow:hidden}
.group-shell{width:min(1240px,calc(100% - 72px));margin:auto}
.group-section{position:relative;padding:clamp(82px,10vw,145px) 0}
.group-section--soft{background:#e9eee5}
.group-section--deep{background:var(--deep);color:#fff}
.group-kicker{margin:0 0 18px;color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.group-section--deep .group-kicker{color:#ddc783}
.group-title{max-width:920px;margin:0;color:var(--green);font:500 clamp(42px,5vw,76px)/1.04 var(--serif)}
.group-section--deep .group-title{color:#fff}
.group-copy{max-width:650px;margin:25px 0 0;color:#315247;font-size:17px;line-height:1.7}
.group-section--deep .group-copy{color:#f4f4ec}
.group-button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;margin-top:31px;padding:0 23px;border:1px solid currentColor;color:var(--green);font-size:10px;font-weight:700;letter-spacing:.12em;text-decoration:none;text-transform:uppercase;transition:background .2s,color .2s}
.group-button:hover{background:var(--green);color:var(--ivory)}
.group-section--deep .group-button{color:#fff}.group-section--deep .group-button:hover{background:#fff;color:var(--green)}
.hero-development{position:relative}.group-hero-copy{position:absolute;z-index:2;right:0;bottom:0;left:0;padding:clamp(38px,6vw,84px) max(36px,calc((100vw - 1240px)/2));color:#fff;pointer-events:none}.group-hero-copy p{margin:0 0 12px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.group-hero-copy h1{max-width:700px;margin:0;color:#fff;font:500 clamp(44px,6vw,86px)/1 var(--serif)}
.group-placeholder{position:relative;display:grid;min-height:330px;place-items:center;overflow:hidden;background:linear-gradient(135deg,#c9d5c4,#9db395);color:#315747}.group-placeholder:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 39px,rgba(255,255,255,.28) 40px 41px)}.group-placeholder span{position:relative;max-width:84%;padding:11px 14px;border:1px solid rgba(24,59,48,.35);background:rgba(250,248,243,.78);font-size:9px;font-weight:700;letter-spacing:.15em;line-height:1.6;text-align:center}.group-placeholder--dark{background:linear-gradient(135deg,#315847,#1b392d);color:#fff}.group-placeholder--dark span{border-color:rgba(255,255,255,.5);background:rgba(16,40,30,.55)}
.group-placeholder[data-group-image]:before{display:none}
.group-editorial{display:grid;grid-template-columns:1fr 1fr;gap:clamp(42px,9vw,140px);align-items:center}.group-editorial .group-placeholder{min-height:590px}.group-editorial-copy{max-width:545px}
.group-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:52px}.group-card{min-height:315px;padding:31px;background:#f7f5ee;border-top:1px solid var(--green)}.group-card h3{margin:0 0 13px;color:var(--green);font:500 30px/1.12 var(--serif)}.group-card p{margin:0;color:#315247;line-height:1.65}.group-card a{color:inherit}.group-card--deep{background:#315747;border:0;color:#fff}.group-card--deep h3,.group-card--deep p{color:#fff}
.group-transparency{max-width:860px;margin:46px auto 0;padding:31px 35px;border-left:2px solid var(--gold);background:rgba(247,245,238,.78)}.group-transparency .group-kicker{margin-bottom:12px}.group-transparency h3{margin:0;color:var(--green);font:500 clamp(28px,3vw,40px)/1.12 var(--serif)}.group-transparency p:not(.group-kicker){margin:17px 0 0;color:#315247;line-height:1.7}.group-transparency p:last-child{margin-top:12px}
.group-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:51px}.group-link-grid a{display:flex;min-height:265px;align-items:flex-end;padding:27px;border:1px solid var(--line);background:#f7f5ee;color:var(--green);font:500 31px/1.1 var(--serif);text-decoration:none;transition:background .25s,color .25s}.group-link-grid a:hover{background:var(--green);color:#fff}
.group-process{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:64px}.group-process:before{content:'';position:absolute;top:37px;right:12.5%;left:12.5%;height:1px;background:var(--green)}.group-process article{position:relative;padding-top:85px;text-align:center}.group-process b{position:absolute;top:0;left:50%;display:grid;width:75px;height:75px;place-items:center;border:1px solid var(--green);border-radius:50%;background:var(--ivory);color:var(--green);font:500 22px var(--serif);transform:translateX(-50%)}.group-process h3{margin:0 0 10px;color:var(--green);font:500 25px var(--serif)}.group-process p{max-width:220px;margin:auto;color:#315247;line-height:1.6}
.group-two-up{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:52px}.group-two-up .group-placeholder{min-height:480px}.group-two-up h3{margin:19px 0 0;color:var(--green);font:500 31px var(--serif)}
.group-gallery{display:grid;grid-template-columns:1.3fr .8fr 1fr;grid-template-rows:280px 235px;gap:16px;margin-top:52px}.group-gallery .group-placeholder{min-height:0}.group-gallery .group-placeholder:first-child{grid-row:span 2}.group-gallery .group-placeholder:last-child{grid-row:span 2}
.group-before-after{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:52px}.group-before-after article{padding:17px;background:#f4f2eb}.group-before-after h3{margin:16px 3px 0;color:var(--green);font:500 30px var(--serif)}.group-before-after .group-placeholder{min-height:410px}
.group-cta{display:flex;min-height:520px;align-items:center;background:#315747;color:#fff}.group-cta[data-group-cta-image]{position:relative;isolation:isolate;overflow:hidden;background-color:#315747;background-repeat:no-repeat;background-size:112% auto;background-position:50% 50%;animation:group-cta-drift 18s ease-in-out infinite alternate}.group-cta[data-group-cta-image]:before{content:'';position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,rgba(11,39,29,.88) 0%,rgba(15,48,36,.72) 46%,rgba(12,37,29,.5) 100%)}.group-cta[data-group-cta-image] .group-shell{position:relative;z-index:1}.group-cta .group-title{color:#fff}.group-cta .group-copy{color:#f4f4ec}.group-cta .group-button{border-color:#f7f5ed;background:#f7f5ed;color:#173d2e;box-shadow:0 9px 24px rgba(4,24,16,.27)}.group-cta .group-button:hover{border-color:#c8a85d;background:#c8a85d;color:#173d2e}.group-cta .group-button:focus-visible{outline:2px solid #fff;outline-offset:4px}
@keyframes group-cta-drift{to{background-position:54% 46%}}
.group-service-page [data-group-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.group-service-page [data-group-reveal].is-group-visible{opacity:1;transform:none}
@media(max-width:1190px) and (min-width:781px){.nav-dropdown--grupo .nav-dropdown-toggle{font-size:9px}.desktop-nav{gap:clamp(8px,1vw,15px)}}
@media(max-width:780px){.group-shell{width:calc(100% - 40px)}.group-section{padding:80px 0}.group-hero-copy{padding:38px 20px}.group-hero-copy h1{font-size:50px}.group-editorial,.group-two-up,.group-before-after{grid-template-columns:1fr;gap:35px}.group-editorial .group-placeholder{min-height:430px}.group-cards,.group-link-grid{grid-template-columns:1fr}.group-card{min-height:0}.group-transparency{margin-top:30px;padding:25px 22px}.group-link-grid a{min-height:170px}.group-process{grid-template-columns:1fr;gap:33px;margin-top:48px}.group-process:before{top:37px;bottom:37px;left:50%;width:1px;height:auto;right:auto}.group-process article{min-height:150px}.group-gallery{grid-template-columns:1fr 1fr;grid-template-rows:280px 190px 220px;gap:10px}.group-gallery .group-placeholder:first-child{grid-row:span 2}.group-gallery .group-placeholder:last-child{grid-column:span 2;grid-row:auto}.group-before-after .group-placeholder{min-height:340px}.group-cta[data-group-cta-image]{min-height:500px;background-size:auto 118%;background-position:52% 50%}}
@media(prefers-reduced-motion:reduce){.group-service-page *,.group-service-page *:before,.group-service-page *:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}.group-service-page [data-group-reveal]{opacity:1!important;transform:none!important}}

/* Fundo exclusivo da identidade dos Serviços Fúnebres. */
.funeral-identity{isolation:isolate;overflow:hidden;background:#253b30;padding:90px 0 70px}
.funeral-identity-background{position:absolute;inset:0;z-index:-2;display:block}
.funeral-identity-background img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.funeral-identity:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(13,32,24,.64),rgba(13,32,24,.12) 38%,rgba(13,32,24,.38) 100%)}
.funeral-identity .group-title{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.3)}
.funeral-identity .group-kicker{color:#f0d891}
.funeral-identity .group-cards{margin-top:clamp(230px,22vw,340px)}
.funeral-identity .group-card{min-height:240px;background:rgba(250,248,241,.94);border-color:#c7ad6e;box-shadow:0 8px 30px rgba(0,0,0,.1)}
@media(max-width:780px){
 .funeral-identity{padding:64px 0 56px}
 .funeral-identity-background img{height:auto;min-height:0;object-fit:initial}
 .funeral-identity:before{background:linear-gradient(180deg,rgba(13,32,24,.65),rgba(13,32,24,.1) 250px,rgba(37,59,48,.3) 480px,#253b30 750px)}
 .funeral-identity .group-cards{margin-top:230px;gap:18px}
 .funeral-identity .group-card{min-height:0;padding:26px}
}


/* Local SEO — zonas de atuação reais. */
.group-service-area{padding:clamp(72px,8vw,112px) 0;background:#f4f2eb;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.group-service-area .group-title{max-width:760px;font-size:clamp(38px,4.3vw,63px)}
.group-service-area-list{display:flex;flex-wrap:wrap;gap:10px;margin:35px 0 0;padding:0;list-style:none}
.group-service-area-list li{padding:9px 12px;border:1px solid rgba(49,82,71,.28);border-radius:999px;background:#faf8f3;color:var(--green);font-size:12px;line-height:1.2}
@media(max-width:780px){.group-service-area{padding:64px 0}.group-service-area-list{gap:8px;margin-top:27px}.group-service-area-list li{font-size:11px;padding:8px 10px}}
