/* Site Funerária Continental v1.1.26 — atualização visual da prévia aprovada.
   Só afeta páginas institucionais; o obituário utiliza folha independente.
   Fonte sans serif local, sem dependência de fontes externas/cookies. */
:root{--navy:#0a2845;--navy-2:#143854;--text:#132c47;--muted:#536879;--gold:#b9872d;--gold-bright:#e6b955;--container:1360px}
body,button,input,textarea,select{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
h1,h2,h3,.subhero h1,.institutional-badge strong,.hero-copy-v2 h1,.price-strip-heading h2,.section-heading h2,.site-footer .footer-brand p{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
h1,h2,h3{letter-spacing:-.035em;font-weight:750}
/* Cabeçalho azul; redes sociais no espaço antes ocupado pelo botão de atendimento. */
.site-header{background:#092239;border-bottom:1px solid rgba(226,182,96,.22)}
.site-header .header-inner{height:85px;gap:24px}
.site-header .logo-link{width:min(332px,28vw)}
.site-header .main-menu{gap:clamp(7px,.9vw,15px)}
.site-header .main-menu>a{font-size:clamp(.73rem,.85vw,.85rem);font-weight:680}
.nav-social-v126{display:inline-flex;gap:9px;align-items:center;padding-left:15px;border-left:1px solid rgba(228,188,112,.3);margin-left:3px;flex-shrink:0}
.nav-social-v126 .utility-social{display:grid;place-items:center;width:36px;height:36px;min-width:36px;border:1px solid rgba(224,184,112,.7);border-radius:50%;background:rgba(255,255,255,.025);color:#e0ad4e!important;transition:background-color .2s ease,transform .2s ease}
.nav-social-v126 .utility-social:hover,.nav-social-v126 .utility-social:focus-visible{background:rgba(211,167,83,.18);transform:translateY(-2px)}
.nav-social-v126 .utility-social .site-icon{width:18px;height:18px;stroke:currentColor}
/* Banner floral e telefone como principal ação de contato */
.hero-v2{min-height:605px;background:linear-gradient(102deg,#ecf2f6 0%,#f8fafb 48%,#e6edf4 100%);color:#0e2844}
.hero-v2 .hero-photo-wrap{inset:0 0 0 44%}
.hero-v2 .hero-photo-wrap:before{background:linear-gradient(90deg,#edf2f6 0%,rgba(237,242,246,.84) 12%,rgba(237,242,246,.16) 72%,transparent 100%)}
.hero-photo-v2{object-position:center 40%}
.hero-layout-v2{min-height:605px}
.hero-copy-v2{width:min(60%,770px);padding:53px 0 58px}
.hero-copy-v2 h1{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-weight:780;font-size:clamp(2.65rem,4.5vw,4.7rem);line-height:1.13;letter-spacing:-.06em;margin:0 0 28px}
.hero-copy-v2 h1 em{font-style:normal;color:#ae7924;font-weight:780}
.hero-phone-v126{display:inline-flex;align-items:center;gap:14px;padding:9px 25px 9px 10px;background:rgba(255,255,255,.94);border:2px solid #be902e;border-radius:100px;box-shadow:0 13px 30px rgba(15,47,78,.13);color:#09233d;font-size:clamp(1.32rem,2.6vw,2.42rem);font-weight:850;letter-spacing:.025em;line-height:1.12;margin:0 0 25px;max-width:100%;transition:transform .18s ease,box-shadow .18s ease}
.hero-phone-v126:hover,.hero-phone-v126:focus-visible{transform:translateY(-2px);box-shadow:0 16px 36px rgba(15,47,78,.19)}
.hero-phone-icon-v126{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border-radius:50%;color:#fff;background:#b6872c}
.hero-phone-icon-v126 .site-icon{width:27px;height:27px}
.hero-phone-number-v126{white-space:nowrap}
.hero-copy-v2 .hero-actions{gap:13px;margin-top:0}
.hero-copy-v2 .hero-actions .button{min-height:50px;font-weight:750}
.hero-copy-v2 .hero-actions .button .site-icon{width:19px;height:19px}
/* Três atalhos uniformes azul-marinho, ícones dourados */
.quick-section{background:#eef3f7;padding:22px 0 33px}
.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;transform:none}
.quick-grid .quick-item,.quick-grid .quick-flowers{min-height:94px;padding:20px 24px;border:1px solid #28516d;background:linear-gradient(135deg,#153956,#0a2845);color:#fff;border-radius:13px;box-shadow:0 8px 22px rgba(14,43,69,.12);display:flex;align-items:center;justify-content:center;gap:17px}
.quick-grid .quick-item:hover,.quick-grid .quick-item:focus-visible{background:linear-gradient(135deg,#1c4d6c,#123654);transform:translateY(-2px);border-color:#c49a47}
.quick-grid .quick-item .quick-icon{display:grid;place-items:center;flex:none;width:48px;height:48px;color:#d9a54a;background:transparent;border:0}
.quick-grid .quick-item .quick-icon .site-icon{width:37px;height:37px;stroke-width:1.8}
.quick-grid .quick-item strong{font-size:clamp(1rem,1.26vw,1.22rem);font-weight:760;color:#fff;line-height:1.25}
.quick-grid .quick-item small{display:none}
/* Informações comerciais sem cabeçalho ou disclaimer, fundo azul acinzentado. */
.price-strip-section{padding:30px 0 42px;background:#dfe9f1}
.price-strip-grid{border:1px solid #c9d7e2;border-radius:16px;background:#fbfcfe;box-shadow:0 12px 28px rgba(29,62,87,.09);overflow:hidden}
.price-item{padding:22px 25px;min-height:132px;border-color:#d9e3eb}
.price-caption{color:#a9792b;font-weight:830;letter-spacing:.105em}
.price-item strong{color:#0c2946;font-weight:810;font-size:clamp(1.04rem,1.48vw,1.27rem);line-height:1.35}
.price-item small{color:#4d647a}
/* Avaliações antes dos serviços; cards existentes intactos. */
.g-reviews{background:#f7fafc;padding:64px 0 69px}
.g-reviews .g-reviews-heading h2{font-weight:770;letter-spacing:-.04em}
.g-review-card{border-color:#d6e0e8;box-shadow:0 9px 24px rgba(20,52,80,.075)}
/* 12 serviços reais, só ícone + título + CTA. Nunca inventar serviços. */
.section-services-v2{background:#dfe9f1;padding:72px 0 83px}
.section-services-v2 .heading-v2{justify-content:center;text-align:center;margin-bottom:34px}
.section-services-v2 .heading-v2 h2{font-size:clamp(2.2rem,3.5vw,3.4rem);font-weight:790;letter-spacing:-.048em;color:#0b2946}
.section-services-v2 .services-premium{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.section-services-v2 .premium-service-card{background:#fff;border:1px solid #d8e2eb;border-radius:18px;min-height:278px;box-shadow:0 9px 20px rgba(18,51,79,.08)}
.section-services-v2 .premium-service-body{padding:27px 18px 20px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center}
.section-services-v2 .premium-icon-link{margin:0 0 12px}
.section-services-v2 .premium-service-icon{width:78px;height:78px;display:grid;place-items:center;border-radius:50%;background:#f1f4f7;border:1px solid #e6ebef;color:#b9872d;margin:0}
.section-services-v2 .premium-service-icon svg{width:45px;height:45px;stroke-width:1.75;color:#b9872d}
.section-services-v2 .premium-service-body h3{font-size:clamp(1.08rem,1.36vw,1.27rem);font-weight:800;line-height:1.26;margin:10px 0 22px;color:#102c4c;flex:1}
.section-services-v2 .premium-service-body p{display:none}
.section-services-v2 .premium-service-link{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:11px 23px;min-height:43px;width:min(100%,215px);margin-top:auto;border-radius:8px;border:1px solid #123755;background:#0b2946;color:#fff;font-size:.91rem;font-weight:770;text-decoration:none;line-height:1.2;transition:transform .18s ease,background-color .18s ease}
.section-services-v2 .premium-service-link span{color:#e4b35c;font-size:1.2rem}
.section-services-v2 .premium-service-link:hover,.section-services-v2 .premium-service-link:focus-visible{background:#1a496c;color:#fff;transform:translateY(-2px)}
/* Consistência das cores em todas as seções institucionais. */
.toned-a{background:#e5edf3}.toned-b{background:#edf3f7}.toned-c{background:#f7f9fb}
.eyebrow,.unit-marker,.legacy-service .site-icon,.service-icon .site-icon,.premium-service-icon .site-icon{color:#b38332}
.legacy-service .site-icon{color:#b38332}
.institutional-v3,.units-section-v2{background:#e8f0f5}
.section-heading h2,.institutional-copy h2,.flowers-center-block h2,.memorial-v2 h2,.contact-banner-v2 h2{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-weight:770}
@media(max-width:1250px){.site-header .header-inner{gap:15px}.site-header .logo-link{width:275px}.site-header .main-menu{gap:8px}.site-header .main-menu>a{font-size:.75rem}.nav-social-v126{padding-left:10px;gap:6px}}
@media(max-width:1000px){.site-header .logo-link{width:245px}.site-header .main-menu{gap:6px}.site-header .main-menu>a{font-size:.71rem}.nav-social-v126 .utility-social{width:32px;height:32px;min-width:32px}}
@media(max-width:900px){.site-header .header-inner{height:76px}.site-header .logo-link{width:min(280px,72vw)}.site-header .main-menu{gap:0}.site-header .main-menu>a{font-size:1rem}.nav-social-v126{display:flex;justify-content:center;gap:16px;padding:17px 5px 6px;margin:0;border-left:0}.nav-social-v126 .utility-social{width:42px;height:42px;min-width:42px}.hero-copy-v2{width:min(70%,700px)}.quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.quick-grid .quick-item{padding:15px 12px;gap:7px}.quick-grid .quick-item .quick-icon{width:37px}.quick-grid .quick-item strong{font-size:.92rem}.section-services-v2 .services-premium{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.hero-v2{min-height:0}.hero-v2 .hero-photo-wrap{inset:0 0 0 10%;height:auto;opacity:.28}.hero-v2 .hero-photo-wrap:before{background:linear-gradient(90deg,#edf2f6 0%,rgba(237,242,246,.78) 45%,rgba(237,242,246,.32) 100%)}.hero-layout-v2{min-height:0}.hero-copy-v2{width:100%;padding:47px 0 54px}.hero-copy-v2 h1{font-size:clamp(2.06rem,8.9vw,3.35rem);line-height:1.16;margin-bottom:26px;letter-spacing:-.055em}.hero-phone-v126{padding:7px 14px 7px 7px;gap:9px;margin-bottom:23px;font-size:clamp(1.36rem,6.5vw,2rem)}.hero-phone-icon-v126{flex:0 0 43px;width:43px;height:43px}.hero-phone-icon-v126 .site-icon{width:22px;height:22px}.hero-copy-v2 .hero-actions .button{flex:1 1 100%}.quick-section{padding:16px 0 25px}.quick-grid{grid-template-columns:1fr;gap:10px;transform:none}.quick-grid .quick-item{min-height:72px;flex-direction:row;padding:12px 18px;justify-content:flex-start;gap:13px}.quick-grid .quick-item .quick-icon{width:45px;height:45px}.quick-grid .quick-item strong{font-size:1.02rem}.price-strip-section{padding:24px 0 36px}.price-item{padding:18px 20px;min-height:0}.g-reviews{padding:50px 0}.section-services-v2{padding:58px 0 65px}.section-services-v2 .services-premium{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.section-services-v2 .premium-service-card{min-height:245px}.section-services-v2 .premium-service-body{padding:17px 10px}.section-services-v2 .premium-service-icon{width:65px;height:65px}.section-services-v2 .premium-service-icon svg{width:37px;height:37px}.section-services-v2 .premium-service-body h3{font-size:1.01rem;margin:10px 0 15px}.section-services-v2 .premium-service-link{font-size:.79rem;padding:9px 8px;min-height:37px}}
@media(max-width:375px){.hero-phone-v126{font-size:1.18rem}.hero-phone-icon-v126{width:37px;height:37px;flex-basis:37px}.section-services-v2 .services-premium{grid-template-columns:1fr}.section-services-v2 .premium-service-card{min-height:215px}}
@media(prefers-reduced-motion:reduce){.hero-phone-v126,.nav-social-v126 .utility-social,.section-services-v2 .premium-service-link{transition:none!important}}

/* v1.1.28 — full-bleed backgrounds with a centered content column.
   The sections themselves span the viewport; only .site-container is limited.
   No max-width, frame shadow or horizontal margin on the page shell. */
.site-page-frame { width:100%; max-width:none; margin:0; background:transparent; box-shadow:none; }
@media (min-width:901px) {
  .site-page-frame .site-container { width:90%; max-width:1600px; margin-inline:auto; }
}
@media (max-width:900px) {
  .site-page-frame .site-container { width:min(var(--container),calc(100% - 44px)); margin-inline:auto; }
}
/* Todos os serviços da página inicial são um único link acessível, sem CTA interno. */
.section-services-v2 .premium-service-body-link {
  display:flex; flex:1; min-width:0; width:100%; min-height:100%; box-sizing:border-box;
  color:#102c4c; text-decoration:none; cursor:pointer;
  align-items:center; justify-content:center; flex-direction:column;
}
.section-services-v2 .premium-service-body-link h3 { flex:0 0 auto; margin:15px 0 0; }
.section-services-v2 .premium-service-card { transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.section-services-v2 .premium-service-card:hover,
.section-services-v2 .premium-service-card:focus-within { border-color:#b9872d; box-shadow:0 16px 29px rgba(18,51,79,.17); transform:translateY(-3px); }
.section-services-v2 .premium-service-body-link:focus-visible { outline:3px solid #bc8b30; outline-offset:-5px; border-radius:16px; }
@media (max-width:680px) { .section-services-v2 .premium-service-body-link h3 { margin-top:12px; } }
@media (prefers-reduced-motion:reduce) { .section-services-v2 .premium-service-card { transition:none!important; transform:none!important; } }

/* Navegação recolhível para notebooks estreitos: evita overflow horizontal. */
@media (min-width:901px) and (max-width:1100px) {
  .site-header .header-inner { height:76px; }
  .site-header .logo-link { width:min(280px,72vw); }
  .site-header .menu-toggle {display:flex;flex-direction:column;position:relative;align-items:end;justify-content:center;gap:5px;background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:8px;height:44px;width:74px;padding:7px 12px;color:#fff;cursor:pointer;}
  .site-header .menu-toggle span {height:2px;width:21px;background:#fff;}
  .site-header .menu-toggle b {position:absolute;font-size:.65rem;font-weight:600;left:8px;bottom:5px;opacity:.8;}
  .site-header .main-menu {display:none;position:absolute;top:100%;left:0;right:0;padding:20px 24px;background:#071a35;box-shadow:0 15px 20px rgba(0,0,0,.18);flex-direction:column;align-items:stretch;gap:0;}
  .site-header .main-menu.open {display:flex;}
  .site-header .main-menu>a {font-size:1rem;padding:12px;border-bottom:1px solid rgba(255,255,255,.1);}
  .site-header .nav-social-v126 {border:0;margin:0;padding:16px 0;justify-content:center;}
}


/* v1.1.30 — reforço visual do WhatsApp e ajustes de movimento na rolagem.
   - Ondas do WhatsApp mais perceptíveis e recorrentes (3s).
   - Conteúdos continuam entrando suavemente; a saída é conduzida pelo JS. */
.wa-assist .floating-whatsapp{
  overflow:visible;
  animation:wa-button-breath 3s ease-in-out infinite;
}
.wa-assist .floating-whatsapp::before,
.wa-assist .floating-whatsapp::after{
  content:'';
  position:absolute;
  inset:-8px;
  border-radius:inherit;
  pointer-events:none;
  z-index:-1;
  opacity:0;
}
.wa-assist .floating-whatsapp::before{
  border:2px solid rgba(29,168,106,.48);
  box-shadow:0 0 0 0 rgba(29,168,106,.16);
  animation:wa-strong-wave 3s ease-out infinite;
}
.wa-assist .floating-whatsapp::after{
  border:2px solid rgba(29,168,106,.34);
  box-shadow:0 0 0 0 rgba(29,168,106,.10);
  animation:wa-strong-wave 3s ease-out 1.05s infinite;
}
@keyframes wa-strong-wave{
  0%{opacity:0;transform:scale(1)}
  10%{opacity:.96}
  55%{opacity:.36}
  100%{opacity:0;transform:scale(1.42)}
}
@keyframes wa-button-breath{
  0%,100%{transform:translateY(0) scale(1);box-shadow:0 9px 26px rgba(5,56,39,.27)}
  14%{transform:translateY(-1px) scale(1.02);box-shadow:0 16px 34px rgba(5,56,39,.33)}
  28%{transform:translateY(0) scale(1);box-shadow:0 11px 28px rgba(5,56,39,.30)}
}
@media (prefers-reduced-motion:reduce){
  .wa-assist .floating-whatsapp{animation:none!important}
  .wa-assist .floating-whatsapp::before,
  .wa-assist .floating-whatsapp::after{animation:none!important;opacity:0!important}
}


/* v1.1.31 — Banner floral com 3 imagens JPEG, fade e leitura preservada. */
.hero-v2{position:relative;isolation:isolate;overflow:hidden}
.hero-v2 .hero-photo-wrap{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:1}
.hero-v2 .hero-photo-wrap::before{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;
 background:linear-gradient(90deg,#edf2f6 0%,rgba(237,242,246,.98) 23%,rgba(237,242,246,.83) 39%,rgba(237,242,246,.29) 57%,rgba(237,242,246,0) 78%)}
.hero-v2 .hero-layout-v2{position:relative;z-index:4}
.hero-v2 .hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.55s ease,visibility 0s linear 1.55s;will-change:auto}
.hero-v2 .hero-slide.active{opacity:1;visibility:visible;transition:opacity 1.55s ease,visibility 0s;z-index:1}
.hero-v2 .hero-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:right center}
.hero-v2 .hero-controls{position:absolute;z-index:5;right:max(24px,5vw);bottom:25px;display:flex;gap:10px;align-items:center}
.hero-v2 .hero-dot{display:block;width:12px;height:12px;min-height:12px;border:1px solid rgba(8,45,72,.5);border-radius:50%;background:rgba(255,255,255,.8);padding:0;cursor:pointer;box-shadow:0 1px 5px rgba(3,28,46,.12);transition:background-color .25s ease,transform .25s ease,border-color .25s ease}
.hero-v2 .hero-dot:hover,.hero-v2 .hero-dot:focus-visible{background:#d3a34b;transform:scale(1.18)}
.hero-v2 .hero-dot.active{background:#b9872d;border-color:#92631d;transform:scale(1.12)}
@media(min-width:901px){.hero-v2 .hero-slide.active img{animation:hero-photo-breathe 7s linear both}}
@keyframes hero-photo-breathe{from{transform:scale(1.024)}to{transform:scale(1)}}
@media(max-width:680px){
 .hero-v2 .hero-photo-wrap{inset:0;opacity:.48;height:100%}
 .hero-v2 .hero-photo-wrap::before{background:linear-gradient(90deg,rgba(237,242,246,.98) 0%,rgba(237,242,246,.82) 52%,rgba(237,242,246,.34) 100%)}
 .hero-v2 .hero-controls{right:21px;bottom:14px}
 .hero-v2 .hero-dot{width:11px;height:11px;min-height:11px}
}
@media(prefers-reduced-motion:reduce){
 .hero-v2 .hero-slide,.hero-v2 .hero-slide.active{transition:none!important}
 .hero-v2 .hero-slide.active img{animation:none!important}
 .hero-v2 .hero-dot{transition:none!important}
}

/* Alvos maiores para navegação por toque/teclado; indicadores visuais continuam discretos. */
.hero-v2 .hero-dot{width:28px;height:28px;min-height:28px;border:0;background:transparent;box-shadow:none;display:grid;place-items:center;transform:none}
.hero-v2 .hero-dot::before{content:'';display:block;width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.9);border:1px solid rgba(8,45,72,.5);box-shadow:0 1px 5px rgba(3,28,46,.15);transition:background-color .25s ease,transform .25s ease}
.hero-v2 .hero-dot.active,.hero-v2 .hero-dot:hover,.hero-v2 .hero-dot:focus-visible{background:transparent;transform:none}
.hero-v2 .hero-dot.active::before{background:#b9872d;border-color:#92631d;transform:scale(1.12)}
.hero-v2 .hero-dot:hover::before{background:#d3a34b;transform:scale(1.18)}
@media(prefers-reduced-motion:reduce){.hero-v2 .hero-dot::before{transition:none!important}}
