/* Paleta provisória Sabugalis — ver DESIGN.md */
:root {
  --ltn__primary-color: #0B2E2A;
  --ltn__primary-color-2: #061B19;
  --ltn__primary-color-3: #13433D;
  --ltn__secondary-color: #0A9A73;
  --ltn__secondary-color-2: #087C5D;
  --ltn__secondary-color-3: #12B58A;
  --ltn__heading-color: #0B2E2A;
  --ltn__body-font: 'Nunito', sans-serif;
}

/* Correção Bootstrap 5.3: texto dos acordeões/modais herda a cor do template */
.card, .modal-content { color: inherit; }

/* Destaques da página inicial: imagens mais baixas */
.ltn__banner-destaques .ltn__banner-img img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }

/* Sobre: ícones dos valores (Font Awesome em vez de imagens) */
.ltn__feature-item-6 .ltn__feature-icon i { font-size: 48px; line-height: 1; display: inline-block; }

/* Páginas interiores: menos espaço entre o breadcrumb e o primeiro bloco */
.ltn__breadcrumb-area { margin-bottom: 0; }

/* Imagens dos blocos "sobre": mantêm a proporção natural */
.about-us-img-wrap img { height: auto; max-width: 100%; }

/* Serviços: cartões com fotografia */
.sabugalis-servico-card { padding: 0; overflow: hidden; margin-bottom: 30px; height: calc(100% - 30px); text-align: left; }
.sabugalis-servico-img img { width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; display: block; }
.sabugalis-servico-card .ltn__feature-info { padding: 25px 28px 30px; }
.sabugalis-servico-card .ltn__feature-info h3 { font-size: 22px; margin-bottom: 12px; }
.sabugalis-servico-card .ltn__service-btn { font-weight: 700; color: var(--ltn__secondary-color); }
.sabugalis-servico-card .ltn__service-btn i { font-size: 12px; margin-left: 4px; }

/* Detalhe de serviço: imagem e caixa de contacto */
.ltn__service-details-inner .ltn__blog-img img { width: 100%; height: auto; }
.sabugalis-contact-widget { background: var(--section-bg-1, #F2F6F7); padding: 30px; margin-top: 30px; }
.sabugalis-contact-phone { font-size: 22px; font-weight: 700; color: var(--ltn__heading-color); }
.sabugalis-contact-phone i { color: var(--ltn__secondary-color); margin-right: 6px; }
.ltn__service-details-area .ltn__menu-widget-2 ul li a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 10px 10px 24px; line-height: 1.35; }
.ltn__service-details-area .ltn__menu-widget-2 ul li a span { top: 0; flex: 0 0 50px; }
.sabugalis-contact-widget .ltn__widget-title { text-transform: none; }
.sabugalis-contact-widget .btn { margin-top: 10px; }

/* Farmácia de serviço */
.sabugalis-turno-hoje { background: var(--section-bg-1, #F2F6F7); border-left: 5px solid var(--ltn__secondary-color); padding: 30px; }
.sabugalis-turno-titulo { color: var(--ltn__secondary-color); margin-bottom: 15px; }
.sabugalis-turno-titulo i { margin-right: 8px; }
.sabugalis-turno-hoje h3 { font-size: 26px; }
.sabugalis-turnos-tabela { margin-bottom: 0; }
.sabugalis-turnos-tabela th { background: var(--ltn__secondary-color); color: #fff; border: 0; white-space: nowrap; }
.sabugalis-turnos-tabela td { vertical-align: middle; }
.sabugalis-turnos-tabela tr.turno-atual td { background: #e8f4ef; font-weight: 700; }
.sabugalis-mapa iframe { display: block; width: 100%; height: 450px; }

/* Contactos: ícones das caixas, formulário e isco anti-spam */
.sabugalis-contacto-icone { margin-bottom: 25px; }
.sabugalis-contacto-icone i { font-size: 44px; color: var(--ltn__secondary-color); }
.ltn__contact-address-item-3 p a { color: inherit; }
.ltn__contact-address-item-3 p a:hover { color: var(--ltn__secondary-color); }
.contact-form-box .input-item .nice-select { width: 100%; float: none; height: 60px; line-height: 58px; margin-bottom: 30px; border: 2px solid var(--border-color-1, #e5eaee); border-radius: 0; background: transparent; padding-left: 25px; }
.contact-form-box .input-item .nice-select .list { width: 100%; }
.campo-isco { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.form-messege.success { color: var(--ltn__secondary-color); }
.form-messege.error { color: var(--red, #dc3545); }
.ltn__contact-address-area .col-lg-4 { margin-bottom: 30px; }
.ltn__contact-address-area .ltn__contact-address-item { height: 100%; margin-bottom: 0; }

/* Acessibilidade: foco de teclado visível e submenu aberto por teclado (espelha a regra :hover do template) */
:focus-visible,
a:focus-visible,
button:focus-visible,
input[type]:focus-visible,
select:focus-visible,
textarea:focus-visible { outline: 2px solid var(--ltn__secondary-color-2); outline-offset: 2px; }
.ltn__main-menu li:focus-within > ul,
.ltn__main-menu li:focus-within > .sub-menu { top: 100%; opacity: 1; visibility: visible; }
.ltn__main-menu li ul li:focus-within > ul,
.ltn__main-menu .sub-menu li:focus-within > .sub-menu { top: 0; }

/* Farmácia de serviço: o telefone da tabela não parte em duas linhas */
.sabugalis-turnos-tabela td a[href^="tel:"] { white-space: nowrap; }
