/* Reforço comercial e SEO local — 31/08/2026 */
.cv-areas{padding:88px 0;background:#fff}
.cv-areas-inner{max-width:1200px;margin:0 auto;padding:0 var(--pad)}
.cv-areas-head{max-width:760px;margin-bottom:36px}
.cv-areas-h{font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,3vw,42px);font-weight:400;color:var(--navy);line-height:1.15;margin:10px 0 16px}
.cv-areas-lead{font-size:15px;color:var(--text-2);line-height:1.8}
.cv-areas-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.cv-area-card{padding:26px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;transition:background .22s ease,transform .22s ease;display:flex;flex-direction:column;gap:6px;min-height:130px}
.cv-area-card:hover{background:var(--gold-pale);transform:translateY(-2px)}
.cv-area-card strong{font-family:Georgia,"Times New Roman",serif;font-size:20px;color:var(--navy);font-weight:600}
.cv-area-card span{font-size:12.5px;color:var(--muted);line-height:1.55}
.footer-zone{display:inline-block}
@media(max-width:900px){.cv-areas-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(38px,7.4vw,64px)}}
@media(max-width:560px){.cv-areas{padding:68px 0}.cv-areas-grid{grid-template-columns:1fr}.hero{min-height:650px}.hero h1{font-size:clamp(34px,10vw,48px)}}


/* 2026-08-31: zonas com maior destaque visual */
.cv-areas{background:linear-gradient(180deg,#fff 0%,#f7f5f1 100%)}
.cv-areas-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;border:0}
.cv-area-card{position:relative;min-height:148px;padding:27px 48px 24px 24px;border:1px solid rgba(8,21,46,.13);border-top:3px solid var(--gold);border-radius:5px;background:#fff;box-shadow:0 7px 24px rgba(8,21,46,.055);transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease;overflow:hidden}
.cv-area-card::after{content:'→';position:absolute;right:20px;top:24px;width:30px;height:30px;border:1px solid rgba(184,134,30,.42);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:16px;transition:all .2s ease}
.cv-area-card strong{font-size:21px;line-height:1.2;margin-bottom:7px}
.cv-area-card span{font-size:12.8px;line-height:1.55;color:#667085}
.cv-area-card:hover{background:var(--navy);border-color:var(--navy);box-shadow:0 12px 30px rgba(8,21,46,.16);transform:translateY(-4px)}
.cv-area-card:hover strong{color:#fff}.cv-area-card:hover span{color:rgba(255,255,255,.66)}.cv-area-card:hover::after{background:var(--gold);border-color:var(--gold);color:#fff;transform:translateX(2px)}
.footer-zone{padding:5px 11px!important;border:1px solid rgba(215,173,83,.26);background:rgba(215,173,83,.06)!important;color:rgba(255,255,255,.65)!important;transition:all .18s ease}
.footer-zone:hover{background:rgba(215,173,83,.16)!important;color:#fff!important;border-color:rgba(215,173,83,.55)}
@media(max-width:1100px){.cv-areas-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.cv-areas-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cv-areas-grid{grid-template-columns:1fr}.cv-area-card{min-height:124px}}

/* Ajustes finais de composição e alinhamento — 31/08/2026 */
/* Faixa de confiança: bloco realmente centrado, com texto legível e sem colunas espremidas. */
@media (min-width:1101px){
  .strip{padding:0 var(--pad)}
  .strip-inner{width:100%;max-width:1024px;margin:0 auto;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--line);gap:1px;border-left:1px solid var(--line);border-right:1px solid var(--line)}
  .strip-item{min-width:0;min-height:154px;padding:28px 20px;border:0!important;background:var(--white);gap:11px}
  .strip-item-title{font-size:13.5px;line-height:1.45}
  .strip-item-sub{font-size:12.25px;line-height:1.58}
}
@media (min-width:961px) and (max-width:1100px){
  .strip{padding:0 var(--pad)}
  .strip-inner{width:100%;max-width:900px;margin:0 auto;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--line);gap:1px}
  .strip-item{min-height:130px;padding:24px 22px;border:0!important;background:var(--white)}
}
@media (max-width:960px){
  .strip{padding:0}
  .strip-inner{width:100%;max-width:none;grid-template-columns:1fr 1fr}
  .strip-item{padding:20px 22px;min-width:0}
}
@media (max-width:560px){.strip-inner{grid-template-columns:1fr}.strip-item{min-height:auto}}

/* Serviços: a grelha alinha com a coluna de texto acima, em vez de começar demasiado à esquerda. */
.srv-grid{width:calc(100% - (2 * var(--pad)));max-width:1024px;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important;grid-auto-rows:1fr}
.srv-cell{height:100%;min-height:246px}
@media(max-width:960px){.srv-grid{width:calc(100% - (2 * var(--pad)));max-width:none}.srv-cell{min-height:220px}}
@media(max-width:620px){.srv-grid{width:calc(100% - 44px)}.srv-cell{min-height:auto}}

/* Contactos: o cartão começa ao nível do formulário, deixando o cabeçalho respirar. */
@media(min-width:961px){
  .contacto-inner{grid-template-columns:minmax(0,1fr) 340px;gap:72px;align-items:start}
  .ctc-sidebar{position:relative!important;top:auto!important;margin-top:196px;align-self:start;display:flex;flex-direction:column}
}
@media(max-width:960px){.ctc-sidebar{position:static!important;margin-top:0!important}}

/* Cartões das zonas sempre com a mesma altura dentro de cada linha. */
.cv-areas-grid{grid-auto-rows:1fr;align-items:stretch}
.cv-area-card{height:100%}

/* Segunda linha das zonas centrada no desktop (4 + 3), mantendo todos os cartões alinhados. */
@media(min-width:1101px){
  .cv-areas-grid{grid-template-columns:repeat(8,minmax(0,1fr))}
  .cv-area-card{grid-column:span 2}
  .cv-area-card:nth-child(5){grid-column:2 / span 2}
  .cv-area-card:nth-child(6){grid-column:4 / span 2}
  .cv-area-card:nth-child(7){grid-column:6 / span 2}
}

/* Ajuste fino de alinhamento pedido pelo cliente — 31/08/2026 */
@media(min-width:961px){
  .ctc-card{margin-bottom:18px}
  .ctc-wapp{margin-top:12px}
}
