/* INE Guiné-Bissau — design system + layout */

:root {
	--ine-green: #0b5c3b;
	--ine-green-dark: #08442c;
	--ine-green-soft: #e8f3ed;
	--ine-yellow: #d4a017;
	--ine-yellow-bright: #f0c12e;
	--ine-red: #c8102e;
	--ine-ink: #1a1a1a;
	--ine-muted: #5c6570;
	--ine-line: #e4e7eb;
	--ine-bg: #f4f6f5;
	--ine-white: #ffffff;
	--ine-footer: #1c1f22;
	--ine-footer-bottom: #121416;
	--ine-utility: #2a2e32;
	--ine-radius: 12px;
	--ine-shadow: 0 8px 24px rgba(16, 24, 40, 0.08);
	--ine-container: 1180px;
	--ine-font: "Source Sans 3", "Segoe UI", sans-serif;
}

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

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	font-family: var(--ine-font);
	color: var(--ine-ink);
	background: var(--ine-white);
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}

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

a {
	color: var(--ine-green);
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.skip-link:focus {
	position: fixed;
	top: 8px;
	left: 8px;
	z-index: 10000;
	width: auto;
	height: auto;
	clip: auto;
	padding: 0.75rem 1rem;
	background: var(--ine-green);
	color: #fff;
}

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

/* Buttons */
.ine-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.85rem 1.35rem;
	border-radius: 6px;
	font-weight: 700;
	font-size: 0.95rem;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	border: 2px solid transparent;
	text-decoration: none !important;
	transition: transform 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.ine-btn:hover {
	transform: translateY(-1px);
}

.ine-btn--primary {
	background: var(--ine-green);
	color: #fff;
}

.ine-btn--primary:hover {
	background: var(--ine-green-dark);
	color: #fff;
}

.ine-btn--accent {
	background: var(--ine-yellow-bright);
	color: var(--ine-ink);
}

.ine-btn--ghost {
	background: #fff;
	border-color: var(--ine-line);
	color: var(--ine-green);
}

.ine-btn--outline-light {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.45);
	color: #fff;
}

/* Header */
.ine-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: #fff;
	box-shadow: 0 1px 0 var(--ine-line);
}

.ine-utility {
	background: var(--ine-utility);
	color: #d7dbe0;
	font-size: 0.8125rem;
}

.ine-utility__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-height: 36px;
}

.ine-utility__links {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
}

.ine-utility__links a {
	color: inherit;
	text-decoration: none;
}

.ine-utility__links a:hover {
	color: #fff;
}

.ine-utility__right {
	display: flex;
	align-items: center;
	gap: 0.85rem;
}

.ine-lang {
	font-weight: 700;
	color: #fff;
}

.ine-search {
	display: flex;
	align-items: center;
	background: rgba(255, 255, 255, 0.08);
	border-radius: 999px;
	overflow: hidden;
}

.ine-search input {
	border: 0;
	background: transparent;
	color: #fff;
	padding: 0.35rem 0.75rem;
	width: 140px;
	font: inherit;
}

.ine-search input::placeholder {
	color: #a8b0b8;
}

.ine-search button {
	border: 0;
	background: transparent;
	color: #fff;
	padding: 0.35rem 0.65rem;
	cursor: pointer;
}

.ine-nav-bar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	min-height: 76px;
}

.ine-logo {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	color: inherit;
	text-decoration: none !important;
}

.custom-logo-link {
	display: inline-flex;
	align-items: center;
}

.custom-logo,
.ine-logo .custom-logo {
	max-height: 56px;
	width: auto;
}

.ine-footer .custom-logo {
	max-height: 48px;
}

.ine-footer .ine-logo--inverted .custom-logo {
	filter: brightness(0) invert(1);
}

.ine-logo__mark {
	display: flex;
	align-items: flex-end;
	gap: 3px;
	height: 42px;
}

.ine-logo__bar {
	width: 9px;
	border-radius: 2px 2px 0 0;
}

.ine-logo__bar--y {
	height: 55%;
	background: #f0c12e;
}

.ine-logo__bar--r {
	height: 72%;
	background: #c8102e;
}

.ine-logo__bar--g {
	height: 88%;
	background: #0b7a45;
}

.ine-logo__bar--dg {
	height: 100%;
	background: #08442c;
}

.ine-logo__text {
	display: flex;
	flex-direction: column;
	line-height: 1.15;
	font-size: 0.72rem;
	letter-spacing: 0.02em;
	color: var(--ine-ink);
}

.ine-logo__text strong {
	font-size: 0.78rem;
}

.ine-primary-nav__list {
	display: flex;
	align-items: center;
	gap: 0.15rem 1.1rem;
	flex-wrap: wrap;
}

.ine-primary-nav__list>li>a {
	display: inline-block;
	padding: 0.35rem 0;
	color: var(--ine-ink);
	font-size: 0.84rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	text-decoration: none;
	border-bottom: 2px solid transparent;
}

.ine-primary-nav__list>li.current-menu-item>a,
.ine-primary-nav__list>li.current_page_item>a,
.ine-primary-nav__list>li>a:hover {
	color: var(--ine-green);
	border-bottom-color: var(--ine-green);
	text-decoration: none;
}

.ine-primary-nav__list .sub-menu {
	display: none;
}

.ine-nav-toggle {
	display: none;
	border: 0;
	background: transparent;
	padding: 0.5rem;
	cursor: pointer;
}

.ine-nav-toggle__bars,
.ine-nav-toggle__bars::before,
.ine-nav-toggle__bars::after {
	display: block;
	width: 22px;
	height: 2px;
	background: var(--ine-ink);
	position: relative;
}

.ine-nav-toggle__bars::before,
.ine-nav-toggle__bars::after {
	content: "";
	position: absolute;
	left: 0;
}

.ine-nav-toggle__bars::before {
	top: -7px;
}

.ine-nav-toggle__bars::after {
	top: 7px;
}

/* Social glyphs (CSS shapes — leve) */
.ine-social__list {
	display: flex;
	gap: 0.55rem;
	align-items: center;
}

.ine-social__list a {
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
	text-decoration: none;
}

.ine-social__glyph {
	width: 12px;
	height: 12px;
	display: block;
	background: currentColor;
	mask-size: contain;
	mask-repeat: no-repeat;
	mask-position: center;
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
}

.ine-social__glyph--facebook {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14 9h3V6h-3c-2.2 0-4 1.8-4 4v1H8v3h2v7h3v-7h2.5l.5-3H13v-1c0-.6.4-1 1-1z'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14 9h3V6h-3c-2.2 0-4 1.8-4 4v1H8v3h2v7h3v-7h2.5l.5-3H13v-1c0-.6.4-1 1-1z'/%3E%3C/svg%3E");
}

.ine-social__glyph--instagram {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zm0-2.163c-3.259 0-3.667.014-4.947.072-4.358.2-6.78 2.618-6.98 6.98-.059 1.281-.073 1.689-.073 4.948 0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98 1.281.058 1.689.072 4.948.072 3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98-1.281-.059-1.69-.073-4.949-.073zm0 5.838c-3.403 0-6.162 2.759-6.162 6.162s2.759 6.163 6.162 6.163 6.162-2.759 6.162-6.163c0-3.403-2.759-6.162-6.162-6.162zm0 10.162c-2.209 0-4-1.79-4-4 0-2.209 1.791-4 4-4s4 1.791 4 4c0 2.21-1.791 4-4 4zm6.406-11.845c-.796 0-1.441.645-1.441 1.44s.645 1.44 1.441 1.44c.795 0 1.439-.645 1.439-1.44s-.644-1.44-1.439-1.44z'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zm0-2.163c-3.259 0-3.667.014-4.947.072-4.358.2-6.78 2.618-6.98 6.98-.059 1.281-.073 1.689-.073 4.948 0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98 1.281.058 1.689.072 4.948.072 3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98-1.281-.059-1.69-.073-4.949-.073zm0 5.838c-3.403 0-6.162 2.759-6.162 6.162s2.759 6.163 6.162 6.163 6.162-2.759 6.162-6.163c0-3.403-2.759-6.162-6.162-6.162zm0 10.162c-2.209 0-4-1.79-4-4 0-2.209 1.791-4 4-4s4 1.791 4 4c0 2.21-1.791 4-4 4zm6.406-11.845c-.796 0-1.441.645-1.441 1.44s.645 1.44 1.441 1.44c.795 0 1.439-.645 1.439-1.44s-.644-1.44-1.439-1.44z'/%3E%3C/svg%3E");
}

.ine-social__glyph--tiktok {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.24 1.07-.14 1.61.24 1.64 1.82 2.89 3.5 2.72 1.25-.03 2.37-.77 2.85-1.9.23-.49.33-1.02.33-1.56.02-4.43 0-8.86.01-13.29z'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.24 1.07-.14 1.61.24 1.64 1.82 2.89 3.5 2.72 1.25-.03 2.37-.77 2.85-1.9.23-.49.33-1.02.33-1.56.02-4.43 0-8.86.01-13.29z'/%3E%3C/svg%3E");
}

.ine-social__glyph--youtube {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M23 7.5a3 3 0 0 0-2.1-2.1C19.2 5 12 5 12 5s-7.2 0-8.9.4A3 3 0 0 0 1 7.5 31.5 31.5 0 0 0 1 12a31.5 31.5 0 0 0 .1 4.5 3 3 0 0 0 2.1 2.1C4.8 19 12 19 12 19s7.2 0 8.9-.4a3 3 0 0 0 2.1-2.1A31.5 31.5 0 0 0 23 12a31.5 31.5 0 0 0 0-4.5zM10 15.5v-7l6 3.5z'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M23 7.5a3 3 0 0 0-2.1-2.1C19.2 5 12 5 12 5s-7.2 0-8.9.4A3 3 0 0 0 1 7.5 31.5 31.5 0 0 0 1 12a31.5 31.5 0 0 0 .1 4.5 3 3 0 0 0 2.1 2.1C4.8 19 12 19 12 19s7.2 0 8.9-.4a3 3 0 0 0 2.1-2.1A31.5 31.5 0 0 0 23 12a31.5 31.5 0 0 0 0-4.5zM10 15.5v-7l6 3.5z'/%3E%3C/svg%3E");
}

.ine-social__glyph--linkedin {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.5 9H3v12h3.5zm.3-4.2A2 2 0 1 1 4.7 2.7a2 2 0 0 1 2.1 2.1zM21 14.4c0-3.2-1.7-4.7-4-4.7a3.5 3.5 0 0 0-3.1 1.7V9.7H10.5V21H14v-5.7c0-1.5.3-3 2.2-3s1.8 1.6 1.8 3.1V21H21z'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.5 9H3v12h3.5zm.3-4.2A2 2 0 1 1 4.7 2.7a2 2 0 0 1 2.1 2.1zM21 14.4c0-3.2-1.7-4.7-4-4.7a3.5 3.5 0 0 0-3.1 1.7V9.7H10.5V21H14v-5.7c0-1.5.3-3 2.2-3s1.8 1.6 1.8 3.1V21H21z'/%3E%3C/svg%3E");
}

.ine-social__glyph--whatsapp {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 0 0-8.7 14.9L2 22l5.3-1.4A10 10 0 1 0 12 2zm0 18a8 8 0 0 1-4.1-1.1l-.3-.2-3.1.8.8-3-.2-.3A8 8 0 1 1 12 20zm4.4-5.9c-.2-.1-1.4-.7-1.6-.8s-.4-.1-.5.1-.6.8-.7.9-.3.2-.5.1a6.5 6.5 0 0 1-1.9-1.2 7.2 7.2 0 0 1-1.3-1.6c-.1-.3 0-.4.1-.5l.4-.4.1-.3c0-.1 0-.3-.1-.4s-.5-1.3-.7-1.7-.4-.4-.5-.4h-.4c-.2 0-.4.1-.6.3s-.8.8-.8 1.9.8 2.2.9 2.3a8.7 8.7 0 0 0 3.3 2.4c1.2.4 1.7.5 2.3.4.4-.1 1.4-.6 1.6-1.1s.2-1 .1-1.1-.2-.2-.4-.3z'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 0 0-8.7 14.9L2 22l5.3-1.4A10 10 0 1 0 12 2zm0 18a8 8 0 0 1-4.1-1.1l-.3-.2-3.1.8.8-3-.2-.3A8 8 0 1 1 12 20zm4.4-5.9c-.2-.1-1.4-.7-1.6-.8s-.4-.1-.5.1-.6.8-.7.9-.3.2-.5.1a6.5 6.5 0 0 1-1.9-1.2 7.2 7.2 0 0 1-1.3-1.6c-.1-.3 0-.4.1-.5l.4-.4.1-.3c0-.1 0-.3-.1-.4s-.5-1.3-.7-1.7-.4-.4-.5-.4h-.4c-.2 0-.4.1-.6.3s-.8.8-.8 1.9.8 2.2.9 2.3a8.7 8.7 0 0 0 3.3 2.4c1.2.4 1.7.5 2.3.4.4-.1 1.4-.6 1.6-1.1s.2-1 .1-1.1-.2-.2-.4-.3z'/%3E%3C/svg%3E");
}

.ine-social__glyph--link {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10.6 13.4a4 4 0 0 0 5.7.4l2.8-2.8a4 4 0 0 0-5.7-5.7l-1.1 1.1'/%3E%3Cpath fill='black' d='M13.4 10.6a4 4 0 0 0-5.7-.4L4.9 13a4 4 0 0 0 5.7 5.7l1.1-1.1'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10.6 13.4a4 4 0 0 0 5.7.4l2.8-2.8a4 4 0 0 0-5.7-5.7l-1.1 1.1'/%3E%3Cpath fill='black' d='M13.4 10.6a4 4 0 0 0-5.7-.4L4.9 13a4 4 0 0 0 5.7 5.7l1.1-1.1'/%3E%3C/svg%3E");
}

/* Hero */
.ine-hero {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	background:
		radial-gradient(ellipse 48% 60% at 16% 38%, rgba(11, 92, 59, 0.04), transparent 58%),
		radial-gradient(ellipse 58% 80% at 86% 72%, rgba(11, 92, 59, 0.10), transparent 64%),
		radial-gradient(ellipse 42% 52% at 92% 16%, rgba(212, 160, 23, 0.10), transparent 55%),
		var(--ine-white);
	padding: 1.75rem 0 2.5rem;
}

.ine-hero__inner {
	position: relative;
}

.ine-hero__deco {
	display: none;
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 0;
}

.ine-hero__deco-svg {
	display: block;
	width: 100%;
	height: 100%;
}

.ine-hero__grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem 1.25rem;
	align-items: end;
	min-height: 28rem;
}

.ine-hero__content {
	padding-bottom: 2.75rem;
	position: relative;
	z-index: 2;
}

.ine-hero__kicker {
	margin: 0 0 0.55rem;
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--ine-green);
}

.ine-hero__title {
	margin: 0 0 1rem;
	font-size: clamp(1.85rem, 3.2vw, 2.75rem);
	line-height: 1.15;
	letter-spacing: -0.02em;
	max-width: 28ch;
}

.ine-hero__text {
	color: var(--ine-muted);
	margin-bottom: 1.5rem;
}

.ine-hero__media {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	min-height: 22rem;
	margin-right: 0;
	margin-bottom: 0;
}

.ine-hero__ground {
	position: absolute;
	left: 8%;
	right: -4%;
	bottom: 4%;
	height: 38%;
	border-radius: 50%;
	background:
		radial-gradient(ellipse 70% 55% at 55% 50%, rgba(11, 92, 59, 0.18), transparent 72%),
		radial-gradient(ellipse 55% 40% at 50% 60%, rgba(16, 24, 40, 0.10), transparent 70%);
	filter: blur(2px);
	z-index: 0;
	pointer-events: none;
}

.ine-hero__media img {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: none;
	height: auto;
	object-fit: contain;
	object-position: right bottom;
	filter: drop-shadow(0 32px 48px rgba(16, 24, 40, 0.26));
}

.ine-hero__glow {
	animation: ine-hero-glow 5s ease-in-out infinite;
}

.ine-hero__tick {
	stroke-opacity: 0.08;
	animation: ine-hero-tick 3.2s ease-in-out infinite;
}

.ine-hero__tick:nth-child(2) {
	animation-delay: 0.2s;
}

.ine-hero__tick:nth-child(3) {
	animation-delay: 0.4s;
}

.ine-hero__tick:nth-child(4) {
	animation-delay: 0.6s;
}

.ine-hero__spark {
	fill: none;
	stroke: #0b5c3b;
	stroke-opacity: 0.28;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-dasharray: 520;
	stroke-dashoffset: 520;
	animation: ine-hero-draw 6s ease-in-out infinite;
}

.ine-hero__spark--gold {
	stroke: #d4a017;
	stroke-opacity: 0.38;
	animation-delay: 0.8s;
}

.ine-hero__ripple {
	transform-box: fill-box;
	transform-origin: center;
	fill: none;
	stroke-opacity: 0.28;
	animation: ine-hero-ripple 4.5s ease-out infinite;
}

.ine-hero__ripple--2 {
	animation-delay: 2.2s;
}

.ine-hero__donut-arc {
	animation: ine-hero-dash 8s ease-in-out infinite;
}

.ine-hero__donut-arc--2 {
	animation-delay: 1.2s;
}

.ine-hero__bars rect {
	transform-box: fill-box;
	transform-origin: center bottom;
	animation: ine-hero-bar 2.6s ease-in-out infinite alternate;
}

.ine-hero__bars rect:nth-child(2) {
	animation-delay: 0.15s;
}

.ine-hero__bars rect:nth-child(3) {
	animation-delay: 0.3s;
}

.ine-hero__bars rect:nth-child(4) {
	animation-delay: 0.45s;
}

.ine-hero__bars rect:nth-child(5) {
	animation-delay: 0.6s;
}

.ine-hero__bars rect:nth-child(6) {
	animation-delay: 0.75s;
}

.ine-hero__float {
	position: absolute;
	z-index: 2;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: #fff;
	color: var(--ine-green);
	box-shadow: 0 10px 28px rgba(16, 24, 40, 0.16);
	animation: ine-hero-float 4.8s ease-in-out infinite;
}

.ine-hero__float::after {
	content: "";
	position: absolute;
	inset: -7px;
	border-radius: 50%;
	border: 2px solid rgba(11, 92, 59, 0.22);
	animation: ine-hero-float-pulse 2.8s ease-out infinite;
}

.ine-hero__float .ine-icon {
	width: 22px;
	height: 22px;
}

.ine-hero__float--1 {
	top: 10%;
	left: 2%;
}

.ine-hero__float--2 {
	top: 22%;
	right: 4%;
	animation-delay: 0.7s;
}

.ine-hero__float--2::after {
	border-color: rgba(212, 160, 23, 0.35);
	animation-delay: 0.7s;
}

.ine-hero__float--3 {
	bottom: 30%;
	left: -2%;
	color: var(--ine-yellow);
	animation-delay: 1.4s;
}

.ine-hero__float--3::after {
	animation-delay: 1.4s;
}

@keyframes ine-hero-glow {

	0%,
	100% {
		opacity: 0.75;
	}

	50% {
		opacity: 1;
	}
}

@keyframes ine-hero-tick {

	0%,
	100% {
		stroke-opacity: 0.06;
	}

	50% {
		stroke-opacity: 0.18;
	}
}

@keyframes ine-hero-draw {

	0%,
	100% {
		stroke-dashoffset: 520;
	}

	40%,
	65% {
		stroke-dashoffset: 0;
	}
}

@keyframes ine-hero-ripple {
	0% {
		transform: scale(0.65);
		opacity: 0.45;
	}

	100% {
		transform: scale(2.35);
		opacity: 0;
	}
}

@keyframes ine-hero-dash {
	50% {
		stroke-dashoffset: -40;
	}
}

@keyframes ine-hero-bar {
	from {
		transform: scaleY(0.72);
	}

	to {
		transform: scaleY(1);
	}
}

@keyframes ine-hero-float {

	0%,
	100% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-8px);
	}
}

@keyframes ine-hero-float-pulse {
	0% {
		transform: scale(0.92);
		opacity: 0.7;
	}

	100% {
		transform: scale(1.18);
		opacity: 0;
	}
}

/* Indicadores */
.ine-indicadores {
	background: var(--ine-bg);
	padding: 2.25rem 0 2.75rem;
	margin-top: 0;
}

.ine-indicadores__grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 1rem;
}

.ine-indicador-card {
	background: #fff;
	border: 1px solid var(--ine-line);
	border-radius: var(--ine-radius);
	padding: 1rem 1.1rem 0.85rem;
	box-shadow: var(--ine-shadow);
}

.ine-indicador-card__top {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	margin-bottom: 0.65rem;
}

.ine-indicador-card__icon {
	width: 34px;
	height: 34px;
	border-radius: 8px;
	display: grid;
	place-items: center;
	color: var(--ine-green);
	background: var(--ine-green-soft);
}

.ine-indicador-card__icon--cart {
	color: #c9a227;
	background: #f8efd3;
}

.ine-indicador-card__icon--briefcase {
	color: var(--ine-red);
	background: #fde8ec;
}

.ine-indicador-card__label {
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--ine-muted);
}

.ine-indicador-card__value {
	margin: 0;
	font-size: 1.55rem;
	font-weight: 700;
	line-height: 1.1;
}

.ine-indicador-card__unit {
	font-size: 0.85rem;
	font-weight: 600;
	margin-left: 0.15rem;
}

.ine-indicador-card__meta {
	margin: 0.35rem 0 0.5rem;
	font-size: 0.8rem;
	color: var(--ine-muted);
}

.ine-sparkline {
	display: block;
	width: 100%;
	height: 28px;
}

.ine-indicadores__more {
	display: flex;
	justify-content: center;
	margin-top: 1.15rem;
}

.ine-indicadores__more a {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--ine-muted);
	text-decoration: none;
	border: 0;
	background: transparent;
	padding: 0;
	transition: color 0.15s ease;
}

.ine-indicadores__more a:hover,
.ine-indicadores__more a:focus-visible {
	color: var(--ine-green);
}

/* Mid grid */
.ine-mid {
	padding: 2.5rem 0 3rem;
	background: var(--ine-white);
}

.ine-mid__grid {
	display: grid;
	grid-template-columns: 1.15fr 1.2fr 0.85fr;
	gap: 1.25rem;
}

.ine-rgph {
	background: linear-gradient(160deg, var(--ine-green) 0%, var(--ine-green-dark) 100%);
	color: #fff;
	border-radius: 16px;
	overflow: hidden;
	min-height: 100%;
	display: flex;
	flex-direction: column;
}

.ine-rgph__body {
	padding: 1.5rem 1.4rem 1.1rem;
	background:
		radial-gradient(circle at 85% 20%, rgba(255, 255, 255, 0.12), transparent 35%);
}

.ine-rgph__kicker {
	margin: 0 0 0.35rem;
	opacity: 0.75;
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.ine-rgph__title {
	margin: 0 0 0.5rem;
	font-size: 1.65rem;
}

.ine-rgph__text {
	margin: 0 0 1rem;
	opacity: 0.9;
}

.ine-rgph__stat {
	margin: 0 0 1.15rem;
}

.ine-rgph__stat strong {
	display: block;
	font-size: 1.8rem;
	line-height: 1;
}

.ine-rgph__stat span {
	font-size: 0.85rem;
	opacity: 0.8;
}

.ine-rgph__links {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1px;
	background: rgba(255, 255, 255, 0.12);
	margin-top: auto;
}

.ine-rgph__links a {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 0.9rem;
	background: rgba(0, 0, 0, 0.15);
	color: #fff;
	font-size: 0.78rem;
	text-decoration: none;
	min-height: 88px;
}

.ine-rgph__links a:hover {
	background: rgba(0, 0, 0, 0.28);
}

.ine-temas {
	background: #fff;
	border: 1px solid var(--ine-line);
	border-radius: 16px;
	padding: 1.15rem 1.15rem 1.35rem;
	min-height: 100%;
	display: flex;
	flex-direction: column;
}

.ine-temas__head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 1rem;
	margin-bottom: 1rem;
}

.ine-temas__head h2 {
	margin: 0;
	font-size: 1rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.ine-temas__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0.65rem;
	flex: 1;
}

.ine-tema {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	height: 100%;
	padding: 0.7rem 0.35rem;
	border-radius: 10px;
	text-align: center;
	color: var(--ine-ink);
	text-decoration: none;
	font-size: 0.72rem;
	font-weight: 600;
	line-height: 1.25;
}

.ine-tema:hover {
	background: var(--ine-green-soft);
	text-decoration: none;
}

.ine-tema__icon {
	color: var(--ine-green);
}

.ine-aside__block {
	background: #fff;
	border: 1px solid var(--ine-line);
	border-radius: 14px;
	padding: 1rem 1.1rem;
	margin-bottom: 1rem;
}

.ine-aside__block h2 {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin: 0 0 0.85rem;
	font-size: 0.92rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.ine-aside__block h2 svg {
	flex-shrink: 0;
	width: 1.05rem;
	height: 1.05rem;
	color: var(--ine-green);
}

.ine-cal li {
	display: grid;
	grid-template-columns: 56px 1fr;
	gap: 0.65rem;
	padding: 0.55rem 0;
	border-top: 1px solid var(--ine-line);
}

.ine-cal li:first-child {
	border-top: 0;
	padding-top: 0;
}

.ine-cal__date {
	font-weight: 700;
	font-size: 0.78rem;
	color: var(--ine-green);
	text-transform: uppercase;
}

.ine-cal__title {
	font-size: 0.88rem;
}

.ine-concurso h3 {
	margin: 0 0 0.4rem;
	font-size: 1rem;
}

.ine-concurso__prazo {
	color: var(--ine-red);
	font-weight: 700;
	font-size: 0.88rem;
}

/* News + literacia */
.ine-news-band {
	background: var(--ine-bg);
	padding: 2.5rem 0 3.5rem;
}

.ine-news-band__grid {
	display: grid;
	grid-template-columns: 1fr 280px;
	gap: 1.25rem;
	align-items: start;
}

.ine-news__head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 1rem;
}

.ine-news__head h2 {
	margin: 0;
	font-size: 1.15rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.ine-news__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
}

.ine-news-card {
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	border: 1px solid var(--ine-line);
	height: 100%;
}

.ine-news-card__link {
	display: flex;
	flex-direction: column;
	height: 100%;
	color: inherit;
	text-decoration: none;
	position: relative;
}

.ine-news-card__date {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 1;
	background: #fff;
	padding: 0.25rem 0.45rem;
	border-radius: 4px;
	font-size: 0.7rem;
	font-weight: 700;
	text-transform: uppercase;
}

.ine-news-card__img {
	aspect-ratio: 16 / 10;
	width: 100%;
	height: auto;
	object-fit: cover;
	background: #d7ddd9;
	flex-shrink: 0;
}

.ine-empty-media {
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #c5d4cb, #e8eee9);
	color: var(--ine-green);
}

.ine-empty-media .ine-icon {
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	max-width: 45%;
	max-height: 45%;
	margin: auto;
	opacity: 0.4;
	flex-shrink: 0;
}

.ine-news-card__title {
	margin: 0;
	padding: 0.85rem 0.85rem 0.35rem;
	font-size: 0.95rem;
	line-height: 1.35;
	flex: 1;
}

.ine-news-card__tag {
	padding: 0 0.85rem 0.9rem;
	font-size: 0.75rem;
	color: var(--ine-green);
	font-weight: 700;
}

.ine-literacia {
	background: #fff;
	border: 1px solid #b7d4c4;
	border-radius: 14px;
	padding: 1.2rem;
	min-height: 100%;
}

.ine-literacia__kicker {
	margin: 0 0 0.5rem;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 0.8rem;
	letter-spacing: 0.04em;
	color: var(--ine-green);
}

.ine-literacia__text {
	margin: 0 0 1rem;
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1.3;
}

.ine-literacia__art {
	height: 120px;
	border-radius: 10px;
	margin-bottom: 1rem;
	background:
		radial-gradient(circle at 30% 40%, #c9a227 0 8px, transparent 9px),
		radial-gradient(circle at 70% 55%, #0b5c3b 0 14px, transparent 15px),
		linear-gradient(135deg, #e8f3ed, #f7faf8);
}

/* ODS */
.ine-ods {
	background: #fff;
	padding: 2.5rem 0 2.75rem;
}

.ine-ods__title {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	margin: 0 0 1.5rem;
	font-size: 0.85rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ine-muted);
	text-align: center;
}

.ine-ods__title::before,
.ine-ods__title::after {
	content: "";
	height: 1px;
	flex: 1;
	max-width: 7rem;
	background: var(--ine-line);
}

.ine-ods__grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 0.65rem;
}

.ine-ods__tile {
	position: relative;
	overflow: hidden;
	border-radius: 8px;
	background: var(--ine-bg);
}

.ine-ods__tile:focus {
	outline: none;
}

.ine-ods__tile:focus-visible {
	outline: 3px solid var(--ine-green);
	outline-offset: 2px;
}

.ine-ods__tile img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
}

.ine-ods__tile--static {
	background: transparent;
	overflow: visible;
}

.ine-ods__tile--static img {
	object-fit: contain;
	padding: 0.15rem;
	animation: ine-ods-spin 20s linear infinite;
}

@keyframes ine-ods-spin {
	to {
		transform: rotate(360deg);
	}
}

.ine-ods__overlay {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.4rem;
	padding: 0.65rem 0.55rem;
	background: rgba(255, 255, 255, 0.96);
	color: var(--ine-ink);
	opacity: 0;
	overflow: auto;
	text-align: center;
	transition: opacity 0.25s ease;
}

.ine-ods__tile:hover .ine-ods__overlay,
.ine-ods__tile:focus-within .ine-ods__overlay {
	opacity: 1;
}

.ine-ods__text {
	margin: 0;
	font-size: 0.72rem;
	line-height: 1.35;
	font-weight: 600;
}

.ine-ods__stats {
	margin: 0;
	font-size: 0.68rem;
	font-weight: 700;
	color: var(--ine-green);
	line-height: 1.35;
}

.ine-ods__fonte {
	margin: 0;
	font-size: 0.62rem;
	color: var(--ine-muted);
	line-height: 1.3;
}

@media (prefers-reduced-motion: reduce) {
	.ine-ods__overlay {
		transition: none;
	}
}

@media (hover: none) {
	.ine-ods__tile:not(.ine-ods__tile--static) {
		overflow: visible;
		border: 1px solid var(--ine-line);
		border-radius: 10px;
	}

	.ine-ods__overlay {
		position: static;
		opacity: 1;
		padding: 0.55rem 0.6rem 0.7rem;
		background: #fff;
		overflow: visible;
	}
}

/* Parceiros (pre-footer) */
.ine-parceiros {
	background: #fff;
	border-top: 1px solid var(--ine-line);
	padding: 2.25rem 0 2.5rem;
}

.ine-parceiros__title {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	margin: 0 0 1.5rem;
	font-size: 0.85rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ine-muted);
}

.ine-parceiros__title::before,
.ine-parceiros__title::after {
	content: "";
	height: 1px;
	flex: 1;
	max-width: 7rem;
	background: var(--ine-line);
}

.ine-parceiros__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 1.5rem 2.25rem;
}

.ine-parceiros__item img {
	max-height: 64px;
	max-width: 150px;
	width: auto;
	height: auto;
	object-fit: contain;
}

/* Footer */
.ine-footer {
	background: var(--ine-footer);
	color: #c9ced4;
	padding-top: 3rem;
}

.ine-footer a {
	color: inherit;
}

.ine-footer__grid {
	display: grid;
	grid-template-columns: 1.3fr repeat(4, 1fr) 1.15fr;
	gap: 1.5rem;
	padding-bottom: 2.5rem;
}

.ine-footer .ine-logo__text,
.ine-footer .ine-logo {
	color: #fff;
}

.ine-footer__about {
	margin: 1rem 0 1.1rem;
	font-size: 0.9rem;
	max-width: 28ch;
}

.ine-footer__title {
	margin: 0 0 0.85rem;
	color: #fff;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.ine-footer__list a {
	display: block;
	padding: 0.25rem 0;
	font-size: 0.88rem;
	text-decoration: none;
}

.ine-footer__list a:hover {
	color: #fff;
	text-decoration: underline;
}

.ine-footer__contact-list li {
	display: flex;
	gap: 0.55rem;
	align-items: flex-start;
	margin-bottom: 0.75rem;
	font-size: 0.88rem;
}

.ine-footer__contact-list svg {
	flex-shrink: 0;
	margin-top: 2px;
}

.ine-social--footer {
	margin-top: 1.1rem;
}

.ine-footer__bottom {
	background: var(--ine-footer-bottom);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.ine-footer__bottom-inner {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	align-items: center;
	min-height: 52px;
	font-size: 0.8rem;
}

.ine-footer__bottom p {
	margin: 0;
}

.ine-footer__legal {
	display: flex;
	gap: 1rem;
}

.ine-empty {
	padding: 1rem;
	background: var(--ine-bg);
	border-radius: 10px;
	color: var(--ine-muted);
}

.ine-empty--sm {
	padding: 0.5rem 0;
	background: transparent;
	font-size: 0.88rem;
}

/* Inner pages baseline */
.site-main:not(.ine-home-main):not(.ine-page-main):not(.ine-news-main) {
	width: min(100% - 2rem, var(--ine-container));
	margin: 2rem auto 3rem;
}

.site-main:not(.ine-home-main) .entry-title {
	margin-top: 0;
}

/* ——— Páginas internas (hero + sidebar + conteúdo) ——— */
.ine-page-main {
	width: 100%;
	margin: 0;
	background: #fff;
}

.ine-page-hero {
	position: relative;
	isolation: isolate;
	min-height: 220px;
	padding: 3.25rem 0 3rem;
	background: #f7f8f8;
	overflow: hidden;
	border-bottom: 1px solid #eceff1;
}

.ine-page-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg,
			#f7f8f8 0%,
			#f7f8f8 38%,
			rgba(247, 248, 248, 0.92) 48%,
			rgba(247, 248, 248, 0.35) 62%,
			rgba(247, 248, 248, 0.08) 78%,
			transparent 100%);
	z-index: 1;
	pointer-events: none;
}

.ine-page-hero::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: min(58%, 720px);
	background-image: var(--ine-page-hero-bg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center right;
	opacity: 0.55;
	z-index: 0;
	pointer-events: none;
}

.ine-page-hero__inner {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	min-height: 140px;
}

.ine-page-hero__content {
	max-width: min(100%, 36rem);
}

.ine-page-hero__dash {
	display: flex;
	width: 52px;
	height: 4px;
	margin-bottom: 1.1rem;
	border-radius: 1px;
	overflow: hidden;
	background: linear-gradient(90deg,
			var(--ine-red) 0 33.33%,
			var(--ine-yellow-bright) 33.33% 66.66%,
			var(--ine-green) 66.66% 100%);
}

.ine-page-hero__title {
	margin: 0 0 0.85rem;
	font-size: clamp(2rem, 3.6vw, 2.75rem);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -0.025em;
	color: #1b2430;
	max-width: none;
}

.ine-page-hero__intro {
	margin: 0.85rem 0 0;
	color: #6b7280;
	font-size: 1.02rem;
	line-height: 1.55;
	max-width: 34ch;
}

.ine-breadcrumbs {
	font-size: 0.9rem;
}

.ine-breadcrumbs__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.2rem 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ine-breadcrumbs__item {
	display: inline-flex;
	align-items: center;
	color: var(--ine-green);
	font-weight: 600;
}

.ine-breadcrumbs__item:not(:last-child)::after {
	content: "›";
	margin: 0 0.5rem;
	color: #7a8a80;
	font-weight: 400;
}

.ine-breadcrumbs a {
	color: var(--ine-green);
	text-decoration: none;
}

.ine-breadcrumbs a:hover {
	text-decoration: underline;
}

.ine-breadcrumbs [aria-current="page"] {
	color: var(--ine-green);
	font-weight: 600;
}

.ine-page-body {
	padding: 2.75rem 0 4.5rem;
	background: #fff;
}

.ine-page-body__grid {
	display: grid;
	grid-template-columns: 260px minmax(0, 1fr);
	gap: 3rem;
	align-items: start;
}

.ine-page-body__grid:not(:has(.ine-section-nav)) {
	grid-template-columns: 1fr;
	max-width: 52rem;
}

.ine-section-nav {
	background: #fff;
	border: 1px solid #e3e7ea;
	border-radius: 2px;
	overflow: hidden;
}

.ine-section-nav__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ine-section-nav__list li+li {
	border-top: 1px solid #e3e7ea;
}

.ine-section-nav__list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 1rem 1rem 1rem 1.05rem;
	color: #2a3139;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	text-decoration: none;
	border-left: 4px solid transparent;
	background: #fff;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.ine-section-nav__list a:hover {
	background: #f4f6f5;
	color: var(--ine-green);
	text-decoration: none;
}

.ine-section-nav__list li.is-current a {
	background: #eef3f0;
	color: var(--ine-green);
	border-left-color: var(--ine-green);
}

.ine-section-nav__chevron {
	font-size: 1.15rem;
	line-height: 1;
	color: #b0b8bf;
	font-weight: 400;
}

.ine-section-nav__list li.is-current .ine-section-nav__chevron,
.ine-section-nav__list a:hover .ine-section-nav__chevron {
	color: var(--ine-green);
}

.ine-page-content {
	padding-top: 0.15rem;
}

.ine-page-content__title {
	margin: 0 0 1.35rem;
	font-size: clamp(1.55rem, 2.5vw, 2.05rem);
	font-weight: 700;
	line-height: 1.2;
	color: #1b2430;
}

.ine-page-content__body {
	font-size: 1.02rem;
	line-height: 1.75;
	color: #3a4350;
	max-width: 46rem;
}

.ine-page-content__body>*:first-child {
	margin-top: 0;
}

.ine-page-content__body p {
	margin: 0 0 1.1rem;
}

.ine-page-content__body h2,
.ine-page-content__body h3 {
	margin-top: 1.85rem;
	margin-bottom: 0.7rem;
	font-size: 1.2rem;
	font-weight: 700;
	color: #1b2430;
}

.ine-page-content__body ul {
	list-style: none;
	padding: 0;
	margin: 0.5rem 0 1.35rem;
}

.ine-page-content__body ul li {
	position: relative;
	padding-left: 1.2rem;
	margin-bottom: 0.55rem;
}

.ine-page-content__body ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.6em;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--ine-green);
}

.ine-page-content__footer {
	margin-top: 2rem;
	padding-top: 1rem;
	border-top: 1px solid var(--ine-line);
	font-size: 0.9rem;
}

@media (max-width: 900px) {
	.ine-page-body__grid {
		grid-template-columns: 1fr;
		gap: 1.75rem;
	}

	.ine-page-hero {
		min-height: 180px;
		padding: 2.25rem 0 2rem;
	}

	.ine-page-hero::after {
		width: 70%;
		opacity: 0.28;
	}

	.ine-page-hero::before {
		background: linear-gradient(90deg,
				#f7f8f8 0%,
				#f7f8f8 45%,
				rgba(247, 248, 248, 0.7) 70%,
				rgba(247, 248, 248, 0.25) 100%);
	}
}

@media (max-width: 600px) {
	.ine-page-hero::after {
		width: 100%;
		opacity: 0.18;
	}
}

/* Responsive */
@media (max-width: 1100px) {
	.ine-indicadores__grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.ine-mid__grid {
		grid-template-columns: 1fr 1fr;
	}

	.ine-aside {
		grid-column: 1 / -1;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
	}

	.ine-news__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.ine-news-band__grid {
		grid-template-columns: 1fr;
	}

	.ine-footer__grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.ine-ods__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.ine-utility__links {
		display: none;
	}

	.ine-nav-toggle {
		display: inline-flex;
	}

	.ine-primary-nav {
		display: none;
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		background: #fff;
		border-bottom: 1px solid var(--ine-line);
		padding: 0.75rem 1rem 1rem;
	}

	.ine-primary-nav.is-open {
		display: block;
	}

	.ine-primary-nav__list {
		flex-direction: column;
		align-items: flex-start;
	}

	.ine-nav-bar {
		position: relative;
	}

	.ine-hero__grid {
		grid-template-columns: 1fr;
		min-height: 0;
		align-items: stretch;
	}

	.ine-hero__content {
		padding-bottom: 0;
		order: -1;
	}

	.ine-hero__deco {
		inset: auto 0 0 0;
		height: 55%;
	}

	.ine-hero__media {
		min-height: 0;
		max-width: 40rem;
		margin-inline: auto;
		margin-right: auto;
		margin-bottom: 0;
		justify-content: center;
	}

	.ine-hero__ground {
		left: 10%;
		right: 10%;
		bottom: 6%;
		height: 28%;
	}

	.ine-hero__media img {
		width: 100%;
		object-position: center bottom;
	}

	.ine-hero__float {
		display: none;
	}

	.ine-hero__ticks,
	.ine-hero__spark {
		display: none;
	}

	.ine-hero__title {
		max-width: none;
	}

	.ine-indicadores__grid,
	.ine-temas__grid,
	.ine-mid__grid,
	.ine-aside,
	.ine-news__grid,
	.ine-footer__grid {
		grid-template-columns: 1fr;
	}

	.ine-footer__bottom-inner {
		flex-direction: column;
		padding: 0.85rem 0;
		text-align: center;
	}

	.ine-parceiros__item img {
		max-height: 52px;
		max-width: 120px;
	}

	.ine-parceiros__list {
		gap: 1.15rem 1.5rem;
	}

	.ine-ods__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ine-ods__title::before,
	.ine-ods__title::after {
		max-width: 2.5rem;
	}
}

@media (prefers-reduced-motion: no-preference) {
	.ine-home .ine-reveal:not(.ine-reveal--stagger) {
		opacity: 0;
		transform: translateY(1.75rem);
		transition:
			opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
			transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
	}

	.ine-home .ine-reveal:not(.ine-reveal--stagger).is-in {
		opacity: 1;
		transform: none;
	}

	.ine-home .ine-hero__media.ine-reveal {
		transition-delay: 0.12s;
	}

	.ine-home .ine-mid__grid>.ine-reveal:nth-child(2) {
		transition-delay: 0.08s;
	}

	.ine-home .ine-mid__grid>.ine-reveal:nth-child(3) {
		transition-delay: 0.16s;
	}

	.ine-home .ine-reveal--stagger>* {
		opacity: 0;
		transform: translateY(1.15rem);
		transition:
			opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1),
			transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
		transition-delay: calc(var(--ine-i, 0) * 70ms);
	}

	.ine-home .ine-reveal--stagger.is-in>* {
		opacity: 1;
		transform: none;
	}

	.ine-home .ine-reveal--stagger>*:nth-child(1) {
		--ine-i: 0;
	}

	.ine-home .ine-reveal--stagger>*:nth-child(2) {
		--ine-i: 1;
	}

	.ine-home .ine-reveal--stagger>*:nth-child(3) {
		--ine-i: 2;
	}

	.ine-home .ine-reveal--stagger>*:nth-child(4) {
		--ine-i: 3;
	}

	.ine-home .ine-reveal--stagger>*:nth-child(5) {
		--ine-i: 4;
	}

	.ine-home .ine-reveal--stagger>*:nth-child(6) {
		--ine-i: 5;
	}

	.ine-home .ine-reveal--stagger>*:nth-child(7) {
		--ine-i: 6;
	}

	.ine-home .ine-reveal--stagger>*:nth-child(8) {
		--ine-i: 7;
	}

	.ine-home .ine-reveal--stagger>*:nth-child(n + 9) {
		--ine-i: 8;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.ine-btn {
		transition: none;
	}

	.ine-hero__glow,
	.ine-hero__tick,
	.ine-hero__spark,
	.ine-hero__ripple,
	.ine-hero__donut-arc,
	.ine-hero__bars rect,
	.ine-hero__float,
	.ine-hero__float::after,
	.ine-ods__tile--static img {
		animation: none;
	}

	.ine-hero__spark {
		stroke-dashoffset: 0;
	}
}

/* ——— Notícias (arquivo) ——— */
.ine-news-main {
	width: 100%;
	margin: 0;
	background: #fff;
}

.ine-news-layout {
	padding: 2.5rem 0 4rem;
}

.ine-news-layout__grid {
	display: grid;
	grid-template-columns: 260px minmax(0, 1fr);
	gap: 2.5rem;
	align-items: start;
}

.ine-news-widget {
	margin-bottom: 1.75rem;
}

.ine-news-widget__title,
.ine-news-section-title {
	margin: 0 0 0.85rem;
	font-size: 0.95rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #1b2430;
}

.ine-news-cats {
	border: 1px solid #e3e7ea;
	border-radius: 4px;
	overflow: hidden;
	background: #fff;
}

.ine-news-cats li+li {
	border-top: 1px solid #eef1f3;
}

.ine-news-cats a {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.8rem 0.9rem;
	color: #2a3139;
	text-decoration: none;
	font-size: 0.9rem;
	font-weight: 600;
}

.ine-news-cats a:hover,
.ine-news-cats li.is-active a {
	background: #f1f4f2;
	color: var(--ine-green);
	text-decoration: none;
}

.ine-news-cats__icon {
	display: grid;
	place-items: center;
	color: var(--ine-green);
	opacity: 0.85;
}

.ine-news-cats__icon svg {
	width: 18px;
	height: 18px;
}

.ine-news-year__field {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	border: 1px solid #e3e7ea;
	border-radius: 6px;
	padding: 0.55rem 0.75rem;
	background: #fff;
}

.ine-news-year__icon {
	color: var(--ine-green);
	display: grid;
}

.ine-news-year select {
	border: 0;
	background: transparent;
	font: inherit;
	width: 100%;
	color: #2a3139;
}

.ine-news-newsletter {
	background: #eaf3ee;
	border-radius: 8px;
	padding: 1.25rem 1.15rem 1.35rem;
}

.ine-news-newsletter h2 {
	margin: 0 0 0.5rem;
	font-size: 0.95rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--ine-green-dark);
}

.ine-news-newsletter p {
	margin: 0 0 0.9rem;
	font-size: 0.9rem;
	color: #3a4350;
}

.ine-news-newsletter input[type="email"] {
	width: 100%;
	border: 1px solid #cfd8d3;
	border-radius: 6px;
	padding: 0.7rem 0.8rem;
	margin-bottom: 0.65rem;
	font: inherit;
}

.ine-news-newsletter .ine-btn {
	width: 100%;
	justify-content: center;
}

.ine-news-newsletter__ok {
	color: var(--ine-green) !important;
	font-weight: 700;
}

.ine-news-toolbar {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem 1rem;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 1.75rem;
}

.ine-news-toolbar__search {
	position: relative;
	flex: 1 1 260px;
}

.ine-news-toolbar__search-icon {
	position: absolute;
	left: 0.85rem;
	top: 50%;
	transform: translateY(-50%);
	color: #8b949e;
	display: grid;
}

.ine-news-toolbar__search input {
	width: 100%;
	border: 1px solid #e3e7ea;
	border-radius: 8px;
	padding: 0.75rem 0.9rem 0.75rem 2.5rem;
	font: inherit;
	background: #fff;
}

.ine-news-toolbar__sort {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.9rem;
	color: #5c6570;
}

.ine-news-toolbar__sort select {
	border: 1px solid #e3e7ea;
	border-radius: 6px;
	padding: 0.55rem 0.7rem;
	font: inherit;
	background: #fff;
}

.ine-news-featured {
	margin-bottom: 2.5rem;
}

.ine-news-featured__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.15rem;
}

.ine-news-fcard {
	border: 1px solid #e3e7ea;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.ine-news-fcard__media {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 16 / 10;
	background: #dfe6e2;
	overflow: hidden;
}

.ine-news-fcard__media img,
.ine-news-fcard__placeholder {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ine-news-fcard__media img {
	display: block;
}

.ine-news-fcard__body {
	padding: 0.95rem 1rem 1.1rem;
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	flex: 1;
}

.ine-news-tag {
	display: inline-block;
	width: fit-content;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--ine-green);
	background: #e8f3ed;
	padding: 0.2rem 0.45rem;
	border-radius: 3px;
}

.ine-news-fcard time,
.ine-news-row__meta time {
	font-size: 0.8rem;
	color: #7a8490;
}

.ine-news-fcard__title {
	margin: 0.15rem 0;
	font-size: 1.05rem;
	line-height: 1.3;
}

.ine-news-fcard__title a {
	color: #1b2430;
	text-decoration: none;
}

.ine-news-fcard__title a:hover {
	color: var(--ine-green);
}

.ine-news-fcard__excerpt,
.ine-news-row__excerpt {
	margin: 0;
	font-size: 0.9rem;
	color: #5c6570;
	line-height: 1.45;
}

.ine-news-fcard__more {
	margin-top: auto;
	align-self: flex-end;
	color: var(--ine-green);
	font-size: 1.2rem;
	text-decoration: none;
	font-weight: 700;
}

.ine-news-list {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid #e3e7ea;
}

.ine-news-row {
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr) auto;
	gap: 1rem;
	align-items: center;
	padding: 1.1rem 0;
	border-bottom: 1px solid #e3e7ea;
}

.ine-news-row__thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 120px;
	aspect-ratio: 4 / 3;
	border-radius: 6px;
	overflow: hidden;
	background: #dfe6e2;
}

.ine-news-row__thumb img,
.ine-news-row__placeholder {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ine-news-row__thumb img {
	display: block;
}

.ine-news-row__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 0.75rem;
	align-items: center;
	margin-bottom: 0.25rem;
}

.ine-news-row__title {
	margin: 0 0 0.35rem;
	font-size: 1.05rem;
	line-height: 1.3;
}

.ine-news-row__title a {
	color: #1b2430;
	text-decoration: none;
}

.ine-news-row__title a:hover {
	color: var(--ine-green);
}

.ine-news-row__arrow {
	color: var(--ine-green);
	font-size: 1.35rem;
	font-weight: 700;
	text-decoration: none;
	padding: 0.5rem;
}

.ine-pagination .nav-links,
.navigation.pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	justify-content: center;
	margin-top: 2rem;
}

.ine-pagination .page-numbers,
.navigation.pagination .page-numbers {
	display: inline-grid;
	place-items: center;
	min-width: 2.1rem;
	height: 2.1rem;
	padding: 0 0.45rem;
	border-radius: 4px;
	border: 1px solid #e3e7ea;
	color: #2a3139;
	text-decoration: none;
	font-weight: 600;
	font-size: 0.9rem;
	background: #fff;
}

.ine-pagination .page-numbers.current,
.navigation.pagination .page-numbers.current {
	background: var(--ine-green);
	border-color: var(--ine-green);
	color: #fff;
}

@media (max-width: 960px) {
	.ine-news-layout__grid {
		grid-template-columns: 1fr;
	}

	.ine-news-featured__grid {
		grid-template-columns: 1fr;
	}

	.ine-news-sidebar {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
	}

	.ine-news-newsletter {
		grid-column: 1 / -1;
	}
}

@media (max-width: 700px) {
	.ine-news-row {
		grid-template-columns: 88px minmax(0, 1fr);
	}

	.ine-news-row__thumb {
		width: 88px;
	}

	.ine-news-row__arrow {
		display: none;
	}

	.ine-news-sidebar {
		grid-template-columns: 1fr;
	}
}

/* ——— Notícias (single) ——— */
.ine-news-single__grid {
	display: grid;
	grid-template-columns: 260px minmax(0, 1fr) 240px;
	gap: 2.5rem;
	align-items: start;
}

.ine-news-article__title {
	margin: 0.65rem 0 0.85rem;
	font-size: clamp(1.65rem, 2.8vw, 2.15rem);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: #1b2430;
}

.ine-news-tag--solid {
	color: #fff;
	background: var(--ine-green);
	padding: 0.28rem 0.55rem;
	border-radius: 4px;
	font-size: 0.72rem;
}

.ine-news-article__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem 1.25rem;
	margin: 0 0 1.5rem;
	padding: 0;
	list-style: none;
	color: #5c6570;
	font-size: 0.9rem;
}

.ine-news-article__meta li {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.ine-news-article__meta-icon {
	display: grid;
	color: var(--ine-green);
}

.ine-news-article__meta-icon svg {
	width: 16px;
	height: 16px;
}

.ine-news-article__media {
	margin: 0 0 1.5rem;
	border-radius: 8px;
	overflow: hidden;
	background: #dfe6e2;
}

.ine-news-article__media img {
	display: block;
	width: 100%;
	height: auto;
}

/* ——— Slider / Carousel da Galeria ——— */
.ine-news-gallery {
	margin: 0 0 1.75rem;
	position: relative;
}

.ine-news-gallery__viewport {
	position: relative;
	border-radius: 8px;
	overflow: hidden;
	background: #151b22;
	outline: none;
}

.ine-news-gallery__viewport:focus-visible {
	outline: 2px solid var(--ine-green);
	outline-offset: 2px;
}

.ine-news-gallery__track {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 10;
	background: #151b22;
}

.ine-news-gallery__slide {
	position: absolute;
	inset: 0;
	margin: 0;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
	transform: scale(0.985);
	display: flex;
	align-items: center;
	justify-content: center;
}

.ine-news-gallery__slide.is-active {
	opacity: 1;
	visibility: visible;
	transform: scale(1);
	z-index: 1;
}

.ine-news-gallery__slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ine-news-gallery__caption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 2.2rem 1.15rem 0.85rem;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.38) 60%, transparent 100%);
	color: #ffffff;
	font-size: 0.88rem;
	line-height: 1.4;
	z-index: 2;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}

.ine-news-gallery__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 2.6rem;
	height: 2.6rem;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.9);
	color: #1b2430;
	border: 1px solid rgba(255, 255, 255, 0.3);
	cursor: pointer;
	display: grid;
	place-items: center;
	z-index: 4;
	backdrop-filter: blur(4px);
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.2);
	transition: background 0.2s, transform 0.2s, color 0.2s;
}

.ine-news-gallery__nav:hover {
	background: var(--ine-green);
	color: #ffffff;
	transform: translateY(-50%) scale(1.05);
}

.ine-news-gallery__nav:focus-visible {
	outline: 2px solid var(--ine-green);
	outline-offset: 2px;
}

.ine-news-gallery__nav--prev {
	left: 0.85rem;
}

.ine-news-gallery__nav--next {
	right: 0.85rem;
}

.ine-news-gallery__counter {
	position: absolute;
	top: 0.85rem;
	right: 0.85rem;
	display: inline-flex;
	align-items: center;
	gap: 0.38rem;
	padding: 0.28rem 0.65rem;
	border-radius: 999px;
	background: rgba(18, 24, 32, 0.75);
	color: #ffffff;
	font-size: 0.78rem;
	font-weight: 600;
	backdrop-filter: blur(4px);
	z-index: 4;
	pointer-events: none;
}

.ine-news-gallery__counter svg {
	width: 13px;
	height: 13px;
	stroke: currentColor;
}

.ine-news-gallery__thumbs-track {
	display: flex;
	gap: 0.55rem;
	margin-top: 0.65rem;
	overflow-x: auto;
	padding-bottom: 0.35rem;
	scroll-behavior: smooth;
	-webkit-overflow-scrolling: touch;
}

.ine-news-gallery__thumb {
	flex: 0 0 76px;
	height: 52px;
	padding: 0;
	border: 2px solid transparent;
	border-radius: 6px;
	overflow: hidden;
	cursor: pointer;
	background: #dfe6e2;
	opacity: 0.6;
	transition: opacity 0.2s, border-color 0.2s, transform 0.2s;
}

.ine-news-gallery__thumb:hover {
	opacity: 0.95;
}

.ine-news-gallery__thumb.is-active {
	opacity: 1;
	border-color: var(--ine-green);
	box-shadow: 0 2px 8px rgba(11, 92, 59, 0.35);
}

.ine-news-gallery__thumb:focus-visible {
	outline: 2px solid var(--ine-green);
	outline-offset: 2px;
}

.ine-news-gallery__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media (max-width: 600px) {
	.ine-news-gallery__track {
		aspect-ratio: 4 / 3;
	}

	.ine-news-gallery__nav {
		width: 2.2rem;
		height: 2.2rem;
	}

	.ine-news-gallery__nav--prev {
		left: 0.45rem;
	}

	.ine-news-gallery__nav--next {
		right: 0.45rem;
	}

	.ine-news-gallery__thumb {
		flex: 0 0 62px;
		height: 44px;
	}
}

.ine-news-article__content {
	color: #2a3139;
	font-size: 1.05rem;
	line-height: 1.7;
}

.ine-news-article__content>*:first-child {
	margin-top: 0;
}

.ine-news-callout {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
	margin: 1.75rem 0;
	padding: 1.15rem 1.25rem;
	background: #eaf3ee;
	border-radius: 10px;
}

.ine-news-callout__icon {
	flex: 0 0 auto;
	display: grid;
	place-items: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	background: #d5e8dc;
	color: var(--ine-green);
}

.ine-news-callout__icon svg {
	width: 22px;
	height: 22px;
}

.ine-news-callout__body {
	color: #2a3139;
	font-size: 1rem;
	line-height: 1.55;
}

.ine-news-callout__body p {
	margin: 0;
}

.ine-news-callout__body strong {
	color: var(--ine-green-dark);
	font-weight: 700;
}

.ine-news-docs {
	margin: 2rem 0 1.5rem;
}

.ine-news-docs__title {
	margin: 0 0 0.85rem;
	font-size: 1.15rem;
	color: #1b2430;
}

.ine-news-docs__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ine-news-docs__list li+li {
	margin-top: 0.65rem;
}

.ine-news-doc {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 0.85rem;
	align-items: center;
	padding: 0.9rem 1rem;
	border: 1px solid #e3e7ea;
	border-radius: 8px;
	background: #f7f8f8;
	text-decoration: none;
	color: inherit;
}

.ine-news-doc:hover {
	border-color: #cfd8d3;
	text-decoration: none;
}

.ine-news-doc__icon,
.ine-news-doc__dl {
	display: grid;
	color: var(--ine-green);
}

.ine-news-doc__icon svg,
.ine-news-doc__dl svg {
	width: 22px;
	height: 22px;
}

.ine-news-doc__name {
	display: block;
	font-weight: 700;
	color: #1b2430;
	font-size: 0.95rem;
}

.ine-news-doc__meta {
	display: block;
	margin-top: 0.15rem;
	font-size: 0.82rem;
	color: #7a8490;
}

.ine-news-share {
	margin-top: 2rem;
	padding-top: 1.25rem;
	border-top: 1px solid #e3e7ea;
}

.ine-news-share--compact {
	margin: 0;
	padding: 0;
	border: 0;
}

.ine-news-share__label {
	margin: 0 0 0.75rem;
	font-weight: 700;
	color: #1b2430;
}

.ine-news-share__list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ine-news-share__btn {
	display: grid;
	place-items: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--ine-green);
	color: #fff;
	text-decoration: none;
}

.ine-news-share__btn:hover {
	background: var(--ine-green-dark);
	text-decoration: none;
}

.ine-news-share__btn .ine-social__glyph {
	width: 14px;
	height: 14px;
}

.ine-news-related {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ine-news-related li+li {
	margin-top: 0.85rem;
}

.ine-news-related__card {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	gap: 0.75rem;
	text-decoration: none;
	color: inherit;
}

.ine-news-related__card:hover {
	text-decoration: none;
}

.ine-news-related__thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 72px;
	aspect-ratio: 1;
	border-radius: 6px;
	overflow: hidden;
	background: #dfe6e2;
}

.ine-news-related__thumb img,
.ine-news-related__placeholder {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ine-news-related__thumb img {
	display: block;
}

.ine-news-related__body {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	min-width: 0;
}

.ine-news-related__body time {
	font-size: 0.75rem;
	color: #7a8490;
}

.ine-news-related__title {
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.35;
	color: #1b2430;
}

.ine-news-related__card:hover .ine-news-related__title {
	color: var(--ine-green);
}

.ine-news-related__arrow {
	align-self: flex-end;
	margin-top: auto;
	color: var(--ine-green);
	font-weight: 700;
	font-size: 1rem;
}

.ine-news-aside .ine-news-widget__title {
	color: var(--ine-green);
}

@media (max-width: 1100px) {
	.ine-news-single__grid {
		grid-template-columns: 220px minmax(0, 1fr);
	}

	.ine-news-aside {
		grid-column: 1 / -1;
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 1.25rem;
	}
}

@media (max-width: 960px) {
	.ine-news-single__grid {
		grid-template-columns: 1fr;
	}

	.ine-news-aside {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 700px) {
	.ine-news-aside {
		grid-template-columns: 1fr;
	}
}

/* ——— Publicações (arquivo) ——— */
.ine-pubs-toolbar {
	margin-bottom: 1.75rem;
}

.ine-pubs-search {
	position: relative;
	margin-bottom: 0.85rem;
}

.ine-pubs-search__icon {
	position: absolute;
	left: 0.85rem;
	top: 50%;
	transform: translateY(-50%);
	color: #8b949e;
	display: grid;
	pointer-events: none;
}

.ine-pubs-search__icon svg {
	width: 18px;
	height: 18px;
}

.ine-pubs-search input {
	width: 100%;
	border: 1px solid #e3e7ea;
	border-radius: 8px;
	padding: 0.8rem 0.9rem 0.8rem 2.55rem;
	font: inherit;
	background: #fff;
}

.ine-pubs-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem 1rem;
}

.ine-pubs-meta__count {
	margin: 0;
	font-size: 0.9rem;
	color: #5c6570;
}

.ine-pubs-featured {
	margin-bottom: 2.5rem;
}

.ine-pubs-featured__track {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
}

.ine-pubs-card {
	position: relative;
	border: 1px solid #e3e7ea;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.ine-pubs-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 16 / 10;
	background: #dfe6e2;
	overflow: hidden;
}

.ine-pubs-card__media img,
.ine-pubs-card__placeholder {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ine-pubs-card__media img {
	display: block;
}

.ine-pubs-card__body {
	position: relative;
	padding: 0.9rem 1rem 1.15rem;
	padding-right: 3.1rem;
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	flex: 1;
}

.ine-pubs-card__cat {
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: var(--ine-green);
	text-decoration: none;
}

.ine-pubs-card__cat:hover {
	text-decoration: underline;
}

.ine-pubs-card__title {
	margin: 0;
	font-size: 0.98rem;
	line-height: 1.3;
}

.ine-pubs-card__title a {
	color: #1b2430;
	text-decoration: none;
}

.ine-pubs-card__title a:hover {
	color: var(--ine-green);
}

.ine-pubs-card__meta {
	margin: 0.15rem 0 0;
	font-size: 0.8rem;
	color: #7a8490;
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.ine-pubs-dl {
	display: inline-grid;
	place-items: center;
	width: 2.1rem;
	height: 2.1rem;
	border-radius: 6px;
	background: var(--ine-green);
	color: #fff;
	text-decoration: none;
	flex-shrink: 0;
}

.ine-pubs-dl:hover {
	background: var(--ine-green-dark, #0a5c34);
	color: #fff;
}

.ine-pubs-dl svg {
	width: 16px;
	height: 16px;
}

.ine-pubs-card .ine-pubs-dl {
	position: absolute;
	right: 0.85rem;
	bottom: 0.95rem;
}

.ine-pubs-table-wrap {
	overflow-x: auto;
	border: 1px solid #e3e7ea;
	border-radius: 8px;
	background: #fff;
}

.ine-pubs-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.92rem;
}

.ine-pubs-table th,
.ine-pubs-table td {
	padding: 0.85rem 1rem;
	text-align: left;
	border-bottom: 1px solid #eef1f3;
	vertical-align: middle;
}

.ine-pubs-table thead th {
	font-size: 0.78rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #5c6570;
	background: #f7f9f8;
	font-weight: 700;
	white-space: nowrap;
}

.ine-pubs-table tbody tr:last-child td {
	border-bottom: 0;
}

.ine-pubs-table tbody tr:hover {
	background: #fafcfb;
}

.ine-pubs-table__title {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	min-width: 16rem;
}

.ine-pubs-table__title a {
	color: #1b3a5c;
	font-weight: 600;
	text-decoration: none;
}

.ine-pubs-table__title a:hover {
	color: var(--ine-green);
}

.ine-pubs-table__icon {
	color: var(--ine-green);
	display: grid;
	flex-shrink: 0;
}

.ine-pubs-table__icon svg {
	width: 18px;
	height: 18px;
}

.ine-pubs-table__cat {
	color: var(--ine-green);
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}

.ine-pubs-table__cat:hover {
	text-decoration: underline;
}

.ine-pubs-table__dl {
	width: 3rem;
	text-align: center;
}

.ine-news-help {
	background: #f1f3f4;
	border-radius: 8px;
	padding: 1.25rem 1.15rem 1.35rem;
}

.ine-news-help__title {
	margin: 0 0 0.5rem;
	font-size: 0.95rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #1b2430;
}

.ine-news-help__text {
	margin: 0 0 0.9rem;
	font-size: 0.9rem;
	color: #3a4350;
	line-height: 1.45;
}

.ine-news-help__btn {
	width: 100%;
	justify-content: center;
	gap: 0.45rem;
}

.ine-news-help__btn svg {
	width: 16px;
	height: 16px;
}

@media (max-width: 1100px) {
	.ine-pubs-featured__track {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 960px) {
	.ine-news-help {
		grid-column: 1 / -1;
	}
}

@media (max-width: 700px) {
	.ine-pubs-featured__track {
		grid-template-columns: 1fr;
	}
}

/* —— Archive Indicadores —— */
.ine-ind-main {
	background: #fff;
}

.ine-ind-hero {
	padding: 3.5rem 0 2.5rem;
	background: #fff;
}

.ine-ind-hero__title {
	margin: 0 0 1rem;
	font-size: clamp(2.25rem, 4vw, 3rem);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.03em;
	color: #1b2430;
}

.ine-ind-hero__flag {
	display: block;
	width: 56px;
	height: 4px;
	border-radius: 1px;
	background: linear-gradient(90deg,
			var(--ine-red) 0 33.33%,
			var(--ine-yellow-bright) 33.33% 66.66%,
			var(--ine-green) 66.66% 100%);
}

.ine-ind-hero__intro {
	margin: 1rem 0 0;
	max-width: 42rem;
	color: #6b7280;
	font-size: 1.05rem;
	line-height: 1.55;
}

.ine-ind-body {
	padding: 0 0 3.5rem;
}

.ine-ind-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.85rem 1.25rem;
	padding: 1rem 1.25rem;
	margin-bottom: 1.25rem;
	background: #fff;
	border: 1px solid #e5e9ec;
	border-radius: 6px;
	box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

.ine-ind-toolbar__field {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
	font-size: 0.92rem;
	color: #4b5563;
}

.ine-ind-toolbar__field select,
.ine-ind-toolbar__search input {
	appearance: none;
	border: 1px solid #d5dbe1;
	border-radius: 4px;
	background: #fff;
	color: #1b2430;
	font: inherit;
	line-height: 1.3;
}

.ine-ind-toolbar__field select {
	min-width: 4.5rem;
	padding: 0.45rem 2rem 0.45rem 0.65rem;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235c6570' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.55rem center;
}

.ine-ind-toolbar__field--tema {
	flex: 1 1 12rem;
}

.ine-ind-toolbar__field--tema select {
	width: 100%;
	min-width: 12rem;
}

.ine-ind-toolbar__search {
	position: relative;
	flex: 1 1 14rem;
	margin: 0;
	max-width: 22rem;
	margin-left: auto;
}

.ine-ind-toolbar__search input {
	width: 100%;
	padding: 0.5rem 2.5rem 0.5rem 0.85rem;
}

.ine-ind-toolbar__search button {
	position: absolute;
	top: 50%;
	right: 0.35rem;
	transform: translateY(-50%);
	display: grid;
	place-items: center;
	width: 2rem;
	height: 2rem;
	padding: 0;
	border: 0;
	background: transparent;
	color: #6b7280;
	cursor: pointer;
}

.ine-ind-toolbar__search button:hover {
	color: var(--ine-green);
}

.ine-ind-toolbar__search .ine-icon {
	width: 1.1rem;
	height: 1.1rem;
}

.ine-ind-table-wrap {
	overflow-x: auto;
	border: 1px solid #e5e9ec;
	border-radius: 6px;
	background: #fff;
}

.ine-ind-table {
	width: 100%;
	border-collapse: collapse;
	min-width: 720px;
}

.ine-ind-table th,
.ine-ind-table td {
	padding: 0.95rem 1rem;
	text-align: left;
	vertical-align: middle;
	border-bottom: 1px solid #eceff1;
}

.ine-ind-table thead th {
	background: var(--ine-green);
	color: #fff;
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	white-space: nowrap;
	border-bottom: 0;
}

.ine-ind-table__col-ind {
	width: 38%;
}

.ine-ind-row td {
	background: #fff;
	color: #4b5563;
	font-size: 0.95rem;
}

.ine-ind-row.is-open td {
	border-bottom-color: transparent;
}

.ine-ind-row__toggle {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: left;
	cursor: pointer;
	color: inherit;
	font: inherit;
}

.ine-ind-row__chev {
	flex: 0 0 auto;
	width: 0.45rem;
	height: 0.45rem;
	margin-top: 0.55rem;
	border-right: 2px solid #9aa3ad;
	border-bottom: 2px solid #9aa3ad;
	transform: rotate(-45deg);
	transition: transform 0.15s ease;
}

.ine-ind-row.is-open .ine-ind-row__chev {
	margin-top: 0.4rem;
	transform: rotate(45deg);
}

.ine-ind-row__icon {
	flex: 0 0 auto;
	display: grid;
	place-items: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 6px;
	background: var(--ine-green-soft);
	color: var(--ine-green);
}

.ine-ind-row__icon .ine-icon {
	width: 1.15rem;
	height: 1.15rem;
}

.ine-ind-row__text {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-width: 0;
}

.ine-ind-row__title {
	font-weight: 700;
	color: #1b2430;
	line-height: 1.3;
}

.ine-ind-row__tema {
	font-size: 0.82rem;
	color: #8a939d;
}

.ine-ind-detail {
	display: none;
}

.ine-ind-detail.is-open {
	display: table-row;
}

.ine-ind-detail td {
	padding: 0;
	border-bottom: 1px solid #eceff1;
	background: #f6f7f8;
}

.ine-ind-detail__inner {
	display: grid;
	grid-template-columns: minmax(10rem, 0.9fr) minmax(14rem, 1.2fr) minmax(12rem, 1fr);
	gap: 1.5rem 2rem;
	padding: 0.25rem 1.25rem 1.4rem 3.4rem;
}

.ine-ind-detail__period {
	margin: 0 0 0.35rem;
	font-size: 0.85rem;
	color: #6b7280;
}

.ine-ind-detail__num {
	margin: 0 0 0.85rem;
	font-size: clamp(2rem, 3vw, 2.6rem);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.03em;
	color: #1b2430;
}

.ine-ind-detail__vars {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.35rem;
}

.ine-ind-detail__vars li {
	display: flex;
	align-items: baseline;
	gap: 0.5rem;
	font-size: 0.92rem;
}

.ine-ind-detail__var-label {
	color: #6b7280;
	min-width: 4.5rem;
}

.ine-ind-detail__var {
	font-weight: 700;
	color: var(--ine-green);
}

.ine-ind-detail__var::before {
	content: "▲ ";
	font-size: 0.7em;
}

.ine-ind-detail__chart-title {
	margin: 0 0 0.65rem;
	font-size: 0.9rem;
	font-weight: 600;
	color: #374151;
}

.ine-ind-bars {
	display: block;
	max-width: 100%;
	height: auto;
}

.ine-ind-detail__resumo {
	margin: 0 0 0.85rem;
	color: #4b5563;
	font-size: 0.95rem;
	line-height: 1.55;
}

.ine-ind-detail__resumo p {
	margin: 0 0 0.5rem;
}

.ine-ind-detail__fonte {
	margin: 0 0 1rem;
	font-size: 0.82rem;
	color: #8a939d;
}

.ine-ind-detail__fonte span {
	font-weight: 600;
}

.ine-ind-detail__more {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.55rem 0.9rem;
	border: 1px solid var(--ine-green);
	border-radius: 4px;
	color: var(--ine-green);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none;
	background: #fff;
}

.ine-ind-detail__more:hover {
	background: var(--ine-green-soft);
}

.ine-ind-detail__more .ine-icon {
	width: 0.95rem;
	height: 0.95rem;
}

.ine-ind-footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 1.25rem;
}

.ine-ind-footer__count {
	margin: 0;
	color: #6b7280;
	font-size: 0.92rem;
}

@media (max-width: 900px) {
	.ine-ind-detail__inner {
		grid-template-columns: 1fr;
		padding-left: 1.25rem;
	}

	.ine-ind-toolbar__search {
		margin-left: 0;
		max-width: none;
		flex-basis: 100%;
	}
}