﻿:root {
	--gradient-brand: linear-gradient(90deg, var(--verde) 0%, var(--azul) 100%);
	--verde: #81a749;
	--azul: #1898b7;
	--texto: #303030;
}

/* ===== RESET E BASE ===== */
* {
	box-sizing: border-box;
}

body {
	margin: 0;
	font-family: "Inter", sans-serif;
	color: var(--texto);
	background: #fff;
}

a {
	text-decoration: none;
}

@media (min-width: 1400px) {
	.container,
	.container-sm,
	.container-md,
	.container-lg,
	.container-xl,
	.container-xxl {
		max-width: 1440px !important;
	}
}


/* =========================================================
   TIPOGRAFIA GLOBAL
   Altere estes valores para controlar os títulos do site.
========================================================= */
h1,
h2,
h3,
h4,
h5,
h6 {
	margin-top: 0;
	color: var(--texto);
	font-family: inherit;
	line-height: 1.2;
}

h1 {
	font-size: clamp(2.4rem, 5vw, 4rem);
	font-weight: 900;
	letter-spacing: -0.045em;
}

h2 {
	font-size: clamp(1.7rem, 3vw, 2.35rem);
	font-weight: 850;
	letter-spacing: -0.035em;
}

h3 {
	font-size: 1.05rem;
	font-weight: 800;
}

h4 {
	font-size: 1rem;
	font-weight: 700;
}

h5,
h6 {
	font-size: 0.9rem;
	font-weight: 700;
}
/* =========================================================
   HERO PADRÃO DAS PÁGINAS INTERNAS
   A Home continua usando .hero-section.
========================================================= */
.page-hero {
	padding: 82px 0 78px;
	overflow: hidden;
	background: var(--gradient-brand);
	color: #fff;
}

.page-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 18px;
	color: rgba(255, 255, 255, 0.88);
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

	.page-eyebrow::before {
		content: "";
		width: 8px;
		height: 8px;
		border-radius: 50%;
		background: #fff;
		box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.14);
	}

.page-hero h1 {
	max-width: 880px;
	margin: 0 0 18px;
	color: #fff;
	line-height: 1.05;
}

	.page-hero h1 span {
		color: #99dfc8;
	}

.page-hero p {
	max-width: 780px;
	margin: 0;
	color: rgba(255, 255, 255, 0.82);
	font-size: 1.08rem;
	line-height: 1.75;
}

.hero-img {
	transition: opacity 0.45s ease, transform 0.45s ease;
}

	.hero-img.hero-img-changing {
		opacity: 0;
		transform: scale(0.985);
	}

/* =========================================================
   CABEÇALHO PADRÃO DE SEÇÃO
========================================================= */
.section-heading {
	margin-bottom: 30px;
}

	.section-heading > span {
		display: block;
		margin-bottom: 7px;
		color: var(--azul);
		font-size: 0.75rem;
		font-weight: 800;
		letter-spacing: 0.12em;
		text-transform: uppercase;
	}

	.section-heading h2 {
		margin: 0;
		line-height: 1.15;
	}

.section-heading-light > span,
.section-heading-light h2 {
	color: #fff;
}

.section-heading-light > span {
	opacity: 0.78;
}

@media (max-width: 991.98px) {
	.page-hero {
		padding: 62px 0;
	}
}
.page-section{
	padding:76px 0;
}
/* ===== TOP BAR ===== */
.topbar {
	padding: 6px 0;
	background: var(--gradient-brand);
	color: #fff;
	font-size: 0.78rem;
}
	.topbar span {
		color: #fff;
		font-size: 0.78rem;
		font-weight: unset;
		letter-spacing: unset;
		text-transform: unset;
	}

	.topbar a {
		color: rgba(255, 255, 255, 0.85);
		transition: color 0.2s ease;
	}

		.topbar a:hover {
			color: #fff;
		}

	.topbar .separator {
		margin: 0 8px;
		color: rgba(255, 255, 255, 0.35);
	}

/* ===== NAVBAR ===== */
.navbar-main {
	position: sticky;
	top: 0;
	z-index: 1030;
	padding: 10px 0;
	border-bottom: 1px solid #e2e8e4;
	background: rgba(255, 255, 255, 0.97);
}

	.navbar-main .navbar-brand img {
		height: 44px;
	}

	.navbar-main .nav-link {
		padding: 6px 12px !important;
		color: var(--texto);
		font-size: 0.9rem;
		font-weight: 500;
		transition: color 0.2s ease;
	}

		.navbar-main .nav-link:hover {
			color: var(--azul);
		}

.btn-agendar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 18px;
	border-radius: 8px;
	background: var(--gradient-brand);
	color: #fff !important;
	font-size: 0.88rem;
	font-weight: 600;
	transition: opacity 0.2s ease;
}

	.btn-agendar:hover {
		opacity: 0.9;
	}

.subtitulo_azul {
	margin-bottom: 7px;
	color: var(--azul);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

/* ===== HERO ===== */
.hero-section {
	position: relative;
	min-height: 520px;
	padding: 70px 0 50px;
	overflow: hidden;
	background: linear-gradient(135deg, #eef7f1 0%, #d6ede2 100%);
}

.hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 18px;
	padding: 4px 12px;
	border: 1px solid #e2e8e4;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.7);
	color: var(--azul);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

	.hero-badge .dot {
		display: inline-block;
		width: 7px;
		height: 7px;
		border-radius: 50%;
		background: var(--verde);
	}

.hero-section h1 {
	margin-bottom: 18px;
	color: #000;
	font-size: clamp(2.2rem, 5vw, 3.4rem);
	font-weight: 900;
	line-height: 1.1;
}

	.hero-section h1 span {
		background: var(--gradient-brand);
		color: #0000;
		background-clip: text;
	}

.hero-section p {
	max-width: 460px;
	margin-bottom: 28px;
	color: var(--texto);
	font-size: 1.05rem;
	line-height: 1.65;
}

.btn-hero-primary,
.btn-hero-outline {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 12px 22px;
	border-radius: 8px;
	font-size: 0.95rem;
	font-weight: 600;
	transition: color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}

.btn-hero-primary {
	background: var(--gradient-brand);
	color: #fff;
}

	.btn-hero-primary:hover {
		color: #fff;
		opacity: 0.9;
	}

.btn-hero-outline {
	border: 1.5px solid #e2e8e4;
	background: transparent;
	color: var(--verde);
}

	.btn-hero-outline:hover {
		border-color: var(--azul);
		color: var(--azul);
	}

.hero-stats {
	margin-top: 36px;
}

.hero-stat-label {
	display: block;
	margin-bottom: 2px;
	color: var(--texto);
	font-size: 0.78rem;
	font-weight: 500;
}

.hero-stat-value {
	color: var(--verde);
	font-size: 1.9rem;
	font-weight: 800;
	line-height: 1;
}

.hero-stat-divider {
	width: 1px;
	height: 36px;
	margin: 0 20px;
	background: #e2e8e4;
}

.hero-img {
	width: 100%;
	max-height: 380px;
	border-radius: 16px;
	object-fit: cover;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
}

/* ===== HERO CAROUSEL DOTS ===== */
.hero-dots {
	margin-top: 28px;
}

.hero-dot {
	width: 8px;
	height: 8px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #e2e8e4;
	cursor: pointer;
	transition: width 0.2s ease, background 0.2s ease;
}

	.hero-dot.active {
		width: 24px;
		border-radius: 4px;
		background: var(--azul);
	}

/* ===== QUICK ACCESS ===== */
.quick-access {
	border-bottom: 1px solid #e2e8e4;
	background: #fff;
}

.quick-access-inner {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	align-items: stretch;
}

.quick-access-item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 128px;
	padding: 20px 12px;
	border-right: 1px solid #e2e8e4;
	color: var(--texto);
	font-size: 0.86rem;
	font-weight: 600;
	text-align: center;
	transition: color 0.2s ease, background 0.2s ease;
}

	.quick-access-item:first-child {
		border-left: 1px solid #e2e8e4;
	}

	.quick-access-item::after {
		content: "";
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		height: 3px;
		background: var(--gradient-brand);
		opacity: 0;
		transform: scaleX(0);
		transition: opacity 0.2s ease, transform 0.2s ease;
	}

	.quick-access-item:hover {
		background: #f8faf9;
		color: var(--azul);
	}

		.quick-access-item:hover::after {
			opacity: 1;
			transform: scaleX(1);
		}

	.quick-access-item .icon-circle {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 48px;
		height: 48px;
		border: 1px solid #dce7e2;
		border-radius: 50%;
		background: #e8f5ee;
		color: var(--azul);
		font-size: 1.25rem;
		transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
	}

	.quick-access-item:hover .icon-circle {
		border-color: transparent;
		background: var(--gradient-brand);
		color: #fff;
	}

/* ===== TÍTULOS DE SEÇÃO ===== */
.section-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 28px;
}

.section-label {
	margin: 0 0 8px;
	color: var(--azul);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.section-title {
	margin: 0;
	color: var(--texto);
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	font-weight: 800;
	line-height: 1.2;
}

.section-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--azul);
	font-size: 0.9rem;
	font-weight: 600;
	white-space: nowrap;
	transition: color 0.2s ease;
}

	.section-link i {
		transition: transform 0.2s ease;
	}

	.section-link:hover {
		color: var(--verde);
	}

		.section-link:hover i {
			transform: translateX(4px);
		}

/* ===== ESPECIALIDADES ===== */
.especialidades-section {
	padding: 72px 0;
	background: #fff;
}

.card-especialidade {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 280px;
	padding: 30px;
	border: 1px solid #e2e8e4;
	border-radius: 14px;
	background: #fff;
	color: inherit;
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

	.card-especialidade:hover {
		transform: translateY(-5px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(0, 0, 0, 0.08);
		color: inherit;
	}

	.card-especialidade .icon-wrap,
	.card-destaque .icon-wrap,
	.card-info .icon-wrap {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 48px;
		height: 48px;
		margin-bottom: 18px;
		border-radius: 12px;
		background: #e8f5ee;
		color: var(--azul);
		font-size: 1.35rem;
	}

	.card-especialidade h3 {
		margin: 0 0 10px;
		color: var(--texto);
		line-height: 1.35;
	}

	.card-especialidade p {
		margin: 0 0 22px;
		color: var(--texto);
		font-size: 0.88rem;
		line-height: 1.65;
	}

	.card-especialidade .saiba-mais {
		display: inline-flex;
		align-items: center;
		gap: 7px;
		margin-top: auto;
		color: var(--azul);
		font-size: 0.85rem;
		font-weight: 600;
	}

		.card-especialidade .saiba-mais i {
			transition: transform 0.2s ease;
		}

	.card-especialidade:hover .saiba-mais i {
		transform: translateX(4px);
	}

/* ===== DESTAQUES ===== */
.destaques-grid {
	margin-top: 30px;
}

.card-destaque {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 245px;
	padding: 28px;
	border: 1px solid #e2e8e4;
	border-radius: 14px;
	background: #fff;
	color: inherit;
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

	.card-destaque:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 12px 30px rgba(0, 0, 0, 0.07);
		color: inherit;
	}

	.card-destaque h4 {
		margin: 0 0 9px;
		color: var(--texto);
	}

	.card-destaque p {
		margin: 0 0 18px;
		color: var(--texto);
		font-size: 0.86rem;
		line-height: 1.65;
	}

	.card-destaque .acessar {
		display: inline-flex;
		align-items: center;
		gap: 7px;
		margin-top: auto;
		color: var(--azul);
		font-size: 0.85rem;
		font-weight: 600;
	}

		.card-destaque .acessar i {
			transition: transform 0.2s ease;
		}

	.card-destaque:hover .acessar i {
		transform: translateX(4px);
	}

/* ===== INFORMAÇÕES ===== */
.info-grid {
	margin-top: 30px;
}

.card-info {
	height: 100%;
	min-height: 230px;
	padding: 28px;
	border: 1px solid #e2e8e4;
	border-radius: 14px;
	background: #fff;
}

	.card-info h4 {
		margin: 0 0 14px;
		color: var(--texto);
	}

	.card-info p,
	.card-info li {
		color: var(--texto);
		font-size: 0.87rem;
		line-height: 1.65;
	}

	.card-info p {
		margin: 0 0 14px;
	}

	.card-info ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}

		.card-info ul li {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 16px;
			padding: 7px 0;
			border-bottom: 1px solid #edf1ef;
		}

			.card-info ul li:last-child {
				border-bottom: 0;
			}

			.card-info ul li strong {
				color: var(--verde);
				font-size: 0.82rem;
				font-weight: 700;
				white-space: nowrap;
			}

.info-contact-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--azul);
	font-size: 0.87rem;
	font-weight: 600;
	transition: color 0.2s ease;
}

	.info-contact-link:hover {
		color: var(--verde);
	}

.card-info-aviso {
	border-color: #f5e4a0;
	background: #fffbeb;
}

	.card-info-aviso .icon-wrap {
		background: #fef3c7;
		color: #b45309;
	}

/* ===== HOME ===== */
/* =========================================================
   HOME INSTITUCIONAL
========================================================= */

/* ===== HERO ===== */
.home-hero {
	position: relative;
	min-height: 680px;
	overflow: hidden;
}

.home-hero-bg,
.home-hero-overlay {
	position: absolute;
	inset: 0;
}

.home-hero-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 10%;
}

.home-hero-overlay {
	background: linear-gradient(90deg, #1898b7 0%, rgb(24 152 183 / 55%) 38%, rgb(129 167 73 / 55%) 100%);
}

.home-hero-container {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	min-height: 680px;
}

.home-hero-content {
	max-width: 720px;
	padding: 90px 0;
}

.home-eyebrow {
	display: inline-block;
	margin-bottom: 20px;
	color: #fff;
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.home-hero h1 {
	max-width: 720px;
	margin: 0 0 24px;
	color: #fff;
	font-size: clamp(3rem,3.5vw,3.3rem);
	font-weight: 850;
	letter-spacing: -.05em;
	line-height: .98;
}

.home-hero p {
	max-width: 650px;
	margin: 0 0 34px;
	color: rgba(255,255,255,.85);
	font-size: 1.08rem;
	line-height: 1.75;
}

.home-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.home-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 13px 22px;
	border: 1px solid transparent;
	border-radius: 8px;
	font-size: .9rem;
	font-weight: 700;
	transition: background .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;
}

.home-btn-primary {
	background: var(--gradient-brand);
	color: #fff;
	border:0;
}

	.home-btn-primary:hover {
		color: #fff;
		opacity: .9;
	}

.home-btn-outline {
	border-color: rgba(255,255,255,.7);
	background: transparent;
	color: #fff;
}

	.home-btn-outline:hover {
		border-color: #fff;
		background: #fff;
		color: var(--azul);
	}

.home-btn-white {
	background: #fff;
	color: var(--verde);
}

	.home-btn-white:hover {
		background: rgba(255,255,255,.9);
		color: var(--azul);
	}


/* ===== INSTITUCIONAL ===== */
.home-institucional {
	padding: 100px 0;
	background: #fff;
}

.home-institucional-image,
.home-ensino-image {
	overflow: hidden;
	border-radius: 20px;
}

	.home-institucional-image img,
	.home-ensino-image img {
		display: block;
		width: 100%;
		height: 540px;
		object-fit: cover;
	}

.home-institucional-content {
	max-width: 590px;
}

	.home-institucional-content h2,
	.home-ensino-content h2 {
		margin: 10px 0 22px;
		color: var(--texto);
		font-size: clamp(2rem,3.4vw,3.1rem);
		line-height: 1.08;
	}

	.home-institucional-content p,
	.home-ensino-content p {
		margin: 0 0 18px;
		color: var(--texto);
		font-size: .98rem;
		line-height: 1.8;
	}

.home-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 10px;
	color: var(--azul);
	font-weight: 700;
	transition: color .2s ease;
}

	.home-text-link:hover {
		color: var(--verde);
	}


/* ===== CABEÇALHO DAS SEÇÕES ===== */
.home-section-heading {
	max-width: 720px;
	margin-bottom: 45px;
}

	.home-section-heading h2 {
		margin: 8px 0 0;
		color: var(--texto);
		font-size: clamp(2rem,3.5vw,3rem);
		line-height: 1.08;
	}


/* ===== PILARES ===== */
.home-pilares {
	padding: 95px 0;
	background: #fff;
}

.home-pilar-card {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 390px;
	padding: 36px;
	overflow: hidden;
	border: 1px solid var(--verde);
	border-radius: 18px;
	background: #fff;
	color: var(--texto);
	transition: transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}

	.home-pilar-card:hover {
		transform: translateY(-5px);
		border-color: var(--azul);
		box-shadow: 0 18px 45px rgba(0,0,0,.08);
		color: var(--texto);
	}

.home-pilar-numero {
	position: absolute;
	top: 26px;
	right: 28px;
	color: var(--verde);
	font-size: 2.4rem;
	font-weight: 800;
	opacity: .3;
}

.home-pilar-icon,
.home-info-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 34px;
	border-radius: 15px;
	background: var(--gradient-brand);
	color: #fff;
	font-size: 1.4rem;
}

.home-pilar-card h3 {
	margin: 0 0 14px;
	color: var(--texto);
	font-size: 1.4rem;
}

.home-pilar-card p {
	margin: 0 0 25px;
	color: var(--texto);
	font-size: .92rem;
	line-height: 1.7;
}

.home-pilar-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: auto;
	color: var(--azul);
	font-size: .88rem;
	font-weight: 700;
	transition: color .2s ease;
}

.home-pilar-card:hover .home-pilar-link {
	color: var(--verde);
}


/* ===== SUS ===== */
.home-sus {
	padding: 90px 0;
	background: var(--gradient-brand);
}

.home-sus-content {
	max-width: 600px;
}

.home-sus .home-eyebrow {
	color: #fff;
}

.home-sus h2 {
	margin: 0 0 22px;
	color: #fff;
	font-size: clamp(2.2rem,4vw,3.5rem);
	line-height: 1.05;
}

.home-sus p {
	margin: 0 0 30px;
	color: rgba(255,255,255,.85);
	font-size: 1rem;
	line-height: 1.8;
}

.home-sus-image {
	overflow: hidden;
	border-radius: 20px;
}

	.home-sus-image img {
		display: block;
		width: 100%;
		height: 470px;
		object-fit: cover;
	}


/* ===== ENSINO ===== */
.home-ensino {
	padding: 100px 0;
	background: #fff;
}

.home-ensino-content {
	max-width: 580px;
	margin-left: auto;
}

.home-ensino-links {
	display: flex;
	flex-direction: column;
	margin-top: 28px;
	border-top: 1px solid var(--verde);
}

	.home-ensino-links a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 15px;
		padding: 17px 0;
		border-bottom: 1px solid var(--verde);
		color: var(--texto);
		font-weight: 700;
		transition: color .2s ease;
	}

		.home-ensino-links a:hover {
			color: var(--azul);
		}


/* ===== INFORMAÇÕES ÚTEIS ===== */
.home-informacoes {
	padding: 90px 0;
	background: #fff;
}

.home-info-card {
	height: 100%;
	min-height: 300px;
	padding: 32px;
	border: 1px solid var(--verde);
	border-radius: 18px;
	background: #fff;
}

	.home-info-card h3 {
		margin: 0 0 18px;
		color: var(--texto);
		font-size: 1.2rem;
	}

	.home-info-card p {
		color: var(--texto);
		font-size: .92rem;
		line-height: 1.75;
	}

	.home-info-card ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.home-info-card li {
		display: flex;
		justify-content: space-between;
		gap: 15px;
		padding: 9px 0;
		border-bottom: 1px solid var(--verde);
		color: var(--texto);
		font-size: .86rem;
	}

		.home-info-card li:last-child {
			border-bottom: 0;
		}

		.home-info-card li strong {
			color: var(--verde);
			text-align: right;
		}

	.home-info-card a {
		display: inline-flex;
		align-items: center;
		gap: 7px;
		margin-top: 10px;
		color: var(--azul);
		font-weight: 700;
		transition: color .2s ease;
	}

		.home-info-card a:hover {
			color: var(--verde);
		}


/* ===== CTA FINAL ===== */
.home-final {
	padding: 105px 0;
	background: var(--gradient-brand);
	text-align: center;
}

.home-final-content {
	max-width: 800px;
	margin: 0 auto;
}

	.home-final-content > span {
		display: block;
		margin-bottom: 14px;
		color: #fff;
		font-size: .78rem;
		font-weight: 800;
		letter-spacing: .13em;
		text-transform: uppercase;
	}

.home-final h2 {
	margin: 0 0 20px;
	color: #fff;
	font-size: clamp(2.2rem,4vw,3.7rem);
	line-height: 1.05;
}

.home-final p {
	max-width: 620px;
	margin: 0 auto 30px;
	color: rgba(255,255,255,.85);
	line-height: 1.75;
}


/* ===== RESPONSIVO HOME ===== */
@media (max-width:991.98px) {
	.home-hero,
	.home-hero-container {
		min-height: 600px;
	}

	.home-hero-overlay {
		background: linear-gradient(90deg, #1898b7 0%, rgb(24 152 183 / 55%) 38%, rgb(129 167 73 / 55%) 100%);
	}

	.home-institucional,
	.home-pilares,
	.home-sus,
	.home-ensino,
	.home-informacoes {
		padding: 70px 0;
	}

	.home-institucional-image img,
	.home-ensino-image img,
	.home-sus-image img {
		height: 420px;
	}

	.home-ensino-content {
		margin-left: 0;
	}

	.home-pilar-card {
		min-height: 320px;
	}
}

@media (max-width:767.98px) {
	.home-hero,
	.home-hero-container {
		min-height: 540px;
	}

	.home-hero-content {
		padding: 70px 0;
	}

	.home-hero h1 {
		font-size: clamp(2.6rem,8vw,3rem);
	}

	.home-hero p {
		font-size: .96rem;
	}

	.home-institucional,
	.home-pilares,
	.home-sus,
	.home-ensino,
	.home-informacoes,
	.home-final {
		padding: 58px 0;
	}

	.home-institucional-image img,
	.home-ensino-image img,
	.home-sus-image img {
		height: 320px;
	}

	.home-section-heading {
		margin-bottom: 30px;
	}

	.home-pilar-card,
	.home-info-card {
		min-height: auto;
		padding: 26px;
	}
}
/* ===== SATISFAÇÃO ===== */
.satisfacao-section {
	padding: 70px 0;
	background: #f5f7f5;
}

.satisfacao-card {
	padding: 48px;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
}

.satisfacao-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 18px;
	padding: 4px 12px;
	border: 1px solid #c3e6d0;
	border-radius: 20px;
	background: #e8f5ee;
	color: var(--azul);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.satisfacao-card h2 {
	margin-bottom: 16px;
	color: var(--texto);
	line-height: 1.2;
}

	.satisfacao-card h2 span {
		background: var(--gradient-brand);
		background-clip: text;
		-webkit-background-clip: text;
		color: transparent;
		-webkit-text-fill-color: transparent;
	}

.satisfacao-card p {
	margin-bottom: 20px;
	color: var(--texto);
	font-size: 0.9rem;
	line-height: 1.65;
}

.tag-pill {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-right: 6px;
	padding: 5px 12px;
	border-radius: 20px;
	background: #f0f4f1;
	color: var(--azul);
	font-size: 0.75rem;
	font-weight: 600;
}

.nota-card {
	flex: 1;
	padding: 24px 20px;
	border: 1px solid #e2e8e4;
	border-radius: 14px;
	background: #f8faf9;
	text-align: center;
}

	.nota-card .ano {
		margin-bottom: 6px;
		color: var(--texto);
		font-size: 0.78rem;
		font-weight: 600;
	}

	.nota-card .nota {
		color: var(--verde);
		font-size: 2.6rem;
		font-weight: 900;
		line-height: 1;
	}

	.nota-card .nota-label {
		margin-top: 4px;
		color: var(--texto);
		font-size: 0.72rem;
		font-weight: 600;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

/* ===== CTA ===== */
.cta-section {
	padding: 60px 0;
	background: var(--gradient-brand);
}

	.cta-section h2 {
		margin-bottom: 12px;
		color: #fff;
		line-height: 1.2;
	}

	.cta-section p {
		margin-bottom: 0;
		color: rgba(255, 255, 255, 0.8);
		font-size: 0.95rem;
	}

.btn-cta-white,
.btn-cta-outline-white {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 24px;
	border-radius: 8px;
	font-size: 0.95rem;
	font-weight: 700;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.btn-cta-white {
	background: #fff;
	color: var(--verde);
}

	.btn-cta-white:hover {
		background: #e8f5ee;
		color: var(--verde);
	}

.btn-cta-outline-white {
	border: 1.5px solid rgba(255, 255, 255, 0.5);
	background: transparent;
	color: #fff;
}

	.btn-cta-outline-white:hover {
		border-color: #fff;
		color: #fff;
	}

.cta-image {
	display: block;
	width: 100%;
	height: 430px;
	object-fit: cover;
	border-radius: 18px;
}

@media (max-width: 991.98px) {
	.cta-image {
		height: 360px;
	}
}

@media (max-width: 575.98px) {
	.cta-section .px-5 {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}

	.cta-image {
		height: 260px;
		border-radius: 14px;
	}
}
/* ===== FOOTER ===== */
footer {
	padding: 60px 0 0;
	background: #eef7f9;
	color: var(--texto);
}

	footer .footer-logo img {
		height: 100px;
	}

	footer .footer-desc {
		margin: 14px 0 20px;
		font-size: 0.85rem;
		line-height: 1.65;
	}

	footer .footer-contact {
		font-size: 0.82rem;
		line-height: 2;
	}

		footer .footer-contact i {
			margin-right: 6px;
			color: var(--verde);
		}

	footer .footer-social a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 34px;
		height: 34px;
		margin-right: 6px;
		border-radius: 8px;
		background: #3030301a;
		font-size: 1rem;
		transition: background 0.2s ease, color 0.2s ease;
		color: var(--texto);
	}

		footer .footer-social a:hover {
			background: var(--verde);
			color: #FFF;
		}

	footer h5 {
		margin-bottom: 16px;
	}

	footer ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}

		footer ul li {
			margin-bottom: 8px;
		}

			footer ul li a {
				font-size: 0.83rem;
				transition: color 0.2s ease;
				color: var(--texto);
			}

				footer ul li a:hover {
					color: var(--azul);
				}

.footer-bottom {
	margin-top: 48px;
	padding: 18px 0;
	border-top: 1px solid var(--verde);
}

	.footer-bottom p {
		margin: 0;
		color: var(--texto);
		font-size: 0.78rem;
	}

	.footer-bottom a {
		margin-left: 16px;
		color: var(--texto);
		font-size: 0.78rem;
		transition: color 0.2s ease;
	}

		.footer-bottom a:hover {
			color: var(--verde);
		}

/* ===== PÁGINA DE MÉDICOS ===== */


.medicos-content {
	padding: 72px 0 90px;
	background: #f6f8f7;
}

.medicos-section {
	margin-bottom: 54px;
}

	.medicos-section:last-child {
		margin-bottom: 0;
	}

.medicos-section-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 24px;
}

.medicos-section-label {
	margin: 0 0 7px;
	color: var(--verde);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.medicos-section-title {
	margin: 0;
	color: var(--texto);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.15;
}

.medicos-section-desc {
	max-width: 570px;
	margin: 8px 0 0;
	color: #68737d;
	line-height: 1.65;
}

.medicos-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #dfe7e4;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 12px 32px rgba(23, 33, 43, 0.055);
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

	.medicos-card:hover {
		transform: translateY(-5px);
		border-color: rgba(0, 107, 87, 0.28);
		box-shadow: 0 18px 42px rgba(23, 33, 43, 0.1);
	}

.medicos-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 22px;
	border-radius: 16px;
	background: #fff;
	color: var(--verde);
	font-size: 1.45rem;
}

.medicos-card h3 {
	margin: 0 0 8px;
	color: var(--texto);
	letter-spacing: -0.015em;
}

.medicos-card p {
	margin: 0;
	color: #68737d;
	font-size: 0.94rem;
	line-height: 1.65;
}

.medicos-doctor-card {
	display: flex;
	align-items: center;
	gap: 18px;
}

.medicos-avatar {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: var(--gradient-brand);
	color: #fff;
	font-size: 1.55rem;
	font-weight: 800;
}

.medicos-specialty {
	display: inline-flex;
	align-items: center;
	margin-top: 3px;
	padding: 5px 10px;
	border-radius: 999px;
	background: #fff;
	color: var(--azul);
	font-size: 0.78rem;
	font-weight: 700;
}

.medicos-specialty-card {
	display: flex;
	align-items: center;
	gap: 16px;
	min-height: 108px;
	color: inherit;
}

	.medicos-specialty-card .medicos-icon {
		width: 48px;
		height: 48px;
		margin: 0;
		border-radius: 14px;
	}

	.medicos-specialty-card h3 {
		margin: 0;
	}

.medicos-arrow {
	margin-left: auto;
	color: var(--verde);
	font-size: 1.05rem;
	transition: transform 0.2s ease;
}

.medicos-specialty-card:hover .medicos-arrow {
	transform: translateX(4px);
}

.medicos-status {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 16px;
	padding: 5px 9px;
	border-radius: 999px;
	font-size: 0.73rem;
	font-weight: 800;
}

.medicos-status-validar {
	background: #fff4d9;
	color: #9a6500;
}

.medicos-status-restrito {
	background: #f0f1f3;
	color: #5d6570;
}

.medicos-link-card {
	display: block;
	height: 100%;
	color: inherit;
}

	.medicos-link-card .medicos-card {
		position: relative;
		padding-right: 62px;
	}

	.medicos-link-card .medicos-arrow {
		position: absolute;
		top: 29px;
		right: 28px;
	}

.medicos-related {
	padding: 34px;
	border-radius: 24px;
	background: var(--gradient-brand);
	color: #fff;
}

	.medicos-related h2 {
		margin: 0 0 8px;
		letter-spacing: -0.025em;
	}

	.medicos-related p {
		margin: 0;
		color: rgba(255, 255, 255, 0.76);
	}

.medicos-related-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 12px;
}

.medicos-related-link {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 12px 17px;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 12px;
	color: #fff;
	font-weight: 700;
	transition: background 0.2s ease, border-color 0.2s ease;
}

	.medicos-related-link:hover {
		border-color: rgba(255, 255, 255, 0.45);
		background: rgba(255, 255, 255, 0.12);
		color: #fff;
	}

/* ===== RESPONSIVO ===== */
@media (max-width: 991.98px) {
	.navbar-main .container-fluid {
		flex-wrap: wrap;
	}

	.navbar-main .navbar-collapse {
		position: fixed;
		top: 12%;
		right: 0;
		left: 0;
		width: 100%;
		margin-top: 15px;
		padding: 15px;
		border-radius: 12px;
		background: #fff;
		box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
	}

	.navbar-main .navbar-nav {
		width: 100%;
	}

	.navbar-main .nav-link {
		display: block;
		width: 100%;
		padding: 14px 18px !important;
		border-bottom: 1px solid #ececec;
		font-size: 0.95rem;
	}

		.navbar-main .nav-link:last-of-type {
			border-bottom: 0;
		}

	.navbar-main .btn-agendar {
		display: flex;
		width: 100%;
		margin: 15px 0 0 !important;
		padding: 14px;
	}

	.quick-access .container {
		max-width: 100%;
		padding-right: 0;
		padding-left: 0;
	}

	.quick-access-inner {
		display: flex;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
	}

	.quick-access-item {
		flex: 0 0 150px;
		min-height: 112px;
		border-left: 0;
		scroll-snap-align: start;
	}

		.quick-access-item:first-child {
			border-left: 0;
		}

	.medicos-hero {
		padding: 58px 0;
	}

	.medicos-content {
		padding: 58px 0 70px;
	}

	.medicos-related-links {
		justify-content: flex-start;
		margin-top: 24px;
	}
}

@media (max-width: 767.98px) {
	.hero-section {
		padding: 40px 0 30px;
	}

	.hero-img {
		margin-top: 30px;
	}

	.especialidades-section {
		padding: 52px 0;
	}

	.section-header,
	.medicos-section-header {
		display: block;
	}

	.section-link {
		margin-top: 16px;
	}

	.quick-access-item {
		flex-basis: 125px;
		min-height: 104px;
		padding: 16px 10px;
		font-size: 0.78rem;
	}

		.quick-access-item .icon-circle {
			width: 42px;
			height: 42px;
			font-size: 1.1rem;
		}

	.card-especialidade,
	.card-destaque,
	.card-info {
		min-height: auto;
		padding: 24px;
	}

	.destaques-grid,
	.info-grid {
		margin-top: 24px;
	}

	.satisfacao-card {
		padding: 28px 20px;
	}

	.nota-card .nota {
		font-size: 2rem;
	}

	.medicos-hero,
	.medicos-content {
		padding-right: 4px;
		padding-left: 4px;
	}

	.medicos-card {
		padding: 23px;
		border-radius: 18px;
	}

	.medicos-related {
		padding: 26px 22px;
		border-radius: 20px;
	}
}

/* ===== PÁGINA SOBRE ===== */


.sobre-instituicao,
.sobre-intro,
.sobre-valores,
.sobre-historia,
.sobre-diretoria,
.sobre-links {
	padding: 76px 0;
}

.sobre-instituicao,
.sobre-historia,
.sobre-links {
	background: #fff;
}

.sobre-intro,
.sobre-valores,
.sobre-diretoria {
	background: #f6f8f7;
}

.sobre-intro-card {
	height: 100%;
	padding: 30px;
	border: 1px solid #e2e8e4;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(23, 33, 43, 0.05);
}

.sobre-icon,
.sobre-link-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 15px;
	background: #e8f5ee;
	color: var(--azul);
}

.sobre-intro-card h2 {
	margin: 20px 0 10px;
	color: var(--texto);
}

.sobre-intro-card p {
	margin: 0;
	color: #68737d;
	font-size: 0.94rem;
	line-height: 1.7;
}


.sobre-valor-card {
	height: 100%;
	padding: 26px;
	border: 1px solid #e2e8e4;
	border-radius: 16px;
	background: #fff;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.sobre-valor-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
	}

.sobre-valor-card h3 {
	margin: 18px 0 8px;
	color: var(--texto);
}

.sobre-valor-card p {
	margin: 0;
	color: #68737d;
	font-size: 0.88rem;
	line-height: 1.65;
}

.sobre-timeline {
	position: relative;
	max-width: 980px;
	margin: 0 auto;
}

	.sobre-timeline::before {
		content: "";
		position: absolute;
		top: 8px;
		bottom: 8px;
		left: 101px;
		width: 2px;
		background: #dce7e2;
	}

.sobre-timeline-item {
	position: relative;
	display: grid;
	grid-template-columns: 74px 28px 1fr;
	gap: 14px;
	align-items: start;
	padding: 0 0 34px;
}

	.sobre-timeline-item:last-child {
		padding-bottom: 0;
	}

.sobre-timeline-marker {
	position: relative;
	z-index: 1;
	grid-column: 2;
	width: 14px;
	height: 14px;
	margin-top: 5px;
	border: 3px solid #fff;
	border-radius: 50%;
	background: var(--azul);
	box-shadow: 0 0 0 2px var(--azul);
}

.sobre-timeline-year {
	grid-column: 1;
	grid-row: 1;
	color: var(--verde);
	font-size: 1rem;
	font-weight: 850;
	text-align: right;
}

/* ===== TIMELINE - SANFONA ===== */

.sobre-timeline-content {
	min-width: 0;
}

.sobre-timeline-toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--texto);
	font-family: inherit;
	text-align: left;
	cursor: pointer;
}

.sobre-timeline-chamada {
	color: var(--texto);
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.6;
}

.sobre-timeline-toggle-icon {
	display: flex;
	flex: 0 0 34px;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #e8f5ee;
	color: var(--azul);
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1;
	transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease;
}

.sobre-timeline-toggle:hover .sobre-timeline-chamada {
	color: var(--azul);
}

.sobre-timeline-details {
	display: grid;
	grid-template-rows: 0fr;
	opacity: 0;
	transition: grid-template-rows 0.35s ease, opacity 0.25s ease;
}

.sobre-timeline-text {
	min-height: 0;
	overflow: hidden;
	color: #68737d;
	font-size: 0.9rem;
	line-height: 1.75;
}

	.sobre-timeline-text > *:first-child {
		margin-top: 18px;
	}

	.sobre-timeline-text > *:last-child {
		margin-bottom: 0;
	}


/* ABERTO */

.sobre-timeline-item.is-open .sobre-timeline-details {
	grid-template-rows: 1fr;
	opacity: 1;
}

.sobre-timeline-item.is-open .sobre-timeline-toggle-icon {
	transform: rotate(45deg);
	background: var(--azul);
	color: #fff;
}

.sobre-diretor-card {
	height: 100%;
	padding: 28px 22px;
	border: 1px solid #e2e8e4;
	border-radius: 17px;
	background: #fff;
	text-align: center;
}

.sobre-diretor-avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 68px;
	margin: 0 auto 17px;
	border-radius: 50%;
	background: var(--gradient-brand);
	color: #fff;
	font-size: 1.35rem;
	font-weight: 850;
}

.sobre-diretor-card h3 {
	margin: 0 0 5px;
	color: var(--texto);
}

.sobre-diretor-card p {
	margin: 0;
	color: #68737d;
	font-size: 0.84rem;
}

.sobre-link-card {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 18px;
	height: 100%;
	padding: 26px 58px 26px 26px;
	border: 1px solid #e2e8e4;
	border-radius: 17px;
	background: #fff;
	color: inherit;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.sobre-link-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
		color: inherit;
	}

.sobre-link-icon {
	flex: 0 0 auto;
	width: 48px;
	height: 48px;
	border-radius: 14px;
}

.sobre-link-card h3 {
	margin: 1px 0 7px;
	color: var(--texto);
}

.sobre-link-card p {
	margin: 0 0 13px;
	color: #68737d;
	font-size: 0.86rem;
	line-height: 1.55;
}

.sobre-link-card span {
	color: var(--azul);
	font-size: 0.83rem;
	font-weight: 700;
}

.sobre-link-arrow {
	position: absolute;
	top: 29px;
	right: 25px;
	color: var(--verde);
	transition: transform 0.2s ease;
}

.sobre-link-card:hover .sobre-link-arrow {
	transform: translateX(4px);
}

@media (max-width: 991.98px) {
	.sobre-hero {
		padding: 62px 0;
	}

	.sobre-instituicao,
	.sobre-intro,
	.sobre-valores,
	.sobre-historia,
	.sobre-diretoria,
	.sobre-links {
		padding: 58px 0;
	}

	.sobre-numeros {
		padding: 58px 0;
	}
}

@media (max-width: 767.98px) {
	.sobre-timeline::before {
		left: 6px;
	}

	.sobre-timeline-item {
		grid-template-columns: 20px 1fr;
		gap: 14px;
		padding-bottom: 28px;
	}

	.sobre-timeline-marker {
		grid-column: 1;
		grid-row: 1 / span 2;
		width: 12px;
		height: 12px;
		margin-top: 5px;
	}

	.sobre-timeline-year {
		grid-column: 2;
		grid-row: 1;
		text-align: left;
	}

	.sobre-timeline-item p {
		grid-column: 2;
		grid-row: 2;
	}

	.sobre-intro-card,
	.sobre-valor-card,
	.sobre-diretor-card,
	.sobre-link-card {
		padding: 23px;
	}

	.sobre-link-card {
		padding-right: 54px;
	}

	.sobre-instituicao,
	.sobre-intro,
	.sobre-valores,
	.sobre-historia,
	.sobre-diretoria,
	.sobre-links {
		padding: 58px 0;
	}

	.sobre-instituicao-numeros {
		margin-top: 6px;
	}
}
@media (max-width: 575.98px) {

	.sobre-instituicao-numero {
		align-items: flex-start;
		flex-direction: column;
		gap: 7px;
		padding: 19px 20px;
	}

		.sobre-instituicao-numero span {
			max-width: none;
			text-align: left;
		}

	.sobre-valor-card {
		min-height: auto;
	}
}

/* ===== INSTITUIÇÃO ===== */

.sobre-instituicao-texto {
	max-width: 760px;
}

	.sobre-instituicao-texto p {
		margin: 0 0 18px;
		color: #68737d;
		font-size: 0.96rem;
		line-height: 1.8;
	}

		.sobre-instituicao-texto p:last-child {
			margin-bottom: 0;
		}


/* ===== NÚMEROS INSTITUCIONAIS ===== */

.sobre-instituicao-numeros {
	overflow: hidden;
	border: 1px solid #e2e8e4;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(23, 33, 43, 0.05);
}

.sobre-instituicao-numero {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 22px 25px;
}

	.sobre-instituicao-numero + .sobre-instituicao-numero {
		border-top: 1px solid #e6ece9;
	}

	.sobre-instituicao-numero strong {
		flex: 0 0 auto;
		color: var(--azul);
		font-size: 1.65rem;
		font-weight: 900;
		line-height: 1;
	}

	.sobre-instituicao-numero span {
		max-width: 220px;
		color: #68737d;
		font-size: 0.82rem;
		font-weight: 700;
		line-height: 1.45;
		text-align: right;
	}


/* ===== VALORES ===== */

.sobre-valor-card {
	display: flex;
	align-items: center;
	gap: 14px;
	min-height: 86px;
	padding: 20px 22px;
}

.sobre-valor-marker {
	flex: 0 0 9px;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--verde);
	box-shadow: 0 0 0 5px rgba(129, 167, 73, 0.12);
}

.sobre-valor-card h3 {
	margin: 0;
	font-size: 0.92rem;
	line-height: 1.45;
}

/* ===== PÁGINA NOTÍCIAS ===== */


.noticias-section {
	padding: 70px 0 78px;
	background: #f6f8f7;
}

.noticias-filtros {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 30px;
}

.noticias-filtro {
	padding: 9px 17px;
	border: 1px solid #dce7e2;
	border-radius: 999px;
	background: #fff;
	color: var(--texto);
	font-size: 0.84rem;
	font-weight: 700;
	cursor: pointer;
	transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

	.noticias-filtro:hover,
	.noticias-filtro.active {
		border-color: transparent;
		background: var(--gradient-brand);
		color: #fff;
	}

.noticia-destaque {
	overflow: hidden;
	margin-bottom: 34px;
	border: 1px solid #dfe7e4;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 14px 40px rgba(23, 33, 43, 0.07);
}

.noticia-destaque-imagem {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 32px;
	background: #e8f5ee;
}

	.noticia-destaque-imagem img {
		display: block;
		width: auto;
		max-width: 100%;
		height: auto;
		max-height: 560px;
		aspect-ratio: 4 / 5;
		object-fit: contain;
	}

.noticia-card-imagem img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.noticia-destaque-conteudo {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	padding: 46px;
}

.noticia-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 15px;
	color: #7a848c;
	font-size: 0.76rem;
	font-weight: 700;
}

.noticia-categoria {
	display: inline-flex;
	align-items: center;
	padding: 5px 10px;
	border-radius: 999px;
	background: #e8f5ee;
	color: var(--azul);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.noticia-destaque h2 {
	margin: 0 0 16px;
	color: var(--texto);
	letter-spacing: -0.035em;
	line-height: 1.16;
}

.noticia-destaque p {
	margin: 0 0 24px;
	color: #68737d;
	font-size: 0.96rem;
	line-height: 1.7;
}

.noticia-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: fit-content;
	color: var(--azul);
	font-size: 0.87rem;
	font-weight: 800;
	transition: color 0.2s ease;
}

	.noticia-link svg,
	.noticia-link span {
		transition: transform 0.2s ease;
	}

	.noticia-link:hover {
		color: var(--verde);
	}

		.noticia-link:hover svg,
		.noticia-link:hover span {
			transform: translateX(4px);
		}

.noticia-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	border: 1px solid #dfe7e4;
	border-radius: 18px;
	background: #fff;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.noticia-card:hover {
		transform: translateY(-5px);
		border-color: var(--azul);
		box-shadow: 0 16px 38px rgba(23, 33, 43, 0.09);
	}

.noticia-card-imagem {
	overflow: hidden;
	background: #e8f5ee;
}

	.noticia-card-imagem img {
		transition: transform 0.35s ease;
	}

.noticia-card-conteudo {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 25px;
}

.noticia-card h3 {
	margin: 0 0 12px;
	color: var(--texto);
	letter-spacing: -0.015em;
	line-height: 1.4;
}

.noticia-card p {
	margin: 0 0 22px;
	color: #68737d;
	font-size: 0.87rem;
	line-height: 1.65;
}

.noticia-card .noticia-link {
	margin-top: auto;
}

.noticias-boletim {
	padding: 0 0 78px;
	background: #f6f8f7;
}

.noticias-boletim-card {
	padding: 42px;
	border-radius: 22px;
	background: var(--gradient-brand);
	color: #fff;
}

.noticias-boletim-label {
	display: block;
	margin-bottom: 8px;
	color: rgba(255, 255, 255, 0.76);
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.noticias-boletim h2 {
	margin: 0 0 8px;
	color: #fff;
	letter-spacing: -0.03em;
}

.noticias-boletim p {
	margin: 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.92rem;
}

.noticias-boletim-form {
	display: flex;
	gap: 10px;
}

	.noticias-boletim-form input {
		flex: 1;
		min-width: 0;
		padding: 13px 16px;
		border: 1px solid rgba(255, 255, 255, 0.3);
		border-radius: 10px;
		outline: none;
		background: rgba(255, 255, 255, 0.12);
		color: #fff;
		font-size: 0.9rem;
	}

		.noticias-boletim-form input::placeholder {
			color: rgba(255, 255, 255, 0.68);
		}

		.noticias-boletim-form input:focus {
			border-color: #fff;
			background: rgba(255, 255, 255, 0.17);
		}

	.noticias-boletim-form button {
		flex: 0 0 auto;
		padding: 13px 22px;
		border: 0;
		border-radius: 10px;
		background: #fff;
		color: var(--verde);
		font-size: 0.88rem;
		font-weight: 800;
		cursor: pointer;
		transition: background 0.2s ease;
	}

		.noticias-boletim-form button:hover {
			background: #e8f5ee;
		}

@media (max-width: 991.98px) {
	.noticias-hero {
		padding: 62px 0;
	}

	.noticias-section {
		padding: 58px 0 64px;
	}

	.noticia-destaque-imagem {
		min-height: 320px;
	}

	.noticia-destaque-conteudo {
		padding: 34px;
	}

	.noticias-boletim {
		padding-bottom: 64px;
	}
}

@media (max-width: 767.98px) {
	.noticias-filtros {
		flex-wrap: nowrap;
		margin-right: -12px;
		padding-right: 12px;
		overflow-x: auto;
	}

	.noticias-filtro {
		flex: 0 0 auto;
	}

	.noticia-destaque {
		border-radius: 18px;
	}

	.noticia-destaque-imagem {
		min-height: 240px;
	}

	.noticia-destaque-conteudo,
	.noticia-card-conteudo {
		padding: 23px;
	}

	.noticia-card-imagem {
		height: 200px;
	}

	.noticias-boletim-card {
		padding: 28px 23px;
		border-radius: 18px;
	}

	.noticias-boletim-form {
		flex-direction: column;
	}

		.noticias-boletim-form button {
			width: 100%;
		}
}
/* ===== PÁGINA PACIENTES ===== */


.pacientes-section,
.pacientes-relacionadas {
	padding: 76px 0;
	background: #fff
}

.pacientes-section-alt {
	background: #f6f8f7
}


.pacientes-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 28px;
	border: 1px solid #e2e8e4;
	border-radius: 18px;
	background: #fff;
	transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease
}

	.pacientes-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, .08)
	}

.pacientes-card-destaque {
	border-color: transparent;
	background: var(--gradient-brand);
	color: #fff
}

.pacientes-icon,
.pacientes-orientacao-icon,
.pacientes-related-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border-radius: 14px;
	background: #e8f5ee;
	color: var(--azul)
}

.pacientes-card-destaque .pacientes-icon {
	background: rgba(255, 255, 255, .14);
	color: #fff
}

.pacientes-card h3 {
	margin: 20px 0 10px;
	color: var(--texto);
}

.pacientes-card-destaque h3 {
	color: #fff;
}

.pacientes-card p {
	margin: 0 0 22px;
	color: #68737d;
	font-size: .88rem;
	line-height: 1.65
}

.pacientes-card-destaque p {
	color: rgba(255, 255, 255, .78)
}

.pacientes-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: fit-content;
	margin-top: auto;
	color: var(--azul);
	font-size: .85rem;
	font-weight: 800
}

.pacientes-card-destaque .pacientes-link {
	color: #fff
}

.pacientes-link span {
	transition: transform .2s ease
}

.pacientes-link:hover span {
	transform: translateX(4px)
}

.pacientes-small-card {
	height: 100%;
	min-height: 155px;
	padding: 24px;
	border: 1px solid #e2e8e4;
	border-radius: 16px;
	background: #fff
}

	.pacientes-small-card h3 {
		margin: 0 0 9px;
		color: var(--texto);
	}

	.pacientes-small-card p {
		margin: 0;
		color: #68737d;
		font-size: .85rem;
		line-height: 1.6
	}

.pacientes-small-card-link {
	display: flex;
	flex-direction: column
}

	.pacientes-small-card-link .pacientes-link {
		margin-top: 18px
	}

.pacientes-orientacao-card {
	height: 100%;
	padding: 26px;
	border: 1px solid #e2e8e4;
	border-radius: 17px;
	background: #fff;
	transition: transform .25s ease, box-shadow .25s ease
}

	.pacientes-orientacao-card:hover {
		transform: translateY(-4px);
		box-shadow: 0 14px 34px rgba(23, 33, 43, .08)
	}

	.pacientes-orientacao-card h3 {
		margin: 18px 0 8px;
		color: var(--texto);
	}

	.pacientes-orientacao-card p {
		margin: 0;
		color: #68737d;
		font-size: .86rem;
		line-height: 1.65
	}

.pacientes-documentos {
	padding: 74px 0;
	background: var(--gradient-brand)
}


.pacientes-documento-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 19px 21px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 13px;
	background: rgba(255, 255, 255, .08);
	color: #fff;
	font-size: .9rem;
	font-weight: 700;
	transition: background .2s ease, transform .2s ease
}

	.pacientes-documento-link:hover {
		transform: translateY(-2px);
		background: rgba(255, 255, 255, .14);
		color: #fff
	}

.pacientes-accordion .accordion-item {
	overflow: hidden;
	margin-bottom: 12px;
	border: 1px solid #dfe7e4;
	border-radius: 13px;
	background: #fff
}

.pacientes-accordion .accordion-button {
	padding: 19px 21px;
	background: #fff;
	color: var(--texto);
	font-size: .94rem;
	font-weight: 800;
	box-shadow: none
}

	.pacientes-accordion .accordion-button:not(.collapsed) {
		background: #e8f5ee;
		color: var(--azul)
	}

.pacientes-accordion .accordion-body {
	padding: 0 21px 21px;
	color: #68737d;
	font-size: .9rem;
	line-height: 1.7
}

.pacientes-related-card {
	display: flex;
	align-items: center;
	gap: 16px;
	height: 100%;
	padding: 24px;
	border: 1px solid #e2e8e4;
	border-radius: 17px;
	background: #fff;
	color: inherit;
	transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease
}

	.pacientes-related-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, .08);
		color: inherit
	}

	.pacientes-related-card > div:nth-child(2) {
		flex: 1
	}

	.pacientes-related-card h3 {
		margin: 0 0 5px;
		color: var(--texto);
	}

	.pacientes-related-card p {
		margin: 0;
		color: #68737d;
		font-size: .84rem;
		line-height: 1.5
	}

	.pacientes-related-card > span {
		color: var(--verde);
		font-size: 1.2rem;
		transition: transform .2s ease
	}

	.pacientes-related-card:hover > span {
		transform: translateX(4px)
	}

@media(max-width:991.98px) {
	.pacientes-hero {
		padding: 62px 0
	}

	.pacientes-section,
	.pacientes-relacionadas {
		padding: 58px 0
	}

	.pacientes-documentos {
		padding: 58px 0
	}
}

@media(max-width:767.98px) {

	.pacientes-card,
	.pacientes-small-card,
	.pacientes-orientacao-card,
	.pacientes-related-card {
		padding: 23px
	}

	.pacientes-small-card {
		min-height: auto
	}
}
/* ===== PÁGINA ENSINO E PESQUISA ===== */


.ensino-section,
.ensino-relacionadas {
	padding: 76px 0;
	background: #fff;
}

.ensino-section-alt {
	background: #f6f8f7;
}


.ensino-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 30px;
	border: 1px solid #e2e8e4;
	border-radius: 18px;
	background: #fff;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.ensino-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
	}

.ensino-card-destaque {
	border-color: transparent;
	background: var(--gradient-brand);
	color: #fff;
}

.ensino-icon,
.ensino-acervo-icon,
.ensino-related-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: #e8f5ee;
	color: var(--azul);
}

.ensino-card-destaque .ensino-icon {
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
}

.ensino-card h3 {
	margin: 21px 0 10px;
	color: var(--texto);
}

.ensino-card-destaque h3 {
	color: #fff;
}

.ensino-card p {
	margin: 0 0 24px;
	color: #68737d;
	font-size: 0.89rem;
	line-height: 1.65;
}

.ensino-card-destaque p {
	color: rgba(255, 255, 255, 0.78);
}

.ensino-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: fit-content;
	margin-top: auto;
	color: var(--azul);
	font-size: 0.85rem;
	font-weight: 800;
}

.ensino-card-destaque .ensino-link {
	color: #fff;
}

.ensino-link span,
.ensino-related-card > span {
	transition: transform 0.2s ease;
}

.ensino-link:hover span,
.ensino-related-card:hover > span {
	transform: translateX(4px);
}

.ensino-acervo-card {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 190px;
	padding: 27px;
	border: 1px solid #e2e8e4;
	border-radius: 17px;
	background: #fff;
	color: inherit;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.ensino-acervo-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
		color: inherit;
	}

	.ensino-acervo-card h3 {
		margin: 20px 0 0;
		color: var(--texto);
		line-height: 1.4;
	}

	.ensino-acervo-card > span {
		position: absolute;
		right: 24px;
		bottom: 22px;
		color: var(--verde);
		font-size: 1.2rem;
	}

.ensino-avisos {
	padding: 74px 0;
	background: var(--gradient-brand);
}


.ensino-aviso-principal,
.ensino-aviso-secundario {
	height: 100%;
	padding: 30px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.09);
	color: #fff;
}

.ensino-aviso-secundario {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.ensino-aviso-tag {
	display: inline-flex;
	margin-bottom: 15px;
	padding: 6px 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
	color: rgba(255, 255, 255, 0.9);
	font-size: 0.71rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ensino-aviso-principal h3,
.ensino-aviso-secundario h3 {
	margin: 0 0 10px;
	color: #fff;
}

.ensino-aviso-principal p,
.ensino-aviso-secundario p {
	margin: 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.9rem;
	line-height: 1.65;
}

.ensino-aviso-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 24px;
	color: #fff;
	font-size: 0.86rem;
	font-weight: 800;
}

.ensino-aviso-secundario > a {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 46px;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
	font-size: 1.25rem;
}

.ensino-related-card {
	display: flex;
	align-items: center;
	gap: 17px;
	height: 100%;
	padding: 25px;
	border: 1px solid #e2e8e4;
	border-radius: 17px;
	background: #fff;
	color: inherit;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.ensino-related-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
		color: inherit;
	}

	.ensino-related-card > div:nth-child(2) {
		flex: 1;
	}

	.ensino-related-card h3 {
		margin: 0 0 5px;
		color: var(--texto);
	}

	.ensino-related-card p {
		margin: 0;
		color: #68737d;
		font-size: 0.85rem;
		line-height: 1.55;
	}

	.ensino-related-card > span {
		color: var(--verde);
		font-size: 1.2rem;
	}

@media (max-width: 991.98px) {
	.ensino-hero {
		padding: 62px 0;
	}

	.ensino-section,
	.ensino-relacionadas,
	.ensino-avisos {
		padding: 58px 0;
	}
}

@media (max-width: 767.98px) {
	.ensino-card,
	.ensino-acervo-card,
	.ensino-aviso-principal,
	.ensino-aviso-secundario,
	.ensino-related-card {
		padding: 23px;
	}

	.ensino-aviso-secundario {
		align-items: flex-start;
	}
}
/* =========================================================
   PÁGINA TRANSPARÊNCIA
========================================================= */

.transparencia-section {
	padding: 76px 0;
	background: #f6f8f7;
}


/* ===== CARDS PRINCIPAIS ===== */

.transparencia-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 28px;
	border: 1px solid #dfe7e4;
	border-radius: 18px;
	background: #fff;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.transparencia-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 15px 36px rgba(23, 33, 43, 0.08);
	}


/* ===== CARD DESTAQUE ===== */

.transparencia-card-destaque {
	border-color: transparent;
	background: var(--gradient-brand);
}


/* ===== CABEÇALHO ===== */

.transparencia-card-header {
	display: flex;
	align-items: flex-start;
	gap: 17px;
	margin-bottom: 25px;
}

	.transparencia-card-header > div:last-child {
		min-width: 0;
	}

.transparencia-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 50px;
	width: 50px;
	height: 50px;
	border-radius: 14px;
	background: #e8f5ee;
	color: var(--azul);
}

.transparencia-card-destaque .transparencia-icon {
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
}

.transparencia-card h2 {
	margin: 2px 0 7px;
	color: var(--texto);
	font-size: 1.35rem;
	line-height: 1.25;
}

.transparencia-card-header p {
	margin: 0;
	color: #68737d;
	font-size: 0.86rem;
	line-height: 1.6;
}

.transparencia-card-destaque h2 {
	color: #fff;
}

.transparencia-card-destaque .transparencia-card-header p {
	color: rgba(255, 255, 255, 0.76);
}


/* ===== SUBTÍTULOS INTERNOS ===== */

.transparencia-subtitulo,
.transparencia-exercicio {
	margin-bottom: 13px;
	color: var(--texto);
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1.5;
}

.transparencia-subtitulo {
	padding-bottom: 12px;
	border-bottom: 1px solid #e6ece9;
}

.transparencia-exercicio {
	display: inline-flex;
	align-self: flex-start;
	padding: 6px 11px;
	border-radius: 999px;
	background: #e8f5ee;
	color: var(--azul);
	font-size: 0.7rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}


/* ===== LINKS / DOCUMENTOS ===== */

.transparencia-links {
	display: grid;
	gap: 10px;
}

	.transparencia-links a,
	.transparencia-info {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		gap: 14px;
		padding: 13px 14px;
		border: 1px solid #e3e9e6;
		border-radius: 11px;
		background: #fbfcfb;
		color: var(--texto);
	}

	.transparencia-links a {
		font-size: 0.86rem;
		font-weight: 700;
		transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
	}

		.transparencia-links a:hover {
			transform: translateX(3px);
			border-color: var(--azul);
			background: #f0f8f4;
			color: var(--azul);
		}


/* ===== LINK COM TÍTULO + DESCRIÇÃO ===== */

.transparencia-link-texto {
	display: block;
	min-width: 0;
}

	.transparencia-link-texto strong {
		display: block;
		color: inherit;
		font-size: 0.86rem;
		font-weight: 800;
		line-height: 1.45;
	}

	.transparencia-link-texto small {
		display: block;
		margin-top: 4px;
		color: #78837f;
		font-size: 0.74rem;
		font-weight: 500;
		line-height: 1.5;
	}


/* ===== BLOCO INFORMATIVO SEM LINK ===== */

.transparencia-info {
	align-items: flex-start;
	background: #f7faf8;
}

	.transparencia-info .transparencia-link-texto strong {
		color: var(--texto);
	}

	.transparencia-info .transparencia-link-texto small {
		color: #68737d;
	}


/* ===== SETA ===== */

.transparencia-seta {
	color: var(--verde);
	font-size: 1rem;
	font-weight: 800;
	transition: transform 0.2s ease;
}

.transparencia-links a:hover .transparencia-seta {
	transform: translateX(3px);
}


/* ===== ANOS ===== */

.transparencia-anos {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 18px;
}

	.transparencia-anos span {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 54px;
		padding: 6px 10px;
		border: 1px solid #dce7e2;
		border-radius: 999px;
		background: #fff;
		color: #68737d;
		font-size: 0.7rem;
		font-weight: 800;
	}


/* ===== INDICADORES ===== */

.transparencia-indicadores {
	margin-bottom: 18px;
	padding: 17px 18px;
	border-radius: 12px;
	background: #f7faf8;
}

	.transparencia-indicadores ul {
		display: grid;
		gap: 8px;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.transparencia-indicadores li {
		position: relative;
		padding-left: 17px;
		color: #68737d;
		font-size: 0.8rem;
		line-height: 1.5;
	}

		.transparencia-indicadores li::before {
			content: "";
			position: absolute;
			top: 0.62em;
			left: 0;
			width: 6px;
			height: 6px;
			border-radius: 50%;
			background: var(--verde);
		}


/* ===== TEXTO INTERNO ===== */

.transparencia-texto {
	margin-bottom: 18px;
	padding: 17px 18px;
	border-radius: 12px;
	background: #f7faf8;
}

	.transparencia-texto p {
		margin: 0;
		color: #68737d;
		font-size: 0.82rem;
		line-height: 1.65;
	}


/* ===== CARD DESTAQUE / LGPD ===== */

.transparencia-card-destaque .transparencia-links a {
	border-color: rgba(255, 255, 255, 0.18);
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}

	.transparencia-card-destaque .transparencia-links a:hover {
		border-color: rgba(255, 255, 255, 0.35);
		background: rgba(255, 255, 255, 0.14);
		color: #fff;
	}

.transparencia-card-destaque .transparencia-seta {
	color: #fff;
}

.transparencia-card-destaque .transparencia-link-texto small {
	color: rgba(255, 255, 255, 0.7);
}


/* =========================================================
   ÁREAS RELACIONADAS
========================================================= */

.transparencia-relacionadas {
	padding: 70px 0;
	background: #fff;
}

.transparencia-heading {
	margin-bottom: 28px;
}

	.transparencia-heading h2 {
		margin: 0;
	}

.transparencia-related-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	height: 100%;
	padding: 23px;
	border: 1px solid #dfe7e4;
	border-radius: 16px;
	background: #fff;
	color: var(--texto);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, color 0.25s ease;
}

	.transparencia-related-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
		color: var(--azul);
	}

	.transparencia-related-card span {
		color: var(--verde);
		font-size: 1.1rem;
	}


/* =========================================================
   RESPONSIVO
========================================================= */

@media (max-width: 991.98px) {

	.transparencia-section,
	.transparencia-relacionadas {
		padding: 58px 0;
	}
}


@media (max-width: 575.98px) {

	.transparencia-section {
		padding: 48px 0;
	}

	.transparencia-relacionadas {
		padding: 48px 0;
	}

	.transparencia-card {
		padding: 22px;
		border-radius: 15px;
	}

	.transparencia-card-header {
		gap: 14px;
	}

	.transparencia-icon {
		flex-basis: 46px;
		width: 46px;
		height: 46px;
		border-radius: 12px;
	}

	.transparencia-card h2 {
		font-size: 1.15rem;
	}

	.transparencia-links a,
	.transparencia-info {
		padding: 12px;
	}

	.transparencia-link-texto small {
		font-size: 0.72rem;
	}

	.transparencia-indicadores,
	.transparencia-texto {
		padding: 15px;
	}

	.transparencia-related-card {
		padding: 20px;
	}
}

/* ===== ORGANOGRAMA INSTITUCIONAL ===== */
.organograma-section {
	padding: 70px 0 90px;
}

.organograma-intro {
	max-width: 780px;
	margin-bottom: 35px;
}

	.organograma-intro h2 {
		margin: 10px 0 15px;
		color: var(--texto);
	}

	.organograma-intro p {
		margin: 0;
		color: var(--texto);
		line-height: 1.7;
	}

.organograma-scroll {
	overflow-x: auto;
	padding: 30px 20px;
	border: 1px solid var(--azul);
	border-radius: 14px;
	background: #fff;
}

.organograma-chart {
	display: grid;
	grid-template-columns: 230px 1fr;
	gap: 30px;
	align-items: center;
	width: 1200px;
	min-height: 900px;
}

.org-root {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

	.org-root::after {
		content: "";
		position: absolute;
		left: 100%;
		top: 50%;
		width: 30px;
		border-top: 2px solid var(--azul);
	}

.org-diretorias {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 55px;
	padding-left: 30px;
}

	.org-diretorias::before {
		content: "";
		position: absolute;
		left: 0;
		top: 47px;
		bottom: calc(50% - 75px);
		border-left: 2px solid var(--azul);
	}

.org-diretoria {
	display: grid;
	grid-template-columns: 240px 1fr;
	gap: 35px;
	align-items: center;
	position: relative;
}

	.org-diretoria::before {
		content: "";
		position: absolute;
		left: -30px;
		top: 50%;
		width: 30px;
		border-top: 2px solid var(--azul);
	}

.org-diretoria-box {
	background: var(--gradient-brand);
	color: #fff;
	font-size: 20px;
	font-weight: 700;
}

.org-box {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 56px;
	padding: 12px 15px;
	border: 2px solid var(--azul);
	border-radius: 9px;
	text-align: center;
	line-height: 1.35;
}

.org-estatutaria {
	min-height: 95px;
	background: var(--gradient-brand);
	color: #fff;
	font-size: 22px;
	font-weight: 700;
}

.org-subestrutura {
	display: grid;
	grid-template-columns: 190px 1fr;
	gap: 30px;
	align-items: center;
	position: relative;
}

	.org-subestrutura::before {
		content: "";
		position: absolute;
		left: -35px;
		top: 50%;
		width: 35px;
		border-top: 2px solid var(--azul);
	}

.org-coordenacao {
	background: var(--azul);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
}

.org-setores {
	display: flex;
	flex-direction: column;
	gap: 8px;
	position: relative;
	padding-left: 30px;
}

	.org-setores::before {
		content: "";
		position: absolute;
		left: 0;
		top: 21px;
		bottom: 19px;
		border-left: 2px solid var(--azul);
	}

.org-setor {
	position: relative;
	min-height: 42px;
	padding: 8px 12px;
	background: #fff;
	color: var(--texto);
	font-size: 13px;
	font-weight: 600;
}

	.org-setor::before {
		content: "";
		position: absolute;
		right: 100%;
		top: 50%;
		width: 30px;
		border-top: 2px solid var(--azul);
	}

.org-ramos {
	display: flex;
	flex-direction: column;
	gap: 18px;
	position: relative;
	padding-left: 30px;
}

	.org-ramos::before {
		content: "";
		position: absolute;
		left: 0;
		top: 28px;
		bottom: 28px;
		border-left: 2px solid var(--azul);
	}

.org-ramo {
	display: grid;
	grid-template-columns: 190px 1fr;
	gap: 30px;
	align-items: center;
	position: relative;
}

	.org-ramo::before {
		content: "";
		position: absolute;
		right: 100%;
		top: 50%;
		width: 30px;
		border-top: 2px solid var(--azul);
	}

	.org-ramo > .org-coordenacao {
		min-height: 56px;
	}

		.org-ramo > .org-coordenacao:only-child {
			grid-column: 1;
		}

.organograma-mobile-hint {
	display: none;
	margin: 15px 0 0;
	color: var(--texto);
	font-size: 13px;
}

.organograma-back {
	margin-top: 30px;
}

	.organograma-back a {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		color: var(--azul);
		font-weight: 700;
	}

		.organograma-back a:hover {
			color: var(--verde);
		}

@media (max-width:991.98px) {
	.organograma-section {
		padding: 50px 0 70px;
	}

	.organograma-scroll {
		padding: 20px 15px;
	}

	.organograma-mobile-hint {
		display: block;
	}
}

/* ===== VOLTAR ===== */

.emendas-voltar {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 44px;
	color: var(--azul);
	font-size: 0.82rem;
	font-weight: 800;
	transition: color 0.2s ease;
}

	.emendas-voltar i {
		transition: transform 0.2s ease;
	}

	.emendas-voltar:hover {
		color: var(--verde);
	}

		.emendas-voltar:hover i {
			transform: translateX(-4px);
		}


/* ===== CABEÇALHO ===== */

.emendas-header {
	margin-bottom: 28px;
}

	.emendas-header h2 {
		margin: 0 0 10px;
		color: var(--texto);
		font-size: 2rem;
		line-height: 1.2;
	}

	.emendas-header > div > p:last-child {
		max-width: 680px;
		margin: 0;
		color: #68737d;
		font-size: 0.92rem;
		line-height: 1.7;
	}


/* ===== FILTROS ===== */

.emendas-filtros {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin-bottom: 40px;
}

.emendas-filtro {
	min-width: 68px;
	padding: 9px 15px;
	border: 1px solid #dce5e1;
	border-radius: 999px;
	background: #fff;
	color: #4f5d58;
	font-family: inherit;
	font-size: 0.78rem;
	font-weight: 800;
	cursor: pointer;
	transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

	.emendas-filtro:hover {
		border-color: var(--azul);
		color: var(--azul);
	}

	.emendas-filtro.is-active {
		border-color: transparent;
		background: var(--gradient-brand);
		color: #fff;
	}


/* ===== EXERCÍCIO ===== */

.emendas-exercicio[hidden] {
	display: none !important;
}

.emendas-exercicio-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
}

	.emendas-exercicio-header span {
		display: block;
		margin-bottom: 3px;
		color: #7b8782;
		font-size: 0.7rem;
		font-weight: 800;
		letter-spacing: 0.07em;
		text-transform: uppercase;
	}

	.emendas-exercicio-header h3 {
		margin: 0;
		color: var(--texto);
		font-size: 1.7rem;
	}


/* ===== ESTADO SEM CONTEÚDO ===== */

.emendas-vazio {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 28px;
	border: 1px solid #dfe7e4;
	border-radius: 18px;
	background: #fff;
}

.emendas-vazio-icon {
	display: flex;
	flex: 0 0 52px;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: #e8f5ee;
	color: var(--azul);
	font-size: 1.2rem;
}

.emendas-vazio h4 {
	margin: 0 0 6px;
	color: var(--texto);
	font-size: 1rem;
	font-weight: 800;
}

.emendas-vazio p {
	max-width: 650px;
	margin: 0;
	color: #74807b;
	font-size: 0.84rem;
	line-height: 1.6;
}


/* =========================================================
   RESPONSIVO
========================================================= */

@media (max-width: 767.98px) {

	.emendas-voltar {
		margin-bottom: 34px;
	}

	.emendas-filtros {
		flex-wrap: nowrap;
		margin-right: -12px;
		padding-right: 12px;
		overflow-x: auto;
		scrollbar-width: none;
	}

		.emendas-filtros::-webkit-scrollbar {
			display: none;
		}

	.emendas-filtro {
		flex: 0 0 auto;
	}

	.emendas-vazio {
		align-items: flex-start;
	}
}

@media (max-width: 575.98px) {

	.emendas-header h2 {
		font-size: 1.65rem;
	}

	.emendas-vazio {
		padding: 22px;
	}
}

/* ===== EMENDAS - GRUPOS ===== */

.emendas-grupo + .emendas-grupo {
	margin-top: 30px;
}

.emendas-grupo-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 12px;
}

	.emendas-grupo-header h4 {
		margin: 0;
		color: var(--texto);
		font-size: 1rem;
		font-weight: 800;
	}

	.emendas-grupo-header span {
		color: #7b8782;
		font-size: 0.72rem;
		font-weight: 700;
	}


/* ===== TOTAL ===== */

.emendas-total {
	text-align: right;
}

	.emendas-total span {
		display: block;
		margin-bottom: 4px;
		color: #7b8782;
		font-size: 0.7rem;
		font-weight: 700;
	}

	.emendas-total strong {
		color: var(--azul);
		font-size: 1.15rem;
	}


/* ===== TABELA ===== */

.emendas-tabela-wrapper {
	overflow: hidden;
	border: 1px solid #dfe7e4;
	border-radius: 14px;
	background: #fff;
}

.emendas-tabela {
	width: 100%;
	border-collapse: collapse;
}

	.emendas-tabela th,
	.emendas-tabela td {
		padding: 15px 17px;
		text-align: left;
		vertical-align: middle;
	}

	.emendas-tabela thead {
		background: #f2f7f4;
	}

	.emendas-tabela th {
		color: var(--texto);
		font-size: 0.7rem;
		font-weight: 800;
		letter-spacing: 0.025em;
		text-transform: uppercase;
	}

	.emendas-tabela tbody tr + tr {
		border-top: 1px solid #e6ece9;
	}

	.emendas-tabela td {
		color: #68737d;
		font-size: 0.8rem;
		line-height: 1.5;
	}

		.emendas-tabela td:first-child {
			color: var(--texto);
			font-weight: 700;
		}

		.emendas-tabela td strong {
			color: var(--azul);
			white-space: nowrap;
		}

.emendas-processo {
	font-size: 0.75rem;
	white-space: nowrap;
}


@media (max-width: 767.98px) {

	.emendas-exercicio-header {
		align-items: flex-start;
	}

	.emendas-total {
		text-align: left;
	}

	.emendas-tabela-wrapper {
		overflow-x: auto;
	}

	.emendas-tabela {
		min-width: 760px;
	}
}

/* ===== EMENDAS PARLAMENTARES | HPARI ===== */
.emendas-page {
	background: #fff
}

.emendas-header {
	margin-bottom: 30px
}

	.emendas-header h2 {
		margin: 0 0 10px
	}

	.emendas-header > p {
		max-width: 740px;
		margin: 0;
		color: #65736e;
		line-height: 1.7
	}

.emendas-tabs {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 14px;
	margin-bottom: 32px
}

.emendas-tab {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	padding: 23px 25px;
	border: 1px solid #dce7e2;
	border-radius: 14px;
	background: #fff;
	color: var(--texto);
	font: inherit;
	font-weight: 800;
	text-align: left;
	cursor: pointer;
	transition: border-color .2s,background .2s,box-shadow .2s
}

	.emendas-tab span {
		font-size: 1.08rem
	}

	.emendas-tab small {
		color: #75817c;
		font-size: .78rem;
		font-weight: 600
	}

	.emendas-tab:hover {
		border-color: var(--azul);
		box-shadow: 0 8px 25px rgba(0,0,0,.05)
	}

	.emendas-tab.is-active {
		border-color: var(--azul);
		background: #eef8f7;
		box-shadow: inset 0 3px 0 var(--azul)
	}

		.emendas-tab.is-active span {
			color: var(--azul)
		}

	.emendas-tab:focus-visible, .emendas-ano-toggle:focus-visible {
		outline: 3px solid var(--azul);
		outline-offset: 3px
	}

.emendas-painel[hidden] {
	display: none !important
}

.emendas-painel-heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 18px;
	margin: 0 0 20px
}

	.emendas-painel-heading h3 {
		margin: 0;
		font-size: 1.65rem
	}

.emendas-painel-total {
	color: #74817a;
	font-size: .84rem
}

.emendas-ano {
	margin-bottom: 13px;
	border: 1px solid #e1e9e5;
	border-radius: 13px;
	background: #fff;
	overflow: hidden
}

	.emendas-ano[open] {
		border-color: #cddfd8;
		box-shadow: 0 10px 28px rgba(0,0,0,.035)
	}

.emendas-ano-toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 22px 24px;
	cursor: pointer;
	list-style: none
}

	.emendas-ano-toggle::-webkit-details-marker {
		display: none
	}

.emendas-ano-nome, .emendas-ano-meta {
	display: flex;
	align-items: center;
	gap: 13px
}

.emendas-ano-nome {
	font-size: 1.15rem;
	font-weight: 800
}

	.emendas-ano-nome > i {
		color: var(--azul)
	}

	.emendas-ano-nome small {
		font-size: .75rem;
		font-weight: 600;
		color: #77857d
	}

.emendas-ano-meta strong {
	font-size: .95rem;
	color: var(--texto)
}

.emendas-ano-meta > i {
	font-size: .9rem;
	color: var(--azul);
	transition: transform .2s
}

.emendas-ano[open] .emendas-ano-meta > i {
	transform: rotate(180deg)
}

.emendas-ano-body {
	border-top: 1px solid #e7eeea
}

.emendas-table-scroll {
	width: 100%;
	overflow-x: auto
}

.emendas-table {
	width: 100%;
	border-collapse: collapse;
	font-size: .88rem
}

	.emendas-table th {
		padding: 15px 20px;
		background: #f5f9f7;
		color: #53635c;
		font-size: .74rem;
		letter-spacing: .02em;
		text-align: left;
		white-space: nowrap
	}

	.emendas-table td {
		padding: 17px 20px;
		border-top: 1px solid #edf1ef;
		color: var(--texto);
		vertical-align: top
	}

	.emendas-table tbody tr:hover {
		background: #fbfdfc
	}

	.emendas-table th:nth-child(3), .emendas-table td:nth-child(3) {
		white-space: nowrap
	}

	.emendas-table .emendas-valor {
		font-weight: 750;
		color: #547f35
	}

.emendas-ano-rodape {
	display: flex;
	justify-content: space-between;
	gap: 15px;
	padding: 17px 22px;
	border-top: 1px solid #e1e9e5;
	background: #f8fbf9;
	font-size: .88rem
}

	.emendas-ano-rodape strong {
		color: var(--verde)
	}

.emendas-nota {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin: 28px 0 0;
	color: #728078;
	font-size: .8rem;
	line-height: 1.6
}

	.emendas-nota i {
		color: var(--azul)
	}

@media(max-width:767.98px) {
	.emendas-tabs {
		grid-template-columns: 1fr;
		gap: 9px
	}

	.emendas-tab {
		padding: 15px 18px;
		gap: 4px
	}

		.emendas-tab span {
			font-size: .95rem
		}

	.emendas-painel-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 6px
	}

	.emendas-ano-toggle {
		align-items: flex-start;
		padding: 17px 16px
	}

	.emendas-ano-nome {
		flex-wrap: wrap;
		gap: 8px;
		font-size: 1rem
	}

	.emendas-ano-meta {
		gap: 8px
	}

		.emendas-ano-meta strong {
			font-size: .78rem
		}

	.emendas-table {
		min-width: 690px
	}

		.emendas-table th, .emendas-table td {
			padding: 13px 14px
		}

	.emendas-ano-rodape {
		padding: 14px 16px
	}
}


/* =========================================================
   DEMONSTRAÇÕES CONTÁBEIS
========================================================= */

.demonstracoes-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.demonstracoes-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	width: fit-content;
	margin-top: 4px;
	color: var(--azul);
	font-size: .85rem;
	font-weight: 700;
	text-decoration: none;
	transition: color .2s ease, gap .2s ease;
}

	.demonstracoes-link:hover {
		gap: 11px;
		color: var(--verde);
	}

/* ===== DOCUMENTO ===== */

.demonstracoes-documento {
	display: flex;
	align-items: flex-start;
	gap: 17px;
	padding: 22px;
	border: 1px solid #dfe7e4;
	border-radius: 16px;
	background: #fff;
}


/* ===== ÍCONE ===== */

.demonstracoes-documento-icon {
	display: flex;
	flex: 0 0 48px;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 13px;
	background: #e8f5ee;
	color: var(--azul);
	font-size: 1.15rem;
}


/* ===== CONTEÚDO ===== */

.demonstracoes-documento-conteudo {
	min-width: 0;
}

.demonstracoes-documento h4 {
	margin: 1px 0 7px;
	color: var(--texto);
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1.4;
}

.demonstracoes-documento p {
	margin: 0 0 13px;
	color: #74807b;
	font-size: 0.8rem;
	line-height: 1.55;
}


/* ===== DOCUMENTO AINDA NÃO DISPONÍVEL ===== */

.demonstracoes-indisponivel {
	display: inline-flex;
	align-items: center;
	padding: 5px 9px;
	border-radius: 999px;
	background: #f1f4f2;
	color: #7b8782;
	font-size: 0.67rem;
	font-weight: 800;
}


/* =========================================================
   RESPONSIVO
========================================================= */

@media (max-width: 767.98px) {

	.demonstracoes-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 575.98px) {

	.demonstracoes-documento {
		padding: 19px;
	}
}

/* =========================================================
   INDICADORES ASSISTENCIAIS
========================================================= */

/* ===== TABELA ===== */

.indicadores-tabela-wrapper {
	overflow: hidden;
	border: 1px solid #dfe7e4;
	border-radius: 16px;
	background: #fff;
}

.indicadores-tabela {
	width: 100%;
	border-collapse: collapse;
}

	.indicadores-tabela th,
	.indicadores-tabela td {
		padding: 17px 20px;
		text-align: left;
		vertical-align: middle;
	}

	.indicadores-tabela thead {
		background: #f2f7f4;
	}

	.indicadores-tabela th {
		color: var(--texto);
		font-size: 0.74rem;
		font-weight: 800;
		letter-spacing: 0.03em;
		text-transform: uppercase;
	}

		.indicadores-tabela th:last-child,
		.indicadores-tabela td:last-child {
			width: 220px;
		}

	.indicadores-tabela tbody tr + tr {
		border-top: 1px solid #e7ece9;
	}

	.indicadores-tabela td {
		color: var(--texto);
		font-size: 0.86rem;
		font-weight: 700;
		line-height: 1.5;
	}


/* ===== DADO PENDENTE ===== */

.indicadores-pendente {
	display: inline-flex;
	align-items: center;
	padding: 5px 9px;
	border-radius: 999px;
	background: #f1f4f2;
	color: #7b8782;
	font-size: 0.67rem;
	font-weight: 800;
	white-space: nowrap;
}


/* ===== OBSERVAÇÃO ===== */

.indicadores-observacao {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-top: 18px;
	padding: 17px 18px;
	border-radius: 12px;
	background: #f2f7f4;
}

	.indicadores-observacao i {
		flex: 0 0 auto;
		margin-top: 2px;
		color: var(--azul);
		font-size: 1rem;
	}

	.indicadores-observacao p {
		margin: 0;
		color: #68737d;
		font-size: 0.8rem;
		line-height: 1.6;
	}


/* =========================================================
   RESPONSIVO
========================================================= */

@media (max-width: 767.98px) {

	.indicadores-tabela-wrapper {
		overflow-x: auto;
	}

	.indicadores-tabela {
		min-width: 620px;
	}
}

/* ===== PÁGINA AGENDAMENTO ===== */

.agendamento-section,
.agendamento-relacionadas {
	padding: 76px 0;
	background: #f6f8f7;
}

.agendamento-card {
	display: flex;
	gap: 21px;
	height: 100%;
	padding: 30px;
	border: 1px solid #dfe7e4;
	border-radius: 18px;
	background: #fff;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.agendamento-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
	}

.agendamento-card-destaque {
	border-color: transparent;
	background: var(--gradient-brand);
	color: #fff;
}

.agendamento-icon,
.agendamento-related-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: #e8f5ee;
	color: var(--azul);
}

.agendamento-card-destaque .agendamento-icon {
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
}

.agendamento-card-label {
	display: block;
	margin-bottom: 7px;
	color: var(--azul);
	font-size: 0.69rem;
	font-weight: 800;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.agendamento-card-destaque .agendamento-card-label {
	color: rgba(255, 255, 255, 0.72);
}

.agendamento-card h3 {
	margin: 0 0 10px;
	color: var(--texto);
}

.agendamento-card-destaque h3 {
	color: #fff;
}

.agendamento-card p {
	margin: 0 0 19px;
	color: #68737d;
	font-size: 0.88rem;
	line-height: 1.68;
}

.agendamento-card-destaque p {
	margin-bottom: 0;
	color: rgba(255, 255, 255, 0.78);
}

.agendamento-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--azul);
	font-size: 0.85rem;
	font-weight: 800;
}

	.agendamento-link span {
		transition: transform 0.2s ease;
	}

	.agendamento-link:hover span {
		transform: translateX(4px);
	}

.agendamento-related-card {
	display: flex;
	align-items: center;
	gap: 18px;
	height: 100%;
	padding: 26px;
	border: 1px solid #dfe7e4;
	border-radius: 17px;
	background: #fff;
	color: inherit;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.agendamento-related-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
		color: inherit;
	}

	.agendamento-related-card > div:nth-child(2) {
		flex: 1;
	}

	.agendamento-related-card h3 {
		margin: 0 0 5px;
		color: var(--texto);
	}

	.agendamento-related-card p {
		margin: 0;
		color: #68737d;
		font-size: 0.85rem;
		line-height: 1.55;
	}

	.agendamento-related-card > span {
		color: var(--verde);
		font-size: 1.2rem;
		transition: transform 0.2s ease;
	}

	.agendamento-related-card:hover > span {
		transform: translateX(4px);
	}

@media (max-width: 991.98px) {
	.agendamento-hero {
		padding: 62px 0;
	}

	.agendamento-section,
	.agendamento-relacionadas {
		padding: 58px 0;
	}

	.agendamento-relacionadas {
		padding-top: 0;
	}
}

@media (max-width: 575.98px) {
	.agendamento-card {
		flex-direction: column;
		padding: 24px;
	}

	.agendamento-related-card {
		padding: 23px;
	}
}
/* ===== PÁGINA RESULTADOS ===== */


.resultados-section,
.resultados-related {
	padding: 76px 0;
	background: #fff;
}

.resultados-section {
	background: #f6f8f7;
}


.resultados-login-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 42px;
	border-radius: 22px;
	background: var(--gradient-brand);
	color: #fff;
	box-shadow: 0 18px 42px rgba(23, 33, 43, 0.12);
}

.resultados-card-icon,
.resultados-related-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 15px;
}

.resultados-card-icon {
	margin-bottom: 28px;
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
}

.resultados-card-label {
	margin-bottom: 9px;
	color: rgba(255, 255, 255, 0.74);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.resultados-login-card h2 {
	margin: 0 0 14px;
	color: #fff;
	letter-spacing: -0.035em;
}

.resultados-login-card > p {
	max-width: 590px;
	margin: 0 0 27px;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.94rem;
	line-height: 1.7;
}

.resultados-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	width: fit-content;
	padding: 13px 20px;
	border-radius: 10px;
	background: #fff;
	color: var(--verde);
	font-size: 0.88rem;
	font-weight: 800;
	transition: transform 0.2s ease, background 0.2s ease;
}

	.resultados-btn:hover {
		transform: translateY(-2px);
		background: #e8f5ee;
		color: var(--verde);
	}

.resultados-security {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 27px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.15);
	color: rgba(255, 255, 255, 0.75);
	font-size: 0.8rem;
}

.resultados-info-card {
	height: 100%;
	padding: 35px;
	border: 1px solid #dfe7e4;
	border-radius: 22px;
	background: #fff;
}

.resultados-info-number {
	display: block;
	margin-bottom: 18px;
	color: var(--verde);
	font-size: 0.77rem;
	font-weight: 900;
	letter-spacing: 0.13em;
}

.resultados-info-card h3 {
	margin: 0 0 12px;
	color: var(--texto);
}

.resultados-info-card > p {
	margin: 0 0 25px;
	color: #68737d;
	font-size: 0.9rem;
	line-height: 1.7;
}

.resultados-steps {
	display: grid;
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

	.resultados-steps li {
		display: flex;
		align-items: center;
		gap: 13px;
		color: #59656f;
		font-size: 0.86rem;
		line-height: 1.5;
	}

		.resultados-steps li > span {
			display: flex;
			align-items: center;
			justify-content: center;
			flex: 0 0 auto;
			width: 30px;
			height: 30px;
			border-radius: 50%;
			background: #e8f5ee;
			color: var(--azul);
			font-size: 0.76rem;
			font-weight: 900;
		}

.resultados-support {
	padding: 64px 0;
	background: var(--gradient-brand);
	color: #fff;
}

.resultados-support-content > span {
	color: rgba(255, 255, 255, 0.75);
}

.resultados-support-content h2 {
	color: #fff;
}

.resultados-support-content p {
	max-width: 620px;
	margin: 13px 0 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.92rem;
	line-height: 1.7;
}

.resultados-support-actions {
	display: grid;
	gap: 12px;
}

.resultados-support-link {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 15px 17px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.09);
	color: #fff;
	transition: background 0.2s ease, transform 0.2s ease;
}

	.resultados-support-link:hover {
		transform: translateY(-2px);
		background: rgba(255, 255, 255, 0.15);
		color: #fff;
	}

	.resultados-support-link span {
		display: grid;
		gap: 2px;
		font-size: 0.88rem;
		font-weight: 800;
	}

	.resultados-support-link small {
		color: rgba(255, 255, 255, 0.65);
		font-size: 0.72rem;
		font-weight: 700;
	}

.resultados-related-card {
	display: flex;
	align-items: center;
	gap: 17px;
	height: 100%;
	padding: 27px;
	border: 1px solid #e2e8e4;
	border-radius: 18px;
	background: #fff;
	color: inherit;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.resultados-related-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
		color: inherit;
	}

.resultados-related-icon {
	flex: 0 0 auto;
	background: #e8f5ee;
	color: var(--azul);
}

.resultados-related-card > div:nth-child(2) {
	flex: 1;
}

.resultados-related-card h3 {
	margin: 0 0 6px;
	color: var(--texto);
}

.resultados-related-card p {
	margin: 0;
	color: #68737d;
	font-size: 0.85rem;
	line-height: 1.55;
}

.resultados-related-card > span {
	color: var(--verde);
	font-size: 1.25rem;
	transition: transform 0.2s ease;
}

.resultados-related-card:hover > span {
	transform: translateX(4px);
}

@media (max-width: 991.98px) {
	.resultados-hero {
		padding: 62px 0;
	}

	.resultados-section,
	.resultados-related {
		padding: 58px 0;
	}

	.resultados-support {
		padding: 55px 0;
	}

	.resultados-support-actions {
		margin-top: 8px;
	}
}

@media (max-width: 767.98px) {
	.resultados-login-card,
	.resultados-info-card,
	.resultados-related-card {
		padding: 25px;
		border-radius: 18px;
	}

	.resultados-btn {
		width: 100%;
	}

	.resultados-security {
		align-items: flex-start;
	}
}

/* =========================================================
   AGENDAMENTO - CONTEÚDO COMPLEMENTAR
========================================================= */


/* ===== TEXTO DO HEADING ===== */

.agendamento-heading > p {
	max-width: 700px;
	margin: 10px 0 0;
	color: #68737d;
	font-size: 0.92rem;
	line-height: 1.7;
}


/* =========================================================
   CARD PRINCIPAL / FLUXO SUS
========================================================= */

.agendamento-card-principal {
	margin-bottom: 20px;
}

.agendamento-card-conteudo {
	min-width: 0;
	flex: 1;
}

.agendamento-fluxo {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-top: 22px;
}

.agendamento-fluxo-item {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 18px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 13px;
	background: rgba(255, 255, 255, 0.08);
}

	.agendamento-fluxo-item > span {
		display: flex;
		flex: 0 0 34px;
		align-items: center;
		justify-content: center;
		width: 34px;
		height: 34px;
		border-radius: 50%;
		background: rgba(255, 255, 255, 0.14);
		color: #fff;
		font-size: 0.7rem;
		font-weight: 800;
	}

	.agendamento-fluxo-item h4 {
		margin: 2px 0 8px;
		color: #fff;
		font-size: 0.9rem;
		font-weight: 800;
	}

	.agendamento-fluxo-item p {
		margin: 0 0 9px;
		color: rgba(255, 255, 255, 0.78);
		font-size: 0.8rem;
		line-height: 1.6;
	}

		.agendamento-fluxo-item p:last-child {
			margin-bottom: 0;
		}

.agendamento-card-destaque .agendamento-link {
	color: #fff;
}

	.agendamento-card-destaque .agendamento-link:hover {
		color: #fff;
	}


/* =========================================================
   EXAMES
========================================================= */

.agendamento-exames {
	padding: 76px 0;
	background: #f6f8f7;
}

.agendamento-exames-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.agendamento-exame {
	display: flex;
	align-items: center;
	gap: 13px;
	min-height: 76px;
	padding: 17px 18px;
	border: 1px solid #dfe7e4;
	border-radius: 14px;
	background: #fff;
}

	.agendamento-exame > span {
		display: flex;
		flex: 0 0 31px;
		align-items: center;
		justify-content: center;
		width: 31px;
		height: 31px;
		border-radius: 50%;
		background: #e8f5ee;
		color: var(--azul);
		font-size: 0.66rem;
		font-weight: 800;
	}

	.agendamento-exame p {
		margin: 0;
		color: var(--texto);
		font-size: 0.82rem;
		font-weight: 800;
		line-height: 1.4;
	}

	.agendamento-exame small {
		display: block;
		margin-top: 2px;
		color: #7b8782;
		font-size: 0.68rem;
		font-weight: 600;
	}


/* =========================================================
   ORIENTAÇÕES
========================================================= */

.agendamento-orientacoes {
	margin-top: 28px;
	padding: 26px;
	border: 1px solid #dfe7e4;
	border-radius: 18px;
	background: #fff;
}

.agendamento-orientacoes-header {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 22px;
}

	.agendamento-orientacoes-header h3 {
		margin: 3px 0 0;
		color: var(--texto);
		font-size: 1.1rem;
	}

.agendamento-orientacoes-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	overflow: hidden;
	border: 1px solid #e4eae7;
	border-radius: 12px;
	background: #e4eae7;
}

	.agendamento-orientacoes-grid > div {
		padding: 17px 19px;
		background: #fff;
	}

	.agendamento-orientacoes-grid strong {
		display: block;
		margin-bottom: 5px;
		color: var(--texto);
		font-size: 0.82rem;
	}

	.agendamento-orientacoes-grid p {
		margin: 0;
		color: #68737d;
		font-size: 0.78rem;
		line-height: 1.55;
	}


/* =========================================================
   RESULTADOS
========================================================= */

.agendamento-resultados {
	padding: 76px 0;
	background: #fff;
}

.agendamento-tabela-wrapper {
	overflow: hidden;
	border: 1px solid #dfe7e4;
	border-radius: 16px;
	background: #fff;
}

.agendamento-tabela {
	width: 100%;
	border-collapse: collapse;
}

	.agendamento-tabela th,
	.agendamento-tabela td {
		padding: 16px 18px;
		text-align: left;
		vertical-align: top;
	}

	.agendamento-tabela thead {
		background: #f2f7f4;
	}

	.agendamento-tabela th {
		color: var(--texto);
		font-size: 0.72rem;
		font-weight: 800;
		letter-spacing: 0.025em;
		text-transform: uppercase;
	}

		.agendamento-tabela th:first-child {
			width: 23%;
		}

		.agendamento-tabela th:nth-child(2) {
			width: 18%;
		}

	.agendamento-tabela tbody tr + tr {
		border-top: 1px solid #e6ece9;
	}

	.agendamento-tabela td {
		color: #68737d;
		font-size: 0.8rem;
		line-height: 1.6;
	}

		.agendamento-tabela td:first-child {
			color: var(--texto);
			font-weight: 800;
		}

		.agendamento-tabela td strong {
			color: var(--azul);
			font-size: 0.76rem;
		}


/* ===== AVISO RESULTADOS ===== */

.agendamento-resultado-aviso {
	display: flex;
	align-items: center;
	gap: 17px;
	margin-top: 18px;
	padding: 20px 22px;
	border-radius: 14px;
	background: #f2f7f4;
}

	.agendamento-resultado-aviso h3 {
		margin: 0 0 5px;
		color: var(--texto);
		font-size: 0.9rem;
	}

	.agendamento-resultado-aviso p {
		margin: 0 0 8px;
		color: #68737d;
		font-size: 0.78rem;
		line-height: 1.5;
	}
.agendamento-resultado-grupo {
	margin-top: 42px;
}

	.agendamento-resultado-grupo:first-of-type {
		margin-top: 30px;
	}

.agendamento-resultado-grupo-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 18px;
}

	.agendamento-resultado-grupo-header h3 {
		margin: 5px 0 6px;
	}

	.agendamento-resultado-grupo-header p {
		margin: 0;
		max-width: 700px;
	}

@media (max-width: 767px) {
	.agendamento-resultado-grupo-header {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}
}

/* =========================================================
   INFORMAÇÕES
========================================================= */

.agendamento-informacoes {
	padding: 76px 0;
	background: #f6f8f7;
}

.agendamento-horarios {
	display: grid;
	gap: 9px;
	margin-top: 17px;
}

	.agendamento-horarios > div {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 20px;
		padding-bottom: 9px;
		border-bottom: 1px solid #e4eae7;
	}

	.agendamento-horarios span {
		color: #68737d;
		font-size: 0.78rem;
	}

	.agendamento-horarios strong {
		color: var(--texto);
		font-size: 0.78rem;
	}

.agendamento-nota {
	margin-top: 14px !important;
	font-size: 0.75rem !important;
}


/* ===== EM BREVE ===== */

.agendamento-em-breve {
	display: inline-flex;
	align-items: center;
	padding: 5px 10px;
	border-radius: 999px;
	background: #e8f5ee;
	color: var(--azul);
	font-size: 0.67rem;
	font-weight: 800;
}


/* =========================================================
   FAQ
========================================================= */

.agendamento-faq {
	padding: 76px 0;
	background: #fff;
}

.agendamento-faq-list {
	overflow: hidden;
	border: 1px solid #dfe7e4;
	border-radius: 18px;
	background: #fff;
}

.agendamento-faq-item + .agendamento-faq-item {
	border-top: 1px solid #e4eae7;
}

.agendamento-faq-toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	width: 100%;
	padding: 19px 22px;
	border: 0;
	background: #fff;
	color: var(--texto);
	font-family: inherit;
	font-size: 0.86rem;
	font-weight: 800;
	line-height: 1.5;
	text-align: left;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}

	.agendamento-faq-toggle:hover {
		background: #f7faf8;
		color: var(--azul);
	}

.agendamento-faq-icon {
	display: flex;
	flex: 0 0 32px;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #e8f5ee;
	color: var(--azul);
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1;
	transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease;
}

.agendamento-faq-content {
	display: grid;
	grid-template-rows: 0fr;
	opacity: 0;
	transition: grid-template-rows 0.35s ease, opacity 0.25s ease;
}

	.agendamento-faq-content > div {
		min-height: 0;
		overflow: hidden;
	}

	.agendamento-faq-content p {
		margin: 0 22px 13px;
		color: #68737d;
		font-size: 0.82rem;
		line-height: 1.7;
	}

		.agendamento-faq-content p:last-child {
			margin-bottom: 20px;
		}

	.agendamento-faq-content a {
		color: var(--azul);
		font-weight: 700;
	}

	.agendamento-faq-content .agendamento-em-breve {
		margin: 0 22px 20px;
	}


/* ===== FAQ ABERTO ===== */

.agendamento-faq-item.is-open .agendamento-faq-content {
	grid-template-rows: 1fr;
	opacity: 1;
}

.agendamento-faq-item.is-open .agendamento-faq-toggle {
	color: var(--azul);
	background: #f7faf8;
}

.agendamento-faq-item.is-open .agendamento-faq-icon {
	transform: rotate(45deg);
	background: var(--azul);
	color: #fff;
}


/* =========================================================
   RESPONSIVO
========================================================= */

@media (max-width: 991.98px) {

	.agendamento-exames-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.agendamento-fluxo {
		grid-template-columns: 1fr;
	}
}


@media (max-width: 767.98px) {

	.agendamento-exames,
	.agendamento-resultados,
	.agendamento-informacoes,
	.agendamento-faq {
		padding: 58px 0;
	}

	.agendamento-orientacoes-grid {
		grid-template-columns: 1fr;
	}

	.agendamento-tabela-wrapper {
		overflow-x: auto;
	}

	.agendamento-tabela {
		min-width: 760px;
	}
}


@media (max-width: 575.98px) {

	.agendamento-exames-grid {
		grid-template-columns: 1fr;
	}

	.agendamento-orientacoes {
		padding: 20px;
	}

	.agendamento-fluxo-item {
		flex-direction: column;
	}

	.agendamento-resultado-aviso {
		align-items: flex-start;
	}

	.agendamento-faq-toggle {
		padding: 17px 18px;
	}

	.agendamento-faq-content p {
		margin-right: 18px;
		margin-left: 18px;
	}

	.agendamento-faq-content .agendamento-em-breve {
		margin-right: 18px;
		margin-left: 18px;
	}
}

.resultados-exames-section {
	padding-top: 30px;
}

.resultados-exames-section-alt {
	background: #f7f9fa;
}

.resultados-exames-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 24px;
}

	.resultados-exames-header h2 {
		margin: 5px 0 8px;
	}

	.resultados-exames-header p {
		margin-bottom: 0;
		max-width: 720px;
	}

.resultados-exames-aviso {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	margin-top: 20px;
	padding: 20px;
	border: 1px solid var(--cor-borda);
	border-radius: 12px;
}

	.resultados-exames-aviso .icon-wrap {
		flex: 0 0 auto;
	}

	.resultados-exames-aviso strong {
		display: block;
		margin-bottom: 4px;
	}

	.resultados-exames-aviso p {
		margin: 0;
	}

.resultados-exames-orientacao {
	background: #f7f9fa;
}

@media(max-width:767px) {
	.resultados-exames-header {
		align-items: flex-start;
		flex-direction: column;
		gap: 18px;
	}
}
/* ===== PÁGINA TELECONSULTA ===== */


.teleconsulta-status {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 19px;
	padding: 7px 12px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.9);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

	.teleconsulta-status::before {
		content: "";
		width: 7px;
		height: 7px;
		border-radius: 50%;
		background: #fff;
		box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.13);
	}


.teleconsulta-section,
.teleconsulta-related {
	padding: 76px 0;
	background: #fff;
}

.teleconsulta-section {
	background: #f6f8f7;
}


.teleconsulta-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 30px;
	border: 1px solid #dfe7e4;
	border-radius: 20px;
	background: #fff;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.teleconsulta-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
	}

.teleconsulta-card-icon,
.teleconsulta-related-icon,
.teleconsulta-notice-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 15px;
	background: #e8f5ee;
	color: var(--azul);
}

.teleconsulta-card-icon {
	margin-bottom: 24px;
}

.teleconsulta-card-number {
	margin-bottom: 9px;
	color: var(--verde);
	font-size: 0.75rem;
	font-weight: 900;
	letter-spacing: 0.13em;
}

.teleconsulta-card h3 {
	margin: 0 0 11px;
	color: var(--texto);
}

.teleconsulta-card p {
	margin: 0 0 25px;
	color: #68737d;
	font-size: 0.88rem;
	line-height: 1.65;
}

.teleconsulta-validation {
	display: inline-flex;
	width: fit-content;
	margin-top: auto;
	padding: 6px 11px;
	border-radius: 999px;
	background: #f1f4f3;
	color: #78827d;
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
}

.teleconsulta-notice {
	padding: 64px 0;
	background: var(--gradient-brand);
}

.teleconsulta-notice-box {
	display: flex;
	align-items: flex-start;
	gap: 21px;
	padding: 32px;
	border: 1px solid rgba(255, 255, 255, 0.17);
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
}

.teleconsulta-notice-icon {
	flex: 0 0 auto;
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
}

.teleconsulta-notice-box > div:last-child > span {
	color: rgba(255, 255, 255, 0.68);
}

.teleconsulta-notice-box h2 {
	color: #fff;
}

.teleconsulta-notice-box p {
	max-width: 730px;
	margin: 13px 0 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.92rem;
	line-height: 1.7;
}

.teleconsulta-related-card {
	display: flex;
	align-items: center;
	gap: 17px;
	height: 100%;
	padding: 27px;
	border: 1px solid #e2e8e4;
	border-radius: 18px;
	background: #fff;
	color: inherit;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.teleconsulta-related-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
		color: inherit;
	}

.teleconsulta-related-icon {
	flex: 0 0 auto;
}

.teleconsulta-related-card > div:nth-child(2) {
	flex: 1;
}

.teleconsulta-related-card h3 {
	margin: 0 0 6px;
	color: var(--texto);
}

.teleconsulta-related-card p {
	margin: 0;
	color: #68737d;
	font-size: 0.85rem;
	line-height: 1.55;
}

.teleconsulta-related-card > span {
	color: var(--verde);
	font-size: 1.25rem;
	transition: transform 0.2s ease;
}

.teleconsulta-related-card:hover > span {
	transform: translateX(4px);
}

@media (max-width: 991.98px) {
	.teleconsulta-hero {
		padding: 62px 0;
	}

	.teleconsulta-section,
	.teleconsulta-related {
		padding: 58px 0;
	}

	.teleconsulta-notice {
		padding: 54px 0;
	}
}

@media (max-width: 767.98px) {
	.teleconsulta-card,
	.teleconsulta-related-card,
	.teleconsulta-notice-box {
		padding: 24px;
		border-radius: 17px;
	}

	.teleconsulta-notice-box {
		flex-direction: column;
	}
}
/* ===== PÁGINA OUVIDORIA ===== */


.ouvidoria-section {
	padding: 76px 0;
	background: #f6f8f7;
}


.ouvidoria-form-card,
.ouvidoria-contact-card,
.ouvidoria-sic-card {
	border: 1px solid #dfe7e4;
	border-radius: 20px;
	background: #fff;
}

.ouvidoria-form-card {
	padding: 34px;
}

.ouvidoria-form {
	display: grid;
	gap: 25px;
}

.ouvidoria-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.ouvidoria-field {
	display: grid;
	gap: 8px;
	transition: opacity 0.2s ease;
}

.ouvidoria-field-full {
	grid-column: 1 / -1;
}

.ouvidoria-field label {
	color: var(--texto);
	font-size: 0.82rem;
	font-weight: 800;
}

	.ouvidoria-field label strong {
		color: var(--verde);
	}

.ouvidoria-field input,
.ouvidoria-field select,
.ouvidoria-field textarea {
	width: 100%;
	border: 1px solid #d9e1de;
	border-radius: 10px;
	background: #fff;
	color: var(--texto);
	font: inherit;
	font-size: 0.88rem;
	outline: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.ouvidoria-field input,
.ouvidoria-field select {
	height: 48px;
	padding: 0 14px;
}

.ouvidoria-field textarea {
	min-height: 165px;
	padding: 14px;
	resize: vertical;
}

	.ouvidoria-field input:focus,
	.ouvidoria-field select:focus,
	.ouvidoria-field textarea:focus {
		border-color: var(--azul);
		box-shadow: 0 0 0 3px rgba(20, 110, 94, 0.1);
	}

.ouvidoria-field small {
	color: #7b8580;
	font-size: 0.74rem;
	line-height: 1.5;
}

.ouvidoria-field-disabled {
	opacity: 0.45;
}

.ouvidoria-types {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.ouvidoria-type {
	position: relative;
	cursor: pointer;
}

	.ouvidoria-type input {
		position: absolute;
		opacity: 0;
		pointer-events: none;
	}

	.ouvidoria-type span {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 40px;
		padding: 0 15px;
		border: 1px solid #dce4e1;
		border-radius: 999px;
		background: #fff;
		color: #63706a;
		font-size: 0.78rem;
		font-weight: 800;
		transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
	}

	.ouvidoria-type input:checked + span {
		border-color: var(--azul);
		background: #e8f5ee;
		color: var(--azul);
	}

.ouvidoria-check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	cursor: pointer;
}

	.ouvidoria-check input {
		flex: 0 0 auto;
		width: 17px;
		height: 17px;
		margin-top: 2px;
		accent-color: var(--azul);
	}

	.ouvidoria-check span {
		color: #59656f;
		font-size: 0.82rem;
		line-height: 1.55;
	}

.ouvidoria-consent a {
	color: var(--azul);
	font-weight: 800;
	text-decoration: underline;
}

.ouvidoria-form-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding-top: 22px;
	border-top: 1px solid #e2e8e4;
}

	.ouvidoria-form-footer > span {
		color: #7b8580;
		font-size: 0.74rem;
		line-height: 1.5;
	}

.ouvidoria-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	flex: 0 0 auto;
	min-height: 46px;
	padding: 0 19px;
	border: 0;
	border-radius: 10px;
	background: var(--gradient-brand);
	color: #fff;
	font-size: 0.82rem;
	font-weight: 800;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

	.ouvidoria-submit:hover {
		transform: translateY(-2px);
		box-shadow: 0 10px 23px rgba(23, 33, 43, 0.14);
	}

.ouvidoria-sidebar {
	display: grid;
	gap: 18px;
}

.ouvidoria-contact-card {
	padding: 28px;
}

	.ouvidoria-contact-card h3,
	.ouvidoria-sic-card h3 {
		margin: 0 0 22px;
		color: var(--texto);
	}

.ouvidoria-contact-link {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 15px 0;
	border-top: 1px solid #e7ecea;
	color: inherit;
}

	.ouvidoria-contact-link:hover {
		color: inherit;
	}

.ouvidoria-contact-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 43px;
	height: 43px;
	border-radius: 12px;
	background: #e8f5ee;
	color: var(--azul);
}

.ouvidoria-contact-link > span {
	display: grid;
	gap: 2px;
	color: var(--texto);
	font-size: 0.83rem;
	font-weight: 800;
}

.ouvidoria-contact-link small {
	color: #7b8580;
	font-size: 0.71rem;
	font-weight: 700;
}

.ouvidoria-sic-card {
	display: block;
	padding: 28px;
	color: inherit;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.ouvidoria-sic-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23, 33, 43, 0.08);
		color: inherit;
	}

	.ouvidoria-sic-card h3 {
		margin-bottom: 10px;
	}

	.ouvidoria-sic-card p {
		margin: 0 0 20px;
		color: #68737d;
		font-size: 0.85rem;
		line-height: 1.6;
	}

	.ouvidoria-sic-card strong {
		color: var(--verde);
		font-size: 0.8rem;
		font-weight: 850;
	}

.ouvidoria-confidentiality {
	padding: 64px 0;
	background: var(--gradient-brand);
}

.ouvidoria-confidentiality-box {
	display: flex;
	align-items: flex-start;
	gap: 21px;
	padding: 31px;
	border: 1px solid rgba(255, 255, 255, 0.17);
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
}

.ouvidoria-confidentiality-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 54px;
	height: 54px;
	border-radius: 15px;
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
}

.ouvidoria-confidentiality-box > div:last-child > span {
	color: rgba(255, 255, 255, 0.68);
}

.ouvidoria-confidentiality-box h2 {
	color: #fff;
}

.ouvidoria-confidentiality-box p {
	max-width: 730px;
	margin: 12px 0 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.92rem;
	line-height: 1.7;
}

@media (max-width: 991.98px) {
	.ouvidoria-hero {
		padding: 62px 0;
	}

	.ouvidoria-section {
		padding: 58px 0;
	}

	.ouvidoria-confidentiality {
		padding: 54px 0;
	}
}

@media (max-width: 767.98px) {
	.ouvidoria-form-card,
	.ouvidoria-contact-card,
	.ouvidoria-sic-card,
	.ouvidoria-confidentiality-box {
		padding: 24px;
		border-radius: 17px;
	}

	.ouvidoria-fields {
		grid-template-columns: 1fr;
	}

	.ouvidoria-form-footer {
		align-items: stretch;
		flex-direction: column;
	}

	.ouvidoria-submit {
		width: 100%;
	}

	.ouvidoria-confidentiality-box {
		flex-direction: column;
	}
}
/* ===== PÁGINA INTERNA DE NOTÍCIA ===== */
.noticia-interna {
	padding: 70px 0 78px;
	background: #f6f8f7;
}

.noticia-interna-topo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 28px;
}

	.noticia-interna-topo .noticia-meta {
		margin-bottom: 0;
	}

.noticia-voltar {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--azul);
	font-size: 0.87rem;
	font-weight: 800;
	transition: color 0.2s ease;
}

	.noticia-voltar span {
		transition: transform 0.2s ease;
	}

	.noticia-voltar:hover {
		color: var(--verde);
	}

		.noticia-voltar:hover span {
			transform: translateX(-4px);
		}

.noticia-interna-artigo {
	max-width: 1080px;
	margin: 0 auto;
	overflow: hidden;
	border: 1px solid #dfe7e4;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 14px 40px rgba(23, 33, 43, 0.07);
}

.noticia-interna-imagem {
	display: flex;
	justify-content: center;
	margin: 0;
	padding: 40px;
	background: #e8f5ee;
}

	.noticia-interna-imagem img {
		display: block;
		width: 100%;
		max-width: 720px;
		height: auto;
		object-fit: contain;
	}

.noticia-interna-conteudo {
	max-width: 820px;
	margin: 0 auto;
	padding: 46px;
}

	.noticia-interna-conteudo p {
		margin: 0 0 22px;
		color: #68737d;
		font-size: 1rem;
		line-height: 1.8;
	}

		.noticia-interna-conteudo p:last-child {
			margin-bottom: 0;
		}

	.noticia-interna-conteudo .noticia-interna-resumo {
		color: var(--texto);
		font-size: 1.15rem;
		font-weight: 600;
		line-height: 1.75;
	}

.noticia-relacionadas {
	padding: 76px 0;
	background: #fff;
}

@media (max-width: 991.98px) {
	.noticia-interna {
		padding: 58px 0 64px;
	}

	.noticia-relacionadas {
		padding: 58px 0;
	}
}

@media (max-width: 767.98px) {
	.noticia-interna-topo {
		align-items: flex-start;
		flex-direction: column;
		gap: 16px;
	}
	.noticia-interna-imagem {
		padding: 20px;
	}

	.noticia-interna-artigo {
		border-radius: 18px;
	}

	.noticia-interna-conteudo {
		padding: 28px 23px;
	}

		.noticia-interna-conteudo .noticia-interna-resumo {
			font-size: 1.05rem;
		}
}
/* ========================================
   PROGRAMA DE RESIDENTES
======================================== */

.residentes-apresentacao {
	padding-top: 80px;
	padding-bottom: 80px;
}

.residentes-image {
	display: block;
	width: 100%;
	height: 470px;
	object-fit: cover;
	border-radius: 18px;
}

.residentes-section-light {
	padding-top: 80px;
	padding-bottom: 80px;
	background: #f5f8f7;
}

.residentes-programa-grid {
	margin-top: 36px;
}

.residentes-programa-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	height: 100%;
	min-height: 260px;
	cursor: default;
}

	.residentes-programa-card:hover {
		transform: none;
	}

	.residentes-programa-card .icon-wrap {
		margin-bottom: 24px;
	}

	.residentes-programa-card h3 {
		margin-bottom: 12px;
	}

	.residentes-programa-card p {
		margin-bottom: 0;
	}

.residentes-processo {
	padding-top: 80px;
	padding-bottom: 80px;
}

	.residentes-processo .section-heading {
		margin-bottom: 32px;
	}

.residentes-notice {
	display: flex;
	align-items: flex-start;
	gap: 22px;
	height: 100%;
	padding: 30px;
	border: 1px solid #dde5e1;
	border-radius: 18px;
	background: #fff;
}

	.residentes-notice .icon-wrap {
		display: flex;
		flex: 0 0 auto;
		align-items: center;
		justify-content: center;
		width: 48px;
		height: 48px;
		border-radius: 12px;
		background: rgba(120, 169, 68, 0.12);
		color: var(--verde);
		font-size: 1.25rem;
	}

.residentes-notice-content {
	flex: 1;
}

.residentes-notice h3 {
	margin: 0 0 14px;
}

.residentes-notice p {
	margin-bottom: 14px;
}

	.residentes-notice p:last-child {
		margin-bottom: 0;
	}

.residentes-contact {
	display: flex;
	flex-direction: column;
	height: 100%;
}

	.residentes-contact h3 {
		margin-top: 18px;
		margin-bottom: 12px;
	}

	.residentes-contact ul {
		display: grid;
		gap: 14px;
		margin: 6px 0 24px;
	}

	.residentes-contact li {
		display: flex;
		align-items: flex-start;
		gap: 10px;
	}

		.residentes-contact li i {
			flex: 0 0 auto;
			margin-top: 2px;
			color: var(--verde);
		}

		.residentes-contact li a,
		.residentes-contact li span {
			color: inherit;
			text-decoration: none;
		}

		.residentes-contact li a {
			transition: color 0.2s ease;
		}

			.residentes-contact li a:hover {
				color: var(--verde);
			}

.residentes-contact-button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin-top: auto;
}

/* ========================================
   RESPONSIVO
======================================== */

@media (max-width: 991.98px) {

	.residentes-apresentacao,
	.residentes-section-light,
	.residentes-processo {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.residentes-image {
		height: 380px;
	}

	.residentes-programa-card {
		min-height: 240px;
	}

	.residentes-notice {
		padding: 26px;
	}
}

@media (max-width: 767.98px) {

	.residentes-programa-grid {
		margin-top: 28px;
	}

	.residentes-programa-card {
		min-height: auto;
	}

	.residentes-notice {
		flex-direction: column;
	}
}

@media (max-width: 575.98px) {

	.residentes-apresentacao,
	.residentes-section-light,
	.residentes-processo {
		padding-top: 48px;
		padding-bottom: 48px;
	}

	.residentes-image {
		height: 280px;
		border-radius: 14px;
	}

	.residentes-notice {
		padding: 22px;
	}

	.residentes-contact {
		padding: 22px;
	}

	.cta-section .px-5 {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}
}
/* ========================================
   RECURSOS ACADÊMICOS
======================================== */

.residentes-recursos {
	padding-top: 80px;
	padding-bottom: 80px;
}

.residentes-recursos-grid {
	margin-top: 36px;
}

.residentes-recurso-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	height: 100%;
	min-height: 290px;
	color: inherit;
	text-decoration: none;
}

	.residentes-recurso-card:hover {
		color: inherit;
	}

	.residentes-recurso-card .icon-wrap {
		margin-bottom: 24px;
	}

.residentes-recurso-content {
	flex: 1;
}

.residentes-recurso-card h3 {
	margin-bottom: 12px;
}

.residentes-recurso-card p {
	margin-bottom: 22px;
}

.residentes-recurso-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: auto;
	color: var(--verde);
	font-weight: 600;
	transition: gap 0.2s ease;
}

.residentes-recurso-card:hover .residentes-recurso-link {
	gap: 12px;
}

.residentes-recurso-link i {
	font-size: 0.9rem;
}

@media (max-width: 991.98px) {

	.residentes-recursos {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.residentes-recurso-card {
		min-height: 270px;
	}
}

@media (max-width: 767.98px) {

	.residentes-recursos-grid {
		margin-top: 28px;
	}

	.residentes-recurso-card {
		min-height: auto;
	}
}

@media (max-width: 575.98px) {

	.residentes-recursos {
		padding-top: 48px;
		padding-bottom: 48px;
	}
}
/* ========================================
   ESPECIALIZAÇÕES
======================================== */

.residentes-especializacoes {
	padding-top: 80px;
	padding-bottom: 80px;
	background: #f5f8f7;
}

.residentes-especializacoes-grid {
	margin-top: 36px;
}

.residentes-especializacao-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	height: 100%;
	min-height: 500px;
	color: inherit;
	cursor: default;
}

	.residentes-especializacao-card:hover {
		color: inherit;
	}

.residentes-especializacao-topo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 24px;
}

	.residentes-especializacao-topo .icon-wrap {
		margin-bottom: 0;
	}

.residentes-especializacao-tag {
	display: inline-flex;
	align-items: center;
	padding: 7px 13px;
	border-radius: 50px;
	background: rgba(33, 161, 188, 0.1);
	color: var(--azul);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.residentes-especializacao-content {
	margin-bottom: 22px;
}

	.residentes-especializacao-content h3 {
		margin-bottom: 14px;
	}

	.residentes-especializacao-content p {
		margin-bottom: 14px;
	}

		.residentes-especializacao-content p:last-child {
			margin-bottom: 0;
		}

.residentes-especializacao-lista {
	display: grid;
	gap: 13px;
	width: 100%;
	margin: 0 0 26px;
	padding: 22px 0 0;
	border-top: 1px solid #dde5e1;
	list-style: none;
}

	.residentes-especializacao-lista li {
		display: flex;
		align-items: flex-start;
		gap: 10px;
	}

	.residentes-especializacao-lista i {
		flex: 0 0 auto;
		margin-top: 2px;
		color: var(--verde);
	}

.residentes-especializacao-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: auto;
	color: var(--verde);
	font-weight: 600;
	text-decoration: none;
	transition: gap 0.2s ease, color 0.2s ease;
}

	.residentes-especializacao-link:hover {
		gap: 12px;
		color: var(--azul);
	}

	.residentes-especializacao-link i {
		font-size: 0.9rem;
	}

/* ========================================
   RESPONSIVO
======================================== */

@media (max-width: 991.98px) {

	.residentes-especializacoes {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.residentes-especializacao-card {
		min-height: auto;
	}
}

@media (max-width: 767.98px) {

	.residentes-especializacoes-grid {
		margin-top: 28px;
	}
}

@media (max-width: 575.98px) {

	.residentes-especializacoes {
		padding-top: 48px;
		padding-bottom: 48px;
	}

	.residentes-especializacao-topo {
		align-items: flex-start;
		gap: 16px;
	}

	.residentes-especializacao-tag {
		font-size: 0.68rem;
	}
}
/* ========================================
   SIMULADOS
======================================== */

.residentes-simulados {
	padding-top: 80px;
	padding-bottom: 80px;
}

.residentes-simulados-header {
	margin-bottom: 36px;
}

.residentes-simulados-intro {
	max-width: 430px;
	margin: 0 0 6px auto;
	color: #66736d;
}

.residentes-simulado-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	height: 100%;
	min-height: 370px;
	color: inherit;
	cursor: default;
}

	.residentes-simulado-card:hover {
		color: inherit;
	}

.residentes-simulado-topo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 24px;
}

	.residentes-simulado-topo .icon-wrap {
		margin-bottom: 0;
	}

.residentes-simulado-ano {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 7px 13px;
	border-radius: 50px;
	background: rgba(33, 161, 188, 0.1);
	color: var(--azul);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.05em;
}

.residentes-simulado-content {
	flex: 1;
}

.residentes-simulado-edicao {
	display: block;
	margin-bottom: 8px;
	color: var(--verde);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.residentes-simulado-card h3 {
	margin-bottom: 13px;
}

.residentes-simulado-card p {
	margin-bottom: 22px;
}

.residentes-simulado-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: auto;
	color: var(--verde);
	font-weight: 600;
	text-decoration: none;
	transition: gap 0.2s ease, color 0.2s ease;
}

	.residentes-simulado-link:hover {
		gap: 12px;
		color: var(--azul);
	}

	.residentes-simulado-link i {
		font-size: 0.9rem;
	}

.residentes-simulados-destaque {
	display: flex;
	align-items: center;
	gap: 22px;
	margin-top: 36px;
	padding: 28px 30px;
	border: 1px solid #dde5e1;
	border-radius: 18px;
	background: #f5f8f7;
}

.residentes-simulados-destaque-icon {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 14px;
	background: rgba(33, 161, 188, 0.1);
	color: var(--azul);
	font-size: 1.35rem;
}

.residentes-simulados-destaque h3 {
	margin-bottom: 7px;
}

.residentes-simulados-destaque p {
	margin-bottom: 0;
}

/* ========================================
   RESPONSIVO
======================================== */

@media (max-width: 991.98px) {

	.residentes-simulados {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.residentes-simulados-intro {
		max-width: none;
		margin-left: 0;
	}

	.residentes-simulado-card {
		min-height: 340px;
	}
}

@media (max-width: 767.98px) {

	.residentes-simulados-header {
		margin-bottom: 28px;
	}

	.residentes-simulado-card {
		min-height: auto;
	}

	.residentes-simulados-destaque {
		align-items: flex-start;
	}
}

@media (max-width: 575.98px) {

	.residentes-simulados {
		padding-top: 48px;
		padding-bottom: 48px;
	}

	.residentes-simulados-destaque {
		flex-direction: column;
		padding: 22px;
	}
}
/* ========================================
   RESIDÊNCIA MÉDICA
======================================== */

.residentes-residencia {
	padding-top: 80px;
	padding-bottom: 80px;
}

.residentes-residencia-selos {
	display: grid;
	gap: 16px;
	margin-top: 30px;
}

.residentes-residencia-selo {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 18px 20px;
	border: 1px solid #dde5e1;
	border-radius: 14px;
	background: #fff;
}

	.residentes-residencia-selo > i {
		flex: 0 0 auto;
		margin-top: 2px;
		color: var(--verde);
		font-size: 1.3rem;
	}

	.residentes-residencia-selo div {
		display: flex;
		flex-direction: column;
		gap: 4px;
	}

	.residentes-residencia-selo strong {
		color: #16241d;
		font-size: 0.95rem;
	}

	.residentes-residencia-selo span {
		color: #66736d;
		font-size: 0.9rem;
		line-height: 1.6;
	}

.residentes-residencia-painel {
	height: 100%;
	padding: 34px;
	border-radius: 20px;
	background: #f5f8f7;
}

.residentes-residencia-painel-topo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 26px;
}

	.residentes-residencia-painel-topo .icon-wrap {
		margin-bottom: 0;
	}

	.residentes-residencia-painel-topo span {
		padding: 7px 13px;
		border-radius: 50px;
		background: rgba(33, 161, 188, 0.1);
		color: var(--azul);
		font-size: 0.72rem;
		font-weight: 700;
		letter-spacing: 0.05em;
		text-transform: uppercase;
	}

.residentes-residencia-painel h3 {
	margin-bottom: 14px;
}

.residentes-residencia-painel > p {
	margin-bottom: 24px;
}

.residentes-residencia-lista {
	display: grid;
	gap: 13px;
	margin: 0;
	padding: 22px 0 0;
	border-top: 1px solid #dde5e1;
	list-style: none;
}

	.residentes-residencia-lista li {
		display: flex;
		align-items: flex-start;
		gap: 10px;
	}

	.residentes-residencia-lista i {
		flex: 0 0 auto;
		margin-top: 2px;
		color: var(--verde);
	}

.residentes-residencia-grid {
	margin-top: 46px;
}

.residentes-residencia-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	height: 100%;
	min-height: 260px;
	cursor: default;
}

	.residentes-residencia-card:hover {
		transform: none;
	}

	.residentes-residencia-card .icon-wrap {
		margin-bottom: 24px;
	}

	.residentes-residencia-card h3 {
		margin-bottom: 12px;
	}

	.residentes-residencia-card p {
		margin-bottom: 0;
	}

/* ========================================
   RESPONSIVO
======================================== */

@media (max-width: 991.98px) {

	.residentes-residencia {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.residentes-residencia-painel {
		padding: 28px;
	}

	.residentes-residencia-card {
		min-height: 240px;
	}
}

@media (max-width: 767.98px) {

	.residentes-residencia-grid {
		margin-top: 36px;
	}

	.residentes-residencia-card {
		min-height: auto;
	}
}

@media (max-width: 575.98px) {

	.residentes-residencia {
		padding-top: 48px;
		padding-bottom: 48px;
	}

	.residentes-residencia-painel {
		padding: 22px;
		border-radius: 16px;
	}

	.residentes-residencia-painel-topo {
		align-items: flex-start;
		flex-direction: column;
		gap: 16px;
	}

	.residentes-residencia-selo {
		padding: 16px;
	}
}
/* ========================================
   FORMAÇÃO PRÁTICA E TEÓRICA
======================================== */

.residentes-formacao {
	margin-top: 80px;
	padding-top: 80px;
	border-top: 1px solid #dde5e1;
}

.residentes-formacao-grid {
	margin-top: 36px;
}

.residentes-formacao-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	height: 100%;
	min-height: 440px;
	cursor: default;
}

.residentes-formacao-topo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 24px;
}

	.residentes-formacao-topo .icon-wrap {
		margin-bottom: 0;
	}

	.residentes-formacao-topo span {
		padding: 7px 13px;
		border-radius: 50px;
		background: rgba(33, 161, 188, 0.1);
		color: var(--azul);
		font-size: 0.72rem;
		font-weight: 700;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

.residentes-formacao-card h3 {
	margin-bottom: 12px;
}

.residentes-formacao-card > p {
	margin-bottom: 24px;
}

.residentes-formacao-lista {
	display: grid;
	gap: 13px;
	width: 100%;
	margin: auto 0 0;
	padding: 22px 0 0;
	border-top: 1px solid #dde5e1;
	list-style: none;
}

	.residentes-formacao-lista li {
		display: flex;
		align-items: flex-start;
		gap: 10px;
	}

	.residentes-formacao-lista i {
		flex: 0 0 auto;
		margin-top: 2px;
		color: var(--verde);
	}

/* ========================================
   PRECEPTORIA
======================================== */

.residentes-preceptoria {
	margin-top: 80px;
	padding: 64px;
	border-radius: 24px;
	background: #f5f8f7;
}

.residentes-preceptoria-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	margin-bottom: 24px;
	border-radius: 16px;
	background: rgba(33, 161, 188, 0.1);
	color: var(--azul);
	font-size: 1.45rem;
}

.residentes-preceptoria h2 {
	margin-bottom: 18px;
}

.residentes-preceptoria-pontos {
	display: grid;
	gap: 18px;
}

.residentes-preceptoria-item {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	padding: 22px;
	border: 1px solid #dde5e1;
	border-radius: 16px;
	background: #fff;
}

	.residentes-preceptoria-item > i {
		display: flex;
		flex: 0 0 auto;
		align-items: center;
		justify-content: center;
		width: 42px;
		height: 42px;
		border-radius: 12px;
		background: rgba(33, 161, 188, 0.1);
		color: var(--azul);
		font-size: 1.05rem;
	}

	.residentes-preceptoria-item h3 {
		margin-bottom: 6px;
		font-size: 1.05rem;
	}

	.residentes-preceptoria-item p {
		margin-bottom: 0;
	}

/* ========================================
   RESPONSIVO
======================================== */

@media (max-width: 991.98px) {

	.residentes-formacao {
		margin-top: 64px;
		padding-top: 64px;
	}

	.residentes-preceptoria {
		margin-top: 64px;
		padding: 40px;
	}

	.residentes-formacao-card {
		min-height: auto;
	}
}

@media (max-width: 575.98px) {

	.residentes-formacao {
		margin-top: 48px;
		padding-top: 48px;
	}

	.residentes-preceptoria {
		margin-top: 48px;
		padding: 24px;
		border-radius: 18px;
	}

	.residentes-preceptoria-item {
		padding: 18px;
	}

		.residentes-preceptoria-item > i {
			width: 38px;
			height: 38px;
		}
}
/* =========================================================
   PÁGINA DE MÉDICOS — NOVA LISTAGEM
========================================================= */

.medicos-listagem {
	padding: 70px 0 90px;
	background: #f6f8f7;
}

/* Corrige o subtítulo dentro do hero */
.medicos-page .page-hero .subtitulo_azul {
	margin-bottom: 12px;
	color: rgba(255, 255, 255, 0.88);
}

.medicos-page .page-hero h1 {
	max-width: 760px;
}

.medicos-page .page-hero p {
	max-width: 720px;
}

/* ===== BUSCA E FILTROS ===== */

.medicos-ferramentas {
	display: grid;
	gap: 22px;
	margin-bottom: 32px;
}

.medicos-busca {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 760px;
}

	.medicos-busca > i {
		position: absolute;
		left: 19px;
		z-index: 1;
		color: #73807b;
		font-size: 1rem;
		pointer-events: none;
	}

	.medicos-busca input {
		width: 100%;
		height: 56px;
		padding: 13px 52px;
		border: 1px solid #dce5e1;
		border-radius: 13px;
		background: #fff;
		color: var(--texto);
		font-family: inherit;
		font-size: 0.9rem;
		outline: none;
		transition: border-color 0.2s ease, box-shadow 0.2s ease;
	}

		.medicos-busca input::placeholder {
			color: #87928e;
		}

		.medicos-busca input:focus {
			border-color: var(--azul);
			box-shadow: 0 0 0 4px rgba(24, 152, 183, 0.12);
		}

.medicos-busca-limpar {
	position: absolute;
	right: 13px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #73807b;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}

	.medicos-busca-limpar:hover {
		background: #edf3f0;
		color: var(--texto);
	}

/* ===== FILTROS ===== */

.medicos-filtros {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.medicos-filtro {
	padding: 9px 16px;
	border: 1px solid #dce5e1;
	border-radius: 999px;
	background: #fff;
	color: #4f5d58;
	font-family: inherit;
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
	transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

	.medicos-filtro:hover {
		border-color: var(--azul);
		color: var(--azul);
	}

	.medicos-filtro.is-active {
		border-color: transparent;
		background: var(--gradient-brand);
		color: #fff;
	}

.medicos-contador {
	margin: 0 0 22px;
	color: #6f7b77;
	font-size: 0.82rem;
	font-weight: 600;
}

/* ===== GRID ===== */

.medicos-item {
	display: flex;
}

	.medicos-item[hidden] {
		display: none !important;
	}

/* ===== CARD ===== */

.medicos-profissional-card {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	min-height: 285px;
	padding: 25px;
	border: 1px solid #dfe7e4;
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 7px 22px rgba(23, 33, 43, 0.035);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.medicos-profissional-card:hover {
		transform: translateY(-5px);
		border-color: rgba(24, 152, 183, 0.45);
		box-shadow: 0 16px 36px rgba(23, 33, 43, 0.09);
	}

.medicos-profissional-topo {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 27px;
}

/* Sobrescreve o avatar antigo */
.medicos-profissional-card .medicos-avatar {
	display: inline-flex;
	flex: 0 0 54px;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: var(--gradient-brand);
	color: #fff;
	font-size: 0.87rem;
	font-weight: 800;
	letter-spacing: 0.03em;
}

/* Etiqueta da especialidade */

.medicos-categorias {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 6px;
	max-width: 68%;
}

.medicos-categoria {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: 100%;
	padding: 6px 10px;
	border-radius: 999px;
	background: #eaf4ef;
	color: var(--verde);
	font-size: 0.67rem;
	font-weight: 800;
	line-height: 1.25;
	text-align: center;
	transition: background 0.25s ease, color 0.25s ease;
}

	.medicos-categoria.is-match {
		background: var(--gradient-brand);
		color: #fff;
	}

/* ===== CONTEÚDO DO CARD ===== */

.medicos-profissional-conteudo {
	margin-bottom: 26px;
}

	.medicos-profissional-conteudo h2 {
		margin: 0 0 8px;
		color: var(--texto);
		font-size: 1.03rem;
		font-weight: 850;
		letter-spacing: -0.025em;
		line-height: 1.35;
	}

	.medicos-profissional-conteudo p {
		margin: 0;
		color: #6c7773;
		font-size: 0.82rem;
		line-height: 1.55;
	}

/* ===== RODAPÉ DO CARD ===== */

.medicos-profissional-rodape {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: auto;
	padding-top: 18px;
	border-top: 1px solid #e5ebe8;
}

.medicos-instituicao {
	color: #8a9591;
	font-size: 0.7rem;
}

.medicos-ver-perfil {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--azul);
	font-size: 0.76rem;
	font-weight: 800;
}

	.medicos-ver-perfil i {
		font-size: 0.82rem;
		transition: transform 0.2s ease;
	}

.medicos-profissional-card:hover .medicos-ver-perfil i {
	transform: translateX(4px);
}

/* ===== NENHUM RESULTADO ===== */

.medicos-vazio {
	max-width: 560px;
	margin: 30px auto 0;
	padding: 55px 28px;
	text-align: center;
}

	.medicos-vazio .icon-wrap {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 58px;
		height: 58px;
		margin: 0 auto 20px;
		border-radius: 50%;
		background: #e8f5ee;
		color: var(--azul);
		font-size: 1.25rem;
	}

	.medicos-vazio h2 {
		margin-bottom: 10px;
	}

	.medicos-vazio p {
		margin-bottom: 24px;
		color: #68737d;
	}

/* =========================================================
   PUBLICAÇÕES CIENTÍFICAS
========================================================= */

.medicos-publicacoes {
	padding: 78px 0 88px;
	background: #f6f8f7;
}

	.medicos-publicacoes .section-header {
		margin-bottom: 34px;
	}

.medicos-publicacoes-intro {
	max-width: 700px;
	margin: 12px 0 0;
	color: #68737d;
	font-size: 0.92rem;
	line-height: 1.7;
}

.publicacao-item {
	display: flex;
}

	.publicacao-item[hidden] {
		display: none !important;
	}

/* ===== CARD ===== */

.publicacao-card {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border: 1px solid #dfe7e4;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(23, 33, 43, 0.04);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

	.publicacao-card:hover {
		transform: translateY(-5px);
		border-color: var(--azul);
		box-shadow: 0 17px 38px rgba(23, 33, 43, 0.09);
	}

/* ===== IMAGEM ===== */

.publicacao-card-imagem {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #e8f5ee;
}

	.publicacao-card-imagem img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 0.35s ease;
	}

.publicacao-card:hover .publicacao-card-imagem img {
	transform: scale(1.04);
}

/* Categoria sobre a imagem */

.publicacao-categoria {
	position: absolute;
	top: 16px;
	left: 16px;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	padding: 7px 11px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	color: var(--azul);
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	box-shadow: 0 5px 18px rgba(23, 33, 43, 0.12);
	backdrop-filter: blur(6px);
}

/* ===== CONTEÚDO ===== */

.publicacao-card-conteudo {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 25px;
}

.publicacao-responsaveis-label {
	display: block;
	margin-bottom: 8px;
	color: var(--azul);
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.publicacao-card-conteudo h3 {
	margin: 0;
	color: var(--texto);
	font-size: 1.08rem;
	line-height: 1.45;
}

/* ===== RODAPÉ ===== */

.publicacao-card-rodape {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: auto;
	padding: 19px 25px 24px;
	border-top: 1px solid #e5ebe8;
}

	.publicacao-card-rodape > span {
		color: #89948f;
		font-size: 0.72rem;
	}

	.publicacao-card-rodape a {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		color: var(--azul);
		font-size: 0.8rem;
		font-weight: 800;
	}

		.publicacao-card-rodape a i {
			transition: transform 0.2s ease;
		}

.publicacao-card:hover .publicacao-card-rodape a i {
	transform: translateX(4px);
}

/* =========================================================
   RESPONSIVO
========================================================= */

@media (max-width: 991.98px) {
	.medicos-publicacoes {
		padding: 64px 0 72px;
	}
}

@media (max-width: 767.98px) {
	.medicos-publicacoes {
		padding: 52px 0 62px;
	}

	.publicacao-card-conteudo {
		padding: 22px;
	}

	.publicacao-card-rodape {
		padding: 18px 22px 22px;
	}
}

@media (max-width: 575.98px) {
	.publicacao-categoria {
		top: 12px;
		left: 12px;
	}

	.publicacao-card-rodape {
		align-items: flex-start;
		flex-direction: column;
	}
}
/* =========================================================
   PÁGINA INTERNA DO PROFISSIONAL
========================================================= */

.medico-voltar {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 42px;
	color: var(--azul);
	font-size: 0.85rem;
	font-weight: 800;
	transition: color 0.2s ease;
}

	.medico-voltar i {
		transition: transform 0.2s ease;
	}

	.medico-voltar:hover {
		color: var(--verde);
	}

		.medico-voltar:hover i {
			transform: translateX(-4px);
		}


/* ===== ÁREAS ===== */

.medico-areas {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

	.medico-areas span {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		padding: 11px 15px;
		border: 1px solid #dce7e2;
		border-radius: 999px;
		background: #f8faf9;
		color: var(--texto);
		font-size: 0.84rem;
		font-weight: 700;
	}

	.medico-areas i {
		color: var(--verde);
	}
/* =========================================================
   FILTROS DAS PUBLICAÇÕES
========================================================= */

.publicacoes-filtros {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 26px 0 32px;
}

.publicacao-filtro {
	padding: 9px 16px;
	border: 1px solid #dce5e1;
	border-radius: 999px;
	background: #fff;
	color: #4f5d58;
	font-family: inherit;
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
	transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

	.publicacao-filtro:hover {
		border-color: var(--azul);
		color: var(--azul);
	}

	.publicacao-filtro.is-active {
		border-color: transparent;
		background: var(--gradient-brand);
		color: #fff;
	}

@media (max-width: 767.98px) {

	.publicacoes-filtros {
		flex-wrap: nowrap;
		margin-right: -12px;
		padding-right: 12px;
		overflow-x: auto;
		scrollbar-width: none;
	}

		.publicacoes-filtros::-webkit-scrollbar {
			display: none;
		}

	.publicacao-filtro {
		flex: 0 0 auto;
	}
}

/* =========================================================
   RESPONSIVO
========================================================= */

@media (max-width: 767.98px) {
	.medico-voltar {
		margin-bottom: 32px;
	}
}

@media (max-width: 575.98px) {
	.medico-areas {
		align-items: stretch;
		flex-direction: column;
	}

		.medico-areas span {
			border-radius: 12px;
		}
}
/* =========================================================
   PÁGINA INTERNA DO PROFISSIONAL
========================================================= */

/* ===== CABEÇALHO DO PERFIL ===== */

.medico-interna-hero {
	padding: 54px 0 64px;
	overflow: hidden;
	background: var(--gradient-brand);
	color: #fff;
}

.medico-interna-voltar {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 38px;
	color: rgba(255, 255, 255, 0.85);
	font-size: 0.82rem;
	font-weight: 700;
	transition: color 0.2s ease;
}

	.medico-interna-voltar i {
		font-size: 0.9rem;
		transition: transform 0.2s ease;
	}

	.medico-interna-voltar:hover {
		color: #fff;
	}

		.medico-interna-voltar:hover i {
			transform: translateX(-4px);
		}

.medico-interna-identificacao {
	display: flex;
	align-items: center;
	gap: 27px;
}

.medico-interna-avatar {
	display: flex;
	flex: 0 0 112px;
	align-items: center;
	justify-content: center;
	width: 112px;
	height: 112px;
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
	font-size: 1.85rem;
	font-weight: 900;
	letter-spacing: 0.04em;
	box-shadow: 0 15px 36px rgba(23, 33, 43, 0.14);
	backdrop-filter: blur(6px);
}

.medico-interna-dados {
	min-width: 0;
}

.medico-interna-especialidade {
	display: inline-flex;
	align-items: center;
	margin-bottom: 13px;
	padding: 6px 11px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.16);
	color: #fff;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.medico-interna-dados h1 {
	margin: 0 0 8px;
	color: #fff;
	font-size: clamp(2rem, 4vw, 3.25rem);
	line-height: 1.1;
}

.medico-interna-dados > p {
	margin: 0 0 7px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 1rem;
	font-weight: 600;
}

.medico-interna-registro {
	display: inline-flex;
	color: #fff;
	font-size: 0.78rem;
	font-weight: 800;
}

/* ===== CONTEÚDO ===== */

.medico-interna-conteudo {
	padding: 72px 0 84px;
	background: #fff;
}

.medico-interna-secao {
	margin-bottom: 46px;
	padding-bottom: 46px;
	border-bottom: 1px solid #e2e8e4;
}

	.medico-interna-secao:last-child {
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: 0;
	}

	.medico-interna-secao h2 {
		margin: 0 0 24px;
		color: var(--texto);
		font-size: 1.45rem;
		font-weight: 850;
		letter-spacing: -0.025em;
		line-height: 1.2;
	}

.medico-interna-texto {
	max-width: 750px;
	margin: 0;
	color: #68737d;
	font-size: 0.94rem;
	line-height: 1.8;
}

/* ===== LISTAS COM BOLINHAS ===== */

.medico-interna-lista {
	display: grid;
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

	.medico-interna-lista li {
		display: grid;
		grid-template-columns: 10px minmax(0, 1fr);
		align-items: flex-start;
		gap: 14px;
	}

.medico-interna-bolinha {
	display: block;
	width: 7px;
	height: 7px;
	margin-top: 7px;
	border-radius: 50%;
	background: var(--verde);
}

.medico-interna-lista strong {
	display: block;
	margin-bottom: 3px;
	color: var(--texto);
	font-size: 0.92rem;
	font-weight: 800;
	line-height: 1.5;
}

.medico-interna-lista p {
	margin: 0;
	color: #74807b;
	font-size: 0.84rem;
	line-height: 1.55;
}

/* ===== COLUNA LATERAL ===== */

.medico-interna-lateral {
	position: sticky;
	top: 110px;
	display: grid;
	gap: 20px;
}

.medico-interna-card {
	padding: 25px;
	border: 1px solid #dfe7e4;
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(23, 33, 43, 0.04);
}

	.medico-interna-card h3 {
		margin: 0 0 17px;
		color: var(--texto);
		font-size: 1rem;
		font-weight: 850;
	}

/* ===== ÁREAS ===== */

.medico-interna-areas {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
}

	.medico-interna-areas span {
		display: inline-flex;
		align-items: center;
		padding: 7px 11px;
		border-radius: 999px;
		background: #e8f5ee;
		color: var(--azul);
		font-size: 0.72rem;
		font-weight: 700;
	}

/* ===== ATENDIMENTO ===== */

.medico-interna-card-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	margin-bottom: 19px;
	border-radius: 13px;
	background: #e8f5ee;
	color: var(--azul);
	font-size: 1.15rem;
}

.medico-interna-atendimento h3 {
	margin-bottom: 10px;
}

.medico-interna-atendimento > p {
	margin: 0 0 5px;
	color: var(--texto);
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.55;
}

.medico-interna-atendimento > span {
	display: block;
	margin-bottom: 22px;
	color: #74807b;
	font-size: 0.78rem;
}

.medico-interna-botao {
	width: 100%;
}

/* =========================================================
   RESPONSIVO
========================================================= */

@media (max-width: 991.98px) {

	.medico-interna-hero {
		padding: 48px 0 56px;
	}

	.medico-interna-conteudo {
		padding: 60px 0 70px;
	}

	.medico-interna-lateral {
		position: static;
	}
}

@media (max-width: 767.98px) {

	.medico-interna-identificacao {
		align-items: flex-start;
		flex-direction: column;
		gap: 20px;
	}

	.medico-interna-avatar {
		flex-basis: 94px;
		width: 94px;
		height: 94px;
		font-size: 1.55rem;
	}

	.medico-interna-voltar {
		margin-bottom: 30px;
	}

	.medico-interna-secao {
		margin-bottom: 38px;
		padding-bottom: 38px;
	}
}

@media (max-width: 575.98px) {

	.medico-interna-hero {
		padding: 40px 0 48px;
	}

	.medico-interna-conteudo {
		padding: 48px 0 58px;
	}

	.medico-interna-dados h1 {
		font-size: 2rem;
	}

	.medico-interna-card {
		padding: 22px;
		border-radius: 15px;
	}
}
.medico-interna-card-header {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 24px;
}

.medico-interna-card-icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: #edf8f2;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--azul);
	font-size: 1.2rem;
	flex-shrink: 0;
}

.medico-interna-card-header h3 {
	margin: 0;
}
.medico-interna-card-conteudo {
	background: #fff;
	border: 1px solid #dfe7e4;
	border-radius: 18px;
	padding: 34px;
	margin-bottom: 28px;
	box-shadow: 0 8px 22px rgba(0,0,0,.04);
}

	.medico-interna-card-conteudo:last-child {
		margin-bottom: 0;
	}

/* =========================================================
   PÁGINA INTERNA DE PUBLICAÇÃO
========================================================= */

/* ===== HERO ===== */

.publicacao-interna-hero {
	padding: 64px 0 72px;
	overflow: hidden;
	background: var(--gradient-brand);
	color: #fff;
}

.publicacao-interna-voltar {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 38px;
	color: rgba(255, 255, 255, 0.84);
	font-size: 0.82rem;
	font-weight: 700;
	transition: color 0.2s ease;
}

	.publicacao-interna-voltar i {
		transition: transform 0.2s ease;
	}

	.publicacao-interna-voltar:hover {
		color: #fff;
	}

		.publicacao-interna-voltar:hover i {
			transform: translateX(-4px);
		}

.publicacao-interna-categoria {
	display: inline-flex;
	align-items: center;
	margin-bottom: 16px;
	padding: 7px 12px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.publicacao-interna-hero h1 {
	max-width: 980px;
	margin: 0 0 18px;
	color: #fff;
	font-size: clamp(2.2rem, 4.8vw, 3.8rem);
	line-height: 1.08;
}

.publicacao-interna-hero p {
	max-width: 790px;
	margin: 0;
	color: rgba(255, 255, 255, 0.82);
	font-size: 1rem;
	line-height: 1.75;
}

/* ===== CONTEÚDO ===== */

.publicacao-interna-conteudo {
	padding: 76px 0 86px;
	background: #f6f8f7;
}

/* ===== IMAGEM ===== */

.publicacao-interna-imagem {
	width: 100%;
	margin: 0 0 28px;
	overflow: hidden;
	border: 1px solid #dfe7e4;
	border-radius: 20px;
	background: #e8f5ee;
	box-shadow: 0 10px 30px rgba(23, 33, 43, 0.05);
}

	.publicacao-interna-imagem img {
		display: block;
		width: 100%;
		aspect-ratio: 16 / 9;
		object-fit: cover;
	}

/* ===== CARDS PRINCIPAIS ===== */

.publicacao-interna-card {
	margin-bottom: 28px;
	padding: 34px;
	border: 1px solid #dfe7e4;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(23, 33, 43, 0.04);
}

	.publicacao-interna-card:last-child {
		margin-bottom: 0;
	}

	.publicacao-interna-card h2 {
		margin: 0 0 22px;
		font-size: 1.5rem;
	}

	.publicacao-interna-card > p:not(.subtitulo_azul) {
		margin: 0 0 17px;
		color: #68737d;
		font-size: 0.94rem;
		line-height: 1.8;
	}

	.publicacao-interna-card > p:last-child {
		margin-bottom: 0;
	}

/* ===== AUTORES ===== */

.publicacao-autores {
	display: grid;
	gap: 14px;
}

.publicacao-autor {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 17px;
	border: 1px solid #e2e8e4;
	border-radius: 14px;
	background: #fbfcfb;
}

.publicacao-autor-avatar {
	display: flex;
	flex: 0 0 48px;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--gradient-brand);
	color: #fff;
	font-size: 0.78rem;
	font-weight: 800;
}

.publicacao-autor h3 {
	margin: 0 0 4px;
}

.publicacao-autor p {
	margin: 0;
	color: #74807b;
	font-size: 0.8rem;
}

/* ===== PALAVRAS-CHAVE ===== */

.publicacao-palavras {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

	.publicacao-palavras span {
		display: inline-flex;
		align-items: center;
		padding: 8px 12px;
		border-radius: 999px;
		background: #e8f5ee;
		color: var(--azul);
		font-size: 0.75rem;
		font-weight: 700;
	}

/* ===== COLUNA LATERAL ===== */

.publicacao-interna-lateral {
	position: sticky;
	top: 110px;
	display: grid;
	gap: 22px;
}

.publicacao-informacoes-card {
	padding: 27px;
	border: 1px solid #dfe7e4;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(23, 33, 43, 0.04);
}

.publicacao-informacoes-header {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 24px;
}

	.publicacao-informacoes-header .icon-wrap {
		display: flex;
		flex: 0 0 46px;
		align-items: center;
		justify-content: center;
		width: 46px;
		height: 46px;
		margin: 0;
		border-radius: 13px;
		background: #e8f5ee;
		color: var(--azul);
		font-size: 1.1rem;
	}

	.publicacao-informacoes-header h2 {
		margin: 0;
		font-size: 1.08rem;
	}

/* ===== DADOS ===== */

.publicacao-informacoes-lista {
	display: grid;
	gap: 0;
	margin: 0 0 24px;
}

	.publicacao-informacoes-lista > div {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 20px;
		padding: 12px 0;
		border-bottom: 1px solid #edf1ef;
	}

		.publicacao-informacoes-lista > div:first-child {
			padding-top: 0;
		}

		.publicacao-informacoes-lista > div:last-child {
			padding-bottom: 0;
			border-bottom: 0;
		}

	.publicacao-informacoes-lista dt {
		color: #7a8681;
		font-size: 0.78rem;
		font-weight: 600;
	}

	.publicacao-informacoes-lista dd {
		margin: 0;
		color: var(--texto);
		font-size: 0.78rem;
		font-weight: 800;
		text-align: right;
	}

.publicacao-download {
	width: 100%;
}

/* ===== COMPARTILHAR ===== */

.publicacao-compartilhar {
	display: flex;
	gap: 10px;
}

	.publicacao-compartilhar a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		border: 1px solid #dce7e2;
		border-radius: 12px;
		background: #fff;
		color: var(--azul);
		font-size: 1rem;
		transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
	}

		.publicacao-compartilhar a:hover {
			border-color: transparent;
			background: var(--gradient-brand);
			color: #fff;
		}

/* =========================================================
   RESPONSIVO
========================================================= */

@media (max-width: 991.98px) {

	.publicacao-interna-hero {
		padding: 54px 0 62px;
	}

	.publicacao-interna-conteudo {
		padding: 64px 0 72px;
	}

	.publicacao-interna-lateral {
		position: static;
	}
}

@media (max-width: 767.98px) {

	.publicacao-interna-hero {
		padding: 48px 0 56px;
	}

	.publicacao-interna-voltar {
		margin-bottom: 30px;
	}

	.publicacao-interna-card {
		padding: 26px;
	}

	.publicacao-informacoes-card {
		padding: 24px;
	}
}

@media (max-width: 575.98px) {

	.publicacao-interna-hero {
		padding: 42px 0 50px;
	}

	.publicacao-interna-conteudo {
		padding: 48px 0 58px;
	}

	.publicacao-interna-card {
		padding: 22px;
		border-radius: 16px;
	}

	.publicacao-interna-imagem {
		border-radius: 16px;
	}

	.publicacao-autor {
		align-items: flex-start;
	}

	.publicacao-informacoes-lista > div {
		flex-direction: column;
		gap: 4px;
	}

	.publicacao-informacoes-lista dd {
		text-align: left;
	}
}
/* =========================================================
   LGPD / POLÍTICA DE PRIVACIDADE
   ========================================================= */

.lgpd-section {
	padding: 80px 0;
}

.lgpd-intro {
	max-width: 850px;
	margin-bottom: 55px;
}

	.lgpd-intro h2 {
		margin: 8px 0 18px;
	}

	.lgpd-intro p {
		color: #5f6870;
		line-height: 1.75;
		margin-bottom: 12px;
	}

.lgpd-content {
	border-top: 1px solid #e5e8ea;
}

.lgpd-block {
	display: grid;
	grid-template-columns: 70px 1fr;
	gap: 25px;
	padding: 38px 0;
	border-bottom: 1px solid #e5e8ea;
}

.lgpd-number {
	font-size: 14px;
	font-weight: 800;
	color: var(--verde);
	letter-spacing: .08em;
	padding-top: 5px;
}

.lgpd-block h2 {
	font-size: 24px;
	margin: 0 0 14px;
}

.lgpd-block p {
	color: #5f6870;
	line-height: 1.75;
	margin-bottom: 10px;
}

	.lgpd-block p:last-child {
		margin-bottom: 0;
	}


/* GERENCIAR COOKIES */

.lgpd-cookie-button {
	margin-top: 14px;
	padding: 12px 20px;
	border: 1px solid var(--verde);
	border-radius: 6px;
	background: transparent;
	color: var(--verde);
	font-weight: 700;
	transition: .2s ease;
}

	.lgpd-cookie-button:hover {
		background: var(--verde);
		color: #fff;
	}


/* CONTATO */

.lgpd-contact {
	margin-top: 65px;
	padding: 40px;
	background: #f5f7f7;
	border-radius: 12px;
}

	.lgpd-contact h2 {
		margin: 8px 0 10px;
	}

	.lgpd-contact > p {
		color: #5f6870;
		margin-bottom: 20px;
	}

.lgpd-contact-card {
	height: 100%;
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 18px;
	background: #fff;
	border: 1px solid #e5e8ea;
	border-radius: 8px;
	color: inherit;
	text-decoration: none;
	transition: .2s ease;
}

	.lgpd-contact-card:hover {
		transform: translateY(-2px);
		border-color: var(--verde);
	}

	.lgpd-contact-card i {
		font-size: 22px;
		color: var(--verde);
	}

	.lgpd-contact-card span {
		display: flex;
		flex-direction: column;
		min-width: 0;
	}

	.lgpd-contact-card small {
		color: #777;
		margin-bottom: 2px;
	}

	.lgpd-contact-card strong {
		font-size: 14px;
		overflow-wrap: anywhere;
	}


/* ATUALIZAÇÃO */

.lgpd-update {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 30px;
	color: #6c757d;
	font-size: 14px;
}

	.lgpd-update p {
		margin: 0;
	}

	.lgpd-update i {
		color: var(--verde);
	}


/* RESPONSIVO */

@media (max-width: 767px) {

	.lgpd-section {
		padding: 55px 0;
	}

	.lgpd-block {
		grid-template-columns: 1fr;
		gap: 8px;
		padding: 30px 0;
	}

	.lgpd-number {
		padding-top: 0;
	}

	.lgpd-contact {
		padding: 25px 20px;
	}
}
/* =========================================================
   CONSENTIMENTO DE COOKIES
   ========================================================= */

.cookie-banner {
	position: fixed;
	left: 24px;
	right: 24px;
	bottom: 24px;
	z-index: 9998;
	display: none;
}

	.cookie-banner.is-visible {
		display: block;
	}

.cookie-banner__content {
	max-width: 1180px;
	margin: 0 auto;
	padding: 22px 24px;
	background: #fff;
	border: 1px solid #e5e8ea;
	border-radius: 12px;
	box-shadow: 0 15px 50px rgba(0, 0, 0, .16);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 35px;
}

.cookie-banner__text {
	max-width: 680px;
}

	.cookie-banner__text strong {
		display: block;
		font-size: 17px;
		margin-bottom: 6px;
	}

	.cookie-banner__text p {
		margin: 0 0 6px;
		color: #5f6870;
		font-size: 14px;
		line-height: 1.6;
	}

	.cookie-banner__text a {
		color: var(--verde);
		font-size: 13px;
		font-weight: 700;
	}

.cookie-banner__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	flex-shrink: 0;
}


/* BOTÕES */

.cookie-btn {
	border: 0;
	border-radius: 6px;
	padding: 11px 16px;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	transition: .2s ease;
}

.cookie-btn--primary {
	background: var(--verde);
	color: #fff;
}

	.cookie-btn--primary:hover {
		opacity: .88;
	}

.cookie-btn--outline {
	background: transparent;
	color: var(--verde);
	border: 1px solid var(--verde);
}

	.cookie-btn--outline:hover {
		background: var(--verde);
		color: #fff;
	}


/* =========================================================
   MODAL DE PREFERÊNCIAS
   ========================================================= */

.cookie-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

	.cookie-modal.is-visible {
		display: flex;
	}

.cookie-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, .55);
}

.cookie-modal__dialog {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 650px;
	max-height: calc(100vh - 40px);
	overflow-y: auto;
	background: #fff;
	border-radius: 12px;
	padding: 35px;
	box-shadow: 0 20px 70px rgba(0, 0, 0, .25);
}

.cookie-modal__close {
	position: absolute;
	top: 18px;
	right: 18px;
	border: 0;
	background: transparent;
	color: #596269;
	font-size: 18px;
	cursor: pointer;
}

.cookie-modal__header {
	padding-right: 30px;
	margin-bottom: 25px;
}

	.cookie-modal__header h2 {
		margin: 7px 0 10px;
		font-size: 28px;
	}

	.cookie-modal__header p {
		color: #5f6870;
		line-height: 1.65;
		margin: 0;
	}


/* CATEGORIAS */

.cookie-preference {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
	padding: 20px 0;
	border-top: 1px solid #e5e8ea;
}

.cookie-preference__info {
	max-width: 480px;
}

	.cookie-preference__info strong {
		display: block;
		margin-bottom: 5px;
	}

	.cookie-preference__info p {
		color: #687178;
		font-size: 13px;
		line-height: 1.55;
		margin: 0;
	}

.cookie-preference__status {
	flex-shrink: 0;
	color: var(--verde);
	font-size: 12px;
	font-weight: 800;
}


/* SWITCH */

.cookie-switch {
	position: relative;
	display: inline-block;
	width: 46px;
	height: 26px;
	flex-shrink: 0;
}

	.cookie-switch input {
		opacity: 0;
		width: 0;
		height: 0;
	}

.cookie-switch__slider {
	position: absolute;
	inset: 0;
	cursor: pointer;
	background: #c8ced2;
	border-radius: 30px;
	transition: .2s;
}

	.cookie-switch__slider::before {
		content: "";
		position: absolute;
		width: 20px;
		height: 20px;
		left: 3px;
		top: 3px;
		background: #fff;
		border-radius: 50%;
		transition: .2s;
	}

.cookie-switch input:checked + .cookie-switch__slider {
	background: var(--verde);
}

	.cookie-switch input:checked + .cookie-switch__slider::before {
		transform: translateX(20px);
	}


/* RODAPÉ DO MODAL */

.cookie-modal__footer {
	padding-top: 22px;
	border-top: 1px solid #e5e8ea;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

	.cookie-modal__footer a {
		color: var(--verde);
		font-size: 13px;
		font-weight: 700;
	}


/* RESPONSIVO */

@media (max-width: 991px) {

	.cookie-banner {
		left: 15px;
		right: 15px;
		bottom: 15px;
	}

	.cookie-banner__content {
		align-items: stretch;
		flex-direction: column;
		gap: 18px;
	}

	.cookie-banner__actions {
		justify-content: flex-start;
		flex-wrap: wrap;
	}
}

@media (max-width: 575px) {

	.cookie-banner__content {
		padding: 20px;
	}

	.cookie-banner__actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.cookie-btn {
		width: 100%;
	}

	.cookie-modal__dialog {
		padding: 28px 20px 20px;
	}

	.cookie-preference {
		align-items: flex-start;
	}

	.cookie-modal__footer {
		align-items: stretch;
		flex-direction: column;
	}
}
/* =========================================================
   COMO CHEGAR
   ========================================================= */

.como-chegar-section {
	background: #fff;
}

.como-chegar-card {
	padding: 36px;
	border: 1px solid #e1e7e5;
	border-radius: 16px;
	background: #fff;
}

	.como-chegar-card h2 {
		margin: 8px 0 30px;
	}

.como-chegar-info {
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin-bottom: 30px;
}

.como-chegar-info-item {
	display: flex;
	align-items: flex-start;
	gap: 16px;
}

	.como-chegar-info-item strong {
		display: block;
		margin-bottom: 5px;
	}

	.como-chegar-info-item p {
		margin: 0;
		line-height: 1.7;
	}

	.como-chegar-info-item a {
		color: inherit;
		text-decoration: none;
	}

		.como-chegar-info-item a:hover {
			text-decoration: underline;
		}

.como-chegar-icon {
	width: 48px;
	height: 48px;
	min-width: 48px;
	border-radius: 12px;
	background: #eaf6f1;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--verde);
	font-size: 20px;
}

.como-chegar-button {
	display: inline-flex;
	align-items: center;
	gap: 9px;
}


/* MAPA */

.como-chegar-map {
	width: 100%;
	height: 100%;
	min-height: 480px;
	overflow: hidden;
	border-radius: 16px;
	border: 1px solid #e1e7e5;
}

	.como-chegar-map iframe {
		display: block;
		width: 100%;
		height: 100%;
		min-height: 480px;
		border: 0;
	}


/* HORÁRIOS */

.como-chegar-hours {
	background: #f7faf9;
}

.como-chegar-hour-card {
	height: 100%;
	padding: 30px;
	border: 1px solid #e1e7e5;
	border-radius: 16px;
	background: #fff;
}

	.como-chegar-hour-card h3 {
		margin: 20px 0 6px;
		font-size: 18px;
	}

	.como-chegar-hour-card > strong {
		display: block;
		color: var(--verde);
		font-size: 18px;
		margin-bottom: 7px;
	}

	.como-chegar-hour-card p {
		margin: 0;
		line-height: 1.65;
	}


/* AJUDA */

.como-chegar-help {
	background: #fff;
}

.como-chegar-help-inner {
	padding: 35px 40px;
	border: 1px solid #e1e7e5;
	border-radius: 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
}

	.como-chegar-help-inner h2 {
		margin: 7px 0 8px;
	}

	.como-chegar-help-inner p {
		margin: 0;
	}


/* RESPONSIVO */

@media (max-width: 991px) {

	.como-chegar-map,
	.como-chegar-map iframe {
		min-height: 400px;
	}

	.como-chegar-help-inner {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 575px) {

	.como-chegar-card,
	.como-chegar-hour-card {
		padding: 24px;
	}

	.como-chegar-map,
	.como-chegar-map iframe {
		min-height: 330px;
	}

	.como-chegar-help-inner {
		padding: 28px 24px;
	}
}

.como-chegar-transport {
	background: #f7f9fa;
}

.como-chegar-transport-intro {
	max-width: 700px;
	margin-top: 8px;
}

.como-chegar-bus-card {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	height: 100%;
	padding: 20px;
	background: #fff;
	border: 1px solid var(--cor-borda);
	border-radius: 12px;
}

.como-chegar-bus-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	border-radius: 10px;
	background: #e8f5ee;
	color: var(--verde);
	font-size: 20px;
}

.como-chegar-bus-card strong {
	display: block;
	margin-bottom: 4px;
	font-size: 17px;
}

.como-chegar-bus-card p {
	margin: 0;
}

.ouvidoria-submit:disabled {
	opacity: 0.65;
	cursor: not-allowed;
	pointer-events: none;
}
.como-chegar-metro {
	margin-bottom: 40px;
}

	.como-chegar-metro > h3, .como-chegar-onibus > h3 {
		margin-bottom: 18px;
	}

.como-chegar-metro-card {
	display: flex;
	align-items: center;
	gap: 18px;
	height: 100%;
	padding: 22px;
	background: #fff;
	border: 1px solid var(--cor-borda);
	border-radius: 12px;
}

.como-chegar-metro-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	border-radius: 10px;
	background: #e8f5ee;
	color: var(--verde);
	font-size: 22px;
}

.como-chegar-metro-card strong {
	display: block;
	margin: 3px 0 4px;
	font-size: 18px;
}

.como-chegar-metro-card p {
	margin: 0;
}

.como-chegar-metro-linha {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
}
@media (min-width: 992px) {
	.navbar-main .dropdown:hover > .dropdown-menu {
		display: block;
		margin-top: 0;
	}

	.navbar-main .dropdown:hover > .dropdown-toggle::after {
		transform: rotate(180deg);
	}

	.navbar-main .dropdown-toggle::after {
		transition: transform .2s ease;
	}
}
/* ===== SOBRE - MISSÃO, VISÃO E VALORES ===== */
.sobre-mvv {
	padding: 76px 0;
	background: #f6f8f7;
}

	.sobre-mvv .row > div {
		display: flex;
	}

.sobre-mvv-card {
	width: 100%;
	height: 100%;
	padding: 34px;
	border: 1px solid #e2e8e4;
	border-radius: 18px;
	background: #fff;
	transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

	.sobre-mvv-card:hover {
		transform: translateY(-4px);
		border-color: var(--azul);
		box-shadow: 0 14px 34px rgba(23,33,43,.08);
	}

	.sobre-mvv-card .sobre-icon {
		width: 52px;
		height: 52px;
		margin-bottom: 22px;
		border-radius: 15px;
		background: #e8f5ee;
		color: var(--azul);
		font-size: 1.5rem;
	}

	.sobre-mvv-card h2 {
		margin: 0 0 16px;
		font-size: clamp(1.65rem,2.2vw,2.1rem);
	}

	.sobre-mvv-card p {
		margin: 0;
		color: #68737d;
		font-size: .94rem;
		line-height: 1.75;
	}

.sobre-mvv-valores {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}

	.sobre-mvv-valores li {
		position: relative;
		padding-left: 16px;
		color: #68737d;
		font-size: .86rem;
		line-height: 1.5;
	}

		.sobre-mvv-valores li::before {
			content: "";
			position: absolute;
			top: 7px;
			left: 0;
			width: 7px;
			height: 7px;
			border-radius: 50%;
			background: var(--verde);
		}

@media (max-width: 1199.98px) {
	.sobre-mvv-valores {
		grid-template-columns: 1fr;
		gap: 9px;
	}
}

@media (max-width: 991.98px) {
	.sobre-mvv {
		padding: 58px 0;
	}

	.sobre-mvv-card {
		padding: 28px;
	}

	.sobre-mvv-valores {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 575.98px) {
	.sobre-mvv-card {
		padding: 24px;
	}

	.sobre-mvv-valores {
		grid-template-columns: 1fr;
	}
}