/**
 * Belcondo identity tokens (Fase 1).
 * Hex values sampled from refs/*.jpg. Confirm against the Figma Paleta frame.
 *
 * PENDÊNCIA: Agera Gothic webfont files are not in the theme.
 * --font-display falls back to --font-display-fallback (Sora / system-ui).
 */

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

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

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

:root {
	--bandeira: #003C4E;
	--menta: #7EBA8A;
	--oliva: #0C6C5A;
	--mostarda: #C5D36A;

	--primary: var(--bandeira);
	--secondary: var(--menta);

	--C0: #FFFFFF;
	--C1: #0A1E24;
	--purple: var(--oliva);
	--purple-lighter: #A8D4B4;
	--purple-lightest: #D7EDE0;
	--coral: var(--menta);
	--coral-lighter: #B7DCC0;
	--pink: var(--menta);
	--pink-lighter: var(--mostarda);
	--yellow: var(--mostarda);
	--gray-light: #D5D8DE;
	--gray-lighter: #F4F6F8;
	--text: #5C6570;

	--gradient-brand: linear-gradient(90deg, var(--menta) 0%, var(--oliva) 48%, var(--bandeira) 100%);
	--gradient-benefits: radial-gradient(circle at 18% 8%, var(--menta) 0%, rgba(126, 186, 138, 0) 42%), linear-gradient(160deg, var(--oliva) 0%, var(--bandeira) 72%);

	--font-display-fallback: "Sora", system-ui, sans-serif;
	--font-display: "Agera Gothic", var(--font-display-fallback);
	--font-body: "Sarabun", "Jost", system-ui, sans-serif;

	--focus-ring: 0 0 0 3px rgba(126, 186, 138, 0.55);
}

.H1, .H2, .H3, .H4, .H5, .H6 {
	font-family: var(--font-display);
}

.body0,
.body1,
.body2,
.adapt-input,
.adapt-textarea {
	font-family: var(--font-body);
}

.overline,
.overline2,
.subtitle1,
.caption {
	font-family: var(--font-body);
}

.overline {
	color: var(--menta);
}

.overline2 {
	color: var(--menta);
}

.H2 .reveal-accent,
.H3 .reveal-accent {
	color: var(--menta);
}

.H2.white .reveal-accent,
.H3.white .reveal-accent {
	color: var(--mostarda);
}

.btn-1 {
	background-color: var(--bandeira);
	color: var(--C0);
	border: none;
}

.btn-1:hover,
.btn-1:active {
	background-color: var(--oliva);
	color: var(--C0);
}

.btn-1:disabled {
	opacity: 0.45;
	cursor: not-allowed;
	transform: none;
}

.btn-2 {
	background-color: var(--menta);
	color: var(--bandeira);
	border: none;
}

.btn-2:hover,
.btn-2:active {
	background-color: var(--oliva);
	color: var(--C0);
}

.btn-3 {
	background-color: transparent;
	border: solid 1px var(--C0);
	color: var(--C0);
}

.btn-3:hover,
.btn-3:active {
	background-color: var(--C0);
	color: var(--bandeira);
}

.btn-4 {
	border-color: var(--gray-light);
	color: var(--C1);
}

.btn-4:hover {
	border-color: var(--bandeira);
	color: var(--bandeira);
}

a:focus-visible,
button:focus-visible,
.btn-1:focus-visible,
.btn-2:focus-visible,
.btn-3:focus-visible,
.btn-4:focus-visible,
input:focus-visible,
textarea:focus-visible {
	outline: none;
	box-shadow: var(--focus-ring);
}

.adapt-form__title {
	color: var(--menta) !important;
}

.adapt-form input[type="text"],
.adapt-form input[type="email"],
.adapt-form input[type="tel"],
.adapt-form input[type="number"],
.adapt-form textarea {
	color: var(--text);
	border-bottom-color: var(--gray-light);
	font-family: var(--font-body);
}

.adapt-form input:focus,
.adapt-form textarea:focus {
	border-bottom-color: var(--bandeira);
}

.adapt-form__submit {
	background: var(--bandeira) !important;
	color: var(--C0) !important;
}

.adapt-form__submit:hover {
	background: var(--oliva) !important;
}

.partners-content {
	background: var(--gradient-brand) !important;
	background-size: 200% 200%;
}

.partners .slider2 img {
	filter: brightness(0) invert(1);
}

.contact-text .H2,
.contact-text .H2.coral {
	color: var(--mostarda) !important;
}

/* Brand logos */
.belcondo-logo {
	display: block;
	width: auto;
	height: 52px;
	max-width: none;
	object-fit: contain;
}

.belcondo-logo--header,
.belcondo-logo--mobile {
	height: 48px;
	filter: none;
}

.belcondo-logo--footer {
	height: 88px;
	max-width: 280px;
}

.logo-footer-link {
	max-width: none;
}

.belcondo-wordmark__mark {
	width: 42px;
	height: 42px;
	flex-shrink: 0;
	border-radius: 12px;
	background:
		linear-gradient(135deg, var(--menta) 0%, var(--oliva) 48%, #1a6b88 100%);
	position: relative;
}

.belcondo-wordmark__mark::after {
	content: "";
	position: absolute;
	inset: 10px;
	background:
		linear-gradient(45deg, transparent 42%, var(--C0) 42%, var(--C0) 58%, transparent 58%),
		linear-gradient(-45deg, transparent 42%, var(--C0) 42%, var(--C0) 58%, transparent 58%);
	opacity: 0.95;
}

.belcondo-wordmark__text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.belcondo-wordmark__name {
	font-family: var(--font-display);
	font-weight: 800;
	font-size: 18px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.belcondo-wordmark__tag {
	font-family: var(--font-body);
	font-size: 9px;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	opacity: 0.82;
}

.belcondo-wordmark--footer {
	color: var(--C1);
}

.belcondo-wordmark--footer .belcondo-wordmark__mark {
	width: 56px;
	height: 56px;
	border-radius: 16px;
}

.belcondo-wordmark--footer .belcondo-wordmark__name {
	font-size: 28px;
	color: var(--bandeira);
}

.belcondo-wordmark--footer .belcondo-wordmark__tag {
	color: var(--bandeira);
	font-size: 11px;
}

.belcondo-wordmark--mobile .belcondo-wordmark__name {
	font-size: 16px;
}

/* Cookies + WhatsApp FAB */
.cookies {
	position: fixed;
	z-index: 9999;
	left: 24px;
	bottom: 24px;
	top: auto;
	right: auto;
	width: min(360px, calc(100vw - 48px));
	padding: 28px 24px 24px;
	background: var(--C0);
	border-radius: 28px;
	box-shadow: 0 18px 50px rgba(0, 60, 78, 0.18);
	color: var(--C1);
}

.cookies p {
	font-family: var(--font-body);
	font-size: 14px;
	line-height: 1.45;
	color: var(--text);
}

.cookies a {
	color: var(--bandeira);
	text-decoration: underline;
	font-weight: 600;
}

#button-cookies {
	margin: 18px 0 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 28px;
	background-color: var(--menta);
	color: var(--bandeira);
	border: none;
	border-radius: 999px;
	font-family: var(--font-body);
	font-size: 14px;
	font-weight: 700;
}

#button-cookies:hover {
	background-color: var(--oliva);
	color: var(--C0);
}

.belcondo-whatsapp {
	position: fixed;
	right: 24px;
	bottom: 24px;
	z-index: 9998;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--C0);
	box-shadow: 0 10px 30px rgba(0, 60, 78, 0.2);
	display: flex;
	align-items: center;
	justify-content: center;
}

.belcondo-whatsapp img {
	width: 28px;
	height: 28px;
	filter: none;
}

.belcondo-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 180px;
	border-radius: 20px;
	background: linear-gradient(145deg, #dfe8ea 0%, #c5d3d6 100%);
	color: var(--bandeira);
	font-family: var(--font-body);
	font-size: 13px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.numbers-box--icon .belcondo-placeholder {
	min-height: 100%;
	background: transparent;
}

.numbers-icon {
	width: 72px;
	height: 72px;
	border-radius: 18px;
	background: linear-gradient(160deg, var(--menta), var(--oliva));
	opacity: 0.85;
	box-shadow: 0 12px 28px rgba(12, 108, 90, 0.25);
}

@media (max-width: 1440px) {
	.content {
		max-width: 90%;
	}
}

@media (max-width: 1024px) {
	.H1 { font-size: 48px; line-height: 60px; }
	.H2 { font-size: 36px; line-height: 48px; }
}

@media (max-width: 768px) {
	.H1 { font-size: 36px; line-height: 46px; }
	.H2 { font-size: 28px; line-height: 38px; }
	.section-title,
	.section-text {
		width: 100% !important;
	}
}

@media (max-width: 390px) {
	.cookies {
		left: 12px;
		bottom: 88px;
		padding: 20px;
	}
	.belcondo-whatsapp {
		right: 12px;
		bottom: 12px;
	}
}
