.as-page {
	--as-ink: #082828;
	--as-paper: #f4f1e8;
	--as-cream: #fffdf7;
	--as-lime: #d9f756;
	--as-coral: #f85944;
	background: var(--as-paper);
	color: var(--as-ink);
	font-family: 'Manrope', sans-serif;
}

.as-page .inst-bg { display: none; }

.as-page .inst-nav {
	position: sticky;
	top: 0;
	z-index: 1030;
	min-height: 6rem;
	padding: .9rem 1.5rem;
	background: var(--as-cream) !important;
	border-bottom: 1px solid rgba(8, 40, 40, .16);
	box-shadow: none;
}

.as-page .inst-nav .container,
.as-page .inst-footer .container { max-width: 1240px; }

.as-page .inst-nav .navbar-brand {
	color: var(--as-ink) !important;
	font-family: 'Archivo Narrow', sans-serif;
	font-size: 1.7rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.as-page .inst-nav .navbar-brand img { width: 36px; height: 36px; }

.as-page .inst-nav .nav-link {
	color: var(--as-ink) !important;
	font-size: .84rem;
	font-weight: 700;
}

.as-page .inst-nav .nav-link:hover { background: rgba(217, 247, 86, .55); }

.as-page .inst-nav .btn-login {
	padding: .75rem 1.15rem !important;
	background: var(--as-lime);
	border: 1px solid var(--as-ink);
	border-radius: 8px;
	color: var(--as-ink) !important;
}

.as-page .inst-nav .btn-login:hover {
	background: var(--as-ink);
	color: var(--as-cream) !important;
}

.as-page .inst-main {
	display: block;
	background:
		linear-gradient(rgba(8, 40, 40, .045) 1px, transparent 1px),
		var(--as-paper);
	background-size: 100% 3rem;
}

.as-page .inst-container {
	max-width: 1240px;
	padding: clamp(3.5rem, 7vw, 6.5rem) 1.5rem;
}

.as-page .inst-section { padding: clamp(2.5rem, 5vw, 5rem) 0 !important; }
.as-page .inst-section.bg-light { background: transparent !important; }

.as-page .inst-section-title,
.as-page .inst-form-title,
.as-page h1.h2 {
	max-width: 18ch;
	margin-bottom: 1rem !important;
	color: var(--as-ink) !important;
	font-family: 'Archivo Narrow', sans-serif;
	font-size: clamp(3rem, 6vw, 5.5rem);
	font-weight: 700;
	line-height: .92;
	letter-spacing: -.035em;
	text-wrap: balance;
}

.as-page .inst-section-sub,
.as-page .inst-form-sub,
.as-page .text-muted,
.as-page .inst-hint {
	color: #37514d !important;
	line-height: 1.7;
}

.as-page .inst-form-page {
	max-width: 980px;
	padding: 0;
}

.as-page .inst-card,
.as-page .inst-form-card,
.as-page .inst-cart-card,
.as-page .card {
	background: var(--as-cream);
	border: 1px solid rgba(8, 40, 40, .22) !important;
	border-radius: 12px;
	box-shadow: 0 16px 42px rgba(8, 40, 40, .08) !important;
}

.as-page .inst-card:hover { border-color: var(--as-ink) !important; }

.as-page .inst-cart-header {
	background: var(--as-ink);
	color: var(--as-cream);
	border-color: var(--as-ink);
}

.as-page .inst-cart-nome,
.as-page .inst-card h2,
.as-page .inst-card h3,
.as-page .inst-form-card h2,
.as-page .inst-form-card h3 { color: var(--as-ink) !important; }

.as-page .inst-cart-valor,
.as-page .inst-form-section-title,
.as-page a { color: #145ec7; }

.as-page .inst-form-card { padding: clamp(1.35rem, 4vw, 3rem); }

.as-page .inst-form-card .form-group label {
	color: var(--as-ink);
	font-size: .84rem;
	font-weight: 800;
}

.as-page .inst-form-card .form-control {
	min-height: 3.1rem;
	padding: .75rem .9rem;
	background: #fff;
	border: 1px solid #81948f;
	border-radius: 6px;
	color: var(--as-ink);
}

.as-page .inst-form-card textarea.form-control { min-height: 10rem; }
.as-page .inst-form-card .form-control::placeholder { color: #687b77; opacity: 1; }

.as-page .inst-form-card .form-control:focus {
	border-color: var(--as-coral);
	box-shadow: 0 0 0 3px rgba(248, 89, 68, .2);
}

.as-page .inst-btn-primary,
.as-page .inst-submit-btn,
.as-page button.btn-primary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .55rem;
	min-height: 3.2rem;
	padding: .8rem 1.25rem;
	background: var(--as-lime) !important;
	border: 1px solid var(--as-ink) !important;
	border-radius: 7px;
	box-shadow: none;
	color: var(--as-ink) !important;
	font-weight: 800;
	text-decoration: none;
}

.as-page .inst-btn-primary:hover,
.as-page .inst-submit-btn:hover,
.as-page button.btn-primary:hover {
	background: var(--as-ink) !important;
	color: var(--as-cream) !important;
}

.as-page .inst-btn-outline {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3.2rem;
	padding: .8rem 1.25rem;
	background: transparent;
	border: 1px solid var(--as-ink);
	border-radius: 7px;
	color: var(--as-ink) !important;
	font-weight: 800;
	text-decoration: none;
}

.as-page .alert { border-radius: 8px; color: var(--as-ink); }
.as-page .alert-success { background: #edf8bf; border-color: #b7ce4c; }
.as-page .alert-warning { background: #fff0c7; border-color: #d99b2b; }
.as-page .alert-danger { background: #ffe0db; border-color: var(--as-coral); }

.as-page .inst-termos-nav {
	gap: .5rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid rgba(8, 40, 40, .22);
}

.as-page .inst-termos-nav-link {
	background: var(--as-cream);
	border: 1px solid rgba(8, 40, 40, .22);
	color: var(--as-ink) !important;
	font-size: .74rem;
	font-weight: 800;
}

.as-page .inst-termos-section { scroll-margin-top: 7rem; }
.as-page .inst-termos-section h2 { color: var(--as-ink) !important; border-color: rgba(8, 40, 40, .2) !important; }
.as-page .inst-termos-section p { color: #29443f; }

.as-page .inst-footer-landing {
	background: var(--as-ink);
	color: var(--as-cream);
}

.as-page .inst-footer-col-title { color: var(--as-lime); }
.as-page .inst-footer-lead,
.as-page .inst-footer-contact,
.as-page .inst-footer-bottom { color: #c7d4d0; }
.as-page .inst-footer a { color: var(--as-cream); }

@media (max-width: 991.98px) {
	.as-page .inst-nav { min-height: 4.6rem; padding: .65rem 1rem; }
	.as-page .inst-nav .navbar-collapse {
		margin-top: .75rem;
		padding: .75rem;
		background: var(--as-cream);
		border-top: 1px solid rgba(8, 40, 40, .16);
	}
	.as-page .inst-nav .navbar-brand { font-size: 1.35rem; }
}

@media (max-width: 767.98px) {
	.as-page .inst-container { padding: 3.5rem 1rem; }
	.as-page .inst-section-title,
	.as-page .inst-form-title,
	.as-page h1.h2 { font-size: clamp(2.8rem, 14vw, 4.2rem); }
	.as-page .inst-form-card { padding: 1.25rem; }
	.as-page .inst-form-card .row { margin-inline: 0; }
	.as-page .inst-form-card .row > [class*="col-"] { padding-inline: 0; }
	.as-page .inst-btn-primary,
	.as-page .inst-submit-btn,
	.as-page .inst-btn-outline { width: 100%; margin: .35rem 0 !important; }
}

@media (prefers-reduced-motion: reduce) {
	.as-page * { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
