/**
 * MENER — melhorias de responsividade (mobile-first)
 */

/* Base: evitar overflow horizontal */
body.mener-site {
	overflow-x: clip;
}

body.mener-site img,
body.mener-site video,
body.mener-site iframe,
body.mener-site svg {
	max-width: 100%;
}

body.mener-site img.mener-home-banner__image {
	width: 100%;
	height: 100%;
	max-height: none;
	object-fit: cover;
}

body.mener-site .mener-page-hero__map img,
body.mener-site .mener-area-hero__map img {
	width: 100%;
	height: 100%;
	max-height: none;
	object-fit: contain;
	object-position: right center;
}

body.mener-site .mener-evento-banner__media img,
body.mener-site .mener-story-banner__media img {
	width: 100%;
	height: 100%;
	max-height: none;
	object-fit: cover;
}

body.mener-site .mener-album-card__trigger img,
body.mener-site .mener-album-card__static img {
	width: 100%;
	max-height: none;
	object-fit: cover;
}

body.mener-site img.mener-card-media__image,
body.mener-site .mener-card-noticia__media img,
body.mener-site .mener-card-projeto__media img,
body.mener-site .mener-card-story__media img {
	width: 100%;
	height: 100%;
	max-height: none;
	object-fit: cover;
}

.prose-mener img,
.prose-mener-article img,
.prose-mener-area img {
	max-width: 100%;
	height: auto;
}

.prose-mener table,
.prose-mener-article table,
.prose-mener-area table {
	display: block;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

/* Grelhas fluidas em ecras estreitos */
.mener-card-grid--news,
.mener-doc-grid,
.mener-legislation-grid {
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

@media (min-width: 640px) {
	.mener-card-grid--news {
		grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	}

	.mener-card-grid--projects {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 639px) {
	.mener-card-grid--projects {
		grid-template-columns: 1fr;
	}
}

.mener-scroll-carousel__track {
	grid-auto-columns: minmax(min(100%, 14.5rem), 1fr);
}

/* —— Telefone (ate 639px) —— */
@media (max-width: 639px) {
	:root {
		--site-header-offset: 4.15rem;
	}

	.mener-container {
		padding-inline: clamp(0.75rem, 3.5vw, 1rem);
	}

	.mener-section-y {
		padding-block: clamp(2rem, 6vw, 2.75rem);
	}

	.mener-brand__eyebrow {
		display: none;
	}

	.mener-brand__title {
		font-size: 0.6875rem;
		line-height: 1.25;
	}

	.mener-brand__mark {
		width: 2.125rem;
		height: 2.125rem;
	}

	.mener-site-header .mener-brand__logo,
	.mener-site-header .mener-brand__logo .custom-logo-link {
		display: inline-flex;
		align-items: center;
		max-width: min(var(--mener-logo-header-max-width, 12rem), calc(100vw - 6.5rem));
		min-width: 0;
	}

	.mener-site-header .mener-brand__logo img {
		max-width: 100%;
		max-height: var(--mener-logo-header-height, 3rem);
		width: auto;
		height: auto;
	}

	.mener-brand__logo--footer img {
		max-width: var(--mener-logo-footer-max-width, 9rem);
		max-height: var(--mener-logo-footer-max-height, 2.75rem);
		width: auto;
		height: auto;
	}

	.mener-nav-toggle {
		width: 2.75rem;
		height: 2.75rem;
		min-width: 44px;
		min-height: 44px;
		-webkit-tap-highlight-color: transparent;
	}

	.mener-search__toggle {
		width: 2.75rem;
		height: 2.75rem;
		min-width: 44px;
		min-height: 44px;
		-webkit-tap-highlight-color: transparent;
	}

	.mener-mobile-nav:not([hidden]) {
		position: fixed;
		top: var(--mener-header-bar-height, var(--site-header-offset, 3.75rem));
		right: 0;
		left: 0;
		z-index: 95;
		max-height: calc(100dvh - var(--mener-header-bar-height, var(--site-header-offset, 3.75rem)));
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior: contain;
		box-shadow: 0 12px 28px rgb(15 23 42 / 0.12);
	}

	.mener-mobile-search {
		display: block;
		margin-bottom: 0.35rem;
	}

	.mener-mobile-search input {
		width: 100%;
		padding: 0.6rem 0.75rem;
		border: 1px solid #e2e8f0;
		border-radius: 0.75rem;
		font: inherit;
		font-size: 1rem;
	}

	body.mener-mobile-nav-open {
		overflow: hidden;
	}

	/* Banner home — texto compacto em baixo; imagem permanece protagonista */
	.mener-home-banner__viewport {
		aspect-ratio: 5 / 4;
		min-height: 18rem;
	}

	.mener-home-banner__overlay {
		background: linear-gradient(
			to top,
			rgb(17 24 39 / 0.92) 0%,
			rgb(17 24 39 / 0.62) 28%,
			rgb(17 24 39 / 0.2) 52%,
			transparent 72%
		);
	}

	.mener-home-banner__content {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 2;
		display: flex;
		height: auto;
		max-height: 68%;
		flex-direction: column;
		justify-content: flex-end;
		overflow: visible;
		padding-top: 0.5rem;
		padding-bottom: 2.5rem;
		padding-inline: clamp(1rem, 4vw, 1.25rem);
	}

	.mener-home-banner__link {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		min-width: 0;
	}

	.mener-home-banner__title {
		margin: 0;
		font-size: clamp(1.2rem, 5.2vw, 1.5rem);
		line-height: 1.22;
		flex-shrink: 0;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		overflow: hidden;
		text-shadow: 0 1px 8px rgb(0 0 0 / 0.45);
	}

	.mener-home-banner__desc {
		font-size: 0.8125rem;
		line-height: 1.4;
		margin-top: 0.4rem;
		max-width: 36rem;
		flex-shrink: 1;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		overflow: hidden;
	}

	.mener-home-banner__cta {
		margin-top: 0.7rem;
		min-height: 2.35rem;
		padding-inline: 1rem;
		font-size: 0.8125rem;
		flex-shrink: 0;
	}

	.mener-home-banner__dots {
		bottom: 0.55rem;
	}

	.mener-home-banner__nav {
		top: 38%;
		bottom: auto;
		transform: translateY(-50%);
		width: 2.35rem;
		height: 2.75rem;
		min-width: 40px;
		min-height: 44px;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		font-size: 2.15rem;
		font-weight: 300;
		line-height: 1;
		color: #fff;
		text-shadow: 0 1px 6px rgb(0 0 0 / 0.65);
		opacity: 0.95;
	}

	.mener-home-banner__nav:hover,
	.mener-home-banner__nav:focus-visible {
		background: transparent;
		border: 0;
		opacity: 1;
	}

	.mener-home-banner__nav--prev {
		left: 0;
		padding-left: 0.15rem;
	}

	.mener-home-banner__nav--next {
		right: 0;
		padding-right: 0.15rem;
	}

	/* Hero institucional (mapa, etc.) */
	.mener-hero {
		padding: 2rem 0 1.5rem;
	}

	.mener-hero h1 {
		font-size: clamp(1.375rem, 5vw, 2rem);
		line-height: 1.2;
	}

	.mener-hero__lead {
		font-size: 0.9375rem;
	}

	/* Stats home */
	.mener-container.mener-home-hero {
		padding-block: 2rem;
	}

	.mener-home-hero__copy {
		max-width: none;
	}

	.mener-home-hero__title {
		font-size: clamp(1.45rem, 6.2vw, 1.875rem);
	}

	.mener-home-hero__subtitle {
		margin-top: 1rem;
		font-size: 0.9375rem;
		line-height: 1.6;
	}

	.mener-home-hero__stats {
		gap: 0;
		min-width: 0;
	}

	.mener-home-hero .mener-stat-card {
		min-width: 0;
		min-height: 0;
		padding: 0.95rem 0.8rem 1rem;
	}

	.mener-home-hero .mener-stat-card__value {
		font-size: clamp(1.5rem, 7vw, 1.9rem);
		overflow-wrap: anywhere;
	}

	.mener-home-hero .mener-stat-card__label {
		max-width: none;
		font-size: 0.75rem;
		line-height: 1.35;
		overflow-wrap: break-word;
		hyphens: auto;
	}

	/* Carrosseis: setas só no desktop; tablet/telemóvel usam swipe */
	.mener-scroll-carousel__nav {
		display: none;
	}

	.mener-scroll-carousel__track {
		scroll-snap-type: x proximity;
		padding-inline: 0.15rem;
	}

	.mener-scroll-carousel__slide {
		scroll-snap-align: start;
	}

	/* Artigos / noticias */
	.mener-card-noticia--featured .mener-card-noticia__featured-grid {
		grid-template-columns: 1fr;
	}

	.mener-card-story__featured-grid {
		grid-template-columns: 1fr;
	}

	.mener-card-story--featured .mener-card-story__body {
		padding: 1.15rem 1.1rem 1.25rem;
	}

	.mener-card-noticia--featured .mener-card-noticia__body {
		padding: 1rem 0 0;
		background: transparent;
	}

	.mener-evento-card--featured .mener-evento-card__media {
		aspect-ratio: 16 / 10;
	}

	.mener-evento-page__grid {
		grid-template-columns: 1fr;
	}

	.mener-evento-banner__inner {
		grid-template-columns: 1fr;
	}

	.mener-evento-banner__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.mener-evento-banner__actions .mener-btn {
		justify-content: center;
	}

	.mener-evento-banner__meta {
		grid-template-columns: 1fr;
	}

	.mener-evento-facts__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.mener-evento-facts__actions .mener-btn {
		justify-content: center;
	}

	.mener-evento-facts__hint {
		text-align: center;
	}

	.mener-story-main {
		padding: 1.25rem 1.1rem;
	}

	.mener-story-banner h1 {
		font-size: clamp(1.35rem, 5vw, 1.85rem);
	}

	.mener-story-banner__overlay {
		padding: 2rem 0 2.25rem;
	}

	.mener-evento-main {
		padding: 1.25rem 1.1rem;
	}

	.mener-article-hero h1 {
		font-size: clamp(1.2rem, 5vw, 1.5rem);
	}

	.mener-article-breadcrumbs .mener-container {
		font-size: 0.8125rem;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.mener-article-breadcrumbs [aria-current="page"] {
		display: block;
		margin-top: 0.2rem;
	}

	.mener-article-body {
		padding-block: 1.75rem 2rem;
	}

	.mener-article-lead {
		font-size: 1rem;
		padding-left: 1rem;
	}

	.mener-article-footer {
		justify-content: stretch;
	}

	.mener-article-footer .mener-btn {
		width: 100%;
	}

	.mener-share-bar {
		padding: 0.85rem 1rem;
	}

	.mener-share-bar__btn {
		width: 2.75rem;
		height: 2.75rem;
		min-width: 44px;
		min-height: 44px;
	}

	/* Comentarios */
	.mener-comments {
		padding-block: 1.75rem 2rem;
	}

	.mener-comment-form__field input[type="text"],
	.mener-comment-form__field input[type="email"],
	.mener-comment-form__field textarea {
		font-size: 1rem;
	}

	/* Areas tematicas */
	.mener-area-tabs {
		grid-template-columns: 1fr;
	}

	.mener-area-page__content,
	.mener-area-page__intro {
		padding: 0;
		max-width: none;
	}

	.prose-mener-area {
		font-size: 1.02rem;
		line-height: 1.75;
	}

	.prose-mener-area .lead,
	.prose-mener-area p.lead {
		font-size: 1.1rem;
	}

	/* Projectos home */
	.mener-home-projects__layout {
		gap: 1.25rem;
	}

	.mener-home-projects__intro .mener-section-lead {
		max-width: none;
	}

	.mener-home-projects__carousel .mener-card-projeto__media,
	.mener-home-projects__row .mener-card-projeto__media {
		aspect-ratio: 4 / 3;
	}

	.mener-home-projects__carousel .mener-card-projeto__body,
	.mener-home-projects__row .mener-card-projeto__body {
		padding: 0.85rem 0.9rem 0.45rem;
	}

	.mener-home-projects__carousel .mener-card-projeto__title,
	.mener-home-projects__row .mener-card-projeto__title {
		font-size: 0.9375rem;
	}

	.mener-home-projects__carousel .mener-card-projeto__summary,
	.mener-home-projects__row .mener-card-projeto__summary {
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
		font-size: 0.8125rem;
	}

	.mener-home-projects__carousel .mener-card-projeto__footer,
	.mener-home-projects__row .mener-card-projeto__footer {
		padding: 0.65rem 0.9rem 0.85rem;
	}

	.mener-home-projects__row {
		grid-template-columns: 1fr;
		gap: 0.85rem;
	}

	.mener-home-projects__row .mener-card-projeto__meta {
		display: none;
	}

	/* Projectos */
	.mener-project-hero {
		padding: 1.5rem 0;
	}

	.mener-project-hero h1 {
		font-size: clamp(1.35rem, 5vw, 2rem);
	}

	.mener-project-section-nav {
		padding-inline: 0.25rem;
		-webkit-overflow-scrolling: touch;
	}

	.mener-project-section-nav .mener-container {
		gap: 0.5rem;
		padding-block: 0.55rem;
	}

	.mener-project-section-nav a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		padding: 0.45rem 0.85rem;
		border-radius: 999px;
		background: rgb(var(--mener-sea-rgb, 36 116 200) / 0.08);
		font-size: 0.8125rem;
	}

	/* Documentos */
	.mener-legislation-toolbar {
		justify-content: stretch;
	}

	.mener-legislation-search {
		width: 100%;
	}

	.mener-legislation-search__input {
		font-size: max(1rem, 16px);
	}

	.mener-legislation-catalog {
		border-radius: 0.85rem;
	}

	.mener-legislation-panel {
		padding: 0.85rem 0.75rem 1rem;
	}

	.mener-legislation-tabs {
		scroll-padding-inline: 0.75rem;
		-webkit-overflow-scrolling: touch;
	}

	.mener-legislation-tabs__btn {
		min-height: 44px;
		padding: 0.7rem 0.95rem;
		font-size: 0.8125rem;
	}

	.mener-publication-hubs {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
	}

	.mener-publication-hubs__link {
		flex-shrink: 0;
		min-height: 44px;
	}

	.mener-doc-pagination {
		padding: 0.85rem 0.75rem 1rem;
	}

	.mener-doc-pagination .page-numbers {
		min-width: 44px;
		min-height: 44px;
	}

	.mener-doc-file-card--inline {
		grid-template-columns: auto 1fr;
	}

	.mener-doc-file-card--inline .mener-doc-file-card__actions {
		grid-column: 1 / -1;
		flex-direction: column;
		margin-top: 0.65rem;
		padding-top: 0.65rem;
		border-top: 1px solid #f3f4f6;
	}

	.mener-doc-file-card__actions .mener-btn {
		width: 100%;
		min-height: 44px;
	}

	.mener-single-documento__band {
		padding: 1.25rem 0 1.35rem;
	}

	.mener-single-documento__band h1 {
		font-size: clamp(1.25rem, 5.5vw, 1.65rem);
		overflow-wrap: anywhere;
	}

	.mener-doc-preview-panel__toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.mener-doc-preview-panel__actions {
		width: 100%;
	}

	.mener-doc-preview-panel__actions .mener-btn {
		flex: 1 1 auto;
		min-height: 44px;
		justify-content: center;
	}

	.mener-doc-preview-panel__frame-wrap {
		height: min(22rem, 50dvh);
	}

	.mener-pdf-preview {
		padding: max(0.75rem, env(safe-area-inset-top, 0px)) max(0.75rem, env(safe-area-inset-right, 0px)) max(0.75rem, env(safe-area-inset-bottom, 0px)) max(0.75rem, env(safe-area-inset-left, 0px));
	}

	.mener-pdf-preview__header {
		flex-direction: column;
		align-items: stretch;
		gap: 0.65rem;
	}

	.mener-pdf-preview__toolbar {
		flex-wrap: wrap;
	}

	.mener-pdf-preview__close {
		min-width: 44px;
		min-height: 44px;
	}

	/* Home — comunicados, noticias e mapa */
	.mener-home-comunicados {
		margin-bottom: 1.25rem;
	}

	.mener-home-comunicados__head {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.5rem;
		margin-bottom: 0.85rem;
	}

	.mener-home-comunicados__head h3 {
		font-size: 0.9375rem;
	}

	.mener-comunicado-card {
		align-items: flex-start;
		flex-wrap: wrap;
		gap: 0.5rem 1rem;
		min-height: 3.75rem;
		padding: 0.9rem 1rem;
	}

	.mener-comunicado-card__title {
		flex: 1 1 12rem;
		font-size: 0.9375rem;
		line-height: 1.45;
		overflow-wrap: anywhere;
		display: -webkit-box;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.mener-comunicado-card__date {
		flex: 0 0 auto;
		margin-left: auto;
		font-size: 0.8125rem;
		white-space: nowrap;
	}

	.mener-comunicados-carousel__slide {
		transform: translateX(0.75rem);
	}

	.mener-comunicados-carousel__slide.is-leaving {
		transform: translateX(-0.75rem);
	}

	.mener-home-news__intro {
		margin-bottom: 1.25rem;
	}

	.mener-home-news__more .mener-btn {
		width: 100%;
		max-width: 20rem;
		margin-inline: auto;
	}

	.mener-band-teal .mener-scroll-carousel__slide--news {
		flex: 0 0 min(82%, 16.5rem);
		max-width: min(82%, 16.5rem);
	}

	.mener-map-cta {
		padding: 1.15rem 1rem;
	}

	.mener-map-cta h2 {
		font-size: clamp(1.2rem, 4.8vw, 1.5rem);
	}

	.mener-map-cta p {
		font-size: 0.875rem;
	}

	.mener-evento-grid {
		grid-template-columns: 1fr;
	}

	.mener-evento-list__hit {
		grid-template-columns: 5.5rem minmax(0, 1fr);
		gap: 0.85rem 0.95rem;
		padding: 1rem 0;
	}

	.mener-evento-list__media {
		width: 5.5rem;
	}

	.mener-evento-list__cta {
		display: none;
	}

	.mener-evento-list__excerpt {
		-webkit-line-clamp: 2;
	}

	/* Parceiros */
	.mener-partners-marquee__list {
		gap: 1.25rem;
	}

	.mener-partners__card {
		width: 8.75rem;
		min-height: 0;
	}

	.mener-partners__card-logo {
		min-height: 3.5rem;
		padding: 0;
	}

	.mener-partners__card-logo img {
		max-height: 3.25rem;
	}

	.mener-partners__card-name {
		font-size: 0.625rem;
	}

	/* Botoes full-width em formularios */
	.mener-contact-form .mener-btn,
	.mener-concurso-card .mener-btn {
		width: 100%;
	}

	/* Pagina O Ministerio */
	.mener-page-hero {
		min-height: clamp(12.5rem, 30vh, 17rem);
	}

	.mener-page-hero h1 {
		font-size: clamp(1.35rem, 5.2vw, 1.85rem);
	}

	.mener-page-hero__lead {
		font-size: 0.9375rem;
		line-height: 1.55;
	}

	.mener-page-hero__inner {
		min-height: clamp(12.5rem, 30vh, 17rem);
		padding-top: clamp(1.75rem, 5vh, 2.75rem);
		padding-bottom: clamp(1.5rem, 3.5vw, 2.25rem);
	}

	.mener-page-hero__map,
	.mener-area-hero__map {
		width: min(72%, 18rem);
		height: 88%;
		-webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 48%);
		mask-image: linear-gradient(90deg, transparent 0%, #000 48%);
	}

	.mener-page-hero__map img,
	.mener-area-hero__map img {
		opacity: 0.16;
	}

	.mener-page-breadcrumbs {
		padding-block: 0.65rem;
		font-size: 0.8125rem;
		line-height: 1.45;
	}

	.mener-page-breadcrumbs [aria-current="page"] {
		overflow-wrap: anywhere;
	}

	.mener-page-hero__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.mener-page-hero__actions .mener-btn {
		width: 100%;
		justify-content: center;
	}

	.mener-ministerio-split__grid {
		gap: 1.5rem;
	}

	.mener-ministerio-highlight {
		padding: 0;
	}

	.mener-ministerio-highlight p {
		font-size: 1rem;
		line-height: 1.65;
	}

	.mener-ministerio-institution__image img {
		max-height: 16rem;
	}

	.mener-ministerio-indicators {
		padding-block: 1.75rem;
	}

	.mener-ministerio-indicators__stats {
		gap: 0;
	}

	.mener-ministerio-indicators .mener-stat-card {
		min-height: 0;
		padding: 1rem 0.9rem 1.05rem;
	}

	.mener-ministerio-indicators .mener-stat-card__value {
		font-size: clamp(1.625rem, 7vw, 2rem);
	}

	.mener-ministerio-indicators .mener-stat-card__label {
		font-size: 0.75rem;
		line-height: 1.35;
		hyphens: auto;
		overflow-wrap: break-word;
	}

	.mener-ministerio-parallax__viewport {
		height: clamp(16rem, 58vw, 24rem);
	}

	.mener-home-minister {
		text-align: center;
	}

	.mener-home-minister .mener-btn {
		width: 100%;
		max-width: 20rem;
		margin-inline: auto;
	}

	.mener-ministerio-team__grid {
		gap: 1rem;
	}

	.mener-team-card__name {
		font-size: 0.875rem;
	}

	.mener-team-card__body {
		padding: 0.85rem 0.85rem 0.75rem;
	}

	.mener-organic-structure__chart-wrap {
		-webkit-overflow-scrolling: touch;
		scroll-padding-inline: 1rem;
	}

	.mener-org-card {
		font-size: 0.8125rem;
	}

	/* Lightbox */
	.mener-lightbox {
		padding: 0.65rem;
	}

	.mener-lightbox__close {
		top: 0.65rem;
		right: 0.65rem;
		width: 2.5rem;
		height: 2.5rem;
	}

	.mener-lightbox__nav {
		width: 2.75rem;
		height: 2.75rem;
		min-width: 44px;
		min-height: 44px;
		font-size: 1.5rem;
	}

	.mener-lightbox__nav--prev {
		left: 0.35rem;
	}

	.mener-lightbox__nav--next {
		right: 0.35rem;
	}

	.mener-lightbox__figure img {
		max-height: 72vh;
	}

	/* Contactos */
	.mener-contact-page {
		gap: 1.5rem;
	}

	.mener-contact-meta-item {
		padding: 1rem;
	}

	.mener-contact-faq {
		margin-top: 2rem;
		min-width: 0;
	}

	.mener-accordion__trigger-layout {
		grid-template-columns: auto minmax(0, 1fr) auto;
	}

	/* Areas tematicas — hero */
	.mener-area-hero {
		min-height: 220px;
	}

	.mener-area-hero .mener-container--area {
		padding-block: 1.75rem 1.35rem;
	}

	.mener-area-hero h1 {
		font-size: clamp(1.5rem, 6vw, 2rem);
	}

	.mener-area-hero__lead {
		font-size: 0.9375rem;
	}

	.mener-area-hero__stats {
		gap: 0.5rem;
	}

	.mener-area-hero__stat {
		min-width: calc(50% - 0.35rem);
		flex: 1 1 calc(50% - 0.35rem);
	}

	.mener-home-areas__grid--square:not(.mener-home-marquee__list) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.75rem;
		padding: 0 0.35rem 0.55rem 0;
	}

	.mener-home-marquee__slide {
		flex-basis: min(82vw, 15.5rem);
		max-width: 15.5rem;
	}

	.mener-home-marquee__slide--event {
		flex-basis: min(86vw, 17rem);
		max-width: 17rem;
	}

	.mener-home-area-sq {
		box-shadow: 3px 3px 0 var(--mener-area-accent);
	}

	.mener-home-area-sq:hover,
	.mener-home-area-sq:focus-visible {
		transform: none;
		box-shadow: 3px 3px 0 var(--mener-area-accent);
	}

	.mener-home-area-sq__head {
		padding: 0.85rem 0.7rem;
	}

	.mener-home-area-sq__body {
		padding: 0.75rem 0.7rem 0.85rem;
		gap: 0.35rem;
	}

	.mener-home-area-sq__title {
		font-size: clamp(1.05rem, 4.2vw, 1.3rem);
	}

	.mener-home-area-sq__tag {
		font-size: 0.75rem;
		letter-spacing: 0.08em;
	}

	.mener-home-area-sq__blurb {
		font-size: 0.875rem;
		-webkit-line-clamp: 4;
	}

	.mener-area-page__body {
		padding-block: 1.75rem 2.75rem;
	}

	.mener-area-page__intro {
		margin-bottom: 1.75rem;
		padding-bottom: 1.35rem;
	}

	/* Perfil de projeto */
	.mener-project-profile-main {
		gap: 1.25rem;
	}

	.mener-denuncia-layout {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}

	.mener-denuncia-hotline__card {
		padding: 1rem 1.1rem;
	}

	.mener-denuncia-track-form {
		max-width: none;
	}

	.mener-denuncia-track-form .mener-btn {
		width: 100%;
	}
}

/* —— Rodape mobile (ate 767px) —— */
@media (max-width: 767px) {
	.mener-site-footer__grid {
		grid-template-columns: 1fr;
		padding-block: 2rem 2.25rem;
		gap: 0;
	}

	.mener-site-footer__brand {
		padding-bottom: 1.35rem;
		margin-bottom: 0.25rem;
		border-bottom: 1px solid rgb(255 255 255 / 0.14);
	}

	.mener-site-footer__brand p {
		max-width: none;
		margin-top: 0.75rem;
		font-size: 0.8125rem;
		line-height: 1.55;
	}

	.mener-site-footer__contact {
		margin-top: 0.85rem;
		font-size: 0.8125rem;
	}

	.mener-site-footer__contact li + li {
		margin-top: 0.35rem;
	}

	.mener-site-footer__columns {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.mener-site-footer__columns-col {
		gap: 0;
	}

	.mener-site-footer__col {
		padding-block: 1.1rem;
		border-bottom: 1px solid rgb(255 255 255 / 0.1);
	}

	.mener-site-footer__columns-col:last-child .mener-site-footer__col:last-child {
		border-bottom: 0;
		padding-bottom: 0;
	}

	.mener-site-footer__col h3 {
		margin-bottom: 0.6rem;
		font-size: 0.8125rem;
	}

	.mener-site-footer__col ul {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.4rem 0.85rem;
	}

	.mener-site-footer__col li + li {
		margin-top: 0;
	}

	.mener-site-footer__col a {
		font-size: 0.8125rem;
		line-height: 1.4;
	}

	.mener-site-footer__denuncia-cta {
		margin-top: 0.85rem;
	}

	.mener-site-footer__denuncia-cta .mener-btn--denuncia {
		width: 100%;
		max-width: none;
	}

	.mener-site-footer__legal-inner {
		grid-template-columns: 1fr;
		gap: 0.75rem;
		padding-block: 1.1rem;
		text-align: center;
	}

	.mener-site-footer__legal-copy {
		font-size: 0.75rem;
		line-height: 1.45;
	}

	.mener-site-footer__legal-nav ul {
		justify-content: center;
		gap: 0.35rem 0.85rem;
	}

	.mener-site-footer__legal-nav a {
		font-size: 0.75rem;
	}

	.mener-site-footer__credit {
		justify-self: center;
		text-align: center;
		font-size: 0.75rem;
	}
}

/* —— Cabecalho desktop estreito (menu + acoes no mesmo nivel) —— */
@media (min-width: 1024px) and (max-width: 1279px) {
	.mener-site-header__inner {
		gap: 0.5rem;
	}

	.mener-nav__item > a,
	.mener-nav__trigger,
	.mener-nav__list--wp > li > a {
		padding-inline: 0.55rem;
		font-size: 0.875rem;
	}

	.mener-btn--header {
		min-height: 2.65rem;
		padding-inline: 0.9rem;
	}
}

/* —— Cabecalho mobile + tablet (ate 1023px) —— */
@media (max-width: 1023px) {
	.mener-site-header,
	.mener-site-header__bar,
	.mener-site-header__inner {
		overflow: visible;
	}

	.mener-site-header__inner {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.5rem;
		padding-block: 0.55rem;
		min-height: 3.55rem;
	}

	.mener-site-header__brand {
		position: static;
		z-index: 2;
		max-width: 100%;
		min-width: 0;
		transform: none;
		justify-self: start;
		pointer-events: auto;
	}

	.mener-site-header__brand .mener-brand {
		justify-content: flex-start;
		max-width: 100%;
	}

	.mener-site-header__brand .mener-brand__text {
		display: none;
	}

	.mener-site-header__aside {
		z-index: 2;
		grid-column: 2;
		width: auto;
		justify-self: end;
		justify-content: flex-end;
		flex-shrink: 0;
	}

	.mener-site-header__aside > .mener-font-size {
		display: none;
	}

	/* Painel de busca centrado na barra (evita sair do ecrã) */
	.mener-site-header .mener-search {
		position: static;
	}

	.mener-site-header .mener-search__panel {
		position: absolute;
		top: calc(100% + 0.4rem);
		left: 50%;
		right: auto;
		transform: translateX(-50%);
		width: min(22rem, calc(100vw - 1.5rem));
		min-width: 0;
		max-width: calc(100vw - 1.5rem);
		z-index: 240;
		box-shadow: 0 12px 32px rgb(15 43 74 / 0.18);
	}

	/* Área do cidadão: só ícone (poupa espaço) */
	.mener-site-header__contact-slot.mener-btn--header {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 2.75rem;
		height: 2.75rem;
		min-width: 44px;
		min-height: 44px;
		padding: 0;
		border-radius: 0.75rem;
		gap: 0;
		-webkit-tap-highlight-color: transparent;
	}

	.mener-site-header__contact-slot .mener-site-header__cta-icon {
		display: block;
		flex-shrink: 0;
	}

	.mener-site-header__contact-slot .mener-site-header__cta-label {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}

	.mener-mobile-nav__mega-toggle,
	.mener-mobile-nav__item--link > a,
	.mener-mobile-nav__cta {
		min-height: 2.75rem;
	}

	.mener-mobile-nav__col-links a {
		min-height: 2.75rem;
		padding-top: 0.6rem;
		padding-bottom: 0.6rem;
	}

	.mener-site-header__bar {
		padding-top: max(0.25rem, env(safe-area-inset-top, 0px));
	}

	.mener-nav-toggle {
		width: 2.75rem;
		height: 2.75rem;
		min-width: 44px;
		min-height: 44px;
		-webkit-tap-highlight-color: transparent;
	}

	.mener-search__toggle {
		width: 2.75rem;
		height: 2.75rem;
		min-width: 44px;
		min-height: 44px;
		-webkit-tap-highlight-color: transparent;
	}

	.mener-mobile-nav:not([hidden]) {
		position: fixed;
		top: var(--mener-header-bar-height, var(--site-header-offset, 3.75rem));
		right: 0;
		left: 0;
		z-index: 95;
		max-height: calc(100dvh - var(--mener-header-bar-height, var(--site-header-offset, 3.75rem)));
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior: contain;
		box-shadow: 0 12px 28px rgb(15 23 42 / 0.12);
	}

	.mener-mobile-search {
		display: block;
		margin-bottom: 0.35rem;
	}

	.mener-mobile-search input {
		width: 100%;
		padding: 0.6rem 0.75rem;
		border: 1px solid #e2e8f0;
		border-radius: 0.75rem;
		font: inherit;
		font-size: 1rem;
	}

	body.mener-mobile-nav-open {
		overflow: hidden;
	}
}

/* —— Equipa do ministerio —— */
@media (max-width: 1279px) {
	.mener-ministerio-team__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 1023px) {
	.mener-ministerio-team__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 1023px) {
	.mener-ministerio-team__carousel {
		overflow: hidden;
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
		padding-block: 0.25rem 0.5rem;
		-webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
		mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
	}

	.mener-ministerio-team__track {
		display: flex;
		width: max-content;
		will-change: transform;
	}

	.mener-ministerio-team__carousel--loop .mener-ministerio-team__track {
		animation: mener-team-carousel-ltr var(--mener-team-carousel-duration, 32s) linear infinite;
	}

	.mener-ministerio-team__carousel.is-paused .mener-ministerio-team__track,
	.mener-ministerio-team__carousel:hover .mener-ministerio-team__track,
	.mener-ministerio-team__carousel:focus-within .mener-ministerio-team__track {
		animation-play-state: paused;
	}

	.mener-ministerio-team__grid {
		display: flex;
		flex: 0 0 auto;
		align-items: stretch;
		gap: 0.9rem;
		padding-inline: 1rem;
		grid-template-columns: none;
	}

	.mener-ministerio-team__carousel--loop .mener-ministerio-team__grid--clone {
		display: flex;
	}

	.mener-ministerio-team__carousel:not(.mener-ministerio-team__carousel--loop) .mener-ministerio-team__grid {
		width: 100%;
		justify-content: center;
		padding-inline: 1.25rem;
	}

	.mener-team-card {
		flex: 0 0 min(42vw, 15.75rem);
		width: min(42vw, 15.75rem);
		max-width: min(42vw, 15.75rem);
	}

	.mener-team-card__inner:hover,
	.mener-team-card__inner:focus-within {
		transform: none;
	}
}

@media (max-width: 767px) {
	.mener-team-card {
		flex: 0 0 min(72vw, 15.75rem);
		width: min(72vw, 15.75rem);
		max-width: min(72vw, 15.75rem);
	}

	/* Hero de artigo / noticia — imagem visivel, bloco de titulo nos 25% inferiores */
	.mener-article-hero__image,
	.mener-article-hero__image .mener-lightbox-trigger,
	.mener-article-hero__image img,
	.mener-article-hero__fallback {
		height: clamp(16.5rem, 58vw, 24rem);
		min-height: 16.5rem;
		object-position: center 18%;
	}

	.mener-article-hero__overlay {
		max-height: 42%;
		background: linear-gradient(
			180deg,
			transparent 0%,
			rgb(8 22 40 / 0.62) 30%,
			rgb(8 22 40 / 0.92) 100%
		);
	}

	.mener-article-hero__overlay .mener-container {
		padding: 0.7rem clamp(0.85rem, 4vw, 1.25rem) 0.9rem;
	}

	.mener-article-hero h1 {
		margin-top: 0.3rem;
		font-size: clamp(1.2rem, 5vw, 1.55rem);
		line-height: 1.3;
		-webkit-line-clamp: 4;
		max-width: none;
	}

	.mener-article-hero__badge {
		font-size: 0.5625rem;
		padding: 0.15rem 0.5rem;
	}

	.mener-article-hero__meta {
		margin-top: 0.35rem;
		line-height: 1.35;
	}

	.mener-article-hero__meta-item dt {
		display: none;
	}

	.mener-article-hero__meta-item dt::after {
		content: none;
	}

	.mener-article-hero__meta-item dd {
		font-size: 0.7rem;
		font-weight: 500;
		color: rgb(255 255 255 / 0.88);
	}

	.mener-article-hero__meta-item:not(:last-child)::after {
		content: " · ";
		margin: 0 0.25rem;
		color: rgb(255 255 255 / 0.55);
	}
}

@media (max-width: 479px) {
	.mener-team-card {
		flex-basis: min(78vw, 14.5rem);
		width: min(78vw, 14.5rem);
		max-width: min(78vw, 14.5rem);
	}
}

@media (max-width: 1023px) and (prefers-reduced-motion: reduce) {
	.mener-ministerio-team__carousel {
		width: auto;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		-webkit-mask-image: none;
		mask-image: none;
	}

	.mener-ministerio-team__track {
		display: block;
		width: auto;
		animation: none;
		will-change: auto;
	}

	.mener-ministerio-team__grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
		padding-inline: 0;
	}

	.mener-ministerio-team__grid--clone {
		display: none !important;
	}

	.mener-team-card {
		flex: none;
		width: auto;
		max-width: none;
		scroll-snap-align: start;
	}
}

/* —— Tablet pequeno (640px+) —— */
@media (min-width: 640px) and (max-width: 767px) {
	.mener-home-hero__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mener-related-news__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mener-area-tabs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* —— Tablet (768px+) —— */
@media (min-width: 768px) {
	.mener-home-hero__stats {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0;
	}

	.mener-ministerio-indicators__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0;
	}

	/* Restaura divisórias 2x2 (public.css assume 4 colunas a partir de 768px) */
	.mener-ministerio-indicators .mener-stat-card:nth-child(n + 3) {
		border-top: 1px solid rgb(var(--mener-storm-rgb) / 0.1);
	}

	.mener-ministerio-indicators .mener-stat-card:nth-child(2n) {
		border-left: 1px solid rgb(var(--mener-storm-rgb) / 0.1);
	}

	.mener-ministerio-indicators .mener-stat-card:not(:first-child):not(:nth-child(2n)) {
		border-left: 0;
	}

	.mener-home-minister {
		text-align: left;
	}

	.mener-home-minister .mener-btn {
		width: auto;
		max-width: none;
		margin-inline: 0;
	}

	.mener-article-hero__meta {
		flex-direction: row;
		flex-wrap: wrap;
	}
}

@media (min-width: 1024px) {
	.mener-mobile-search {
		display: none;
	}
}

/* —— Desktop (1024px+) —— */
@media (min-width: 1024px) {
	.mener-home-hero__stats {
		gap: 0;
	}

	.mener-ministerio-indicators__stats {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0;
	}

	.mener-ministerio-indicators .mener-stat-card:nth-child(n + 3) {
		border-top: 0;
	}

	.mener-ministerio-indicators .mener-stat-card:nth-child(2n) {
		border-left: 0;
	}

	.mener-ministerio-indicators .mener-stat-card:not(:first-child) {
		border-left: 1px solid rgb(var(--mener-storm-rgb) / 0.1);
	}

	.mener-ministerio-parallax__viewport {
		height: clamp(22rem, 48vw, 38rem);
	}

	.mener-card-grid--carteira {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* —— Mapa energetico (mener-core) —— */
/* Regras base vivem em mener-mapa.css; aqui so overrides de pagina do tema. */
.mener-mapa-page {
	overflow-x: clip;
	max-width: 100%;
}

.mener-mapa-page .mener-container.mener-mapa-wrap {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

@media (max-width: 960px) {
	.mener-mapa-page .mener-container.mener-mapa-wrap {
		padding-inline: max(0.75rem, env(safe-area-inset-left));
		padding-inline-end: max(0.75rem, env(safe-area-inset-right));
		max-width: 100%;
	}

	.mener-mapa-page .mener-section-y {
		padding-block: 1.25rem;
	}

	.mener-mapa-page .mener-mapa-container,
	.mener-mapa-page #mener-mapa {
		min-height: clamp(280px, 52dvh, 480px) !important;
	}
}

@media (max-width: 639px) {
	.mener-mapa-page .mener-container.mener-mapa-wrap {
		padding-inline: max(0.65rem, env(safe-area-inset-left));
		padding-inline-end: max(0.65rem, env(safe-area-inset-right));
	}

	.mener-mapa-page .mener-mapa-container,
	.mener-mapa-page #mener-mapa {
		min-height: clamp(260px, 48dvh, 420px) !important;
	}

	.mener-mapa-stage:fullscreen #mener-mapa {
		min-height: calc(100dvh - 8.5rem - env(safe-area-inset-bottom, 0px));
		height: calc(100dvh - 8.5rem - env(safe-area-inset-bottom, 0px));
	}

	/* Centro multimédia */
	.mener-multimedia-page {
		overflow-x: clip;
	}

	.mener-multimedia-bands {
		gap: 1rem;
		padding-block: 1rem;
	}

	.mener-multimedia-band--video {
		padding-block: 1rem;
	}

	.mener-multimedia-band--video .mener-multimedia-band__carousel {
		padding-inline: 0.75rem;
	}

	.mener-multimedia-band--video .mener-multimedia-carousel--strip .mener-multimedia-carousel__track {
		gap: 0.65rem;
	}

	.mener-multimedia-band--video .mener-multimedia-carousel--strip .mener-multimedia-carousel__slide--video {
		width: min(22rem, 82vw);
		max-width: min(22rem, 82vw);
		min-width: 14rem;
		height: auto;
	}

	.mener-multimedia-carousel--strip {
		--mm-strip-height: clamp(18rem, 52vh, 28rem);
	}

	.mener-multimedia-carousel--strip .mener-multimedia-carousel__nav--prev {
		left: 0.65rem;
	}

	.mener-multimedia-carousel--strip .mener-multimedia-carousel__nav--next {
		right: 0.65rem;
	}

	.mener-multimedia-carousel--strip .mener-multimedia-carousel__slide--album {
		width: 55vw;
		max-width: 55vw;
		min-width: 12rem;
	}

	.mener-multimedia-carousel--strip .mener-multimedia-carousel__nav {
		width: 2.5rem;
		height: 2.5rem;
		min-width: 44px;
		min-height: 44px;
		font-size: 2rem;
	}

	.mener-multimedia-carousel {
		padding-inline: 0;
	}

	.mener-multimedia-carousel__nav {
		width: 2.75rem;
		height: 2.75rem;
		min-width: 44px;
		min-height: 44px;
		font-size: 1.5rem;
	}

	.mener-multimedia-carousel__slide--video,
	.mener-multimedia-carousel__slide--album {
		width: min(17.5rem, calc(100vw - 5.5rem));
		max-width: min(17.5rem, calc(100vw - 5.5rem));
	}

	.mener-multimedia-carousel--strip .mener-multimedia-carousel__slide--album {
		width: 55vw;
		max-width: 55vw;
	}

	.mener-album-card__trigger img,
	.mener-album-card__static:not(.mener-album-card__static--thumb) img {
		height: 8.5rem;
	}

	.mener-album-card--strip .mener-album-card__trigger--hero img,
	.mener-album-card--strip .mener-album-card__static img {
		height: 100%;
	}

	.mener-album-card__trigger--thumb img,
	.mener-album-card__static--thumb img {
		height: 3.75rem;
	}

	.mener-album-card__body {
		padding: 0.75rem 0.85rem 0.9rem;
	}

	.mener-album-card__title {
		font-size: 0.875rem;
	}

	.mener-album-card__desc {
		font-size: 0.75rem;
	}

	.mener-album-card--strip .mener-album-card__overlay {
		padding: 1.1rem 0.85rem 0.85rem;
	}

	.mener-album-card--strip .mener-album-card__title {
		font-size: 0.9rem;
	}

	.mener-multimedia-band--video .mener-multimedia-card--strip .mener-multimedia-card__overlay {
		padding: 1rem 0.85rem 0.85rem;
	}

	.mener-multimedia-band--video .mener-multimedia-card--strip .mener-multimedia-card__title {
		font-size: 0.9rem;
	}

	.mener-multimedia-card--carousel .mener-multimedia-card__media,
	.mener-multimedia-card--video .mener-multimedia-card__media {
		min-height: 9.5rem;
	}

	.mener-multimedia-card--strip .mener-multimedia-card__media {
		min-height: 100%;
	}

	.mener-multimedia-section h2 {
		font-size: 1.2rem;
		margin-bottom: 1rem;
	}

	.mener-multimedia-section + .mener-multimedia-section {
		margin-top: 2rem;
		padding-top: 2rem;
	}
}

@media (max-width: 399px) {
	.mener-multimedia-carousel {
		padding-inline: 0;
	}

	.mener-multimedia-carousel--strip .mener-multimedia-carousel__slide--album {
		width: 72vw;
		max-width: 72vw;
		min-width: 11rem;
	}

	.mener-multimedia-band--video .mener-multimedia-carousel--strip .mener-multimedia-carousel__slide--video {
		width: min(20rem, 88vw);
		max-width: min(20rem, 88vw);
		height: auto;
	}

	.mener-multimedia-carousel__slide--video,
	.mener-multimedia-carousel__slide--album {
		width: calc(100vw - 4.75rem);
		max-width: calc(100vw - 4.75rem);
	}

	.mener-mobile-nav__col-links--grid {
		grid-template-columns: 1fr;
	}
}

/* Landscape em telefone */
@media (max-width: 896px) and (orientation: landscape) {
	.mener-article-hero__image,
	.mener-article-hero__image img,
	.mener-article-hero__fallback {
		height: min(55vh, 22rem);
		object-fit: cover;
		object-position: center 20%;
	}

	.mener-home-banner__viewport {
		aspect-ratio: 16 / 10;
	}
}

/* Preferencia: menos animacao em mobile com movimento reduzido —
   não usar scroll-behavior:smooth no track (bloqueia swipe no telemóvel). */

/* —— Polish responsivo (overflow, touch, megamenu, safe-area) —— */
.mener-shell,
.mener-main,
.mener-container,
.mener-home-hero__stats,
.mener-ministerio-indicators__stats,
.mener-home-areas__grid,
.mener-home-projects__row {
	min-width: 0;
}

.mener-stat-card,
.mener-stat-card__label,
.mener-stat-card__value {
	min-width: 0;
}

.mener-home-areas__grid--square > li {
	min-width: 0;
}

@media (max-width: 1023px) {
	.mener-map-cta:hover {
		transform: none;
	}

	.mener-map-cta .mener-link-arrow {
		display: inline-flex;
		flex-wrap: wrap;
		max-width: 100%;
	}

	/* Carrosséis: swipe no tablet (sem setas), como no telemóvel */
	.mener-scroll-carousel__nav {
		display: none;
	}

	.mener-home-banner__nav {
		display: none !important;
	}

	.mener-home-banner {
		touch-action: pan-y;
	}
}

@media (min-width: 1024px) and (max-width: 1100px) {
	.mener-mega,
	.mener-mega--wide {
		left: 1rem;
		right: 1rem;
		width: auto;
		max-width: none;
		transform: none;
	}

	.mener-mega__cols--2,
	.mener-mega__cols {
		column-gap: 0.75rem;
	}

	.mener-mega__cols--3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 0.75rem;
	}

	.mener-btn--header {
		max-width: 11rem;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
}

@media (max-width: 639px) {
	.mener-home-banner__content {
		padding-inline: clamp(0.9rem, 4vw, 1.15rem);
		padding-bottom: 2.35rem;
	}

	.mener-home-banner__nav {
		top: 38%;
		bottom: auto;
		transform: translateY(-50%);
		font-size: 2rem;
	}

	.mener-home-banner__nav--prev {
		left: 0;
	}

	.mener-home-banner__nav--next {
		right: 0;
	}

	.mener-home-news__more .mener-btn {
		width: 100%;
		justify-content: center;
	}

	.mener-home-concursos__grid {
		grid-template-columns: 1fr;
	}

	.mener-area-hero__stat {
		min-width: 0;
		flex: 1 1 calc(50% - 0.35rem);
	}

	.mener-mobile-nav {
		padding-bottom: max(0.75rem, env(safe-area-inset-bottom, 0px));
	}
}

@media (max-width: 399px) {
	.mener-home-hero .mener-stat-card,
	.mener-ministerio-indicators .mener-stat-card {
		padding: 0.85rem 0.7rem 0.9rem;
		gap: 0.5rem;
	}

	.mener-home-areas__grid--square:not(.mener-home-marquee__list) {
		gap: 0.55rem;
		padding: 0 0.25rem 0.4rem 0;
	}

	.mener-home-marquee__slide {
		flex-basis: min(88vw, 14.5rem);
		max-width: 14.5rem;
	}

	.mener-home-area-sq {
		box-shadow: 2px 2px 0 var(--mener-area-accent);
	}

	.mener-home-area-sq:hover,
	.mener-home-area-sq:focus-visible {
		box-shadow: 2px 2px 0 var(--mener-area-accent);
	}

	.mener-home-banner__nav {
		top: 38%;
		bottom: auto;
		transform: translateY(-50%);
		width: 2.25rem;
		height: 2.75rem;
		min-width: 40px;
		min-height: 44px;
		font-size: 1.9rem;
		background: transparent;
		border: 0;
	}

	.mener-home-areas__grid--square {
		grid-template-columns: 1fr;
		gap: 0.75rem;
	}

	.mener-section-title {
		font-size: clamp(1.2rem, 5.5vw, 1.45rem);
	}
}

@media (hover: none) {
	.mener-home-area-sq:hover,
	.mener-map-cta:hover,
	.mener-card-projeto:hover,
	.mener-card-noticia:hover,
	body.home .mener-card-projeto:hover,
	body.home .mener-band-teal .mener-card-noticia:hover {
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mener-home-area-sq,
	.mener-home-area-sq:hover {
		transition: none;
		transform: none;
	}
}

/* —— Toque e mobile: alvos ≥44px, tipografia legível, overflow —— */
@media (pointer: coarse) {
	.mener-share-bar__btn {
		width: 2.75rem;
		height: 2.75rem;
		min-width: 44px;
		min-height: 44px;
	}

	.mener-project-section-nav a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		padding: 0.45rem 0.85rem;
		border-radius: 999px;
		background: rgb(var(--mener-sea-rgb, 36 116 200) / 0.08);
	}

	.mener-home-banner__nav {
		min-width: 44px;
		min-height: 44px;
	}
}

@media (max-width: 1023px) {
	/* Evitar zoom automático do iOS em inputs */
	.mener-site input[type="text"],
	.mener-site input[type="email"],
	.mener-site input[type="tel"],
	.mener-site input[type="url"],
	.mener-site input[type="search"],
	.mener-site input[type="number"],
	.mener-site input[type="password"],
	.mener-site select,
	.mener-site textarea {
		font-size: max(1rem, 16px);
	}

	.mener-site .mener-btn,
	.mener-site button.mener-btn,
	.mener-site a.mener-btn {
		min-height: 44px;
		touch-action: manipulation;
	}

	/* Tabelas e listas largas */
	.mener-site table {
		max-width: 100%;
	}

	.mener-site pre,
	.mener-site code {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	/* Safe area em ecrãs com notch */
	.mener-site-header,
	.mener-mobile-nav:not([hidden]) {
		padding-left: env(safe-area-inset-left, 0);
		padding-right: env(safe-area-inset-right, 0);
	}

	.mener-site-footer {
		padding-bottom: max(0.5rem, env(safe-area-inset-bottom, 0));
	}
}

@media (max-width: 479px) {
	.mener-home-areas__grid--square:not(.mener-home-marquee__list) {
		grid-template-columns: 1fr;
	}

	.mener-area-hero__stat {
		min-width: 100%;
		flex: 1 1 100%;
	}
}
