/* ==========================================================================
   Header — Soluções Moderna
   Espelha o header do site de referência (bg #05498C, sticky, mega menu).
   ========================================================================== */

.sm-header {
	position: sticky;
	top: 0;
	z-index: 999;
	display: flex;
	flex-direction: column;
	min-height: 90px;
	background-color: #05498c;
	border-radius: 0 0 40px 40px;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
}

.sm-header--scrolled {
	border-radius: 0 0 40px 40px;
}

.sm-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	max-width: 1369px;
	min-height: 90px;
	margin: 0 auto;
	padding: 0 clamp(16px, 8%, 80px);
	gap: 10px;
}

/* Logo */
.sm-header__logo {
	flex-shrink: 0;
}

.sm-header__logo-img {
	width: 166px;
	height: 56px;
	object-fit: contain;
	object-position: center center;
	display: block;
}

/* Navegação */
.sm-header__nav {
	display: flex;
	align-items: center;
	flex: 1;
	justify-content: center;
}

.sm-nav {
	display: flex;
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.sm-nav__item {
	position: relative;
}

.sm-nav__link {
	display: inline-block;
	padding: 10px 0 10px 30px;
	font-family: "Inter", "Roboto", sans-serif;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.4;
	color: #ffffff;
	text-transform: uppercase;
	transition: color 0.3s ease;
}

.sm-nav__item:first-child .sm-nav__link {
	padding-left: 0;
}

.sm-nav__link:hover,
.sm-nav__link:focus {
	color: #fdc500;
}

.sm-nav__link--mega {
	cursor: pointer;
}

.sm-nav__caret {
	display: inline-flex;
	align-items: center;
	margin-left: 6px;
	color: #ffffff;
	vertical-align: middle;
	transition: transform 0.25s ease;
}

.sm-nav__item:hover .sm-nav__caret,
.sm-nav__item:focus-within .sm-nav__caret {
	transform: rotate(180deg);
}

/* Submenu simples */
.sm-nav__submenu {
	position: absolute;
	top: 100%;
	left: 30px;
	z-index: 30;
	min-width: 220px;
	margin: 0;
	padding: 8px 0;
	list-style: none;
	background-color: #05498c;
	border-radius: 0 0 8px 8px;
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
}

.sm-nav__item:hover > .sm-nav__submenu,
.sm-nav__item:focus-within > .sm-nav__submenu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.sm-nav__submenu-link {
	display: block;
	padding: 10px 18px;
	font-size: 13px;
	color: #ffffff;
}

.sm-nav__submenu-link:hover {
	color: #fdc500;
}

/* Ações (busca, portal, CTA) */
.sm-header__actions {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}

.sm-header__search-toggle,
.sm-header__portal {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 8px;
	background-color: #32a5de;
	color: #ffffff;
	border: 1px solid #ffffff;
	border-radius: 8px;
	cursor: pointer;
	transition: background-color 0.3s ease, color 0.3s ease;
}

.sm-header__search-toggle:hover,
.sm-header__portal:hover {
	background-color: rgba(255, 255, 255, 0);
	color: #fdc500;
}

.sm-header__search-toggle svg,
.sm-header__portal svg {
	width: 18px;
	height: 18px;
}

.sm-header__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 8px;
	max-width: 245px;
	background-color: #fdc500;
	color: #000000;
	font-family: "Roboto", sans-serif;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.3;
	text-align: center;
	text-transform: uppercase;
	border: 1px solid #fdc500;
	border-radius: 8px;
	transition: background-color 0.3s ease, color 0.3s ease;
}

.sm-header__cta:hover {
	background-color: #ffe530;
	color: #000000;
}

.sm-header__cta svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

/* Botão do menu mobile */
.sm-nav-toggle {
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 44px;
	height: 44px;
	padding: 10px;
	background-color: transparent;
	border: 1px solid #ffffff;
	border-radius: 8px;
	cursor: pointer;
}

.sm-nav-toggle__bar {
	display: block;
	width: 100%;
	height: 3px;
	background-color: #ffffff;
	border-radius: 2px;
	transition: transform 0.25s ease, opacity 0.25s ease;
}

.sm-nav-toggle[aria-expanded="true"] .sm-nav-toggle__bar:nth-child(1) {
	transform: translateY(8px) rotate(45deg);
}

.sm-nav-toggle[aria-expanded="true"] .sm-nav-toggle__bar:nth-child(2) {
	opacity: 0;
}

.sm-nav-toggle[aria-expanded="true"] .sm-nav-toggle__bar:nth-child(3) {
	transform: translateY(-8px) rotate(-45deg);
}

/* Menu mobile */
.sm-mobile-menu {
	display: none;
}

/* Popup de busca */
.sm-search {
	position: fixed;
	inset: 0;
	z-index: 1200;
	display: flex;
	align-items: center;
	justify-content: center;
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.3s ease, visibility 0.3s;
}

.sm-search.is-open {
	visibility: visible;
	opacity: 1;
}

.sm-search__overlay {
	position: absolute;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.85);
}

.sm-search__panel {
	position: relative;
	width: min(720px, 90vw);
	padding: 16px;
}

.sm-search__close {
	position: absolute;
	top: -56px;
	right: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background-color: #ffe530;
	color: #363636;
	border: none;
	border-radius: 12px;
	cursor: pointer;
}

.sm-search__close svg {
	width: 18px;
	height: 18px;
}

.sm-search__form {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background-color: #ffffff;
	border-radius: 22px;
	overflow: hidden;
	width: 100%;
}

.sm-search__field {
	flex: 1;
	min-width: 0;
	padding: 20px 10px 20px 24px;
	font-size: 18px;
	line-height: 1.2;
	color: #39393c;
	background-color: transparent;
	border: none;
	outline: none;
}

.sm-search__field::placeholder {
	color: #a1a1aa;
}

.sm-search__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	padding: 26px;
	background-color: #ffe530;
	color: #363636;
	border: none;
	border-radius: 22px;
	cursor: pointer;
	margin-left: auto;
}

.sm-search__submit svg {
	width: 16px;
	height: 16px;
}

@media (max-width: 767px) {
	.sm-search__panel {
		padding: 16px;
		border-radius: 16px;
	}
	.sm-search__field {
		padding: 16px 8px 16px 16px;
		font-size: 16px;
	}
	.sm-search__submit {
		padding: 16px;
	}
	.sm-search__submit svg {
		width: 14px;
		height: 14px;
	}
}

/* Search Autocomplete Dropdown */
.sm-search-dropdown__item:hover{background:#f5f5f5!important;color:#05498C!important;}
.sm-search-dropdown__item:last-child{border-bottom:none!important;}

/* Responsivo */
@media (max-width: 1024px) {
	.sm-header__inner {
		flex-wrap: wrap;
		min-height: 64px;
		justify-content: space-between;
	}

	.sm-header__logo {
		order: 2;
		flex: 0 0 auto;
	}

	.sm-nav-toggle {
		display: flex;
		order: 1;
	}

	.sm-header__nav {
		display: none;
		order: 3;
		width: 100%;
	}

	.sm-header__actions {
		order: 4;
	}

	.sm-header__cta-text {
		display: none;
	}

	.sm-mobile-menu {
		display: none;
		width: 100%;
		background-color: #05498c;
		border-top: 1px solid rgba(255, 255, 255, 0.15);
		padding: 16px 24px 24px;
	}

	.sm-mobile-menu.is-open {
		display: block;
	}

	.sm-mobile-menu .sm-nav {
		flex-direction: column;
		align-items: flex-start;
	}

	.sm-mobile-menu .sm-nav__link {
		padding: 12px 0;
		width: 100%;
		cursor: pointer;
	}

	.sm-mobile-menu .sm-nav__item--mega > .sm-nav__link--mega {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		width: auto;
	}

	.sm-mobile-menu .sm-nav__caret {
		display: inline-flex;
		margin-left: 4px;
	}

	.sm-mobile-menu .sm-nav__item.is-open > .sm-nav__caret {
		transform: rotate(180deg);
	}

	.sm-mobile-menu .sm-nav__item--mega .sm-nav__link--mega {
		cursor: pointer;
	}

	/* Submenus fechados por padrão */
	.sm-mobile-menu .sm-nav__submenu,
	.sm-mobile-menu .sm-mega-menu {
		display: none;
	}

	.sm-mobile-menu .sm-nav__item.is-open > .sm-nav__submenu,
	.sm-mobile-menu .sm-nav__item.is-open > .sm-mega-menu {
		display: block;
	}
}

@media (max-width: 600px) {
	.sm-header__inner {
		padding: 0 clamp(12px, 4%, 24px);
		gap: 8px;
	}
	.sm-header__logo-img {
		width: 120px;
		height: auto;
	}
	.sm-nav-toggle {
		width: 38px;
		height: 38px;
		padding: 8px;
	}
	.sm-header__search-toggle,
	.sm-header__portal {
		width: 36px;
		height: 36px;
		padding: 6px;
	}
}

	.sm-header__logo-img {
		width: 140px;
		height: 47px;
	}
}

/* Search Results Page */
.sm-search-results{width:100%;}
.sm-search-results__hero{background:#FDC500;padding:40px 0 30px;}
.sm-search-results__inner{max-width:1369px;margin:0 auto;padding:0 20px;box-sizing:border-box;}
.sm-search-results__hero .sm-page-pill--search{display:flex;justify-content:flex-start;margin-bottom:16px;}
.sm-search-results__hero .sm-page-pill--search h1{display:inline-block;background:#FF383C;color:#fff;font-size:14px;font-weight:700;letter-spacing:.8px;padding:7px 14px;border-radius:6px;text-transform:uppercase;line-height:1;margin:0;}
.sm-search-results__form{display:flex;align-items:center;background:#fff;border-radius:30px;overflow:hidden;margin-bottom:12px;}
.sm-search-results__field{flex:1;min-width:0;padding:14px 20px;font-size:16px;border:none;outline:none;background:transparent;}
.sm-search-results__submit{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:14px 20px;background:#05498C;color:#fff;border:none;cursor:pointer;}
.sm-search-results__count{font-family:Inter,sans-serif;font-size:15px;color:#374151;margin:0;}
.sm-search-results__grid{display:flex;flex-direction:column;gap:12px;padding:40px 0;}
.sm-search-results__item{display:flex;gap:16px;align-items:flex-start;padding:16px;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06);}
.sm-search-results__thumb{flex-shrink:0;width:120px;height:90px;border-radius:8px;overflow:hidden;}
.sm-search-results__thumb img{width:100%;height:100%;object-fit:cover;}
.sm-search-results__body{min-width:0;}
.sm-search-results__title{margin:0 0 4px;font-family:Poppins,sans-serif;font-size:17px;font-weight:600;}
.sm-search-results__title a{color:#181A2A;text-decoration:none;}
.sm-search-results__title a:hover{color:#D9006F;}
.sm-search-results__date{font-family:Inter,sans-serif;font-size:12px;color:#9CA3AF;display:block;margin-bottom:4px;}
.sm-search-results__tags{display:flex;gap:4px;margin-bottom:4px;}
.sm-search-results__tags a{display:inline-block;font-family:'Work Sans',sans-serif;font-weight:600;font-size:11px;padding:3px 8px;border-radius:4px;text-decoration:none;}
.sm-search-results__excerpt{margin:0;font-family:Inter,sans-serif;font-size:14px;color:#6B7280;line-height:1.5;}
.sm-search-results__empty{font-family:Inter,sans-serif;font-size:16px;color:#6B7280;padding:40px 0;}
.sm-pagination{text-align:center;padding:0 0 40px;}
.sm-pagination .page-numbers{display:inline-block;padding:8px 14px;margin:0 3px;border-radius:6px;font-family:Inter,sans-serif;font-size:14px;color:#05498C;text-decoration:none;}
.sm-pagination .page-numbers.current{background:#05498C;color:#fff;}
@media(max-width:767px){.sm-search-results__hero{padding:20px 0 16px;}.sm-search-results__item{flex-direction:column;}.sm-search-results__thumb{width:100%;height:180px;}}

/* Modal RD Station */
#modal-rd{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);z-index:9999;align-items:center;justify-content:center;}
.modal-content{background:#32A5DE;border:4px solid #FFD200;border-radius:16px;padding:30px;max-width:600px;width:90%;position:relative;box-shadow:0 10px 30px rgba(0,0,0,.2);background-clip:padding-box;max-height:80vh;overflow-y:auto;}
#fechar-modal{position:absolute;top:10px;right:15px;cursor:pointer;font-size:22px;color:#fff;z-index:10;}
#modal-rd input,#modal-rd select,#modal-rd textarea{border-radius:8px!important;background:#fff!important;border:none!important;box-shadow:none!important;}
#modal-rd button#rd-button-mmxquh8o{background-color:#D9006F!important;border-color:#D9006F!important;}
#rd-column-mmxquh8k>div{background:#32A5DE!important;}
.modal-content::-webkit-scrollbar{width:6px}
.modal-content::-webkit-scrollbar-track{background:transparent}
.modal-content::-webkit-scrollbar-thumb{background:#FFD200;border-radius:10px}
.modal-content{scrollbar-width:thin;scrollbar-color:#FFD200 transparent}
@media(max-width:767px){.modal-content{width:100%;height:100%;max-width:100%;max-height:100%;margin:0;border-radius:0;border:none;padding:20px 16px;overflow-y:auto;-webkit-overflow-scrolling:touch}#fechar-modal{top:12px;right:16px;font-size:24px}}


/* 404 Page */
.sm-404{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:60px 20px;box-sizing:border-box;}
.sm-404__card{background:#05498C;border-radius:24px;padding:60px 40px;text-align:center;max-width:800px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.15);}
.sm-404-number{font-size:clamp(100px,15vw,170px);font-weight:800;line-height:1;color:#FFC107;margin-bottom:15px;}
.sm-404-title{font-size:clamp(24px,4vw,42px);font-weight:700;color:#fff;margin-bottom:20px;font-family:Poppins,sans-serif;}
.sm-404-text{max-width:700px;margin:0 auto;font-size:18px;line-height:1.8;color:rgba(255,255,255,.9);font-family:Inter,sans-serif;}
.sm-404-buttons{margin-top:45px;display:flex;justify-content:center;gap:20px;flex-wrap:wrap;}
.sm-404-primary{display:inline-block;background:#FFC107;color:#003A70;font-family:Inter,sans-serif;font-size:16px;font-weight:700;padding:16px 36px;border-radius:30px;text-decoration:none;transition:transform .2s,box-shadow .2s;}
.sm-404-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.2);}
@media(max-width:767px){.sm-404__card{padding:40px 24px;}.sm-404-text{font-size:16px;}}

