/* =============================================================================
   ORIII — Rodapé
   ========================================================================== */

/* Neutraliza o max-width:1140px que o Hello Elementor aplica em .site-footer */
.oriii .o-footer,
.oriii .o-footer.site-footer:not(.dynamic-footer) {
	max-width: none !important;
	margin-inline: 0 !important;
	padding-inline: 0 !important;
}

.oriii .o-footer {
	background-color: var(--color-brand-navy);
	color: var(--color-text-inverse);
	margin-top: var(--space-11);
	padding-block: var(--space-9) var(--space-6);
}

/* Rodapé ocupa 100% da largura da tela (respiro lateral em .o-edge) */
.oriii .o-footer__wrap { width: 100%; max-width: none; }

.oriii .o-footer a { color: var(--color-brand-ivory); }
.oriii .o-footer a:hover { color: var(--color-accent); }

.oriii .o-footer__top {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1.2fr;
	gap: var(--space-8);
	padding-bottom: var(--space-8);
	border-bottom: 1px solid rgba(244, 240, 232, 0.14);
}

.oriii .o-wordmark--footer {
	font-family: var(--font-display);
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0.34em;
	text-transform: uppercase;
	color: var(--color-brand-ivory);
	display: block;
	margin-bottom: var(--space-4);
}

.oriii .o-footer__manifesto {
	font-family: var(--font-editorial);
	font-size: var(--fs-body-md);
	line-height: 1.7;
	color: var(--color-brand-sand);
	max-width: 40ch;
	margin-bottom: var(--space-5);
}

.oriii .o-footer__seal {
	font-size: var(--fs-caption);
	letter-spacing: 0.24em;
	color: var(--color-accent);
	margin: 0;
}

.oriii .o-footer__nav h6,
.oriii .o-footer__newsletter h6 {
	color: var(--color-brand-sand);
	margin-bottom: var(--space-5);
}

.oriii .o-footer__menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
}
.oriii .o-footer__menu a {
	font-family: var(--font-body);
	font-size: var(--fs-body-sm);
	letter-spacing: 0.08em;
}

.oriii .o-footer__hint {
	font-size: var(--fs-body-sm);
	color: var(--color-brand-sand);
	margin-bottom: var(--space-4);
}

.oriii .o-newsletter { display: flex; gap: var(--space-2); }
.oriii .o-newsletter input {
	flex: 1 1 auto;
	background: rgba(244, 240, 232, 0.06);
	border-color: rgba(244, 240, 232, 0.24);
	color: var(--color-brand-ivory);
	min-height: 48px;
}
.oriii .o-newsletter input::placeholder { color: rgba(244, 240, 232, 0.5); }
.oriii .o-newsletter input:focus { border-color: var(--color-accent); box-shadow: none; }
.oriii .o-newsletter .o-btn {
	background: var(--color-accent);
	border-color: var(--color-accent);
	color: var(--color-brand-navy);
	flex: 0 0 auto;
	padding-inline: var(--space-5);
}
.oriii .o-newsletter .o-btn:hover { background: #A98341; border-color: #A98341; }

.oriii .o-footer__bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: var(--space-3);
	padding-top: var(--space-6);
	font-size: var(--fs-caption);
	letter-spacing: 0.06em;
	color: var(--color-brand-sand);
}
.oriii .o-footer__bottom p { margin: 0; }

@media (max-width: 900px) {
	.oriii .o-footer__top { grid-template-columns: 1fr 1fr; }
	.oriii .o-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
	.oriii .o-footer__top { grid-template-columns: 1fr; gap: var(--space-7); }
	.oriii .o-footer { padding-block: var(--space-8) var(--space-5); margin-top: var(--space-9); }
	.oriii .o-footer__bottom { flex-direction: column; }
}
