@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,700&display=swap');

/*
Theme Name: SciBiz 2026
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: scibiz-2026
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

SciBiz 2026 is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/* Base Variables */
html {
	scroll-behavior: smooth;
}

:root {
	--color-brand-green: #82C341;
	--color-brand-dark-teal: #1E3646;
	--color-brand-purple: #9E3371;
	--color-bg-light: #F4F5F7;
	--color-text-dark: #333333;
	--color-text-light: #ffffff;
	--color-footer-bg: #15232D;

	--font-primary: 'Open Sans', sans-serif;
}

/* Normalize & Resets (Simplified) */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	box-sizing: border-box;
	overflow-x: hidden;
	/* previne scroll horizontal global */
}

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

body {
	margin: 0;
	color: var(--color-text-dark);
	font-family: var(--font-primary);
	font-weight: 300;
	font-size: 16px;
	line-height: 1.6;
	background: #fff;
	overflow-x: hidden;
	/* previne elementos vazando lateralmente */
	max-width: 100%;
}

/* ==========================================================================
   Tipografia Global (Design System)
   - Open Sans 700 Bold  → h2 (site todo)
   - Open Sans 300 Light → p (site todo)
   ========================================================================== */

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-primary);
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--color-brand-dark-teal);
	clear: both;
}

/* H2 global (hero e restante do site) */
h2 {
	font-size: 2.875rem;
	/* 46px */
	line-height: 1.2;
}

p {
	font-family: var(--font-primary);
	font-size: 1.25rem;
	/* 20px */
	font-weight: 300;
	line-height: 1.6;
	margin-bottom: 1.5em;
}

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

a {
	color: var(--color-brand-dark-teal);
	text-decoration: none;
}

a:hover {
	color: var(--color-brand-green);
}

/* Layout Utilities */
.container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.text-center {
	text-align: center;
}

.bg-light {
	background-color: var(--color-bg-light);
}

.bg-dark-teal {
	background-color: var(--color-brand-dark-teal);
	color: white;
}

.bg-white {
	background-color: #fff;
}

/* Typography & Display Utilities */
.text-white {
	color: #ffffff !important;
}

.text-dark {
	color: #1E3646 !important;
}

.fw-300 {
	font-weight: 300 !important;
}

.fw-400 {
	font-weight: 400 !important;
}

.fw-700 {
	font-weight: 700 !important;
}

.ul-light {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}

.hover-green:hover {
	color: var(--color-brand-green, #82C341) !important;
}

.align-items-center {
	align-items: center !important;
}

.mt-40 {
	margin-top: 40px !important;
}

.mb-20 {
	margin-bottom: 20px !important;
}

/* Grid System */
.grid {
	display: grid;
	gap: 30px;
}

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

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

.grid-4 {
	grid-template-columns: repeat(4, 1fr);
}

.grid-5 {
	grid-template-columns: repeat(5, 1fr);
}

@media (max-width: 992px) {

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

@media (max-width: 768px) {

	.grid-3,
	.grid-4,
	.grid-5 {
		grid-template-columns: repeat(2, 1fr);
	}

	.grid-2 {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {

	.grid-3,
	.grid-4,
	.grid-5 {
		grid-template-columns: 1fr;
	}
}

header.entry-header {
	display: none;
}

.wp-block-columns {
	margin-bottom: 0 !important;
}

#masthead {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 9999;
}

/* Buttons */
.btn {
	display: inline-block;
	padding: 12px 30px;
	border-radius: 5px;
	text-decoration: none;
	font-weight: 700;
	transition: all 0.3s ease;
	border: 2px solid transparent;
	cursor: pointer;
}

.btn-primary {
	background-color: var(--color-brand-green);
	color: white;
}

.btn-primary:hover {
	opacity: 0.9;
	color: white;
}

.btn-outline-white {
	background-color: transparent;
	border-color: white;
	color: white;
}

.btn-outline-white:hover {
	background-color: white;
	color: var(--color-brand-dark-teal);
}

.btn-link {
	text-decoration: underline;
}


/* Section Titles with Risco */
.section-title-wrapper {
	display: flex;
	align-items: center;
	margin-bottom: 40px;
}

.section-title-wrapper h2 {
	margin-bottom: 0;
	margin-right: 20px;
	font-size: 2.5rem;
}

.risco {
	flex-grow: 1;
	position: relative;
	align-self: stretch;
}

.risco-verde {
	--risco-color: #1E3646;
}

.risco-matchmaking {
	--risco-color: #82C341;
}

.risco-branco {
	--risco-color: #FFFFFF;
}

.risco::before {
	content: '';
	position: absolute;
	top: 20px;
	left: 0;
	width: 30px;
	border-top: 2px solid var(--risco-color, #1E3646);
}

.risco::after {
	content: '';
	position: absolute;
	top: 20px;
	left: 30px;
	width: calc(100% - 30px);
	height: calc(100% - 25px);
	border-left: 2px solid var(--risco-color, #1E3646);
	border-bottom: 2px solid var(--risco-color, #1E3646);
	min-height: 40px;
}

@media (max-width: 768px) {
	.section-title-wrapper {
		flex-direction: column;
		align-items: flex-start;
	}

	.risco {
		width: 100%;
		margin-top: 10px;
		height: 40px;
		flex-grow: 0;
	}
}

/* Person/Speaker Card */
.person-card {
	text-align: center;
}


.person-name {
	font-size: 1.25rem;
	font-weight: 700;
	margin-bottom: 5px;
	color: var(--color-brand-dark-teal);
}

.person-role {
	font-size: 0.9rem;
	color: #666;
	font-style: italic;
}

/* Pilares Temáticos Section
------------------------------------------------------- */
.pillars-section {
	background-color: #ffffff;
	padding: 70px 0 80px;
}

.pillars-title {
	font-size: 2.2rem;
	font-weight: 400;
}

.pillars-grid {
	margin-top: 10px;
	gap: 40px;
}

@media (max-width: 768px) {
	.pillars-grid {
		gap: 0;
	}
}

.pillars-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.pillars-list li {
	padding: 18px 0;
	color: #3a4a5a;
	/* Dark blue-grey, matching the reference */
	font-size: 1rem;
	border-bottom: 1px solid #e5e5e5;
	display: flex;
	align-items: center;
	gap: 12px;
}

.pillars-list li::before {
	content: '•';
	color: #3a4a5a;
	font-size: 1.2rem;
	flex-shrink: 0;
	line-height: 1;
}

/* Header & Nav */
.site-header {
	padding: 0;
	background-color: transparent;
}

.header-top {
	background-color: #384259;
	/* Cor baseada na imagem enviada para o topo */
	padding: 15px 0;
}

.header-top-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.header-logo-img {
	height: 48px;
	width: auto;
	display: block;
}

.header-actions {
	display: flex;
	gap: 15px;
	align-items: center;
}

.btn-inscricao {
	background-color: var(--color-brand-green, #82C341);
	color: #ffffff;
	border-radius: 30px;
	padding: 10px 25px;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 0.85rem;
	border: none;
	transition: background-color 0.3s;
}

.btn-inscricao:hover {
	background-color: #6a9e33;
	color: #ffffff;
}

.btn-programacao {
	background-color: #ffffff;
	color: #384259;
	border-radius: 30px;
	padding: 10px 25px;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 0.85rem;
	border: none;
	transition: background-color 0.3s;
}

.btn-programacao:hover {
	background-color: #f0f0f0;
	color: #384259;
}

.header-bottom {
	background-color: #48546b;
	/* Ligeiramente mais claro para a barra de baixo */
	padding: 0;
}

.header-nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
	/* Espalha pelo menu todo */
	align-items: center;
	width: 100%;
}

.header-nav-list li {
	margin: 0;
	text-align: center;
}

.header-nav-list a {
	color: #ffffff;
	font-weight: 600;
	font-size: 0.8rem;
	text-transform: uppercase;
	padding: 15px 10px;
	display: inline-block;
	text-decoration: none;
	transition: color 0.3s;
}

.header-nav-list a:hover {
	color: var(--color-brand-green, #82C341);
}

.main-navigation {
	display: block;
	width: 100%;
}

@media (max-width: 992px) {
	.header-top-inner {
		flex-direction: column;
		gap: 20px;
	}

	.header-nav-list {
		flex-direction: column;
		display: none;
		background-color: #384259;
		padding: 10px 0;
	}

	.header-nav-list.toggled {
		display: flex;
	}

	.main-navigation .menu-toggle {
		display: block;
		margin: 10px auto;
		background: transparent;
		color: white;
		border: 1px solid white;
		padding: 5px 15px;
		cursor: pointer;
	}
}

@media (min-width: 993px) {
	.main-navigation .menu-toggle {
		display: none;
	}

	.header-nav-list {
		display: flex !important;
		/* overrides JS toggle if viewport changes */
	}
}

/* Footer */
.site-footer {
	background-color: var(--color-footer-bg);
	color: white;
	padding: 40px 0;
	text-align: center;
}

.site-footer a {
	color: #ccc;
}

.site-footer a:hover {
	color: white;
}

#primary {
	margin-top: 95px;
}

/* ==========================================================================
   Image Stripes (Faixas de Imagens)
   Desktop : imagem cobre 100% da largura (object-fit: cover)
   Mobile  : marquee animado — duas cópias se movendo lateralmente
   ========================================================================== */

.image-stripe {
	width: 100%;
	overflow: hidden;
	line-height: 0;
	/* remove gap under inline images */
}

/* ---- Desktop: imagem única em cover ---- */
.image-stripe-track {
	display: flex;
	/* as duas cópias lado a lado */
	width: 100%;
}

.image-stripe-img {
	width: 100%;
	height: 340px;
	object-fit: cover;
	object-position: center;
	display: block;
	flex-shrink: 0;
}

/* Segunda cópia escondida no desktop */
.image-stripe-track .image-stripe-img:nth-child(2) {
	display: none;
}

/* ---- Mobile: marquee animado ---- */
@media (max-width: 768px) {
	.image-stripe-track {
		width: max-content;
		/* deixa as duas imagens lado a lado */
		animation: marquee-scroll 18s linear infinite;
	}

	.image-stripe-img {
		width: 90vw;
		/* cada imagem ocupa 90% da largura da tela */
		height: 220px;
		flex-shrink: 0;
	}

	/* Mostra a segunda cópia para o loop funcionar */
	.image-stripe-track .image-stripe-img:nth-child(2) {
		display: block;
	}
}

@keyframes marquee-scroll {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-50%);
	}

	/* -50% = largura de uma cópia */
}

/* Pausa no hover (apenas desktop/touch-friendly) */
@media (hover: hover) {
	.image-stripe:hover .image-stripe-track {
		animation-play-state: paused;
	}
}

/* Respeita preferência de movimento reduzido */
@media (prefers-reduced-motion: reduce) {
	.image-stripe-track {
		animation: none;
	}

	.image-stripe-track .image-stripe-img:nth-child(2) {
		display: none;
	}
}


/* Líderes Section */
.lideres-section {
	background-color: #F8F6F2;
	/* Light beige/cream */
	padding: 80px 0;
	color: #15232d;
}

.lideres-header {
	display: flex;
	align-items: flex-start;
	margin-bottom: 60px;
}

.lideres-title {
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1.2;
	flex: 0 0 60%;
}


/* Specific override for Líderes header alignment */
.lideres-section .section-title-wrapper {
	align-items: center;
	/* Revert to center or keep start if image needs it? usually center for the stroke */
}

/* Bracket Decoration removed - returning to image based */

.person-card .person-name {
	text-transform: uppercase;
	font-weight: 300;
	/* Thinner font */
	font-size: 1.1rem;
	letter-spacing: 1px;
	color: #555;
	margin-top: 15px;
}

.person-card .person-role {
	font-weight: 600;
	color: #1E3646;
	font-size: 0.95rem;
	line-height: 1.4;
}

.asterisk {
	color: #C06C84;
	/* Pinkish/Purple */
	font-weight: 400;
	font-size: 1rem;
	vertical-align: super;
}

.lideres-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 50px;
	padding-top: 20px;
}

.lideres-note {
	font-size: 0.9rem;
	color: #C06C84;
	font-style: italic;
}

.lideres-link a {
	color: #1E3646;
	font-weight: 800;
	text-decoration: underline;
	text-transform: lowercase;
	/* match image? "+ ver..." looks lowercase */
}

.lideres-link a:hover {
	color: #82C341;
}

/* Fix Person Image size for card */
.person-img {
	width: 180px;
	height: 180px;
	border: none;
	border-radius: 50%;
	box-shadow: none;
	/* Cleaner look */
}

/* Stats Section
------------------------------------------------------- */
.stats-section {
	background: linear-gradient(to bottom, #ffffff 0%, #eaf8d1 100%);
	padding: 70px 0 80px;
}

.stats-section .section-title-wrapper h2,
.stats-header h2 {
	font-size: 2.2rem;
	font-weight: 700;
	color: #1E3646;
}

.stats-description {
	color: #555;
	font-size: 1rem;
	line-height: 1.7;
	margin-bottom: 40px;
	margin-top: 16px;
}

.stat-box {
	background-color: #CFF6A4;
	/* matches pale lime green */
	border-radius: 0;
	/* sharp corners */
	padding: 25px 20px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	/* Push content to bottom */
	align-items: flex-end;
	/* Right-align */
	min-height: 160px;
	transition: transform 0.25s ease;
}

.stat-box:hover {
	transform: translateY(-4px);
}

.stat-number {
	display: block;
	font-size: 3.5rem;
	font-weight: 300;
	color: #26553A;
	/* dark green */
	line-height: 1;
	margin-bottom: 5px;
}

.stat-label {
	display: block;
	font-size: 0.95rem;
	font-weight: 700;
	color: #26553A;
	/* dark green */
	text-align: right;
}

.mb-30 {
	margin-bottom: 24px;
}

/* Ecosystem Title Styles (id: conheca) */

/* Title: primeira linha regular, segunda (strong) bold */
.eco-title {
	font-size: 2.875rem;
	/* 46px – igual ao h2 global */
	font-weight: 400;
	/* linha regular */
	color: #ffffff;
	line-height: 1.25;
	margin-bottom: 0;
}

.eco-title strong {
	font-weight: 700;
	color: #ffffff;
}

.eco-description {
	max-width: 600px;
	/* largura para wrap natural como no print */
	font-family: var(--font-primary);
	font-size: 1.25rem;
	/* 20px – p restante do site */
	font-weight: 400;
	color: #ffffff;
	line-height: 1.7;
	margin-top: 32px;
	margin-bottom: 50px;
}

/* Eco Cards */
.eco-grid {
	gap: 10px;
	align-items: start;
}

.eco-card {
	background-color: #2B4A30;
	/* dark green do print */
	color: #ffffff;
	padding: 28px 22px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	/* alinhamento à esquerda */
	gap: 14px;
	border-radius: 0;
	transition: background-color 0.25s ease;
	height: 100%;
}

.eco-card:hover {
	background-color: #3a6040;
}

.eco-icon {
	font-size: 2rem;
	color: rgba(255, 255, 255, 0.9);
	margin-bottom: 0;
	line-height: 1;
}

.eco-card-title {
	font-size: 1.05rem;
	/* ~17px */
	font-weight: 400;
	/* título regular */
	color: #ffffff;
	line-height: 1.35;
	margin: 0;
}

.eco-card-desc {
	font-size: 0.875rem;
	/* ~14px */
	font-weight: 300;
	color: rgba(255, 255, 255, 0.85);
	line-height: 1.6;
	flex-grow: 1;
	/* empurra o link para o fim */
	margin: 0;
}

.eco-link {
	color: #ffffff !important;
	font-size: 0.875rem;
	font-weight: 700;
	text-decoration: none;
	margin-top: auto;
}

.eco-link:hover {
	color: #6a9e33;
	text-decoration: none;
}

.eco-tagline {
	margin-top: 55px;
	font-size: 1.25rem;
	/* 20px */
	font-weight: 400;
	color: #1E3646;
	line-height: 1.5;
	margin-bottom: 0;
}

.eco-tagline strong {
	font-weight: 700;
}

/* Hero Section Specifics */
.hero-section {
	position: relative;
	min-height: auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: white;
	padding: 60px 0;
	overflow: hidden;
}

/* Hero de páginas internas: fundo estático verde-escuro padrão */
.hero-festival,
.hero-startups,
.inscricao-hero {
	background-color: #2B5741;
}

/* Video Background styles */
.hero-video-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	overflow: hidden;
}

.hero-video-bg .hero-video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Extra Video Layer (Multiply/Opacity) */
.hero-video-extra {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	overflow: hidden;
}

.hero-video-extra .hero-video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	mix-blend-mode: multiply;
	opacity: 0.2;
	/* Slight transparency for a better blend */
}

/* Overlay for the video */
.hero-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 60, 20, 0.35);
	/* verde-escuro translúcido p/ melhor contraste */
	z-index: 2;
}

.hero-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	z-index: 3;
	width: 100%;
	gap: 30px;
}

/* Linha 1: Título + Risco branco */
.hero-title-row {
	margin-bottom: 0 !important;
	/* override section-title-wrapper default */
	align-items: stretch;
	/* risco acompanha a altura do título */
}

.hero-title-row h1 {
	margin-bottom: 0;
	margin-right: 20px;
}

/* Linha 2: Corpo – texto esquerda, logotipo direita */
.hero-body-row {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px;
}

.hero-body-left {
	flex: 0 0 55%;
}

.hero-body-right {
	flex: 1;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.hero-main-title {
	/* h1 hero: Open Sans 700, 55px */
	font-size: 3.4375rem;
	/* 55px */
	line-height: 1.1;
	font-weight: 700;
	margin-bottom: 0;
	color: #ffffff;
}

.hero-subtitle {
	/* h2 hero: Open Sans 700, 46px – herdado do h2 global */
	font-size: 2.875rem;
	/* 46px */
	font-weight: 700;
	margin-bottom: 30px;
	line-height: 1.2;
	color: #1E3646;
}

.hero-subtitle strong {
	font-weight: 700;
}

.hero-date {
	/* h3 hero: Open Sans 700, 36px, letter-spacing -2% */
	font-size: 2.25rem;
	/* 36px */
	font-weight: 700;
	letter-spacing: -0.02em;
	margin-bottom: 30px;
	color: #1E3646;
}

.hero-location {
	/* p hero: Open Sans 400, 22px */
	font-size: 1.375rem;
	/* 22px */
	font-weight: 400;
	line-height: 1.5;
	margin-bottom: 25px;
	color: #1E3646;
}

.hero-location strong {
	font-weight: 700;
}

.hero-location a {
	color: #1E3646;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.hero-location a:hover {
	color: #82C341;
}

.hero-intro {
	/* p hero: Open Sans 400, 22px */
	font-size: 1.375rem;
	/* 22px */
	font-weight: 400;
	margin-bottom: 0;
	line-height: 1.6;
	color: #1E3646;
}

/* Right Column */
.hero-right {
	flex: 0 0 45%;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	position: relative;
	padding-left: 20px;
}

.hero-line-decoration-wrapper {
	width: 100%;
	display: flex;
	justify-content: flex-end;
	margin-bottom: 40px;
}

/* Decorative Line */
.hero-line-decoration {
	width: 100%;
	height: 60px;
	margin: 0;
}

.hero-logo-area {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.hero-logo-img {
	max-width: 250px;
	margin-right: 0;
	margin-bottom: 15px;
}


/* Scroll Indicator */
.hero-scroll-indicator {
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
}

.arrow-down {
	width: 20px;
	height: 20px;
	border-right: 3px solid rgba(255, 255, 255, 0.8);
	border-bottom: 3px solid rgba(255, 255, 255, 0.8);
	transform: rotate(45deg);
	margin: -5px 0;
	animation: bounce 2s infinite;
}

@keyframes bounce {

	0%,
	20%,
	50%,
	80%,
	100% {
		transform: translateY(0) rotate(45deg);
	}

	40% {
		transform: translateY(-10px) rotate(45deg);
	}

	60% {
		transform: translateY(-5px) rotate(45deg);
	}
}

/* Responsive */
@media (max-width: 992px) {
	.hero-container {
		flex-direction: column;
	}

	.hero-left {
		margin-bottom: 40px;
	}

	.hero-right::before {
		display: none;
	}

	.scibiz-title {
		font-size: 3rem;
	}
}

@media (max-width: 768px) {
	.hero-body-row {
		flex-direction: column;
	}

	.hero-body-left,
	.hero-body-right {
		flex: unset;
		width: 100%;
	}
}

/* Connections Map Section
------------------------------------------------------- */
.connections-section {
	background-color: #f5f1ea;
	padding: 70px 0 80px;
	overflow: hidden;
	/* contém os nós absolutos do mapa */
}

.connections-title {
	font-size: 2.2rem;
	line-height: 1.3;
}

.connections-title strong {
	font-weight: 800;
}

.connections-map {
	position: relative;
	width: 80%;
	/* ligeiramente mais largo para dar espaço aos labels */
	aspect-ratio: 1;
	margin: 0 auto;
	/* sem overflow:hidden — os labels já usam width fixa e não devem ser cortados */
}

/* Mobile: esconde o mapa radial e usa lista empilhada */
@media (max-width: 768px) {

	/* Esconde o vídeo central no mobile */
	.conn-center {
		display: none;
	}

	/* Container vira coluna única */
	.connections-map {
		position: static;
		aspect-ratio: unset;
		width: 100%;
		height: auto;
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	/* Todos os nós: linha com círculo à esquerda e label à direita */
	.conn-node,
	.conn-node--top,
	.conn-node--left,
	.conn-node--right {
		position: static !important;
		transform: none !important;
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		gap: 16px !important;
		width: 100% !important;
		margin-bottom: 0 !important;
	}

	.conn-node--top {
		flex-direction: row-reverse !important;
	}

	.conn-node--right .conn-label {
		text-align: left !important;
	}

	.conn-label {
		font-size: 1.2rem !important;
		font-weight: 700 !important;
	}

	/* Garante que o círculo venha primeiro e o label depois */
	.conn-node .conn-circle,
	.conn-node--top .conn-circle,
	.conn-node--left .conn-circle,
	.conn-node--right .conn-circle {
		order: 0;
		flex-shrink: 0;
	}

	.conn-node .conn-label,
	.conn-node--top .conn-label,
	.conn-node--left .conn-label,
	.conn-node--right .conn-label {
		order: 1;
		text-align: left;
		margin: 0;
		width: auto;
		flex: 1;
	}

	/* Circles menores no mobile */
	.conn-circle {
		width: 56px;
		height: 56px;
		font-size: 1.2rem;
	}

	.conn-label {
		font-size: 0.9rem;
	}
}

/* SVG lines — fills the container */
.connections-lines {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 1;
}

/* Center video circle */
.conn-center {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80%;
	padding-bottom: 80%;
	border-radius: 50%;
	overflow: hidden;
	z-index: 5;
}

.conn-video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Satellite nodes — uniform radial placement via CSS trig */
.conn-node {
	position: absolute;
	top: calc(50% + sin(var(--angle)) * 44%);
	left: calc(50% + cos(var(--angle)) * 44%);
	transform: translate(-50%, -50%);
	display: flex;
	align-items: center;
	z-index: 10;
}

/* 1) Label ABOVE icon */
.conn-node--top {
	flex-direction: column;
	align-items: center;
}

.conn-node--top .conn-label {
	text-align: center;
	margin-bottom: 8px;
	order: -1;
	/* label before circle */
}

/* 2) Label to the LEFT of icon */
.conn-node--left {
	flex-direction: row;
	align-items: center;
	width: auto;
}

.conn-node--left .conn-label {
	text-align: left;
	margin-left: 10px;
	width: 140px;
	/* aumentado frente ao 110px anterior */
}

/* 3) Label to the RIGHT of icon */
.conn-node--right {
	flex-direction: row-reverse;
	align-items: center;
	width: auto;
}

.conn-node--right .conn-label {
	text-align: right;
	margin-right: 10px;
	width: 140px;
	/* aumentado frente ao 110px anterior */
}

.conn-circle {
	width: 110px;
	height: 110px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: white;
	font-size: 1.4rem;
	flex-shrink: 0;
}

.conn-label {
	font-size: 0.78rem;
	color: #3a4a5a;
	line-height: 1.4;
	margin: 0;
	width: 160px;
	/* label mais largo para evitar corte */
}

/* App SciBiz Section
------------------------------------------------------- */
.app-section {
	background-color: #2B4A30;
	/* Dark green */
	width: 100%;
	overflow: hidden;
}

.app-inner {
	display: flex;
	align-items: stretch;
	min-height: 260px;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
}

@media (max-width: 768px) {
	.app-inner {
		flex-direction: column;
		padding: 0 20px;
	}

	.app-text {
		border-right: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.15);
		padding: 40px 0;
	}

	.app-visual {
		flex: unset;
		width: 100%;
		justify-content: center;
		padding: 30px 0;
	}
}

/* Left column */
.app-text {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 50px 60px 50px 0;
	border-right: 1px solid rgba(255, 255, 255, 0.15);
}

.app-tag {
	font-size: 0.9rem;
	color: #82C341;
	font-style: italic;
	margin-bottom: 6px;
	display: block;
}

.app-title {
	font-size: 2.4rem;
	font-weight: 800;
	color: #ffffff;
	line-height: 1.1;
	margin: 0 0 10px;
}

/* Title wrapper inside app section */
.app-text .section-title-wrapper {
	margin-bottom: 16px;
}

.app-desc {
	font-size: 0.9rem;
	color: rgba(255, 255, 255, 0.85);
	line-height: 1.7;
	max-width: 500px;
	margin-bottom: 28px;
}

.app-btn {
	display: inline-block;
	background: transparent;
	color: #ffffff;
	border: 2px solid #ffffff;
	padding: 10px 24px;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-decoration: none;
	transition: background 0.2s, color 0.2s;
	width: fit-content;
}

.app-btn:hover {
	background: #ffffff;
	color: #2B4A30;
}

/* Right column: phone mockup */
.app-visual {
	flex: 0 0 340px;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	padding: 0 20px;
}

.app-phone {
	width: 220px;
	background: #ffffff;
	border-radius: 32px 32px 0 0;
	box-shadow: 0 -6px 30px rgba(0, 0, 0, 0.35);
	padding: 24px 20px 0;
	position: relative;
	/* Notch */
}

.app-phone::before {
	content: '';
	display: block;
	width: 60px;
	height: 6px;
	background: #ccc;
	border-radius: 3px;
	margin: 0 auto 20px;
}

.app-phone-screen {
	background: #f5f5f5;
	border-radius: 8px;
	padding: 20px 16px;
	text-align: center;
}

.app-qr-label {
	font-size: 0.72rem;
	font-weight: 700;
	color: #1E3646;
	text-transform: uppercase;
	line-height: 1.4;
	margin-bottom: 14px;
}

.app-qr-img {
	width: 160px;
	height: 160px;
	display: block;
	margin: 0 auto;
}

/* Palcos Section
------------------------------------------------------- */
.palcos-section {
	background-color: #ffffff;
	padding: 80px 0;
}

.pt-title-wrapper {
	align-items: flex-start;
}

.palcos-title {
	font-size: 2.875rem;
	font-weight: 400;
	line-height: 1.25;
	margin-bottom: 0;
}

.palcos-title strong {
	font-weight: 700;
}

.palcos-grid {
	gap: 15px;
	align-items: start;
}

.palco-card {
	background-color: #384259;
	padding: 24px 20px;
	color: #ffffff;
	border-radius: 0;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.palco-card-title {
	font-size: 1.05rem;
	font-weight: 400;
	color: #ffffff;
	line-height: 1.4;
	margin: 0;
}

.palco-card-desc {
	font-size: 0.85rem;
	font-weight: 300;
	color: rgba(255, 255, 255, 0.85);
	line-height: 1.5;
	margin: 15px 0 0 0;
}

.palco-card-desc a {
	font-weight: 700;
	color: var(--color-brand-green, #82C341);
}

.palco-card-footer {
	font-size: 0.85rem;
	font-weight: 700;
	color: var(--color-brand-green, #82C341);
	line-height: 1.4;
	margin: 15px 0 0 0;
}

/* Festival Section
------------------------------------------------------- */
.festival-section {
	/* Gradient similiar à referência (fundo que vai do bege/branco para um leve tom esverdeado/acinzentado, ou opcionalmente solid bg-light se não for gradient) */
	background: radial-gradient(135deg, #ffffff 0%, #d3ffb6 100%);
	padding: 80px 0;
}

.festival-title {
	font-size: 2.875rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--color-brand-purple);
	margin-bottom: 0;
}

.festival-title span {
	font-weight: 300;
}

.risco-roxo {
	--risco-color: var(--color-brand-purple);
}

.festival-desc {
	font-size: 1.1rem;
	font-weight: 400;
	color: #4a5568;
	line-height: 1.6;
	margin-top: 30px;
	margin-bottom: 40px;
	max-width: 800px;
}

.festival-grid {
	gap: 15px;
	align-items: start;
	margin-bottom: 50px;
}

.festival-card {
	background-color: var(--color-brand-purple, #9E3371);
	padding: 30px 25px;
	color: #ffffff;
	display: flex;
	flex-direction: column;
	border-radius: 0;
	height: 100%;
	/* align-items: flex-start; */
}

.festival-icon {
	color: #ffffff;
	font-size: 2rem;
	margin-bottom: 25px;
}

.festival-card-title {
	font-size: 1.1rem;
	font-weight: 400;
	color: #ffffff;
	margin: 0;
	line-height: 1.3;
}

.festival-card-desc {
	font-size: 0.875rem;
	font-weight: 300;
	color: rgba(255, 255, 255, 0.9);
	line-height: 1.5;
	margin: 10px 0 0 0;
}

.btn-outline-purple {
	color: var(--color-brand-purple);
	background-color: transparent;
	border: 1px solid var(--color-brand-purple);
	border-radius: 50px;
	/* pill styling */
	padding: 12px 35px;
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	transition: all 0.3s ease;
	text-decoration: none;
	display: inline-block;
}

.btn-outline-purple:hover {
	background-color: var(--color-brand-purple);
	color: #ffffff;
}

.page-festival .schedule-tags .tag {
	border-radius: 0;
}

/* Speakers Category Section
------------------------------------------------------- */
.speakers-bg {
	background-color: #f5f1ea;
	padding: 40px 0;
}

.speakers-section-title {
	font-family: var(--font-primary);
	font-size: 2.5rem;
	font-weight: 700;
	color: #26553A;
	/* dark green to match image */
	margin-bottom: 0;
}

.speakers-carousel {
	display: flex;
	gap: 40px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	padding-bottom: 20px;
	margin-top: 20px;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	/* Firefox */
}

.speakers-carousel::-webkit-scrollbar {
	display: none;
	/* WebKit */
}

.speakers-carousel-wrapper {
	position: relative;
	display: flex;
	align-items: center;
}

.carousel-arrow {
	background: transparent;
	border: none;
	color: #ffffff;
	font-size: 2rem;
	cursor: pointer;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	transition: color 0.3s;
}

/* For speakers section, use dark green color */
.speaker-prev,
.speaker-next {
	color: #26553A;
}

.speaker-prev {
	left: -40px;
}

.speaker-next {
	right: -40px;
}

.curadoria-prev {
	left: -40px;
}

.curadoria-next {
	right: -40px;
}

.carousel-arrow:hover {
	color: var(--color-brand-green, #82C341);
}

.speaker-card {
	flex: 0 0 240px;
	/* fixed width for cards in carousel */
	scroll-snap-align: start;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.speaker-name {
	font-size: 1.1rem !important;
	color: #777777 !important;
}

.speaker-role {
	font-size: 0.9rem !important;
}

/* Curadoria Estratégica Section
------------------------------------------------------- */
.curadoria-section {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding: 100px 0;
	position: relative;
}

.curadoria-section::before {
	/* Backup overlay in case image doesn't load/contrast */
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(160, 42, 114, 0.4);
	/* fallback purplish overlay */
	pointer-events: none;
}

.curadoria-container {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1.2fr 0.8fr;
	/* left slightly wider */
	gap: 60px;
	align-items: center;
}

.curadoria-title-wrapper {
	align-items: stretch;
}

.curadoria-title {
	font-size: 2.875rem;
	font-weight: 700;
	line-height: 1.25;
	margin-bottom: 20px;
}

.curadoria-desc {
	font-size: 1.15rem;
	line-height: 1.7;
	margin-bottom: 20px;
}

.curadoria-carousel-wrapper {
	position: relative;
	width: 100%;
	max-width: 350px;
	margin: 0 auto;
}

.curadoria-carousel {
	display: flex;
	overflow: hidden;
	/* For now just one item mock, or simple overflow */
	width: 100%;
}

.curador-card {
	flex: 0 0 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.curador-img {
	width: 200px;
	height: 200px;
	border-radius: 50%;
	object-fit: cover;
	margin-bottom: 20px;
	border: 3px solid #ffffff;
	/* soft border */
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}

.curador-name {
	font-size: 1.2rem;
	margin-bottom: 10px;
	letter-spacing: 1px;
}

.curador-role {
	font-size: 1rem;
	line-height: 1.4;
	margin-bottom: 15px;
}

.curador-linkedin {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 1px solid #ffffff;
	border-radius: 4px;
	transition: all 0.3s ease;
}

.curador-linkedin:hover {
	background-color: #ffffff;
	color: var(--color-brand-purple, #9E3371) !important;
}

@media (max-width: 992px) {
	.curadoria-container {
		grid-template-columns: 1fr;
	}

	.speaker-prev {
		left: 0px;
	}

	.speaker-next {
		right: 0px;
	}
}

#secondary {
	display: none;
}

/* Site Footer Styles - Optimized for reference layout */
.site-footer {
	background-color: #262a33;
	/* Dark background matching screenshot */
	color: #ffffff;
	padding: 80px 0 40px 0;
	font-family: var(--font-primary, 'Open Sans', sans-serif);
}

.footer-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
}

.footer-top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 50px;
}

.footer-logo img {
	max-width: 180px;
	height: auto;
}

.footer-links-wrapper {
	display: flex;
	justify-content: flex-end;
	gap: 60px;
	flex: 1;
}

.footer-col {
	min-width: 250px;
}

.footer-nav {
	list-style: none;
	padding: 0;
	margin: 0;
}

.footer-nav li {
	margin-bottom: 6px;
}

.footer-nav a {
	color: #ffffff;
	text-decoration: none;
	font-size: 0.85rem;
	font-weight: 400;
	transition: opacity 0.2s;
}

.footer-nav a:hover {
	opacity: 0.7;
}

.footer-contact p {
	color: #ffffff;
	font-size: 0.85rem;
	line-height: 1.6;
	margin: 0 0 10px 0;
}

.footer-contact a {
	color: #ffffff;
	text-decoration: none;
	font-weight: 700;
	font-size: 0.85rem;
}

.footer-bottom {
	margin-top: 60px;
	text-align: center;
}

.footer-sep-line {
	width: 100%;
	height: 1px;
	background-color: rgba(255, 255, 255, 0.1);
	margin-bottom: 25px;
}

.copyright {
	font-size: 0.75rem;
	color: rgba(255, 255, 255, 0.5);
	margin: 0;
}

@media (max-width: 900px) {
	.footer-top {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.footer-links-wrapper {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 30px;
		width: 100%;
	}

}

/* ==========================================================================
   Página de Check-in de Ingressos (Estilização Customizada)
   ========================================================================== */

.scibiz-checkin-form {
	max-width: 600px;
	margin: 0 auto;
	padding: 30px;
	background: #ffffff;
	border-radius: 8px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.scibiz-checkin-warning {
	background-color: transparent !important;
	/* override inline if needed */
	color: var(--color-brand-purple, #9E3371) !important;
	border: 1px solid var(--color-brand-purple, #9E3371) !important;
	border-radius: 5px;
	padding: 15px 20px !important;
	margin-bottom: 25px !important;
	font-weight: 400;
	font-size: 0.95rem;
	display: flex;
	align-items: center;
	box-shadow: 0 2px 10px rgba(158, 51, 113, 0.1);
}

.scibiz-checkin-warning strong {
	font-weight: 700;
	margin-right: 5px;
	font-size: 1rem;
}

.scibiz-checkin-title {
	font-family: var(--font-primary);
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--color-brand-dark-teal);
	margin-bottom: 20px;
	border-bottom: 2px solid var(--color-bg-light);
	padding-bottom: 10px;
}

.scibiz-checkin-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

/* Make some inputs span full width */
.scibiz-input-group.full-width {
	grid-column: 1 / -1;
}

.scibiz-input-group label {
	display: block;
	font-weight: 700;
	margin-bottom: 8px;
	color: var(--color-brand-dark-teal);
	font-size: 0.9rem;
}

.scibiz-input-group .scibiz-input {
	width: 100%;
	padding: 12px 15px;
	border: 1px solid #ddd;
	border-radius: 5px;
	font-family: var(--font-primary);
	font-size: 1rem;
	color: #555;
	background-color: #f9f9f9 !important;
	/* Forces light gray over inline */
	transition: border-color 0.3s ease;
}

.scibiz-input-group .scibiz-input:focus {
	outline: none;
	border-color: var(--color-brand-green);
	background-color: #ffffff !important;
}

.scibiz-checkin-actions {
	margin-top: 30px;
	display: flex;
	align-items: center;
	gap: 15px;
	justify-content: flex-end;
}

.scibiz-checkin-actions .wps_etmfw_checkin_button_section {
	margin: 0;
}

.scibiz-checkin-actions input[type="submit"] {
	background-color: var(--color-brand-green);
	color: #fff;
	border: none;
	padding: 12px 30px;
	border-radius: 5px;
	font-weight: 700;
	font-size: 1rem;
	cursor: pointer;
	transition: background-color 0.3s ease;
	text-transform: uppercase;
}

.scibiz-checkin-actions input[type="submit"]:hover {
	background-color: #6a9e33;
}

/* Mobile Adjustments */
@media (max-width: 600px) {
	.scibiz-checkin-grid {
		grid-template-columns: 1fr;
		gap: 15px;
	}

	.scibiz-input-group {
		grid-column: 1 / -1;
	}
}

/* ==========================================================================
   Página Festival SciBiz
   ========================================================================== */

.hero-festival {
	background-image: url('img/bg-hero-festival.jpg');
	background-size: cover;
	background-position: center;
	min-height: 80vh;
	position: relative;
	padding: 150px 0 80px 0;
}

.hero-festival .hero-container {
	position: relative;
	z-index: 2;
}

.hero-festival .hero-title-row {
	align-items: flex-start;
	margin-bottom: 40px;
}

.hero-festival .hero-main-title {
	margin-bottom: 0;
}

.hero-festival .risco {
	margin-top: 15px;
}

.hero-festival .hero-intro {
	max-width: 600px;
	font-size: 1.1rem;
	line-height: 1.6;
	margin-bottom: 30px;
}

.hero-festival .hero-location {
	font-size: 1.2rem;
}

/* OCAM Section */
.ocam-section {
	background-image: url('img/bg-ocam.jpg');
	background-size: cover;
	background-position: center;
	min-height: 50vh;
	display: flex;
	align-items: center;
	position: relative;
}

.ocam-section .container,
.osusp-section .container {
	position: relative;
	z-index: 2;
	padding: 60px 0;
	width: 100%;
}

.ocam-section .logo-ocam {
	max-width: 250px;
	margin-bottom: 20px;
}

.ocam-section h2,
.osusp-section h2 {
	font-size: 2rem;
	margin-bottom: 5px;
}

.ocam-section p,
.osusp-section p {
	font-size: 1.2rem;
	margin-bottom: 20px;
}

.schedule-tags {
	display: flex;
	gap: 15px;
	margin-top: 30px;
}

.schedule-tags .tag {
	color: white;
	padding: 8px 25px;
	border-radius: 30px;
	font-weight: 700;
	display: inline-block;
	font-size: 0.9rem;
}

.tag-green {
	background-color: #2B5741;
}

.tag-dark {
	background-color: #1E3646;
}

/* OSUSP Section */
.osusp-section {
	background-image: url('img/bg-osusp.jpg');
	background-size: cover;
	background-position: center;
	min-height: 50vh;
	display: flex;
	align-items: center;
	position: relative;
}

.osusp-section .logo-osusp {
	max-width: 150px;
	margin-bottom: 20px;
}

/* Endereço Section */
.address-section {
	background-color: #a44f94;
	padding: 80px 0;
}

.address-section .container {
	width: 100%;
}

.address-section .grid-2 {
	gap: 60px;
	align-items: start;
}

.address-text {
	color: white;
}

/* Substituindo a necessidade de .section-title-wrapper inline */
.address-text .section-title-wrapper {
	align-items: flex-start;
	margin-bottom: 40px;
}

.address-text h2 {
	color: white !important;
	font-size: 2.5rem;
	margin-bottom: 0;
	line-height: 1.2;
}

.address-text .risco {
	margin-top: 15px;
}

.address-details {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.address-details h3,
.address-subtitle {
	color: white !important;
	font-size: 1.3rem;
	margin-bottom: 5px;
	font-weight: bold;
}

.address-details p {
	color: white;
	font-size: 1rem;
	line-height: 1.5;
	margin: 0;
}

.bus-info-wrapper {
	margin-top: 20px;
}

.address-details .bus-info {
	font-size: 0.95rem;
	line-height: 1.6;
	opacity: 0.9;
}

.address-map-placeholder {
	background-color: #ddd;
	width: 100%;
	min-height: 500px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.d-flex {
	display: flex !important;
}

/* Section Coordenadores */
.coordenadores-section {
	padding: 100px 0;
	background-size: cover;
	background-position: center;
	position: relative;
}

.coordenadores-title {
	font-size: 2.2rem;
	font-weight: 300;
	line-height: 1.2;
	max-width: 50%;
}

.coordenadores-title strong {
	font-weight: 700;
}

.coordenadores-grid {
	margin-top: 50px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	justify-content: center;
}

.coordinator-card {
	padding: 20px;
}

.coordinator-card .person-img {
	width: 180px;
	height: 180px;
	border-radius: 50%;
	object-fit: cover;
	margin-bottom: 20px;
}

.coordinator-name {
	font-size: 1.4rem;
	text-transform: uppercase;
	font-weight: 300;
	color: #1E3646;
	margin-bottom: 10px;
	letter-spacing: 0.8px;
}

.coordinator-cargo {
	font-size: 0.95rem;
	line-height: 1.3;
	color: #1E3646;
	margin-bottom: 10px;
	min-height: 30px;
	font-weight: 500;
}

.coordinator-papel {
	font-size: 0.95rem;
	font-weight: 700;
	color: #1E3646;
	margin-bottom: 15px;
}

.coordinator-linkedin {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	background-color: var(--color-brand-dark-teal, #1E3646);
	color: white !important;
	border-radius: 3px;
	font-size: 0.8rem;
	transition: opacity 0.3s;
}

.coordinator-linkedin:hover {
	opacity: 0.8;
}

@media (max-width: 768px) {
	.coordenadores-title {
		font-size: 1.8rem;
	}
}

/* ==========================================================================
   Marcas Section Adjustments
   ========================================================================== */
.marcas-section {
	background-color: #F7F2EB;
}

.marcas-group-title {
	color: #505052;
	/* Ajustado para aproximar do #5B5B5C solicitado */
	font-size: 2.875rem;
	/* 46px */
	font-weight: 700;
	margin-bottom: 0;
	margin-right: 25px;
}

.marcas-section .section-title-wrapper {
	margin-bottom: 30px;
	align-items: center;
}

/* ==========================================================================
   Ecossistema Deeptech USP
   ========================================================================== */
.ecosystem-section {
	background-color: #2b334a;
	/* cor base do layout */
	padding: 100px 0;
	color: #ffffff;
}

.ecosystem-title {
	font-size: 2.5rem;
	color: #ffffff;
	font-weight: 300;
	line-height: 1.2;
}

.ecosystem-title strong {
	font-weight: 700;
}

.ecosystem-description {
	margin-top: 30px;
	max-width: 900px;
	font-size: 1.1rem;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.9);
}

.stat-grid {
	margin-top: 50px;
	display: grid;
	gap: 20px;
}

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

.stat-grid-row-2 {
	grid-template-columns: repeat(5, 1fr);
}

.stat-box {
	background-color: #ccf2a6;
	/* verde claro do layout */
	padding: 30px 20px;
	border-radius: 0;
	color: #1E3646;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
}

.stat-box .stat-number {
	font-size: 2.8rem;
	font-weight: 300;
	margin-bottom: 5px;
}

.stat-box .stat-label {
	font-size: 1.1rem;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 8px;
}

.stat-box .stat-sub {
	font-size: 0.75rem;
	line-height: 1.3;
	opacity: 0.8;
}

/* ==========================================================================
   Endereço Home (CDI)
   ========================================================================== */
.address-home-section {
	background-color: #2a4b3f;
	/* verde escuro do layout */
	padding: 100px 0;
	color: #ffffff;
}

.address-home-title {
	font-size: 2.5rem;
	color: #ffffff;
	font-weight: 300;
	line-height: 1.2;
}

.address-home-title strong {
	font-weight: 700;
}

.address-home-content {
	margin-top: 40px;
}

.address-home-info p {
	margin-bottom: 5px;
	font-size: 1.1rem;
	color: white;
}

.address-home-transport {
	margin-top: 40px;
	font-size: 0.95rem;
	line-height: 1.6;
	color: #ccf2a6;
	/* verde claro para o texto de transporte */
	max-width: 500px;
}

.address-home-map {
	background-color: #dcdcdc;
	width: 100%;
	min-height: 400px;
	display: flex;
	align-items: center;
	justify-content: center;
}

@media (max-width: 992px) {

	.stat-grid-row-1,
	.stat-grid-row-2 {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 768px) {

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

@media (max-width: 480px) {

	.stat-grid-row-1,
	.stat-grid-row-2 {
		grid-template-columns: 1fr;
	}
}


/* Utility classes for formerly inline styles */
.marcas-section {
	padding: 80px 0;
}

.marcas-group {
	margin-bottom: 60px;
}

.marcas-grid {
	gap: 30px;
}

.marca-item {
	background: #fff;
	padding: 20px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 120px;
}

.address-home-title-wrapper {
	align-items: flex-start;
	margin-bottom: 30px;
}

.address-home-title-wrapper .risco {
	margin-top: 15px;
}


/* Utility classes for formerly inline styles */
.marcas-section {
	padding: 80px 0;
}

.marcas-group {
	margin-bottom: 60px;
}

.marcas-grid {
	gap: 30px;
}

.marca-item {
	background: #fff;
	padding: 20px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 120px;
}

.address-home-title-wrapper {
	align-items: flex-start;
	margin-bottom: 30px;
}

.address-home-title-wrapper .risco {
	margin-top: 15px;
}

#app {
	display: none;
}

/* ==========================================================================
   Página Startups
   ========================================================================== */

/* Hero */
.hero-startups {
	padding: 60px 0;
}

.startups-hero-title-wrapper {
	margin-bottom: 0;
	align-items: stretch;
}

/* Tags — sobrepostas entre o hero e a intro */
.startups-tags-wrapper {
	margin-top: -20px;
	z-index: 999;
	position: absolute;
	width: 100%;
}

.startups-tags {
	display: flex;
	gap: 15px;
}

.tag-startups {
	background: white;
	color: #b32775;
	padding: 8px 20px;
	font-weight: 700;
	font-size: 1.2rem;
	display: inline-block;
	letter-spacing: 0.02em;
}

.tag-gratis {
	background: #F8F6F2;
	color: #529653;
	padding: 8px 20px;
	font-weight: 700;
	font-size: 1.2rem;
	display: inline-block;
	letter-spacing: 0.02em;
}

/* Intro */
.startups-intro {
	background-color: #F8F6F2;
	padding: 50px 0 10px;
}

.startups-intro-text {
	font-size: 1.1rem;
	color: #333;
	margin: 0;
	max-width: 1000px;
	line-height: 1.6;
}

/* Content */
.startups-content-section {
	background-color: #F8F6F2;
	padding: 30px 0 80px;
}

.startups-grid {
	display: grid;
	grid-template-columns: 1.8fr 1fr;
	gap: 40px;
}

@media (max-width: 768px) {
	.startups-grid {
		grid-template-columns: 1fr;
	}
}

.startups-form-area {
	background: white;
	padding: 40px;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.03);
}

@media (max-width: 768px) {
	.startups-form-area {
		padding: 20px;
	}
}

.startups-form-title {
	color: #b32775;
	font-size: 1.6rem;
	margin-top: 0;
	margin-bottom: 30px;
	font-weight: 400;
	font-family: var(--font-primary);
}

.form-wrapper {
	min-height: 300px;
}

.startups-form-submit-wrapper {
	margin-top: 40px;
}

.startups-submit-btn {
	background-color: #9c3c79;
	color: white;
	border: none;
	padding: 10px 25px;
	font-weight: 600;
	border-radius: 30px;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 0.9rem;
	transition: background-color 0.3s;
}

.startups-submit-btn:hover {
	background-color: #792b5c;
	color: white;
}

.startups-submit-btn:disabled {
	background-color: #ccc;
	cursor: not-allowed;
}

.startups-disclaimer {
	margin-top: 20px;
	border-top: 2px solid #333;
	padding-top: 10px;
}

.startups-disclaimer p {
	font-size: 0.75rem;
	color: #666;
	margin: 0;
}

/* Sidebar */
.startups-box {
	background-color: #9c3c79;
	color: white;
	padding: 35px 30px;
}

.startups-box-title {
	color: white;
	font-size: 1.6rem;
	margin-top: 0;
	margin-bottom: 0;
	font-weight: 400;
}

.startups-box-highlight {
	font-size: 1.6rem;
	font-weight: 700;
	margin-bottom: 20px;
	text-transform: uppercase;
}

.startups-box-list {
	list-style-type: disc;
	padding-left: 20px;
	font-size: 0.85rem;
	line-height: 1.6;
	margin-bottom: 30px;
}

.startups-box-list li {
	margin-bottom: 12px;
}

.startups-box-note {
	border-left: 2px solid rgba(255, 255, 255, 0.4);
	padding-left: 15px;
	font-size: 0.75rem;
	line-height: 1.4;
}

/* Inscreva-se Page
------------------------------------------------------- */

/* Hero da página inscreva-se */
.inscricao-hero {
	padding: 60px 0;
}

/* Badge "inscrições em breve!" */
.inscricao-badge-wrapper {
	margin-top: 12px;
}

.inscricao-badge {
	display: inline-block;
	background-color: #ffffff;
	color: var(--color-brand-purple, #9E3371);
	font-size: 0.95rem;
	font-weight: 400;
	font-style: italic;
	padding: 8px 20px;
	border-radius: 0;
}

/* Seção de conteúdo: fundo bege igual às demais seções */
.inscricao-content-section {
	background-color: #f5f1ea;
	padding: 70px 0 80px;
}

.inscricao-intro {
	font-size: 1.1rem;
	font-weight: 300;
	color: #333;
	line-height: 1.7;
	margin-bottom: 50px;
	max-width: 900px;
}

/* "Como funciona?" */
.inscricao-how {
	margin-top: 10px;
}

.inscricao-how-title {
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--color-brand-green, #82C341);
	margin-bottom: 20px;
}

/* Reutiliza .pillars-list — remove borda inferior do último item */
.inscricao-list li:last-child {
	border-bottom: none;
}

@media (max-width: 768px) {
	.inscricao-hero {
		padding: 60px 0 40px;
	}
}

.wc-block-checkout {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 100px 20px 0 20px !important;
}

.woocommerce-order {
	max-width: 1200px !important;
	margin: 0 auto !important;
}

/* ==========================================================================
   SciBiz 2026 Custom Block Checkout Layout
   ========================================================================== */
body.woocommerce-checkout {
    background-color: #F2EAE1;
}

body.woocommerce-checkout .site-content {
    background-color: transparent;
}

/* Header Banner - Styling the default page header */
body.woocommerce-checkout .entry-header {
    background-color: #2B5341;
    padding: 60px 5%;
    margin-top: 0;
    margin-bottom: 40px;
}

body.woocommerce-checkout .entry-title {
    color: #ffffff;
    font-size: 38px;
    margin: 0 auto;
    max-width: 1200px;
    position: relative;
    border-bottom: none;
    display: inline-block;
}

/* Distinctive SciBiz bracket line for the title (left border goes down and right) */
body.woocommerce-checkout .entry-title::after {
    content: '';
    position: absolute;
    top: 50%;
    left: calc(100% + 20px);
    width: 300px;
    height: 30px;
    border-left: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
    pointer-events: none;
}

/* Limit max width of the checkout block */
body.woocommerce-checkout .wp-block-woocommerce-checkout {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px 60px;
}

/* Main Column (Left) */
body.woocommerce-checkout .wc-block-checkout__main {
    padding-right: 20px;
}

/* Steps (Informações de Contato, Pagamento) */
body.woocommerce-checkout .wc-block-components-checkout-step {
    background-color: #ffffff;
    padding: 30px;
    margin-bottom: 30px;
    border: none;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05); /* Soft shadow like image */
}

/* Step Titles */
body.woocommerce-checkout .wc-block-components-checkout-step__title {
    color: #2B5341;
    font-size: 26px;
    margin-bottom: 25px;
    font-weight: 700;
}

/* Inputs and labels */
body.woocommerce-checkout .wc-block-components-text-input label,
body.woocommerce-checkout .wc-block-components-combobox-control label {
    color: #1E3646;
    font-weight: bold;
    font-size: 14px;
}

/* Payment Section specific internal background */
body.woocommerce-checkout .wc-block-components-radio-control-accordion-content {
    background-color: #F4EFEA;
    padding: 20px;
    border-radius: 0 0 4px 4px;
}

/* Sidebar (Right Column) - Resumo do Pedido */
body.woocommerce-checkout .wc-block-checkout__sidebar {
    background-color: #2B5341;
    color: #ffffff;
    padding: 30px;
    border-radius: 0;
}

body.woocommerce-checkout .wc-block-checkout__sidebar h2,
body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-title {
    color: #ffffff;
    font-size: 24px;
    border-bottom: none;
}

/* Override text colors in the dark sidebar */
body.woocommerce-checkout .wc-block-components-order-summary-item__name,
body.woocommerce-checkout .wc-block-components-order-summary-item__quantity,
body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
    color: #ffffff !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description,
body.woocommerce-checkout .wc-block-components-order-summary-item__image {
    display: none !important;
}

/* Fix vertical spacing between fields */
body.woocommerce-checkout .wc-block-components-text-input,
body.woocommerce-checkout .wc-block-components-combobox-control,
body.woocommerce-checkout .wc-block-components-address-form {
    row-gap: 20px;
    margin-bottom: 15px;
}

body.woocommerce-checkout .wc-block-components-totals-item,
body.woocommerce-checkout .wc-block-components-totals-item__value,
body.woocommerce-checkout .wc-block-components-totals-item__label {
    color: #ffffff;
}

/* The dark purple wrapper around coupon / apply coupon button */
body.woocommerce-checkout .wc-block-components-totals-coupon,
body.woocommerce-checkout .wc-block-components-panel__button {
    background-color: #31354F; /* Dark purple/navy */
    color: #ffffff;
}

body.woocommerce-checkout .wc-block-components-totals-coupon {
    padding: 15px;
    border-radius: 4px;
    margin-bottom: 20px;
}

body.woocommerce-checkout .wc-block-components-totals-coupon-link {
    color: #ffffff;
    border-bottom-color: rgba(255,255,255,0.3);
}

/* Totals styling */
body.woocommerce-checkout .wc-block-components-totals-footer-item {
    border-top: 1px solid rgba(255,255,255,0.2) !important;
    padding-top: 20px;
}

body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
    color: #82C341 !important; /* Green total highlight */
    font-weight: bold;
}

body.woocommerce-checkout .wc-block-components-totals-footer-item {
    font-size: 20px;
}

/* Place Order Button (Finalizar pedido) */
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button {
    background-color: #2B5341;
    color: #ffffff;
    border-radius: 25px; /* Pill shape */
    padding: 15px 40px;
    font-size: 16px;
    font-weight: 700;
    margin-top: 30px;
    float: right;
    transition: background-color 0.3s;
    border: none;
    text-transform: lowercase;
}

/* Adding checkmark before the text */
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button::before {
    content: '✓ '; /* Custom checkmark for now */
    font-weight: 900;
    margin-right: 8px;
}

body.woocommerce-checkout button.wc-block-components-checkout-place-order-button:hover {
    background-color: #1E3646;
}

/* Ensure notice texts are visible */
body.woocommerce-checkout .wc-block-components-checkout-step__description,
body.woocommerce-checkout .wc-block-checkout__terms {
    color: #666;
}

/* Mobile adjustments */
@media (max-width: 768px) {
    body.woocommerce-checkout .entry-title::after {
        display: none; /* Hide the decorative line on mobile */
    }
    body.woocommerce-checkout .wc-block-checkout__main {
        padding-right: 0;
    }
    body.woocommerce-checkout button.wc-block-components-checkout-place-order-button {
        width: 100%;
        float: none;
    }
}

/* ==========================================================================
   SciBiz 2026 Custom Order Received (Thank You) Layout
   ========================================================================== */
.woocommerce-order {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 20px 60px;
}

/* Base background for order page */
body.woocommerce-order-received {
    background-color: #F2EAE1;
}

/* Success Notice "Inscrição realizada!" */
.woocommerce-order p.woocommerce-notice--success,
.woocommerce-order .woocommerce-thankyou-order-received,
.wc-block-order-confirmation-status__title {
    color: #2B5341;
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 30px;
    border: none;
    background: transparent;
    padding: 0;
}

/* Cards for Order Overview & Details */
.woocommerce-order section.woocommerce-order-details,
.woocommerce-order section.woocommerce-customer-details,
.woocommerce-order ul.woocommerce-order-overview,
.wc-block-order-confirmation-summary,
.wc-block-order-confirmation-details {
    background-color: #ffffff;
    padding: 30px;
    margin-bottom: 30px;
    border: none;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    border-radius: 4px;
}

/* Remove default list styles from overview */
.woocommerce-order ul.woocommerce-order-overview {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.woocommerce-order ul.woocommerce-order-overview li {
    flex: 1;
    min-width: 150px;
    border-right: 1px solid #e0e0e0;
    color: #1E3646;
}
.woocommerce-order ul.woocommerce-order-overview li:last-child {
    border-right: none;
}
.woocommerce-order ul.woocommerce-order-overview li strong {
    display: block;
    margin-top: 5px;
    color: #333;
}

/* Headings */
.woocommerce-order h2 {
    color: #2B5341;
    font-size: 26px;
    margin-bottom: 25px;
    font-weight: 700;
}

/* Order Details Table */
.woocommerce-table--order-details {
    width: 100%;
    border-collapse: collapse;
}

.woocommerce-table--order-details th {
    border-bottom: 2px solid #e0e0e0;
    color: #1E3646;
    padding: 15px 0;
    font-weight: bold;
    text-align: left;
}

.woocommerce-table--order-details td {
    border-bottom: 1px solid #f0f0f0;
    padding: 20px 0;
    color: #333;
    vertical-align: top;
}

.woocommerce-table--order-details tfoot th {
    border-bottom: 1px solid #f0f0f0;
    color: #1E3646;
}

.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-table--order-details tfoot tr:last-child td {
    border-bottom: none;
    font-size: 18px;
    color: #2B5341;
    font-weight: bold;
}

/* Product Name Styling */
.woocommerce-table--order-details td.product-name a {
    color: #1E3646;
    font-weight: bold;
    text-decoration: none;
}

/* Event Tickets Plugin Buttons inside order table */
.wps_order_section_for_meta {
    display: flex;
    gap: 15px;
    margin-top: 20px;
    flex-wrap: wrap;
}

.wps_view_ticket_pdf {
    display: inline-flex;
    align-items: center;
    background-color: #9E3371; /* Magenta/Purple */
    color: #ffffff !important;
    border-radius: 25px;
    padding: 10px 25px;
    font-weight: bold;
    text-transform: lowercase;
    text-decoration: none;
    transition: background-color 0.3s;
}
.wps_view_ticket_pdf:hover {
    background-color: #7a2757;
}
.wps_view_ticket_pdf::before {
    content: '\f145'; /* Ticket */
    font-family: 'Font Awesome 5 Free', 'Font Awesome 6 Free';
    font-weight: 900;
    margin-right: 8px;
}

.wps_etmfw_add_event_calendar {
    display: inline-flex;
    align-items: center;
    background-color: transparent;
    color: #1E3646 !important;
    border: 1px solid #1E3646;
    border-radius: 25px;
    padding: 10px 25px;
    font-weight: bold;
    text-transform: lowercase;
    text-decoration: none;
    transition: all 0.3s;
}
.wps_etmfw_add_event_calendar:hover {
    background-color: #1E3646;
    color: #ffffff !important;
}
.wps_etmfw_add_event_calendar::before {
    content: '\f133'; /* Calendar */
    font-family: 'Font Awesome 5 Free', 'Font Awesome 6 Free';
    font-weight: 400;
    margin-right: 8px;
}

/* Customer Details & Addresses */
.woocommerce-customer-details address {
    border: none;
    padding: 0;
    font-style: normal;
    color: #333;
    line-height: 1.6;
}

/* ==========================================================================
   Página Planeje sua Visita
   ========================================================================== */

.page-planeje-sua-visita {
    background-color: #F7F2EB;
}

.hero-planeje {
    background-color: #26553A;
    padding: 60px 0 100px 0;
}

.hero-planeje .hero-title-row {
    margin-bottom: 0;
    align-items: flex-start;
}

.hero-planeje .hero-main-title {
    margin-bottom: 0;
}

.risco-planeje {
    margin-top: 15px;
    width: 60%;
}

.onde-comer-section {
    background-color: #F7F2EB;
    padding: 60px 0;
}

.onde-hospedar-section {
    background-color: #FFFFFF;
    padding: 80px 0;
}

.planeje-title-row {
    display: flex;
    align-items: center;
    margin-bottom: 50px;
    gap: 30px;
}

.planeje-section-title {
    font-size: 2.2rem;
    color: #1E3646;
    margin: 0;
    font-weight: 700;
    white-space: nowrap;
}

.planeje-region-title {
    font-size: 1.8rem;
    color: #1E3646;
    margin: 40px 0 20px 0;
    font-weight: 700;
}

.risco-longo {
    flex-grow: 1;
    height: 2px !important;
    border-top: none !important;
    border-left: none !important;
    border-bottom: none !important;
    /* remove ::before/::after from .risco just to make it a straight line */
}

/* Because .risco adds L-shape, let's just make it a simple straight line here if it's horizontal */
.risco-longo::before, .risco-longo::after {
    display: none !important;
}
.risco-longo {
    background-color: #ccc;
    height: 2px;
}
.risco-verde.risco-longo {
    background-color: #26553A !important;
}

.planeje-cards-wrapper {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.planeje-card {
    display: flex;
    background-color: #FFFFFF;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}

.bg-beige {
    background-color: #F7F2EB !important;
}
.bg-white {
    background-color: #FFFFFF !important;
}

.planeje-card-content {
    flex: 1;
    padding: 30px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.planeje-card-content h3 {
    font-size: 1.3rem;
    color: #1E3646;
    margin-bottom: 10px;
}

.planeje-card-content p {
    font-size: 0.95rem;
    line-height: 1.5;
    margin-bottom: 20px;
    color: #555;
}

.planeje-link {
    color: #9E3371; /* Purple link */
    text-decoration: none;
    font-weight: 600;
    font-size: 0.9rem;
    transition: opacity 0.3s;
}

.planeje-link:hover {
    opacity: 0.8;
}

.planeje-map-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 10px;
}

.planeje-card-map {
    width: 400px;
    flex-shrink: 0;
}

.planeje-address-section {
    background-color: #26553A;
    padding: 80px 0;
}

.planeje-address-section .section-title-wrapper {
    align-items: flex-start;
    margin-bottom: 30px;
}

.planeje-address-section h2 {
    color: white !important;
    font-size: 2.2rem;
    margin-bottom: 0;
    line-height: 1.2;
}

.planeje-address-section .risco {
    margin-top: 15px;
}

.planeje-address-section .address-details p {
    color: white;
    font-size: 1rem;
    line-height: 1.6;
    opacity: 0.9;
}

.planeje-address-section .bus-info {
    font-size: 0.9rem !important;
    opacity: 0.7 !important;
    margin-top: 20px !important;
}

/* Responsive */
@media(max-width: 768px) {
    .planeje-card {
        flex-direction: column;
    }
    .planeje-card-map {
        width: 100%;
        height: 250px;
    }
    .planeje-title-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
}

/* Fix WooCommerce Order Details overlapping on long emails */
.woocommerce ul.order_details,
.woocommerce-page ul.order_details {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding-left: 0;
}

.woocommerce ul.order_details li,
.woocommerce-page ul.order_details li {
    float: none;
    margin-right: 0;
    margin-bottom: 10px;
    flex-grow: 1;
    min-width: 150px;
}

.woocommerce ul.order_details li strong,
.woocommerce-page ul.order_details li strong {
    word-break: break-all;
}

/* Ocultar botão "Retornar ao carrinho" no checkout */
.wc-block-components-checkout-return-to-cart-button,
.wc-block-checkout__return-to-cart {
    display: none !important;
}
