﻿*,
*::before,
*::after {
	box-sizing: border-box;
}

* {
	margin: 0;
}

@font-face {
	font-family: "Roboto";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../../fonts/roboto/roboto-latin-400-normal.woff2") format("woff2");
}

@font-face {
	font-family: "Roboto";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("../../fonts/roboto/roboto-latin-500-normal.woff2") format("woff2");
}

@font-face {
	font-family: "Roboto";
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url("../../fonts/roboto/roboto-latin-500-normal.woff2") format("woff2");
}

@font-face {
	font-family: "Roboto";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("../../fonts/roboto/roboto-latin-700-normal.woff2") format("woff2");
}

:root {
	--color-brand: #0077b8;
	--color-accent: #04ae96;
	--color-accent-strong: #0b7468;
	--color-audicao-soft: #87d0cd;
	--color-audicao-ink: #1a3f3b;
	--color-text: #444444;
	--color-header-bg: #ffffff;
	--font-family: "Roboto", Arial, Tahoma, sans-serif;
	--motion-duration: 180ms;
	--motion-ease: ease;
}

html {
	-webkit-text-size-adjust: 100%;
}

@media (prefers-reduced-motion: no-preference) {
	html {
		scroll-behavior: smooth;
	}
}

body {
	min-height: 100vh;
	font-family: var(--font-family);
	line-height: 1.5;
}

img,
picture {
	display: block;
	max-width: 100%;
	height: auto;
}

button,
input,
textarea,
select {
	font: inherit;
}

a {
	color: inherit;
}

a,
button {
	transition:
		color var(--motion-duration) var(--motion-ease),
		background-color var(--motion-duration) var(--motion-ease),
		opacity var(--motion-duration) var(--motion-ease);
}

:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.skip-link {
	position: absolute;
	z-index: 100000;
	top: -100%;
	left: 0.75rem;
	padding: 0.5rem 0.75rem;
	background: #fff;
	color: #000;
}

.skip-link:focus,
.skip-link:focus-visible {
	top: 0.75rem;
}

.container {
	width: min(100% - 2rem, 72rem);
	margin-inline: auto;
}

@view-transition {
	navigation: auto;
}

::view-transition-old(root),
::view-transition-new(root) {
	animation-duration: var(--motion-duration);
	animation-timing-function: var(--motion-ease);
}

@keyframes amplific-vt-fade-out {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

@keyframes amplific-vt-fade-in {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

::view-transition-old(root) {
	animation-name: amplific-vt-fade-out;
}

::view-transition-new(root) {
	animation-name: amplific-vt-fade-in;
}

/* Header */

.site-header {
	position: relative;
	background: var(--color-header-bg);
	box-shadow: 0 1px 0 rgb(0 0 0 / 6%);
}

.site-header__inner {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	column-gap: 1rem;
	padding-block: 0.75rem;
}

.site-header__brand {
	min-width: 0;
}

.site-header__brand a {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
	text-decoration: none;
}

.custom-logo {
	width: auto;
	max-width: 11.25rem;
	max-height: 2.75rem;
	height: auto;
}

.site-title {
	color: var(--color-brand);
	font-size: 1.125rem;
	font-weight: 600;
}

/* Navigation */

.site-nav {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	z-index: 20;
	display: block;
	padding: 0.5rem 1rem 1rem;
	background: var(--color-header-bg);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(-0.5rem);
	transition:
		opacity var(--motion-duration) var(--motion-ease),
		transform var(--motion-duration) var(--motion-ease),
		visibility 0s linear var(--motion-duration);
}

.site-header.is-nav-open .site-nav {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
	transition:
		opacity var(--motion-duration) var(--motion-ease),
		transform var(--motion-duration) var(--motion-ease),
		visibility 0s linear 0s;
}

.site-nav__list {
	display: flex;
	flex-direction: column;
	padding: 0;
	list-style: none;
}

.site-nav a {
	display: block;
	padding: 0.75rem 0.25rem;
	color: var(--color-text);
	text-decoration: none;
}

.site-nav a:hover,
.site-nav a:focus-visible,
.site-nav .current-menu-item > a {
	color: var(--color-accent-strong);
}

.site-header :focus-visible {
	outline: 2px solid var(--color-accent-strong);
	outline-offset: 2px;
}

/* Mobile menu */

.menu-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--color-brand);
	cursor: pointer;
}

.menu-toggle__close {
	display: none;
}

.site-header.is-nav-open .menu-toggle__open {
	display: none;
}

.site-header.is-nav-open .menu-toggle__close {
	display: block;
}

@media (min-width: 64em) {
	.site-header__inner {
		grid-template-columns: auto 1fr;
		padding-block: 0.875rem;
	}

	.menu-toggle {
		display: none;
	}

	.site-nav,
	.site-header.is-nav-open .site-nav {
		position: static;
		display: block;
		grid-column: auto;
		justify-self: end;
		padding: 0;
		background: transparent;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: none;
		transition: none;
	}

	.site-nav__list {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: flex-end;
		gap: 0;
	}

	.site-nav li + li {
		border-left: 1px solid rgb(15 23 32 / 12%);
	}

	.site-nav a {
		padding: 0.5rem 1rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	@view-transition {
		navigation: none;
	}

	::view-transition-group(*),
	::view-transition-old(*),
	::view-transition-new(*) {
		animation: none;
	}

	html {
		scroll-behavior: auto;
	}

	a,
	button,
	.site-nav,
	.site-header.is-nav-open .site-nav,
	.professional-card,
	.professional-card:hover {
		transition: none;
		transform: none;
	}
}

/* Section heading */

.section-heading {
	margin-bottom: 2rem;
	color: #2a2a2a;
	font-size: 1.875rem;
	font-weight: 500;
	line-height: 1.15;
	letter-spacing: -0.02em;
	text-align: center;
}

.section-heading::after {
	content: "";
	display: block;
	width: 2.25rem;
	height: 0.125rem;
	margin: 0.75rem auto 0;
	background: var(--color-accent);
}

@media (min-width: 48em) {
	.section-heading {
		margin-bottom: 2.5rem;
		font-size: 2rem;
	}
}

@media (min-width: 64em) {
	.section-heading {
		margin-bottom: 2.75rem;
	}
}

/* Hero */

.hero {
	position: relative;
	overflow: hidden;
	background: #0d3a48;
}

.hero__frame {
	position: relative;
	min-height: 16.5rem;
	height: min(68vw, 22rem);
}

.hero__slides {
	position: absolute;
	inset: 0;
}

.hero__slide {
	position: absolute;
	inset: 0;
	z-index: 0;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.hero__slide[hidden] {
	display: none;
}

.hero__slide.is-active {
	z-index: 1;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

@media (prefers-reduced-motion: no-preference) {
	.hero--slider .hero__slide {
		transition:
			opacity 240ms var(--motion-ease),
			visibility 240ms var(--motion-ease);
	}
}

.hero__picture,
.hero__picture img,
.hero__image {
	display: block;
	width: 100%;
	max-width: none;
	height: 100%;
}

.hero__picture {
	position: absolute;
	inset: 0;
}

.hero__image {
	object-fit: cover;
	object-position: center 28%;
}

.hero__frame::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(
		to top,
		rgb(0 0 0 / 18%) 0%,
		rgb(0 0 0 / 4%) 34%,
		transparent 58%
	);
}

.hero__content {
	position: absolute;
	z-index: 3;
	right: 0;
	bottom: 0;
	left: 0;
	padding-block: 0.85rem 2rem;
	padding-inline: 0;
	opacity: 1;
	visibility: visible;
}

@media (prefers-reduced-motion: no-preference) {
	.hero__content {
		transition:
			opacity 320ms var(--motion-ease),
			visibility 320ms var(--motion-ease);
	}
}

.hero.is-caption-hidden .hero__content {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.hero__panel {
	display: inline-block;
	max-width: min(100%, 27.5rem);
	height: auto;
	min-height: 0;
	padding: 0.5rem 0.8rem;
	border-radius: 0.25rem;
	background: rgb(0 0 0 / 42%);
}

.hero__title {
	max-width: none;
	margin: 0;
	color: #ffffff;
	font-family: inherit;
	font-size: 1.25rem; /* 20px mobile */
	font-weight: 700;
	line-height: 1.2;
}

.hero__lead {
	max-width: none;
	margin: 0.25rem 0 0;
	color: #ffffff;
	font-family: inherit;
	font-size: 0.875rem; /* 14px mobile */
	font-weight: 400;
	line-height: 1.35;
}

.hero__caption-toggle {
	position: absolute;
	z-index: 5;
	left: 0.65rem;
	bottom: 0.65rem;
	display: none;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgb(0 0 0 / 48%);
	color: #fff;
	cursor: pointer;
	pointer-events: auto;
}

.hero__caption-toggle:hover,
.hero__caption-toggle:focus-visible {
	background: rgb(0 0 0 / 68%);
}

.hero__caption-toggle:focus-visible {
	outline: 2px solid var(--color-accent);
	outline-offset: 2px;
}

.hero__caption-toggle-icon {
	display: block;
}

.hero.is-caption-hidden .hero__caption-toggle-icon--hide,
.hero:not(.is-caption-hidden) .hero__caption-toggle-icon--show {
	display: none;
}

.hero__controls {
	position: absolute;
	z-index: 4;
	inset: 0;
	pointer-events: none;
}

.hero__control {
	position: absolute;
	top: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgb(0 0 0 / 42%);
	color: #fff;
	cursor: pointer;
	pointer-events: auto;
	transform: translateY(-50%);
}

.hero__control:hover,
.hero__control:focus-visible {
	background: rgb(0 0 0 / 62%);
}

.hero__control:focus-visible {
	outline: 2px solid var(--color-accent);
	outline-offset: 2px;
}

.hero__control--prev {
	left: 0.65rem;
}

.hero__control--next {
	right: 0.65rem;
}

.hero__control-icon {
	display: block;
}

.hero__indicators {
	position: absolute;
	right: 0.75rem;
	bottom: 0.75rem;
	left: auto;
	display: flex;
	justify-content: flex-end;
	gap: 0.45rem;
	pointer-events: auto;
}

.hero__indicator {
	width: 1.35rem;
	height: 0.28rem;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgb(255 255 255 / 55%);
	cursor: pointer;
}

.hero__indicator.is-active,
.hero__indicator[aria-current="true"] {
	background: var(--color-accent);
}

.hero__indicator:focus-visible {
	outline: 2px solid var(--color-accent);
	outline-offset: 3px;
}

@media (min-width: 48em) {
	.hero__frame {
		min-height: 26rem;
		height: min(48vw, 32.5rem);
	}

	.hero__content {
		padding-block: 1.15rem 1.5rem;
	}

	.hero__panel {
		max-width: 27.5rem;
		padding: 0.55rem 0.9rem;
	}

	.hero__title {
		font-size: 1.5rem;
	}

	.hero__lead {
		font-size: 0.9375rem;
		margin-top: 0.28rem;
	}

	.hero__caption-toggle {
		display: inline-flex;
		left: 1rem;
		bottom: 1rem;
	}

	.hero__control {
		width: 2.75rem;
		height: 2.75rem;
	}

	.hero__control--prev {
		left: 1rem;
	}

	.hero__control--next {
		right: 1rem;
	}

	.hero__indicators {
		right: 1.25rem;
		bottom: 1.1rem;
	}
}

@media (min-width: 64em) {
	.hero__frame {
		min-height: 28rem;
		height: min(38vw, 36.25rem);
	}

	.hero__panel {
		max-width: 27.5rem; /* 440px */
		padding: 0.65rem 1rem;
	}

	.hero__title {
		font-size: 1.75rem; /* 28px */
	}

	.hero__lead {
		font-size: 1rem; /* 16px */
		margin-top: 0.3rem;
	}

	.hero__caption-toggle {
		display: none;
	}
}

@media (max-width: 47.99em) {
	.hero__caption-toggle {
		display: inline-flex;
	}
}

/* Clinic */

.clinic-section {
	padding-block: 3rem 2.75rem;
	background: #f7f8f8;
	color: var(--color-text);
}

.clinic-section .section-heading {
	margin-bottom: 0.85rem;
}

@media (min-width: 48em) {
	.clinic-section .section-heading {
		margin-bottom: 1rem;
	}
}

.clinic-section__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	justify-items: center;
	gap: 1.25rem;
}

.clinic-section__content {
	width: 100%;
	max-width: 47rem; /* ~752px */
	margin-inline: auto;
	text-align: center;
}

.clinic-section p {
	margin: 0;
	color: #28746f; /* mesmo tom do subtítulo .exams-audicao__subtitle */
	font-size: 1rem; /* 16px mobile */
	font-weight: 500; /* mesmo peso do subtítulo .exams-audicao__subtitle */
	line-height: 1.7;
}

@media (min-width: 48em) {
	.clinic-section p {
		font-size: 1.0625rem; /* 17px tablet */
	}
}

.clinic-section__media {
	width: 100%;
	max-width: 45rem; /* ~720px */
	margin: 0 auto;
	min-width: 0;
}

.clinic-section__video {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 0.375rem;
	background: #e8ecee;
}

.clinic-section__video iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

@media (min-width: 64em) {
	.clinic-section {
		padding-block: 3.5rem 3.25rem;
	}

	.clinic-section__grid {
		gap: 1.5rem;
	}

	.clinic-section p {
		font-size: 1.125rem; /* 18px desktop */
	}
}

/* Professionals */

.professionals-section {
	padding-block: 3.5rem 3.75rem;
	background: #eaf4f8;
	color: var(--color-text);
}

.professionals-section .section-heading {
	margin-bottom: 0.85rem;
}

.professionals-section__intro {
	width: 100%;
	max-width: 47rem; /* alinhado a .clinic-section__content */
	margin: 0 auto 1.5rem;
	color: #28746f; /* mesmo tom de .clinic-section p / .exams-audicao__subtitle */
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.7;
	text-align: center;
}

@media (min-width: 48em) {
	.professionals-section .section-heading {
		margin-bottom: 1rem;
	}

	.professionals-section__intro {
		font-size: 1.0625rem;
		margin-bottom: 1.75rem;
	}
}

@media (min-width: 64em) {
	.professionals-section__intro {
		font-size: 1.125rem;
		margin-bottom: 2rem;
	}
}

.professionals-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.15rem;
	width: 100%;
}

.professional-card {
	display: grid;
	grid-template-columns: 6.75rem minmax(0, 1fr);
	align-items: stretch;
	column-gap: 1rem;
	min-width: 0;
	padding: 0.85rem;
	border: 1px solid rgb(11 116 104 / 12%);
	border-radius: 0.35rem;
	background: rgb(255 255 255 / 68%);
}

.professional-card__media {
	display: block;
	width: 6.75rem;
	aspect-ratio: 3 / 4;
	margin: 0;
	overflow: hidden;
	border-radius: 0.3rem;
	background: #dce8ee;
}

.professional-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 18%;
}

.professional-card__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	min-width: 0;
	padding: 0.15rem 0.15rem 0.15rem 0;
	text-align: left;
}

.professional-profile__identity,
.professional-profile__role,
.professional-profile__summary {
	width: 100%;
}

.professional-profile__identity {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.professional-card__name {
	color: #2a2a2a;
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.28;
}

.professional-card__crfa {
	margin-top: 0.25rem;
	color: #6a6a6a;
	font-size: 0.8125rem;
	line-height: 1.4;
}

.professional-profile__role {
	margin-top: 0.55rem;
}

.professional-card__role {
	color: var(--color-accent-strong);
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.35;
	letter-spacing: 0.01em;
}

.professional-profile__summary {
	margin-top: 0.5rem;
}

.professional-card__summary {
	color: #4f4f4f;
	font-size: 0.8125rem;
	line-height: 1.55;
	text-align: left;
}

.professional-card--placeholder .professional-card__image {
	width: 42%;
	height: 42%;
	margin: auto;
	object-fit: contain;
	opacity: 0.32;
}

@media (min-width: 48em) {
	.professionals-section {
		padding-block: 4rem 4.25rem;
	}

	.professionals-grid {
		gap: 1.25rem;
	}

	.professional-card {
		grid-template-columns: 8.5rem minmax(0, 1fr);
		column-gap: 1.25rem;
		padding: 1rem;
	}

	.professional-card__media {
		width: 8.5rem;
	}

	.professional-card__name {
		font-size: 1.125rem;
	}

	.professional-card__summary {
		font-size: 0.875rem;
		max-width: 40rem;
	}
}

@media (min-width: 64em) {
	.professionals-section {
		padding-block: 4.5rem 5rem;
	}

	.professionals-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.35rem 1.5rem;
	}

	.professional-card {
		grid-template-columns: 9.25rem minmax(0, 1fr);
		column-gap: 1.35rem;
		padding: 1.1rem 1.15rem;
	}

	.professional-card__media {
		width: 9.25rem;
	}
}

@media (min-width: 80em) {
	.professionals-grid {
		gap: 1.5rem 1.75rem;
	}

	.professional-card {
		grid-template-columns: 10rem minmax(0, 1fr);
		column-gap: 1.5rem;
		padding: 1.2rem 1.25rem;
	}

	.professional-card__media {
		width: 10rem;
	}

	.professional-card__name {
		font-size: 1.1875rem;
	}
}

/* Attendance-only content inside the shared card shell */

.professional-card__contacts {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.7rem;
	padding: 0;
	list-style: none;
}

.professional-card__contact {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	min-height: 2.35rem;
	padding: 0.35rem 0.7rem;
	border-radius: 0.25rem;
	background: rgb(11 116 104 / 8%);
	color: var(--color-accent-strong);
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.3;
	text-decoration: none;
}

.professional-card__contact:hover,
.professional-card__contact:focus-visible {
	background: rgb(11 116 104 / 14%);
}

.professional-card__contact:focus-visible {
	outline: 2px solid var(--color-accent-strong);
	outline-offset: 2px;
}

.professional-card__contact--whatsapp {
	background: rgb(4 174 150 / 12%);
}

.professional-card__contact-icon {
	display: block;
	flex-shrink: 0;
}

.professional-card__message {
	margin-top: 0.65rem;
	color: #4f4f4f;
	font-size: 0.8125rem;
	line-height: 1.5;
}

/* Exames e Tratamentos */

.exams-section {
	padding-block: 3.25rem 3.5rem;
	background: #ffffff;
	color: var(--color-text);
}

.exams-stack {
	display: grid;
	gap: 1.15rem;
}

.exams-panel {
	padding: 1.1rem;
	border: 1px solid rgb(11 116 104 / 12%);
	border-radius: 0.35rem;
	background: #f7fafb;
}

/* Audição — composição editorial (alinhada a Equilíbrio/Fonoterapia) */

.exams-audicao {
	--audicao-ink: var(--color-accent-strong);
	--audicao-soft: var(--color-audicao-soft);
	padding: 0;
	border: none;
	background: #ffffff;
}

.exams-audicao__opening {
	display: grid;
	gap: 1.5rem;
	padding: 1.75rem 1.25rem;
	border-radius: 0.5rem;
	background: #f2f8f8;
}

.exams-audicao__copy {
	min-width: 0;
}

.exams-audicao__title {
	margin: 0 0 1rem;
	color: var(--audicao-ink);
	font-size: 2.125rem;
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.03em;
}

.exams-audicao__subtitle {
	margin: 0 0 1.25rem;
	color: #28746f;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.3;
}

.exams-audicao__subtitle + .exams-audicao__text {
	margin-top: 0;
}

.exams-audicao__title + .exams-audicao__subtitle {
	margin-top: -0.55rem;
}

.exams-audicao__text {
	margin: 0;
	max-width: 42rem;
	color: #4f4f4f;
	font-size: 0.9375rem;
	line-height: 1.7;
}

.exams-audicao__hero {
	display: block;
	margin: 0;
	overflow: hidden;
	border-radius: 0.4rem;
	background: #e8f1f1;
}

.exams-audicao__hero-img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	object-position: center;
}

.exams-audicao__highlights-block {
	padding: 2rem 1.15rem 0.35rem;
	background: #ffffff;
}

.exams-audicao__highlights-title {
	margin: 0 0 1.35rem;
	color: var(--audicao-ink);
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.3;
}

.exams-audicao__highlights-title::before {
	content: "";
	display: inline-block;
	width: 1.85rem;
	height: 0.125rem;
	margin-right: 0.7rem;
	margin-bottom: 0.18rem;
	vertical-align: middle;
	background: var(--audicao-soft);
}

.exams-audicao__highlights {
	display: grid;
	gap: 1rem;
}

.exams-audicao-card {
	display: grid;
	grid-template-columns: 1fr;
	align-items: start;
	min-width: 0;
	padding: 0.9rem;
	border: 1px solid rgb(11 116 104 / 12%);
	border-radius: 0.35rem;
	background: #ffffff;
}

.exams-audicao-card--media {
	grid-template-columns: 1fr;
	row-gap: 0.85rem;
}

.exams-audicao-card__media {
	display: block;
	width: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: 0.3rem;
	background: #dce8ee;
	aspect-ratio: 4 / 3;
}

.exams-audicao-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.exams-audicao-card__body {
	min-width: 0;
}

.exams-audicao-card__title {
	margin: 0;
	color: var(--audicao-ink);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
}

.exams-audicao-card__title:not(:last-child) {
	margin-bottom: 0.55rem;
}

.exams-audicao-card__body p {
	margin: 0;
	color: #4f4f4f;
	font-size: 0.8125rem;
	line-height: 1.55;
}

.exams-audicao__list {
	padding: 1.75rem 1.15rem 0.65rem;
	background: #ffffff;
}

/* Equilíbrio — composição editorial */

.exams-equilibrio {
	--equilibrio-ink: var(--color-accent-strong);
	--equilibrio-soft: var(--color-audicao-soft);
	padding: 0;
	border: none;
	background: #ffffff;
}

.exams-equilibrio__opening {
	display: grid;
	gap: 1.5rem;
	padding: 1.75rem 1.25rem;
	border-radius: 0.5rem;
	background: #f2f8f8;
}

.exams-equilibrio__copy {
	min-width: 0;
}

.exams-equilibrio__title {
	margin: 0 0 1rem;
	color: var(--equilibrio-ink);
	font-size: 2.125rem;
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.03em;
}

.exams-equilibrio__subtitle {
	margin: 0 0 1.25rem;
	color: #28746f;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.3;
}

.exams-equilibrio__title + .exams-equilibrio__subtitle {
	margin-top: -0.55rem;
}

.exams-equilibrio__text {
	margin: 0;
	max-width: 42rem;
	color: #4f4f4f;
	font-size: 0.9375rem;
	line-height: 1.7;
}

.exams-equilibrio__text + .exams-equilibrio__text {
	margin-top: 0.85rem;
}

.exams-equilibrio__hero {
	display: block;
	margin: 0;
	overflow: hidden;
	border-radius: 0.4rem;
	background: #e8f1f1;
}

.exams-equilibrio__hero-img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	object-position: center;
}

.exams-equilibrio__highlights-block {
	padding: 2rem 1.15rem 0.35rem;
	background: #ffffff;
}

.exams-equilibrio__highlights-title {
	margin: 0 0 1.35rem;
	color: var(--equilibrio-ink);
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.3;
}

.exams-equilibrio__highlights-title::before {
	content: "";
	display: inline-block;
	width: 1.85rem;
	height: 0.125rem;
	margin-right: 0.7rem;
	margin-bottom: 0.18rem;
	vertical-align: middle;
	background: var(--equilibrio-soft);
}

.exams-equilibrio__highlights {
	display: grid;
	gap: 1rem;
}

.exams-equilibrio-card {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: start;
	column-gap: 0.75rem;
	min-width: 0;
	padding: 0.9rem;
	border: 1px solid rgb(11 116 104 / 12%);
	border-radius: 0.35rem;
	background: #ffffff;
}

.exams-equilibrio-card--media {
	grid-template-columns: 1fr;
	row-gap: 0.85rem;
}

.exams-equilibrio-card__media {
	display: block;
	width: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: 0.3rem;
	background: #dce8ee;
	aspect-ratio: 3 / 2;
}

.exams-equilibrio-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.exams-equilibrio-card__marker {
	display: block;
	width: 0.25rem;
	height: 1.125rem;
	margin-top: 0.15rem;
	border-radius: 0.125rem;
	background: var(--equilibrio-soft);
}

.exams-equilibrio-card__body {
	min-width: 0;
}

.exams-equilibrio-card__title {
	margin: 0;
	color: var(--equilibrio-ink);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
}

.exams-equilibrio-card__title:not(:last-child) {
	margin-bottom: 0.55rem;
}

.exams-equilibrio-card__body p {
	margin: 0;
	color: #4f4f4f;
	font-size: 0.8125rem;
	line-height: 1.55;
}

.exams-equilibrio__list {
	padding: 1.75rem 1.15rem 0.65rem;
	background: #ffffff;
}

/* Fonoterapia — composição editorial */

.exams-fono {
	--fono-ink: var(--color-accent-strong);
	--fono-soft: var(--color-audicao-soft);
	padding: 0;
	border: none;
	background: #ffffff;
}

.exams-fono__opening {
	display: grid;
	gap: 1.5rem;
	padding: 1.75rem 1.25rem;
	border-radius: 0.5rem;
	background: #f2f8f8;
}

.exams-fono__copy {
	min-width: 0;
}

.exams-fono__title {
	margin: 0 0 1rem;
	color: var(--fono-ink);
	font-size: 2.125rem;
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.03em;
}

.exams-fono__subtitle {
	margin: 0 0 1.25rem;
	color: #28746f;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.35;
}

.exams-fono__title + .exams-fono__subtitle {
	margin-top: -0.55rem;
}

.exams-fono__text {
	margin: 0;
	max-width: 42rem;
	color: #4f4f4f;
	font-size: 0.9375rem;
	line-height: 1.7;
}

.exams-fono__text + .exams-fono__text {
	margin-top: 0.85rem;
}

.exams-fono__hero {
	display: block;
	margin: 0;
	overflow: hidden;
	border-radius: 0.4rem;
	background: #e8f1f1;
}

.exams-fono__hero-img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	object-position: center;
}

.exams-fono__groups-block {
	padding: 2rem 1.15rem 0.5rem;
	background: #ffffff;
}

.exams-fono__groups-title {
	margin: 0 0 0.75rem;
	color: var(--fono-ink);
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.3;
}

.exams-fono__groups-title::before {
	content: "";
	display: inline-block;
	width: 1.85rem;
	height: 0.125rem;
	margin-right: 0.7rem;
	margin-bottom: 0.18rem;
	vertical-align: middle;
	background: var(--fono-soft);
}

.exams-fono__groups-intro {
	margin: 0 0 1.35rem;
	max-width: 42rem;
	color: #4f4f4f;
	font-size: 0.9375rem;
	line-height: 1.6;
}

.exams-fono__groups {
	display: grid;
	gap: 1rem;
}

.exams-fono-card {
	display: grid;
	grid-template-columns: 3rem minmax(0, 1fr);
	align-items: start;
	column-gap: 0.85rem;
	min-width: 0;
	padding: 1.05rem 1rem;
	border: 1px solid rgb(11 116 104 / 12%);
	border-radius: 0.5rem;
	background: #ffffff;
}

.exams-fono-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	overflow: hidden;
	border-radius: 50%;
	background: transparent;
}

.exams-fono-card__icon-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.exams-fono-card__body {
	min-width: 0;
}

.exams-fono-card__title {
	display: flex;
	align-items: flex-start;
	gap: 0.55rem;
	margin: 0 0 0.45rem;
	color: var(--fono-ink);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
}

.exams-fono-card__marker {
	display: block;
	flex: 0 0 0.25rem;
	width: 0.25rem;
	height: 1.125rem;
	margin-top: 0.15rem;
	border-radius: 0.125rem;
	background: var(--fono-soft);
}

.exams-fono-card__title-text {
	min-width: 0;
}

.exams-fono-card__body p {
	margin: 0;
	color: #4f4f4f;
	font-size: 0.8125rem;
	line-height: 1.55;
}

.exams-panel__title {
	margin: 0 0 0.55rem;
	color: #2a2a2a;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.01em;
}

.exams-panel__subtitle {
	margin: 0.85rem 0 0.55rem;
	color: var(--color-accent-strong);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.35;
}

.exams-panel__intro-copy p,
.exams-panel__split-copy p,
.exams-highlight__body p {
	color: #4f4f4f;
	font-size: 0.875rem;
	line-height: 1.6;
}

.exams-panel__intro-copy p + p,
.exams-panel__split-copy p + p,
.exams-highlight__body p + p {
	margin-top: 0.55rem;
}

.exams-panel__intro {
	display: grid;
	gap: 1rem;
	margin-bottom: 1.1rem;
}

.exams-media {
	margin: 0;
	overflow: hidden;
	border-radius: 0.3rem;
	background: #dce8ee;
}

.exams-media__img {
	width: 100%;
	height: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	object-position: center;
}

.exams-highlights {
	display: grid;
	gap: 0.85rem;
	margin-bottom: 1.1rem;
}

.exams-highlight {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem;
	min-width: 0;
	padding: 0.75rem;
	border: 1px solid rgb(11 116 104 / 12%);
	border-radius: 0.35rem;
	background: #ffffff;
}

.exams-highlight__media {
	display: block;
	width: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: 0.3rem;
	background: #dce8ee;
	aspect-ratio: 16 / 9;
	max-height: 8.5rem;
}

.exams-highlight__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.exams-highlight__body {
	min-width: 0;
	padding: 0.1rem 0.1rem 0.1rem 0;
}

.exams-highlight__icon {
	display: inline-flex;
	width: 1.75rem;
	height: 1.75rem;
	margin-bottom: 0.35rem;
}

.exams-highlight__icon-img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.exams-highlight__title {
	margin: 0 0 0.4rem;
	color: var(--color-accent-strong);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
}

.exams-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.exams-chips__item {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
	min-height: 2.1rem;
	padding: 0.3rem 0.65rem;
	border-radius: 0.25rem;
	background: rgb(11 116 104 / 8%);
	color: var(--color-accent-strong);
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.35;
}

.exams-chips--accent {
	margin-top: 0.85rem;
}

.exams-chips--accent .exams-chips__item {
	background: rgb(4 174 150 / 12%);
}

.exams-others {
	margin-top: 0.35rem;
}

.exams-others__title {
	margin: 0 0 1rem;
	color: var(--color-accent-strong);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
}

.exams-others__title::after {
	content: "";
	display: block;
	width: 2rem;
	height: 0.125rem;
	margin-top: 0.5rem;
	background: var(--color-audicao-soft);
}

.exams-list {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.exams-list__item {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	min-width: 0;
	height: auto;
	padding: 0.85rem 1rem;
	border: 1px solid #dcebe9;
	border-radius: 0.5rem;
	background: #f2f8f8;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	color: var(--color-audicao-ink);
	text-align: left;
}

.exams-list__marker {
	display: block;
	flex-shrink: 0;
	box-sizing: border-box;
	width: 9px;
	height: 9px;
	border: 2px solid #28746f;
	border-radius: 50%;
	background: transparent;
}

.exams-list__name {
	display: block;
	min-width: 0;
	flex: 1 1 auto;
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1.45;
	overflow-wrap: anywhere;
	hyphens: auto;
}

.exams-panel__split {
	display: grid;
	gap: 1rem;
}

.exams-panel__split .exams-media {
	order: 2;
}

.exams-panel__split-copy {
	order: 1;
}

@media (min-width: 48em) {
	.exams-section {
		padding-block: 3.75rem 4rem;
	}

	.exams-stack {
		gap: 1.25rem;
	}

	.exams-panel {
		padding: 1.25rem;
	}

	.exams-audicao__opening {
		align-items: center;
		gap: 1.75rem;
		padding: 1.75rem 1.5rem;
	}

	.exams-audicao__opening--media {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.exams-audicao__title {
		font-size: 2.5rem;
		margin-bottom: 0.55rem;
	}

	.exams-audicao__subtitle {
		font-size: 1.1875rem;
		margin-bottom: 1.25rem;
	}

	.exams-audicao__hero-img {
		aspect-ratio: 3 / 2;
		max-height: none;
	}

	.exams-audicao__highlights-block {
		padding: 2.25rem 1.5rem 0.5rem;
	}

	.exams-audicao__highlights-title {
		font-size: 1.125rem;
		margin-bottom: 1.35rem;
	}

	.exams-audicao__highlights {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
	}

	.exams-audicao-card--media {
		padding: 1.05rem;
	}

	.exams-audicao-card--media .exams-audicao-card__body p {
		font-size: 0.84375rem;
	}

	.exams-audicao__list {
		padding: 2rem 1.5rem 0.75rem;
	}

	.exams-equilibrio__opening {
		align-items: center;
		gap: 1.75rem;
		padding: 1.75rem 1.5rem;
	}

	.exams-equilibrio__opening--media {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.exams-equilibrio__copy {
		padding: 0;
	}

	.exams-equilibrio__title {
		font-size: 2.5rem;
		margin-bottom: 0.55rem;
	}

	.exams-equilibrio__subtitle {
		font-size: 1.1875rem;
		margin-bottom: 1.25rem;
	}

	.exams-equilibrio__hero {
		margin: 0;
	}

	.exams-equilibrio__hero-img {
		aspect-ratio: 3 / 2;
		max-height: none;
		object-position: center;
	}

	.exams-equilibrio__highlights-block {
		padding: 2.25rem 1.5rem 0.5rem;
	}

	.exams-equilibrio__highlights-title {
		font-size: 1.125rem;
		margin-bottom: 1.35rem;
	}

	.exams-equilibrio__highlights {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
	}

	.exams-equilibrio-card--media {
		padding: 1.05rem;
	}

	.exams-equilibrio-card--media .exams-equilibrio-card__body p {
		font-size: 0.84375rem;
	}

	.exams-equilibrio__list {
		padding: 2rem 1.5rem 0.75rem;
	}

	.exams-fono__opening {
		align-items: center;
		gap: 1.75rem;
		padding: 1.75rem 1.5rem;
	}

	.exams-fono__opening--media {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.exams-fono__title {
		font-size: 2.5rem;
		margin-bottom: 0.55rem;
	}

	.exams-fono__subtitle {
		font-size: 1.1875rem;
		margin-bottom: 1.25rem;
	}

	.exams-fono__hero-img {
		aspect-ratio: 3 / 2;
		max-height: none;
	}

	.exams-fono__groups-block {
		padding: 2.25rem 1.5rem 0.5rem;
	}

	.exams-fono__groups-title {
		font-size: 1.125rem;
	}

	.exams-fono__groups {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.15rem;
	}

	.exams-fono-card {
		padding: 1.15rem 1.1rem;
	}

	.exams-fono-card__body p {
		font-size: 0.84375rem;
	}

	.exams-panel__title {
		font-size: 1.375rem;
	}

	.exams-panel__intro--media {
		grid-template-columns: minmax(0, 1.35fr) minmax(11rem, 0.75fr);
		align-items: center;
		gap: 1.25rem;
	}

	.exams-media__img {
		aspect-ratio: 5 / 4;
		max-height: 11.5rem;
	}

	.exams-highlights {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
	}

	.exams-highlight {
		grid-template-columns: 7.25rem minmax(0, 1fr);
		align-items: start;
		column-gap: 1rem;
		gap: 0;
		padding: 0.85rem;
	}

	.exams-highlight__media {
		width: 7.25rem;
		aspect-ratio: 1 / 1;
		max-height: none;
	}

	.exams-panel__split--media {
		grid-template-columns: minmax(11rem, 0.72fr) minmax(0, 1.28fr);
		align-items: start;
		gap: 1.25rem;
	}

	.exams-panel__split--media .exams-media,
	.exams-panel__split--media .exams-panel__split-copy {
		order: initial;
	}

	.exams-panel__split--media .exams-media {
		align-self: start;
		width: 100%;
		max-width: 18rem;
	}

	.exams-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.85rem;
	}

	.exams-list__item {
		padding: 0.9rem 1.05rem;
	}

	.exams-list__name {
		font-size: 0.9375rem;
		line-height: 1.45;
	}
}

@media (min-width: 64em) {
	.exams-section {
		padding-block: 4rem 4.5rem;
	}

	.exams-stack {
		gap: 1.35rem;
	}

	.exams-panel {
		padding: 1.35rem 1.4rem;
	}

	.exams-audicao__opening {
		gap: 2.25rem;
		padding: 2.25rem 2rem;
	}

	.exams-audicao__title {
		font-size: 3rem;
		margin-bottom: 0.6rem;
	}

	.exams-audicao__subtitle {
		font-size: 1.3125rem;
		margin-bottom: 1.4rem;
	}

	.exams-audicao__text {
		font-size: 1rem;
		line-height: 1.7;
	}

	.exams-audicao__hero-img {
		max-height: none;
	}

	.exams-audicao__highlights-block {
		padding: 2.6rem 1.75rem 0.65rem;
	}

	.exams-audicao__highlights-title {
		font-size: 1.125rem;
		margin-bottom: 1.45rem;
	}

	.exams-audicao__highlights {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.35rem;
	}

	.exams-audicao-card--media {
		padding: 1.15rem;
	}

	.exams-audicao-card__title {
		font-size: 1.0625rem;
	}

	.exams-audicao-card__title:not(:last-child) {
		margin-bottom: 0.6rem;
	}

	.exams-audicao-card--media .exams-audicao-card__body p {
		font-size: 0.875rem;
		line-height: 1.6;
	}

	.exams-audicao__list {
		padding: 2.25rem 1.75rem 0.85rem;
	}

	.exams-equilibrio__opening {
		gap: 2.25rem;
		padding: 2.25rem 2rem;
	}

	.exams-equilibrio__copy {
		padding: 0;
	}

	.exams-equilibrio__title {
		font-size: 3rem;
		margin-bottom: 0.6rem;
	}

	.exams-equilibrio__subtitle {
		font-size: 1.3125rem;
		margin-bottom: 1.4rem;
	}

	.exams-equilibrio__text {
		font-size: 1rem;
		line-height: 1.7;
	}

	.exams-equilibrio__hero-img {
		max-height: none;
		object-position: center;
	}

	.exams-equilibrio__highlights-block {
		padding: 2.6rem 1.75rem 0.65rem;
	}

	.exams-equilibrio__highlights-title {
		font-size: 1.125rem;
		margin-bottom: 1.45rem;
	}

	.exams-equilibrio__highlights {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.35rem;
	}

	.exams-equilibrio-card--media {
		padding: 1.15rem;
	}

	.exams-equilibrio-card__title {
		font-size: 1.0625rem;
	}

	.exams-equilibrio-card__title:not(:last-child) {
		margin-bottom: 0.6rem;
	}

	.exams-equilibrio-card--media .exams-equilibrio-card__body p {
		font-size: 0.875rem;
		line-height: 1.6;
	}

	.exams-equilibrio__list {
		padding: 2.25rem 1.75rem 0.85rem;
	}

	.exams-fono__opening {
		gap: 2.25rem;
		padding: 2.25rem 2rem;
	}

	.exams-fono__title {
		font-size: 3rem;
		margin-bottom: 0.6rem;
	}

	.exams-fono__subtitle {
		font-size: 1.3125rem;
		margin-bottom: 1.4rem;
	}

	.exams-fono__text {
		font-size: 1rem;
		line-height: 1.7;
	}

	.exams-fono__hero-img {
		max-height: none;
	}

	.exams-fono__groups-block {
		padding: 2.6rem 1.75rem 0.65rem;
	}

	.exams-fono__groups-title {
		font-size: 1.125rem;
		margin-bottom: 0.85rem;
	}

	.exams-fono__groups-intro {
		margin-bottom: 1.55rem;
		font-size: 1rem;
	}

	.exams-fono__groups {
		gap: 1.35rem;
	}

	.exams-fono-card {
		column-gap: 1rem;
		padding: 1.25rem 1.2rem;
	}

	.exams-fono-card__title {
		font-size: 1.0625rem;
	}

	.exams-fono-card__body p {
		font-size: 0.875rem;
		line-height: 1.6;
	}

	.exams-panel__intro--media {
		grid-template-columns: minmax(0, 1.4fr) minmax(12rem, 0.7fr);
		gap: 1.5rem;
	}

	.exams-media__img {
		max-height: 12.5rem;
	}

	.exams-highlight {
		grid-template-columns: 8rem minmax(0, 1fr);
		column-gap: 1.1rem;
		padding: 0.95rem;
	}

	.exams-highlight__media {
		width: 8rem;
	}

	.exams-highlight__title {
		font-size: 1.0625rem;
	}

	.exams-panel__intro-copy p,
	.exams-panel__split-copy p,
	.exams-highlight__body p {
		font-size: 0.9375rem;
		line-height: 1.6;
	}

	.exams-panel__split--media {
		grid-template-columns: minmax(12rem, 0.7fr) minmax(0, 1.3fr);
		gap: 1.5rem;
	}

	.exams-chips__item {
		font-size: 0.84375rem;
	}

	.exams-others__title {
		font-size: 1.0625rem;
		margin-bottom: 1.15rem;
	}

	.exams-list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.95rem;
	}

	.exams-list__item {
		padding: 0.95rem 1.1rem;
	}

	.exams-list__name {
		font-size: 1rem;
		line-height: 1.45;
	}
}

@media (min-width: 80em) {
	.exams-panel {
		padding: 1.45rem 1.5rem;
	}

	.exams-audicao__opening {
		gap: 2.5rem;
		padding: 2.5rem 2.25rem;
	}

	.exams-equilibrio__opening {
		gap: 2.5rem;
		padding: 2.5rem 2.25rem;
	}

	.exams-equilibrio__copy {
		padding: 0;
	}

	.exams-equilibrio__title {
		font-size: 3rem;
	}

	.exams-equilibrio__subtitle {
		font-size: 1.3125rem;
	}

	.exams-equilibrio__highlights-block {
		padding: 2.75rem 2rem 0.75rem;
	}

	.exams-equilibrio__highlights {
		gap: 1.5rem;
	}

	.exams-equilibrio-card--media {
		padding: 1.2rem;
	}

	.exams-fono__opening {
		gap: 2.5rem;
		padding: 2.5rem 2.25rem;
	}

	.exams-fono__groups-block {
		padding: 2.75rem 2rem 0.75rem;
	}

	.exams-audicao__highlights-block {
		padding: 2.75rem 2rem 0.75rem;
	}

	.exams-audicao__highlights {
		gap: 1.5rem;
	}

	.exams-audicao-card--media {
		padding: 1.2rem;
	}

	.exams-highlight {
		grid-template-columns: 8.5rem minmax(0, 1fr);
		column-gap: 1.2rem;
	}

	.exams-highlight__media {
		width: 8.5rem;
	}

	.exams-list {
		gap: 1rem;
	}

	.exams-list__item {
		padding: 1rem 1.15rem;
	}
}

/* Convênios — grid compacto centralizado (largura do container) */

.convenios-section {
	padding-block: 2rem 2.25rem;
	background: #f2f8f8;
	color: var(--color-text);
}

.convenios-section .section-heading {
	margin-bottom: 1.15rem;
}

.convenios-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
	width: 100%;
	max-width: 1050px;
	margin-inline: auto;
	padding: 0;
	list-style: none;
}

.convenios-card {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 4.25rem;
	padding: 0.65rem 0.75rem;
	border: 1px solid rgb(11 116 104 / 10%);
	border-radius: 0.3rem;
	background: #ffffff;
}

.convenios-card__logo {
	display: block;
	width: auto;
	max-width: 92%;
	height: auto;
	max-height: 2.85rem;
	object-fit: contain;
	object-position: center;
}

.convenios-card--semprehsc {
	background: #4543e8;
	border-color: rgb(69 67 232 / 35%);
}

.convenios-card--prodent {
	background: #2f8f3a;
	border-color: rgb(47 143 58 / 30%);
}

.convenios-card--cisvale {
	background: #3a3a3a;
	border-color: rgb(58 58 58 / 25%);
}

.convenios-card--text {
	padding-inline: 0.55rem;
}

.convenios-card__name {
	color: #2a2a2a;
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.3;
	text-align: center;
}

.convenios-note {
	margin: 0.95rem 0 0;
	color: #4f4f4f;
	font-size: 0.875rem;
	line-height: 1.45;
	text-align: center;
}

@media (min-width: 48em) {
	.convenios-section {
		padding-block: 2.25rem 2.5rem;
	}

	.convenios-section .section-heading {
		margin-bottom: 1.25rem;
	}

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

	.convenios-card {
		min-height: 4.75rem;
		padding: 0.7rem 0.85rem;
	}

	.convenios-card__logo {
		max-height: 3.25rem;
		max-width: 90%;
	}

	.convenios-note {
		margin-top: 1.05rem;
		font-size: 0.90625rem;
	}
}

@media (min-width: 64em) {
	.convenios-section {
		padding-block: 2.35rem 2.6rem;
	}

	.convenios-grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 0.8rem;
	}

	.convenios-card {
		min-height: 5.625rem; /* ~90px */
		padding: 0.85rem 0.95rem;
	}

	.convenios-card__logo {
		max-height: 3.75rem;
		max-width: 88%;
	}
}

@media (min-width: 80em) {
	.convenios-card__logo {
		max-height: 4rem;
	}
}

/* Avaliações no Google */

.reviews-section {
	padding-block: 2.75rem 3rem;
	background: #ffffff;
	color: var(--color-text);
}

.reviews-section .section-heading {
	margin-bottom: 1.25rem;
}

.reviews-summary {
	display: grid;
	gap: 0.35rem;
	justify-items: center;
	margin-bottom: 1.5rem;
	text-align: center;
}

.reviews-summary__rating {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0;
}

.reviews-summary__value {
	color: var(--color-accent-strong);
	font-size: 2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.03em;
}

.reviews-summary__total {
	margin: 0;
	color: #5a5a5a;
	font-size: 0.9375rem;
	line-height: 1.4;
}

.reviews-stars {
	display: inline-flex;
	gap: 0.1rem;
	color: #d7dde0;
}

.reviews-stars__icon {
	display: inline-flex;
}

.reviews-stars__icon.is-filled {
	color: #f4b400;
}

.reviews-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.85rem;
	margin: 0 0 1.25rem;
	padding: 0;
	list-style: none;
}

.reviews-card {
	display: grid;
	gap: 0.55rem;
	min-width: 0;
	padding: 1rem 1.05rem;
	border: 1px solid rgb(11 116 104 / 10%);
	border-radius: 0.35rem;
	background: #f7fafb;
}

.reviews-card__header {
	display: grid;
	gap: 0.3rem;
}

.reviews-card__author-row {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	min-width: 0;
}

.reviews-card__avatar-link {
	flex-shrink: 0;
	line-height: 0;
	text-decoration: none;
}

.reviews-card__avatar-link:focus-visible {
	outline: 2px solid var(--color-accent-strong);
	outline-offset: 2px;
	border-radius: 50%;
}

.reviews-card__avatar {
	display: block;
	flex-shrink: 0;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 50%;
	object-fit: cover;
	aspect-ratio: 1 / 1;
	background: #e6eef0;
}

.reviews-card__avatar--fallback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--color-accent-strong);
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
}

.reviews-card__author-info {
	display: grid;
	gap: 0.25rem;
	min-width: 0;
}

.reviews-card__author {
	margin: 0;
	color: #2a2a2a;
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

.reviews-card__author-link {
	color: inherit;
	text-decoration: none;
}

.reviews-card__author-link:hover,
.reviews-card__author-link:focus-visible {
	color: var(--color-accent-strong);
	text-decoration: underline;
}

.reviews-card__author-link:focus-visible {
	outline: 2px solid var(--color-accent-strong);
	outline-offset: 2px;
}

.reviews-card__rating {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.reviews-card__score {
	color: var(--color-accent-strong);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.2;
}

.reviews-card__text {
	margin: 0;
	color: #4f4f4f;
	font-size: 0.875rem;
	line-height: 1.5;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	overflow: hidden;
}

.reviews-card__time {
	margin: 0;
	color: #6b6b6b;
	font-size: 0.8125rem;
	line-height: 1.3;
}

.reviews-cta-wrap {
	margin: 0 0 1rem;
	text-align: center;
}

.reviews-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.5rem;
	padding: 0.55rem 1.1rem;
	border: 1px solid rgb(11 116 104 / 22%);
	border-radius: 0.35rem;
	background: #ffffff;
	color: var(--color-accent-strong);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
}

.reviews-cta:hover,
.reviews-cta:focus-visible {
	background: #f2f8f8;
}

.reviews-cta:focus-visible {
	outline: 2px solid var(--color-accent-strong);
	outline-offset: 3px;
}

.reviews-attribution {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	margin: 0;
	color: #6b6b6b;
	font-size: 0.75rem;
	line-height: 1.4;
}

.reviews-attribution__mark {
	display: inline-flex;
}

@media (min-width: 48em) {
	.reviews-section {
		padding-block: 3rem 3.25rem;
	}

	.reviews-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
	}
}

@media (min-width: 64em) {
	.reviews-section {
		padding-block: 3.25rem 3.5rem;
	}

	.reviews-summary {
		margin-bottom: 1.75rem;
	}

	.reviews-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.1rem;
	}
}

/* Contato */

.contact-section {
	padding-block: 2.75rem 3rem;
	background: #ffffff;
	color: var(--color-text);
}

.contact-section .section-heading {
	margin-bottom: 1.5rem;
}

.contact-layout {
	display: grid;
	gap: 1.5rem;
}

.contact-info {
	display: grid;
	gap: 0.75rem;
	align-content: start;
}

.contact-panel {
	display: grid;
	gap: 0;
	padding: 1rem 1.15rem;
	border: 1px solid rgb(11 116 104 / 10%);
	border-radius: 0.35rem;
	background: #f7fafb;
}

.contact-row {
	display: grid;
	grid-template-columns: 1.75rem minmax(0, 1fr);
	gap: 0.7rem;
	align-items: start;
	padding: 0.7rem 0;
}

.contact-row + .contact-row,
.contact-channels,
.contact-channels + .contact-row {
	border-top: 1px solid rgb(11 116 104 / 10%);
}

.contact-row:first-child {
	padding-top: 0;
}

.contact-row:last-child {
	padding-bottom: 0;
}

.contact-channels {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
}

.contact-channels .contact-row {
	border-top: none;
	align-items: start;
}

.contact-channels .contact-row + .contact-row {
	border-top: 1px solid rgb(11 116 104 / 10%);
}

.contact-channels .contact-row__body {
	display: grid;
	grid-template-rows: auto auto;
	row-gap: 0.2rem;
	align-content: start;
	min-width: 0;
}

.contact-channels .contact-row__title {
	margin: 0;
}

.contact-channels .contact-row__text {
	margin: 0;
}

.contact-channels .contact-row__icon {
	margin-top: 0;
}

.contact-row__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	margin-top: 0.1rem;
	border-radius: 999px;
	background: rgb(135 208 205 / 28%);
	color: var(--color-accent-strong);
}

.contact-row__title {
	margin: 0 0 0.2rem;
	color: var(--color-accent-strong);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.3;
}

.contact-row__text,
.contact-address {
	margin: 0;
	font-style: normal;
	font-size: 0.9375rem;
	line-height: 1.45;
	color: #4f4f4f;
}

.contact-address {
	display: grid;
	gap: 0.05rem;
}

.contact-hours {
	display: grid;
	gap: 0.1rem;
}

.contact-hours__days {
	font-weight: 500;
	color: #2a2a2a;
}

.contact-link {
	color: var(--color-accent-strong);
	font-weight: 500;
	text-decoration: none;
}

.contact-link:hover,
.contact-link:focus-visible {
	text-decoration: underline;
}

.contact-link:focus-visible {
	outline: 2px solid var(--color-accent-strong);
	outline-offset: 2px;
}

.contact-whatsapp-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	width: fit-content;
	min-height: 2.75rem;
	margin-top: 0.15rem;
	padding: 0.7rem 1.15rem;
	border-radius: 0.35rem;
	background: #0b7468;
	color: #ffffff;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
}

.contact-whatsapp-cta:hover,
.contact-whatsapp-cta:focus-visible {
	background: #085c53;
}

.contact-whatsapp-cta:focus-visible {
	outline: 2px solid var(--color-accent-strong);
	outline-offset: 3px;
}

.contact-whatsapp-cta__icon {
	flex-shrink: 0;
}

.contact-map {
	overflow: hidden;
	min-height: 16rem;
	border: 1px solid rgb(11 116 104 / 10%);
	border-radius: 0.4rem;
	background: #e8f1f1;
}

.contact-map__frame {
	display: block;
	width: 100%;
	height: 16rem;
	border: 0;
}

.contact-map__placeholder {
	display: grid;
	gap: 0.75rem;
	align-content: center;
	justify-items: start;
	min-height: 16rem;
	padding: 1.25rem;
	color: #4f4f4f;
}

@media (min-width: 48em) {
	.contact-section {
		padding-block: 3rem 3.25rem;
	}

	.contact-section .section-heading {
		margin-bottom: 1.75rem;
	}

	.contact-layout {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 1.5rem;
		align-items: start;
	}

	.contact-panel {
		padding: 1.1rem 1.25rem;
	}

	.contact-channels {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 1.25rem;
		align-items: start;
	}

	.contact-channels .contact-row {
		padding-block: 0.7rem;
	}

	.contact-channels .contact-row + .contact-row {
		border-top: none;
		padding-block: 0.7rem;
	}

	.contact-map {
		min-height: 20rem;
	}

	.contact-map__frame,
	.contact-map__placeholder {
		min-height: 20rem;
		height: 22.5rem;
	}
}

@media (min-width: 64em) {
	.contact-section {
		padding-block: 3.25rem 3.5rem;
	}

	.contact-layout {
		grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
		gap: 1.75rem;
	}

	.contact-map__frame,
	.contact-map__placeholder {
		min-height: 22rem;
		height: 24rem;
	}
}

/* Footer */

.site-footer {
	padding-block: 2rem 2.25rem;
	background: #0b7468;
	color: #ffffff;
}

.site-footer__inner {
	display: grid;
	gap: 1rem;
	justify-items: center;
	text-align: center;
}

.site-footer__name {
	margin: 0 0 0.35rem;
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: -0.01em;
}

.site-footer__address {
	margin: 0;
	max-width: 28rem;
	color: rgb(255 255 255 / 92%);
	font-size: 0.875rem;
	line-height: 1.5;
}

.site-footer__contacts {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.25rem;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-footer__link {
	color: #ffffff;
	font-size: 0.9375rem;
	font-weight: 500;
	text-decoration: none;
}

.site-footer__link:hover,
.site-footer__link:focus-visible {
	text-decoration: underline;
}

.site-footer__link:focus-visible {
	outline: 2px solid #87d0cd;
	outline-offset: 3px;
}

.site-footer__copy {
	margin: 0.25rem 0 0;
	color: #ffffff;
	font-size: 0.875rem;
	line-height: 1.45;
}

@media (min-width: 64em) {
	.site-footer {
		padding-block: 2.25rem 2.5rem;
	}

	.site-footer__inner {
		grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
		justify-items: start;
		text-align: left;
		column-gap: 2rem;
		row-gap: 0.85rem;
	}

	.site-footer__contacts {
		justify-content: flex-end;
		align-self: center;
		justify-self: end;
	}

	.site-footer__copy {
		grid-column: 1 / -1;
		justify-self: stretch;
		padding-top: 0.75rem;
		border-top: 1px solid rgb(255 255 255 / 18%);
		text-align: center;
	}
}

/* WhatsApp flutuante */

.whatsapp-float {
	position: fixed;
	right: 1rem;
	bottom: 1rem;
	z-index: 40;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.25rem;
	height: 3.25rem;
	border-radius: 999px;
	background: #25d366;
	color: #ffffff;
	box-shadow: 0 0.35rem 1rem rgb(0 0 0 / 18%);
	text-decoration: none;
}

.whatsapp-float:hover,
.whatsapp-float:focus-visible {
	background: #1ebe57;
}

.whatsapp-float:focus-visible {
	outline: 2px solid var(--color-accent-strong);
	outline-offset: 3px;
}

.whatsapp-float__icon {
	display: block;
}

@media (min-width: 48em) {
	.whatsapp-float {
		right: 1.25rem;
		bottom: 1.25rem;
		width: 3.5rem;
		height: 3.5rem;
	}
}

@media (prefers-reduced-motion: no-preference) {
	.whatsapp-float {
		transition: background-color 160ms ease, transform 160ms ease;
	}

	.whatsapp-float:hover {
		transform: translateY(-1px);
	}
}
