/* =============================================================
   CONECTA BEM-ESTAR — style.css
   Paleta: Verde Menta (#10B981) + Branco, com tons de apoio
   Tipografia: Fraunces (títulos, orgânica) + Inter (texto)
   Abordagem: mobile-first — regras base = mobile, @media amplia
   ============================================================= */

:root{
  /* --- Cores --- */
  --mint: #10B981;
  --mint-dark: #047857;
  --mint-deep: #0B3B2E;      /* usado como "tinta" de texto, mais sofisticado que preto puro */
  --mint-tint: #ECFDF5;      /* fundo suave */
  --mint-tint-2: #D1FAE5;    /* fundo suave, mais saturado */
  --white: #FFFFFF;
  --ink: #0F2A22;
  --ink-soft: #4B6358;
  --border: #DCEFE6;
  --danger: #E85D5D;

  /* --- Tipografia --- */
  --font-display: 'Fraunces', serif;
  --font-body: 'Inter', system-ui, sans-serif;

  /* --- Espaçamento / forma --- */
  --radius-lg: 24px;
  --radius-md: 16px;
  --radius-sm: 10px;
  --shadow-soft: 0 8px 24px rgba(11, 59, 46, 0.08);
  --shadow-lift: 0 16px 40px rgba(11, 59, 46, 0.14);
}

*{ box-sizing: border-box; margin:0; padding:0; }

/* Correção crítica: garante que o atributo HTML "hidden" sempre vença,
   mesmo em elementos cuja classe define display:flex ou display:grid
   (como o modal e a tela de confirmação). Sem isso, esses elementos
   ficam visíveis mesmo estando marcados como hidden. */
[hidden]{ display: none !important; }

html{ scroll-behavior: smooth; }

body{
  font-family: var(--font-body);
  color: var(--ink);
  background: var(--white);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

img{ max-width: 100%; display:block; }

.container{
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Foco visível para acessibilidade de teclado */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible{
  outline: 3px solid var(--mint-dark);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce){
  *{ animation: none !important; transition: none !important; }
}

/* =================== BOTÕES =================== */
.btn{
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 0.95rem;
  border-radius: 999px;
  padding: 12px 22px;
  border: 2px solid transparent;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.btn-primary{
  background: var(--mint);
  color: var(--white);
  box-shadow: var(--shadow-soft);
}
.btn-primary:hover{ background: var(--mint-dark); transform: translateY(-2px); }

.btn-outline{
  background: transparent;
  color: var(--mint-dark);
  border-color: var(--mint);
}
.btn-outline:hover{ background: var(--mint-tint); }

.btn-ghost{
  background: var(--mint-tint);
  color: var(--mint-deep);
}
.btn-ghost:hover{ background: var(--mint-tint-2); }

.btn-small{ padding: 8px 16px; font-size: 0.85rem; }
.btn-block{ width: 100%; padding: 15px; font-size: 1rem; }

/* Botão de WhatsApp: "respira" suavemente para chamar atenção sem ser agressivo */
.btn-whatsapp{
  background: var(--mint);
  color: var(--white);
  width: 100%;
  padding: 18px;
  font-size: 1.05rem;
  border-radius: var(--radius-md);
  animation: respirar 3.2s ease-in-out infinite;
}
.btn-whatsapp:hover{ background: var(--mint-dark); animation: none; }
@keyframes respirar{
  0%, 100% { box-shadow: 0 0 0 0 rgba(16,185,129,0.35); }
  50% { box-shadow: 0 0 0 14px rgba(16,185,129,0); }
}

/* =================== HEADER =================== */
.site-header{
  position: sticky; top: 0; z-index: 40;
  background: rgba(255,255,255,0.9);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--border);
}
.header-inner{
  display:flex; align-items:center; justify-content:space-between;
  padding: 14px 20px;
}
.header-actions{ display:flex; align-items:center; gap: 14px; }
.admin-link{
  font-size: 0.78rem; color: var(--ink-soft); text-decoration:none; font-weight:600;
  border-bottom: 1px dashed var(--border);
}
.admin-link:hover{ color: var(--mint-dark); }
.logo{ display:flex; align-items:center; gap:8px; text-decoration:none; color: var(--mint-deep); }
.logo-mark{ color: var(--mint); display:flex; }
.logo-text{ font-family: var(--font-display); font-size: 1.15rem; letter-spacing: -0.01em; }
.logo-text strong{ color: var(--mint-dark); }

/* =================== HERO =================== */
.hero{
  position: relative;
  background: linear-gradient(180deg, var(--mint-tint) 0%, #F6FDFA 100%);
  padding: 56px 0 90px;
  overflow: hidden;
}
.hero-inner{ text-align:center; max-width: 720px; }
.eyebrow{
  display:inline-block;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--mint-dark);
  background: var(--white);
  border: 1px solid var(--mint-tint-2);
  padding: 6px 14px;
  border-radius: 999px;
  margin-bottom: 18px;
}
.hero h1{
  font-family: var(--font-display);
  font-weight: 600;
  font-size: clamp(2rem, 6vw, 3.2rem);
  line-height: 1.12;
  color: var(--mint-deep);
  letter-spacing: -0.01em;
}
.hero-sub{
  margin-top: 16px;
  color: var(--ink-soft);
  font-size: 1.02rem;
  max-width: 560px;
  margin-left:auto; margin-right:auto;
}
.hero-wave{
  position:absolute; left:0; right:0; bottom:-2px; width:100%; height:60px;
  fill: var(--white);
}

/* Barra de busca */
.search-bar{
  margin-top: 32px;
  background: var(--white);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lift);
  padding: 10px;
  display:flex;
  flex-direction: column;
  gap: 8px;
  text-align:left;
}
.search-field{ flex:1; padding: 6px 14px; }
.search-field label{
  display:block; font-size: 0.72rem; font-weight:600; color: var(--mint-dark);
  text-transform: uppercase; letter-spacing: 0.03em; margin-bottom: 2px;
}
.search-field input{
  border:none; outline:none; width:100%; font-size: 0.98rem; font-family: var(--font-body);
  background: transparent; color: var(--ink);
}
.search-divider{ display:none; }
.search-btn{ width: 100%; }

/* =================== SECTIONS / TITLES =================== */
.section{ padding: 48px 0; }
.section-title{
  font-family: var(--font-display);
  font-size: clamp(1.4rem, 3vw, 1.9rem);
  color: var(--mint-deep);
  font-weight: 600;
  margin-bottom: 20px;
}

/* =================== CATEGORIAS =================== */
.category-grid{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.category-card{
  background: var(--mint-tint);
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  padding: 20px 16px;
  text-align:left;
  cursor:pointer;
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
  display:flex; flex-direction:column; gap: 10px;
}
.category-card:hover{ transform: translateY(-3px); border-color: var(--mint); background: var(--mint-tint-2); }
.category-card.active{ background: var(--mint); color: var(--white); }
.category-card.active .category-count{ color: rgba(255,255,255,0.85); }
.category-icon{
  width: 46px; height:46px;
  display:flex; align-items:center; justify-content:center;
  font-size: 1.5rem;
  background: var(--white);
  border-radius: 12px;
}
.category-card.active .category-icon{ background: rgba(255,255,255,0.2); }
.category-name{ font-weight: 700; font-size: 1rem; }
.category-count{ font-size: 0.82rem; color: var(--ink-soft); }

/* =================== FILTROS =================== */
.listagem-head{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.result-count{ color: var(--ink-soft); font-size: 0.9rem; }

.filters{
  display:flex; flex-wrap: wrap; gap: 10px; align-items:end;
  background: var(--mint-tint);
  padding: 14px;
  border-radius: var(--radius-md);
  margin-bottom: 24px;
}
.filter-field{ flex:1; min-width: 130px; }
.filter-field label{
  display:block; font-size: 0.75rem; font-weight:600; color: var(--mint-deep); margin-bottom:4px;
}
.filter-field select, .filter-field input, .form-field input, .form-field select, .form-field textarea{
  width:100%; padding: 10px 12px; border-radius: var(--radius-sm);
  border: 1px solid var(--border); font-family: var(--font-body); font-size: 0.92rem;
  background: var(--white); color: var(--ink);
}

/* =================== GRID DE PROFISSIONAIS =================== */
.professional-grid{
  display:grid;
  grid-template-columns: 1fr;
  gap: 18px;
}
.pro-card{
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  overflow:hidden;
  box-shadow: var(--shadow-soft);
  transition: transform .18s ease, box-shadow .18s ease;
  display:flex; flex-direction:column;
}
.pro-card:hover{ transform: translateY(-4px); box-shadow: var(--shadow-lift); }
.pro-photo{
  width:100%; aspect-ratio: 4/3; object-fit: cover; background: var(--mint-tint);
}
.pro-body{ padding: 16px; display:flex; flex-direction:column; gap:8px; flex:1; }
.pro-category-tag{
  align-self:flex-start;
  font-size: 0.72rem; font-weight:700; text-transform:uppercase; letter-spacing:0.03em;
  color: var(--mint-dark); background: var(--mint-tint); padding: 4px 10px; border-radius: 999px;
}
.pro-name{ font-family: var(--font-display); font-size: 1.15rem; font-weight:600; color: var(--mint-deep); }
.pro-city{ font-size: 0.85rem; color: var(--ink-soft); display:flex; align-items:center; gap:4px; }
.pro-services{ list-style:none; display:flex; flex-direction:column; gap:2px; font-size: 0.85rem; color: var(--ink-soft); margin: 4px 0; }
.pro-services li::before{ content:"• "; color: var(--mint); }
.pro-footer{ margin-top:auto; display:flex; align-items:center; justify-content:space-between; padding-top:10px; border-top:1px dashed var(--border); }
.pro-footer-actions{ display:flex; align-items:center; gap: 8px; }
.btn-whatsapp-mini{
  display:flex; align-items:center; justify-content:center;
  width: 38px; height: 38px; border-radius: 50%;
  background: var(--mint-tint); font-size: 1.05rem; text-decoration:none; flex-shrink:0;
  transition: background .15s ease, transform .15s ease;
}
.btn-whatsapp-mini:hover{ background: var(--mint-tint-2); transform: scale(1.08); }
.pro-price{ font-size: 0.9rem; }
.pro-price strong{ display:block; font-size: 1.15rem; color: var(--mint-dark); font-family: var(--font-display); }

.empty-state{ text-align:center; color: var(--ink-soft); padding: 40px 0; }

/* =================== SELOS DE REGISTRO PROFISSIONAL =================== */
.pro-registro-tag{
  display:inline-block; align-self:flex-start;
  font-size: 0.72rem; font-weight:700; color: var(--mint-dark);
  background: var(--mint-tint-2); padding: 3px 9px; border-radius: 999px; margin-top: -2px;
}
.pro-registro-tag-profile{ margin-top: 6px; font-size: 0.78rem; padding: 4px 12px; }
.registro-aviso{
  font-size: 0.8rem; color: var(--ink-soft); background: var(--mint-tint);
  padding: 10px 12px; border-radius: var(--radius-sm);
}
.registro-ajuda{
  font-size: 0.82rem; color: var(--ink-soft); background: var(--mint-tint);
  padding: 10px 12px; border-radius: var(--radius-sm); margin-bottom: 14px;
}
.admin-registro-tag{ color: var(--mint-dark) !important; font-weight:600; }
.admin-registro-vazio{ color: #B08900 !important; font-weight:600; }

/* =================== BAIRROS / REGIÕES ATENDIDAS =================== */
.bairros-tags{ display:flex; flex-wrap:wrap; gap: 6px; margin-top: 8px; }
.bairro-tag{
  font-size: 0.78rem; font-weight:600; color: var(--mint-dark);
  background: var(--mint-tint); padding: 4px 11px; border-radius: 999px;
}

/* =================== QUERO ANUNCIAR =================== */
.anunciar-box{
  background: linear-gradient(135deg, var(--mint-deep), var(--mint-dark));
  border-radius: var(--radius-lg);
  padding: 32px 24px;
  color: var(--white);
  display:flex; flex-direction:column; gap: 18px; align-items:flex-start;
}
.anunciar-text h2{ color: var(--white); margin-bottom:8px; }
.anunciar-text p{ color: rgba(255,255,255,0.85); max-width: 520px; }
.btn-anunciar{ background: var(--white); color: var(--mint-deep); flex-shrink:0; }
.btn-anunciar:hover{ background: var(--mint-tint); }

/* =================== CONFIRMAÇÃO DE CADASTRO (etapa 2 do modal) =================== */
.taxa-aviso{
  font-size: 0.85rem; color: var(--ink-soft); background: var(--mint-tint);
  padding: 10px 12px; border-radius: var(--radius-sm); margin-bottom: 14px;
}
.confirmacao-cadastro{ text-align:center; padding: 10px 4px 4px; display:flex; flex-direction:column; gap:14px; align-items:center; }
.confirmacao-icone{ font-size: 2.4rem; }
.confirmacao-cadastro h3{ font-family: var(--font-display); color: var(--mint-deep); font-size:1.25rem; }
.confirmacao-cadastro p{ color: var(--ink-soft); font-size:0.92rem; max-width: 420px; }
.confirmacao-cadastro .btn{ width:100%; max-width: 360px; }

/* =================== PÁGINA DE PERFIL =================== */
.profile-page{ padding: 32px 0 60px; background: var(--mint-tint); }
.back-link{
  background:none; border:none; color: var(--mint-dark); font-weight:600; cursor:pointer;
  font-size:0.92rem; margin-bottom:18px; padding: 4px 0;
}
.profile-card{
  background: var(--white); border-radius: var(--radius-lg); box-shadow: var(--shadow-lift);
  overflow:hidden;
}
.profile-photo{ width:100%; aspect-ratio: 16/10; object-fit:cover; }
.profile-content{ padding: 24px; display:flex; flex-direction:column; gap: 18px; }
.profile-top-row{ display:flex; align-items:flex-start; justify-content:space-between; gap: 12px; flex-wrap:wrap; }
.profile-name{ font-family: var(--font-display); font-size: 1.7rem; color: var(--mint-deep); }
.profile-rating{ color: var(--mint-dark); font-weight:700; font-size:0.95rem; }
.profile-section-label{ font-size:0.78rem; text-transform:uppercase; letter-spacing:0.04em; font-weight:700; color: var(--mint-dark); }
.profile-bio{ color: var(--ink-soft); line-height:1.65; }
.service-list{ display:flex; flex-direction:column; gap:10px; }
.service-row{
  display:flex; justify-content:space-between; align-items:center;
  padding: 12px 14px; background: var(--mint-tint); border-radius: var(--radius-sm);
}
.service-row strong{ color: var(--mint-dark); }
.review{ background: var(--mint-tint); border-radius: var(--radius-sm); padding: 12px 14px; margin-bottom:8px; }
.review-name{ font-weight:700; font-size:0.9rem; }
.review-stars{ color: var(--mint-dark); font-size:0.85rem; }
.review-text{ font-size: 0.88rem; color: var(--ink-soft); margin-top:4px; }

/* =================== MODAL DE CADASTRO =================== */
.modal-overlay{
  position: fixed; inset:0; background: rgba(11,59,46,0.45);
  display:flex; align-items:flex-end; justify-content:center;
  z-index: 100; padding: 0;
}
.modal{
  background: var(--white); width:100%; max-width: 640px; max-height: 92vh; overflow-y:auto;
  border-radius: 24px 24px 0 0; padding: 26px 22px 30px; position:relative;
}
.modal-close{
  position:absolute; top:16px; right:16px; background: var(--mint-tint); border:none;
  width:34px; height:34px; border-radius:50%; font-size:1.3rem; cursor:pointer; color: var(--mint-deep);
}
.modal h2{ font-family: var(--font-display); color: var(--mint-deep); font-size:1.4rem; padding-right: 30px; }
.modal-sub{ color: var(--ink-soft); font-size:0.9rem; margin-top:6px; margin-bottom: 18px; }
.form-grid{ display:grid; grid-template-columns: 1fr; gap: 14px; margin-bottom: 14px; }
.form-field{ margin-bottom: 14px; }
.form-field-full{ grid-column: 1 / -1; }
.campo-ajuda{ display:block; font-size: 0.78rem; color: var(--ink-soft); margin-top: 5px; }
.form-field label{ display:block; font-size:0.82rem; font-weight:600; color: var(--mint-deep); margin-bottom:5px; }
.servicos-fieldset{ border: 1px dashed var(--border); border-radius: var(--radius-md); padding: 14px; margin-bottom: 18px; }
.servicos-fieldset legend{ font-size:0.85rem; font-weight:700; color: var(--mint-dark); padding: 0 6px; }
.servico-row{ display:flex; gap:8px; margin-bottom:8px; }
.servico-row input{ flex:1; }
.servico-row .servico-preco{ max-width: 110px; }
.servico-remover{ background: var(--mint-tint); border:none; border-radius: var(--radius-sm); padding: 0 12px; cursor:pointer; color: var(--danger); font-weight:700; }

/* =================== TOAST =================== */
.toast{
  position: fixed; bottom: 20px; left:50%; transform: translateX(-50%);
  background: var(--mint-deep); color:#fff; padding: 12px 22px; border-radius: 999px;
  font-size: 0.9rem; font-weight:600; z-index: 200; box-shadow: var(--shadow-lift);
  animation: subir .25s ease;
}
@keyframes subir{ from{ opacity:0; transform: translate(-50%, 10px);} to{ opacity:1; transform: translate(-50%,0);} }

/* =================== RODAPÉ =================== */
.site-footer{ background: var(--mint-deep); color: rgba(255,255,255,0.85); padding: 30px 0; margin-top: 20px; }
.footer-links{ display:flex; flex-wrap:wrap; gap: 16px; margin-bottom: 16px; }
.footer-links a{ color: rgba(255,255,255,0.85); font-size: 0.85rem; font-weight:600; text-decoration:none; }
.footer-links a:hover{ text-decoration:underline; color: var(--white); }
.footer-disclaimer{ font-size: 0.85rem; line-height:1.6; max-width: 720px; }
.footer-copy{ font-size: 0.78rem; color: rgba(255,255,255,0.55); margin-top: 14px; }

/* =================== CONSENTIMENTO LGPD =================== */
.consentimento-lgpd{
  display:flex; align-items:flex-start; gap: 10px; cursor:pointer;
  font-size: 0.85rem; color: var(--ink-soft); margin-bottom: 16px;
}
.consentimento-lgpd input{ margin-top: 3px; flex-shrink:0; width:16px; height:16px; accent-color: var(--mint); }
.consentimento-lgpd a{ color: var(--mint-dark); font-weight:600; }

/* =============================================================
   BREAKPOINTS — mobile-first: acima disso ganhamos colunas
   ============================================================= */
@media (min-width: 640px){
  .search-bar{ flex-direction: row; align-items:center; }
  .search-divider{ display:block; width:1px; align-self:stretch; background: var(--border); margin: 6px 0; }
  .search-btn{ width:auto; padding-left: 28px; padding-right: 28px; }
  .category-grid{ grid-template-columns: repeat(3, 1fr); }
  .professional-grid{ grid-template-columns: repeat(2, 1fr); }
  .form-grid{ grid-template-columns: 1fr 1fr; }
  .sobre-grid{ grid-template-columns: repeat(3, 1fr); }
}

@media (min-width: 900px){
  .category-grid{ grid-template-columns: repeat(4, 1fr); }
  .professional-grid{ grid-template-columns: repeat(3, 1fr); }
  .profile-content{ padding: 32px 40px; }
  .modal-overlay{ align-items:center; }
  .modal{ border-radius: 24px; }
  .anunciar-box{ flex-direction:row; align-items:center; justify-content:space-between; padding: 40px; }
}

/* =============================================================
   PAINEL ADMIN — admin.html
   ============================================================= */
.admin-tag{
  font-size: 0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:0.04em;
  color: var(--mint-dark); background: var(--mint-tint); padding: 5px 12px; border-radius: 999px;
}

.admin-login{ padding: 60px 0; background: var(--mint-tint); min-height: 70vh; }
.login-card{
  max-width: 380px; margin: 0 auto; background: var(--white); border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lift); padding: 30px 26px;
}
.login-card h1{ font-family: var(--font-display); color: var(--mint-deep); font-size: 1.5rem; margin-bottom:6px; }
.login-erro{ color: var(--danger); font-size: 0.85rem; margin-top: 10px; text-align:center; }

.admin-main{ padding: 40px 20px 60px; }
.admin-top{ display:flex; flex-wrap:wrap; gap:14px; justify-content:space-between; align-items:flex-start; margin-bottom: 28px; }
.admin-sub{ color: var(--ink-soft); font-size: 0.92rem; margin-top: 4px; max-width: 520px; }

.admin-section{ margin-bottom: 36px; }
.admin-section-head{ display:flex; flex-wrap:wrap; gap:10px; justify-content:space-between; align-items:center; margin-bottom: 14px; }
.admin-section-title{
  font-family: var(--font-display); color: var(--mint-deep); font-size: 1.2rem; font-weight:600;
  display:flex; align-items:center; gap:8px;
}
.admin-count{ font-family: var(--font-body); font-size: 0.85rem; color: var(--ink-soft); font-weight:600; }

.admin-list{ display:flex; flex-direction:column; gap: 12px; }
.admin-card{
  background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-md);
  padding: 14px; display:flex; gap: 14px; align-items:center; flex-wrap:wrap;
  box-shadow: var(--shadow-soft);
}
.admin-card-photo{ width: 56px; height:56px; border-radius: 12px; object-fit:cover; flex-shrink:0; }
.admin-card-info{ display:flex; flex-direction:column; gap:2px; flex:1; min-width: 180px; }
.admin-card-info strong{ color: var(--mint-deep); }
.admin-card-info span{ font-size: 0.85rem; color: var(--ink-soft); }
.admin-card-whats{ font-size: 0.82rem; color: var(--mint-dark); font-weight:600; text-decoration:none; margin-top:2px; }
.admin-card-whats:hover{ text-decoration:underline; }
.admin-card-actions{ display:flex; gap: 8px; flex-shrink:0; }
.btn-remover{ color: var(--danger); }

/* =============================================================
   SOBRE / SUPORTE / PRIVACIDADE — blocos recolhíveis na mesma página
   ============================================================= */
.legal-section{ padding-top: 8px; padding-bottom: 16px; }
.legal-block{
  background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-md);
  padding: 4px 18px; margin-bottom: 10px;
}
.legal-block summary{
  font-family: var(--font-display); font-size: 1.05rem; font-weight:600; color: var(--mint-deep);
  cursor:pointer; list-style:none; padding: 14px 0;
}
.legal-block summary::-webkit-details-marker{ display:none; }
.legal-block summary::after{ content: '+'; float:right; font-size:1.3rem; color: var(--mint); font-family: var(--font-body); }
.legal-block[open] summary::after{ content: '−'; }
.legal-block-body{ padding-bottom: 18px; }
.legal-block-body p{ color: var(--ink-soft); line-height: 1.7; margin-bottom: 12px; font-size: 0.92rem; }
.legal-block-body ul{ color: var(--ink-soft); line-height: 1.8; margin: 0 0 12px 20px; font-size: 0.92rem; }
.legal-block-body strong{ color: var(--ink); }
.legal-block-body h3{
  font-family: var(--font-display); color: var(--mint-deep); font-size: 1.02rem; margin: 20px 0 8px;
}
.legal-block-body h3:first-of-type{ margin-top: 8px; }
.legal-block-body a{ color: var(--mint-dark); font-weight:600; }
.legal-block-body .updated-note{
  display:inline-block; font-size: 0.78rem; color: var(--ink-soft); background: var(--mint-tint);
  padding: 6px 12px; border-radius: var(--radius-sm); margin-bottom: 16px;
}