@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Sans:wght@300;400;500&display=swap');
:root{--ink:#1a1a2e;--ink-soft:#4a4a6a;--sage:#4a7c6f;--sage-light:#e8f0ee;--sage-mid:#c5dbd7;--warm:#f7f4ef;--white:#fff;--red:#b85450;--border:rgba(26,26,46,0.1)}
body,.site,.site-content,.content-area,main,.entry-content,.singular-entry,.page-content,article{background:var(--white)!important;color:var(--ink)!important}
body,p,li,span,div,label,input,textarea,select,button{font-family:'DM Sans',sans-serif!important}
h1,h2,h3,h4,h5,h6{font-family:'DM Serif Display',serif!important;color:var(--ink)!important}
p,li{color:var(--ink-soft)!important;line-height:1.8!important}
a{color:var(--sage)!important;text-decoration:none!important}
a:hover{color:var(--ink)!important}
.entry-header,.page-header,h1.entry-title,.entry-title,.singular-entry .entry-header,.page-hero-title,.kadence-page-header{display:none!important}
.singular-entry .entry-content,.content-container>.entry-content{margin-top:0!important;padding-top:0!important}
.site-header,header.site-header{background:var(--white)!important;border-bottom:0.5px solid var(--border)!important;box-shadow:none!important}
.main-navigation a,header .menu-item a{color:var(--ink-soft)!important;font-size:13px!important}
.main-navigation a:hover{color:var(--sage)!important}
.site-footer{background:var(--ink)!important}
.site-footer,.site-footer p,.site-footer a,.site-footer span{color:rgba(255,255,255,.6)!important}
.site-footer a:hover{color:#fff!important}
.bookly-form,.bookly-form *{font-family:'DM Sans',sans-serif!important}
.bookly-form{background:var(--white)!important;max-width:100%!important}
.bookly-progress-tracker>li{background:var(--sage-light)!important;color:var(--ink-soft)!important;font-size:12px!important;font-weight:500!important;border:none!important}
.bookly-progress-tracker>li.active{background:var(--sage)!important;color:#fff!important}
.bookly-progress-tracker>li.completed{background:var(--sage-mid)!important;color:var(--sage)!important}
.bookly-label-wrap label,.bookly-form label{color:var(--ink)!important;font-size:11px!important;font-weight:500!important;text-transform:uppercase!important;letter-spacing:0.5px!important}
.bookly-form input[type=text],.bookly-form input[type=email],.bookly-form input[type=tel],.bookly-form select,.bookly-form textarea,.bookly-custom-fields-container input,.bookly-custom-fields-container select{background:var(--white)!important;border:1px solid var(--border)!important;border-radius:10px!important;color:var(--ink)!important;padding:10px 14px!important;font-size:14px!important;box-shadow:none!important;max-width:100%!important;box-sizing:border-box!important}
.bookly-btn,.bookly-next-step,.bookly-pay-btn,button.bookly-btn,.bookly-btn-submit{background:var(--ink)!important;color:#fff!important;border:none!important;border-radius:40px!important;padding:12px 24px!important;font-size:14px!important;font-weight:500!important;cursor:pointer!important;box-shadow:none!important}
.bookly-btn:hover,.bookly-next-step:hover{background:var(--sage)!important}
.bookly-back-step{background:transparent!important;color:var(--ink-soft)!important;border:1px solid var(--border)!important;border-radius:40px!important;padding:11px 24px!important;font-size:14px!important}
.bookly-calendar .ui-datepicker{background:var(--white)!important;border:1px solid var(--border)!important;border-radius:16px!important;width:100%!important;box-sizing:border-box!important}
.bookly-calendar .ui-datepicker-header{background:var(--warm)!important;color:var(--ink)!important;border-radius:12px 12px 0 0!important}
.bookly-calendar td a{color:var(--ink)!important}
.bookly-calendar td.bookly-day:hover a,.bookly-calendar td.bookly-day.active a{background:var(--sage)!important;color:#fff!important;border-radius:8px!important}
.bookly-time-range-picker .bookly-hour,.bookly-column .bookly-service-time{background:var(--warm)!important;border:1px solid var(--border)!important;border-radius:10px!important;color:var(--ink)!important}
.bookly-time-range-picker .bookly-hour:hover,.bookly-time-range-picker .bookly-hour.active,.bookly-column .bookly-service-time.active{background:var(--sage)!important;border-color:var(--sage)!important;color:#fff!important}
.bookly-form .bookly-summary-wrap,.bookly-confirm-wrap{background:var(--sage-light)!important;border-radius:14px!important;padding:20px!important;border:1px solid var(--sage-mid)!important}
.bookly-form .bookly-summary-wrap *,.bookly-confirm-wrap *{color:var(--ink)!important}

/* WhatsApp Button Style */
.header-button-wrap .header-button {
  background-color: #25D366 !important;
  color: #ffffff !important;
  border-color: #25D366 !important;
  border-radius: 25px !important;
  padding: 8px 20px 8px 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-weight: 600 !important;
  transition: background-color 0.3s ease, transform 0.2s ease !important;
}
.header-button-wrap .header-button:hover {
  background-color: #128C7E !important;
  border-color: #128C7E !important;
  color: #ffffff !important;
  transform: scale(1.05) !important;
}
.header-button-wrap .header-button::before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  flex-shrink: 0;
}

/* Homepage Hero Buttons - Green theme */
/* === Botões omeupsiquiatra === */
body .omp-wrap a.omp-btn-p {
  background: transparent !important; background-color: transparent !important;
  color: var(--ink, #1a1a2e) !important; border: 1.5px solid rgba(26,26,46,0.4) !important;
  box-shadow: none !important;
  transition: transform 0.22s ease, filter 0.22s ease, background-color 0.22s ease, border-color 0.22s ease !important;
}
body .omp-wrap a.omp-btn-s {
  background: #4a7c6f !important; background-color: #4a7c6f !important;
  color: #ffffff !important; border-color: #4a7c6f !important;
  transition: transform 0.22s ease, background-color 0.22s ease, filter 0.22s ease !important;
}
body .omp-wrap a.omp-btn-u { transition: transform 0.22s ease, filter 0.22s ease !important; }
body .omp-wrap a.omp-btn-p:hover {
  transform: scale(1.06) !important; background: rgba(26,26,46,0.08) !important;
  background-color: rgba(26,26,46,0.08) !important; border-color: rgba(26,26,46,0.6) !important;
}
body .omp-wrap a.omp-btn-s:hover {
  transform: scale(1.06) !important; background: #3a6459 !important;
  background-color: #3a6459 !important; color: #ffffff !important; filter: none !important;
}
body .omp-wrap a.omp-btn-u:hover { transform: scale(1.06) !important; filter: brightness(0.80) !important; }

/* === Datas nos artigos — sem autor === */
.loop-entry .entry-header { display: block !important; }
.loop-entry .entry-taxonomies,
.loop-entry .entry-title,
.loop-entry .entry-meta .posted-by { display: none !important; }
.loop-entry .entry-meta {
  display: flex !important; margin-bottom: 10px !important;
}
.loop-entry .entry-meta .posted-on {
  font-size: 12px !important; color: var(--sage, #4a7c6f) !important;
  font-weight: 600 !important; letter-spacing: 0.06em !important; text-transform: uppercase !important;
}
.loop-entry .entry-meta time.updated { display: none !important; }

/* === Hover nos cards de artigos === */
.loop-entry {
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
  border-radius: 8px !important;
}
.loop-entry:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 28px rgba(26,26,46,0.10) !important;
}
.loop-entry .post-more-link {
  transition: color 0.2s ease, letter-spacing 0.2s ease !important;
}
.loop-entry .post-more-link:hover {
  color: var(--sage, #4a7c6f) !important; letter-spacing: 0.08em !important;
}

/* === Hover nos tags de especialidades === */
.omp-tag {
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
  cursor: default !important;
}
.omp-tag:hover {
  transform: scale(1.08) !important;
  background-color: var(--sage, #4a7c6f) !important;
  color: #ffffff !important;
  box-shadow: 0 3px 10px rgba(74,124,111,0.3) !important;
}

/* === Hover nos cards de consulta (omp-cc) === */
.omp-cc {
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}
.omp-cc:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 10px 30px rgba(26,26,46,0.12) !important;
}
.omp-cc a {
  transition: color 0.2s ease, letter-spacing 0.15s ease !important;
}
.omp-cc a:hover {
  color: var(--sage, #4a7c6f) !important;
  letter-spacing: 0.04em !important;
}

/* === Hover nos cards de reviews === */
.omp-rv-card {
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}
.omp-rv-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 20px rgba(26,26,46,0.10) !important;
}

/* === Hover no card do médico === */
.omp-card {
  transition: box-shadow 0.3s ease !important;
}
.omp-card:hover {
  box-shadow: 0 12px 36px rgba(26,26,46,0.18) !important;
}

/* === Hover na navegação === */
.primary-menu > li > a {
  transition: color 0.2s ease !important;
  position: relative !important;
}
.primary-menu > li > a::after {
  content: '' !important; position: absolute !important; bottom: -2px !important;
  left: 0 !important; width: 0 !important; height: 2px !important;
  background: var(--sage, #4a7c6f) !important;
  transition: width 0.25s ease !important;
}
.primary-menu > li > a:hover { color: var(--sage, #4a7c6f) !important; }
.primary-menu > li > a:hover::after { width: 100% !important; }

/* === Hover no logo === */
.site-branding { transition: opacity 0.2s ease !important; }
.site-branding:hover { opacity: 0.80 !important; }

/* === Hover no botão Contacte-me (header) === */
.header-button {
  transition: transform 0.2s ease, filter 0.2s ease !important;
}
.header-button:hover { transform: scale(1.05) !important; filter: brightness(0.9) !important; }

/* === Transição smooth header === */
.site-header { transition: box-shadow 0.3s ease, background-color 0.3s ease !important; }

/* === Transições globais em links === */
a { transition: color 0.2s ease, opacity 0.2s ease !important; }