/* — Google Fonts — */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;1,400&family=DM+Sans:wght@300;400;500;600&display=swap');

/* — Variáveis de cor — */
:root {
  --sage:       #7A9E7E;
  --sage-light: #B5CDB7;
  --sage-pale:  #E8F0E9;
  --clay:       #C4826A;
  --clay-light: #E8B49E;
  --clay-pale:  #FDE8E4;
  --cream:      #FAF7F2;
  --cream-dark: #F0EBE3;
  --ink:        #2C2C2C;
  --ink-soft:   #5A5A5A;
  --ink-muted:  #9A9A9A;
  --border:     #E2DDD8;
}

/* ── GERAL ── */
body {
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 400;
  background-color: var(--cream) !important;
  color: var(--ink) !important;
  line-height: 1.7;
}

/* ── TÍTULOS ── */
h1, h2, h3, h4, h5, h6,
.entry-title,
.page-title {
  font-family: 'Playfair Display', serif !important;
  font-weight: 600;
  color: var(--ink) !important;
  line-height: 1.2;
}

h1 { font-size: clamp(28px, 5vw, 42px); }
h2 { font-size: clamp(22px, 4vw, 32px); }
h3 { font-size: clamp(18px, 3vw, 24px); }
h4 { font-size: 18px; }

/* ── PARÁGRAFOS E TEXTO ── */
p, li, label, input, textarea {
  font-family: 'DM Sans', sans-serif !important;
  color: var(--ink-soft);
  font-size: 15px;
  line-height: 1.75;
}

/* ── CABEÇALHO ── */
.site-header,
.ast-primary-header-bar,
#masthead {
  background-color: var(--cream) !important;
  border-bottom: 1px solid var(--border) !important;
  box-shadow: none !important;
}

/* ── LOGÓTIPO ── */
.site-title,
.site-title a,
.ast-site-name {
  font-family: 'Playfair Display', serif !important;
  font-weight: 600;
  color: var(--ink) !important;
  font-size: 20px;
  letter-spacing: 0.02em;
}

/* ── MENU DE NAVEGAÇÃO ── */
.main-navigation a,
.ast-primary-header .menu-link,
#site-navigation a,
.nav-links a {
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 500;
  font-size: 13px;
  color: var(--ink-soft) !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transition: color 0.25s ease;
}
.main-navigation a:hover,
.ast-primary-header .menu-link:hover {
  color: var(--sage) !important;
}

/* ── CONTEÚDO PRINCIPAL ── */
.site-main,
.entry-content,
.ast-container,
main {
  background-color: var(--cream) !important;
}

/* ── BOTÕES ── */
.wp-block-button__link,
.wp-element-button,
.button,
input[type="submit"],
button[type="submit"] {
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 500;
  font-size: 13px !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 4px !important;
  padding: 12px 28px !important;
  transition: all 0.3s ease;
  cursor: pointer;
}

/* Botão primário — sálvia */
.wp-block-button:not(.is-style-outline) .wp-block-button__link {
  background-color: var(--sage) !important;
  color: #fff !important;
  border: 1.5px solid var(--sage) !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
  background-color: #5f8263 !important;
  border-color: #5f8263 !important;
}

/* Botão secundário — outline sálvia */
.wp-block-button.is-style-outline .wp-block-button__link {
  background-color: transparent !important;
  color: var(--sage) !important;
  border: 1.5px solid var(--sage) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background-color: var(--sage) !important;
  color: #fff !important;
}

/* ── LINKS ── */
a {
  color: var(--sage) !important;
  text-decoration: none;
  transition: color 0.2s ease;
}
a:hover {
  color: var(--clay) !important;
}

/* ── SEPARADORES ── */
.wp-block-separator,
hr {
  border: none;
  border-top: 1px solid var(--border) !important;
  opacity: 1 !important;
  margin: 40px 0;
}

/* ── COLUNAS (cards de serviço) ── */
.wp-block-column {
  background-color: var(--cream-dark);
  border-radius: 12px;
  padding: 28px 24px !important;
  border: 1px solid var(--border);
}
.wp-block-column h3 {
  color: var(--sage) !important;
  margin-bottom: 12px;
}

/* ── LISTAS ── */
ul li, ol li {
  margin-bottom: 6px;
  padding-left: 4px;
}
ul li::marker {
  color: var(--sage);
}

/* ── FORMULÁRIO DE CONTACTO (WPForms) ── */
.wpforms-container input,
.wpforms-container textarea,
.wpforms-container select {
  font-family: 'DM Sans', sans-serif !important;
  background-color: #fff !important;
  border: 1px solid var(--border) !important;
  border-radius: 6px !important;
  padding: 12px 16px !important;
  color: var(--ink) !important;
  font-size: 14px !important;
  transition: border-color 0.2s ease;
}
.wpforms-container input:focus,
.wpforms-container textarea:focus {
  border-color: var(--sage) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px var(--sage-pale) !important;
}
.wpforms-container label {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ink-muted) !important;
  margin-bottom: 6px;
}
.wpforms-container .wpforms-submit {
  background-color: var(--sage) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 14px 32px !important;
}
.wpforms-container .wpforms-submit:hover {
  background-color: #5f8263 !important;
}

/* ── RODAPÉ ── */
.site-footer,
footer,
#colophon {
  background-color: var(--cream-dark) !important;
  color: var(--ink-soft) !important;
  border-top: 1px solid var(--border) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px;
  padding: 40px 24px;
}
.site-footer a,
footer a {
  color: var(--sage) !important;
}
.site-footer a:hover {
  color: var(--clay) !important;
}

/* ── DESTAQUES COM TERRACOTA (cor de acento) ── */
/* Para usar em chamadas à ação especiais */
.has-clay-accent {
  color: var(--clay) !important;
}
.wp-block-quote,
blockquote {
  border-left: 3px solid var(--clay) !important;
  padding-left: 20px;
  font-family: 'Playfair Display', serif !important;
  font-style: italic;
  color: var(--ink-soft) !important;
	}