/*
Theme Name: Hello Elementor · Resíduos do Nordeste
Template: hello-elementor
Description: Tema filho da réplica acessível (rn.gritben.pt). Fontes alojadas no servidor e regras base de acessibilidade. O design vive no Elementor (variáveis e classes globais).
Version: 0.1.0
Text Domain: hello-elementor-rn
*/

/* Foco visível em tudo o que é operável por teclado (WCAG 2.4.7).
   Contorno escuro de 3 px com afastamento: contraste de 12,6:1 sobre branco e 5,7:1 sobre o verde da marca. */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 3px solid #333333;
	outline-offset: 3px;
}
/* No rodapé (fundo escuro), o contorno passa a branco: 12,6:1 sobre #333333. */
.elementor-location-footer :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline-color: #ffffff;
}

/* Ligação "Saltar para o conteúdo": escondida até receber foco, depois visível no topo. */
.skip-link.screen-reader-text:focus {
	clip: auto !important;
	clip-path: none;
	height: auto;
	width: auto;
	position: fixed;
	top: 8px;
	left: 8px;
	z-index: 100000;
	padding: 12px 20px;
	background: #ffffff;
	color: #333333;
	font: 700 16px/1.4 "Roboto", sans-serif;
	text-decoration: underline;
	outline: 3px solid #333333;
	outline-offset: 0;
}

/* Respeitar quem pede menos movimento. */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* Ligações no meio do texto: escuras e sublinhadas, com o verde só no sublinhado
   (o verde como texto sobre branco dá 2,2:1 e não passa). Substitui o #c36 do Hello. */
a {
	color: #333333;
	text-decoration: underline;
	text-decoration-color: #94BD1E;
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}
a:hover,
a:active {
	color: #1A1A1A;
	text-decoration-color: #333333;
}
/* Rodapé escuro: #F5F5F5 sobre #333333 = 11,6:1. */
.elementor-location-footer a {
	color: #F5F5F5;
}
.elementor-location-footer a:hover,
.elementor-location-footer a:active {
	color: #FFFFFF;
	text-decoration-color: #FFFFFF;
}

/* O <main> recebe foco pelo skip link; não precisa de contorno próprio. */
main#content:focus {
	outline: none;
}

/* Botões de submenu do menu principal: mesmo aspeto que as ligações, cursor de botão. */
.elementor-nav-menu a[role="button"] {
	cursor: pointer;
}

/* Cabeçalho: entre o tablet (1024) e 1300px o menu horizontal fica justo; reduz sem quebrar linha. */
@media (min-width: 1025px) and (max-width: 1300px) {
	.elementor-location-header .elementor-nav-menu--main .elementor-item {
		font-size: 15px !important;
		padding-left: 5px !important;
		padding-right: 5px !important;
	}
}

/* Cabeçalho, tablet e telemóvel: o menu abre por baixo do cabeçalho e não alarga a página. */
@media (max-width: 1024px) {
	.elementor-location-header .elementor-widget-nav-menu {
		position: static;
		width: auto;
	}
	.elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		width: auto !important;
		z-index: 100;
		border-top: 1px solid #F5F5F5;
	}
}

/* Títulos com ligação em listas de cartões (notícias): sem sublinhado permanente, sublinhado verde ao passar ou focar. */
.rdn-card-link a,
.rdn-card-link a.e-default-a {
	text-decoration: none;
	color: inherit;
}
.rdn-card-link a.e-default-a:hover,
.rdn-card-link a:hover,
.rdn-card-link a:focus-visible {
	text-decoration: underline;
	text-decoration-color: #94BD1E;
	text-decoration-thickness: 2px;
	text-underline-offset: 5px;
}

/* Rodapé: as imagens com ligação ocupam a célula da grelha. */
.elementor-location-footer a.e-image-link-base {
	display: block;
}
