/*
 * O Invisível de Cada Um — mobile-first refined foundation.
 */

.odcu-design {
	background: var(--odcu-bone);
	color: var(--odcu-text);
	font-family: var(--odcu-font-body);
	letter-spacing: -.006em;
	padding-bottom: 0;
}

.odcu-design .site,
.odcu-design .site-main {
	background: transparent;
}

.odcu-design .elementor-section {
	margin: 0;
}

.odcu-design .elementor-section.elementor-section-boxed > .elementor-container {
	max-width: min(calc(100% - (var(--odcu-gutter) * 2)), var(--odcu-container));
}

.odcu-design .elementor-column-gap-wide > .elementor-column > .elementor-element-populated {
	padding-inline: clamp(.7rem, 1.6vw, 1.1rem);
}

.odcu-design .elementor-column-gap-default > .elementor-column > .elementor-element-populated,
.odcu-design .elementor-column-gap-narrow > .elementor-column > .elementor-element-populated {
	padding-inline: .55rem;
}

.odcu-design :where(h1,h2,h3,h4,h5,h6) {
	color: inherit;
	font-family: var(--odcu-font-heading);
	font-weight: 500;
	letter-spacing: .01em;
	line-height: 1.02;
	margin: 0 0 .55em;
}

.odcu-design h1 { font-size: clamp(2.75rem, 6vw, 5.5rem); }
.odcu-design h2 { font-size: clamp(2rem, 4vw, 3.6rem); }
.odcu-design h3 { font-size: clamp(1.45rem, 2.3vw, 2.15rem); }

.odcu-design p {
	margin: 0 0 1rem;
	line-height: 1.68;
}

.odcu-design p:last-child {
	margin-bottom: 0;
}

.odcu-design a {
	color: inherit;
	text-underline-offset: .18em;
}

.odcu-design :where(button,.button,input[type="submit"],.elementor-button,.odcu-btn) {
	min-height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--odcu-espresso);
	border-radius: 3px;
	background: var(--odcu-espresso);
	color: var(--odcu-parchment);
	font-family: var(--odcu-font-body);
	font-size: .73rem;
	font-weight: 600;
	letter-spacing: .13em;
	line-height: 1;
	text-transform: uppercase;
	text-decoration: none;
	box-shadow: none;
	transition: background-color var(--odcu-transition), color var(--odcu-transition), border-color var(--odcu-transition);
}

.odcu-design :where(button,.button,input[type="submit"],.elementor-button,.odcu-btn):hover {
	border-color: var(--odcu-bronze);
	background: var(--odcu-bronze);
	color: var(--odcu-night);
}

.odcu-btn {
	padding: 0 1.35rem;
}

.odcu-btn--paper {
	border-color: var(--odcu-parchment);
	background: var(--odcu-parchment);
	color: var(--odcu-night)!important;
}

.odcu-text-link {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: inherit!important;
	font-size: .78rem;
	font-weight: 600;
	letter-spacing: .05em;
	text-decoration: none!important;
}

.odcu-button-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .85rem;
	margin-top: 1.6rem;
}

.odcu-reading {
	max-width: 720px;
	margin-inline: auto;
}

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

.odcu-section {
	padding-block: clamp(4rem, 7vw, 6.5rem);
}

.odcu-compact-section {
	padding-block: clamp(2.5rem, 4.5vw, 4rem);
}

.odcu-section--light {
	background: var(--odcu-bone);
	color: var(--odcu-text);
}

.odcu-section--paper {
	background: var(--odcu-parchment);
	color: var(--odcu-text);
}

.odcu-section--dark {
	background: var(--odcu-night);
	color: var(--odcu-parchment);
}

.odcu-eyebrow,
.odcu-kicker {
	margin: 0 0 .9rem;
	color: var(--odcu-bronze);
	font-size: .66rem;
	font-weight: 600;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.odcu-lead {
	max-width: 38rem;
	font-size: clamp(1rem, .96rem + .25vw, 1.18rem);
	color: color-mix(in srgb,currentColor 78%,transparent);
}

.odcu-image-frame {
	position: relative;
	width: 100%;
	overflow: hidden;
	border-radius: 6px;
	background: var(--odcu-night);
}

.odcu-image-frame img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.odcu-image-frame--portrait { aspect-ratio: 4/5; }
.odcu-image-frame--landscape { aspect-ratio: 4/3; }
.odcu-image-frame--wide { aspect-ratio: 16/9; }

.odcu-section-head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 2rem;
}

.odcu-section-head h2 {
	margin-bottom: 0;
}

.odcu-section-head > a {
	font-size: .78rem;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}

.odcu-quick-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: .75rem;
}

.odcu-quick-card {
	display: flex;
	flex-direction: column;
	min-height: 128px;
	padding: 1.1rem;
	border: 1px solid color-mix(in srgb, var(--odcu-text) 12%, transparent);
	border-radius: 6px;
	background: rgba(255,255,255,.18);
	color: inherit!important;
	text-decoration: none!important;
}

.odcu-quick-card small {
	margin-bottom: auto;
	color: var(--odcu-bronze);
	font-size: .62rem;
	font-weight: 600;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.odcu-quick-card strong {
	margin-top: 1rem;
	font-family: var(--odcu-font-heading);
	font-size: 1.75rem;
	font-weight: 500;
	line-height: 1;
}

.odcu-quick-card span {
	margin-top: .35rem;
	color: var(--odcu-text-muted);
	font-size: .78rem;
}

.odcu-caderno-simple-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	border: 1px solid var(--odcu-border);
	background: var(--odcu-border);
}

.odcu-caderno-simple-grid article {
	display: flex;
	flex-direction: column;
	min-height: 230px;
	padding: 1.5rem;
	background: var(--odcu-surface);
}

.odcu-caderno-simple-grid small {
	color: var(--odcu-bronze);
	font-size: .65rem;
	letter-spacing: .15em;
}

.odcu-caderno-simple-grid h3 {
	margin-top: auto;
	margin-bottom: .4rem;
}

.odcu-caderno-simple-grid p {
	color: var(--odcu-text-muted);
}

.odcu-caderno-simple-grid a {
	margin-top: .8rem;
	font-size: .75rem;
	font-weight: 600;
	text-decoration: none;
}

.odcu-values-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: .8rem;
}

.odcu-values-row > div {
	padding: 1.25rem 0;
	border-top: 1px solid var(--odcu-border);
}

.odcu-values-row strong {
	display: block;
	margin-bottom: .4rem;
	font-family: var(--odcu-font-heading);
	font-size: 1.4rem;
	font-weight: 500;
}

.odcu-values-row span {
	color: var(--odcu-text-muted);
	font-size: .85rem;
	line-height: 1.5;
}

.odcu-empty-commerce {
	padding: 2rem;
	border: 1px solid var(--odcu-border);
	border-radius: 6px;
	background: var(--odcu-surface);
	text-align: center;
}

.odcu-empty-commerce span {
	display: block;
	margin-bottom: .35rem;
	font-family: var(--odcu-font-heading);
	font-size: 1.8rem;
}

.odcu-contact-cards {
	display: grid;
	gap: .7rem;
}

.odcu-contact-card {
	padding: 1rem;
	border: 1px solid color-mix(in srgb,var(--odcu-parchment) 18%,transparent);
	border-radius: 4px;
	background: rgba(255,255,255,.03);
}

.odcu-contact-card span {
	display: block;
	color: var(--odcu-bronze-soft);
	font-size: .64rem;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.odcu-contact-card strong {
	display: block;
	margin: .3rem 0;
	font-family: var(--odcu-font-heading);
	font-size: 1.45rem;
	font-weight: 500;
}

.odcu-contact-card small {
	color: color-mix(in srgb,var(--odcu-parchment) 68%,transparent);
}

.odcu-bio {
	max-width: 560px;
	margin-inline: auto!important;
}

.odcu-bio .odcu-symbol {
	display: block;
	width: 64px;
	margin: 0 auto 1.2rem;
}

.odcu-bio-links {
	display: grid;
	gap: .65rem;
	margin-top: 1.6rem;
}

.odcu-bio-links > a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 58px;
	padding: 0 1rem;
	border: 1px solid color-mix(in srgb,var(--odcu-parchment) 24%,transparent);
	border-radius: 4px;
	color: var(--odcu-parchment)!important;
	text-decoration: none!important;
}

.odcu-bio-links > a:hover {
	background: var(--odcu-parchment);
	color: var(--odcu-night)!important;
}

.odcu-bio-note {
	margin-top: .7rem;
	color: color-mix(in srgb,var(--odcu-parchment) 62%,transparent);
	font-size: .76rem;
}

.odcu-symbol {
	display: inline-flex;
	color: var(--odcu-bronze-soft);
}

.odcu-symbol svg {
	display: block;
	width: 100%;
	height: auto;
}

@media (max-width: 767px) {
	.odcu-design {
		--odcu-gutter: 16px;
		padding-bottom: 70px;
	}

	.odcu-design h1 {
		font-size: clamp(2.65rem, 13vw, 4rem);
	}

	.odcu-design h2 {
		font-size: clamp(2rem, 10vw, 3rem);
	}

	.odcu-section {
		padding-block: 3.6rem;
	}

	.odcu-compact-section {
		padding-block: 2.2rem;
	}

	.odcu-button-row {
		align-items: flex-start;
	}

	.odcu-quick-grid {
		display: flex;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		padding-bottom: .25rem;
		scrollbar-width: none;
	}

	.odcu-quick-grid::-webkit-scrollbar {
		display: none;
	}

	.odcu-quick-card {
		flex: 0 0 78%;
		scroll-snap-align: start;
	}

	.odcu-caderno-simple-grid {
		grid-template-columns: 1fr;
	}

	.odcu-values-row {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.odcu-section-head {
		align-items: center;
	}

	.odcu-section-head h2 {
		font-size: 2.2rem;
	}

	.odcu-section-head > a {
		font-size: .72rem;
	}
}
