.tzb {
	--tzb-canvas: #fafaf8;
	--tzb-charcoal: #202326;
	--tzb-petroleum: #275d68;
	--tzb-hover: #1f4c55;
	--tzb-border: #d8dddd;
	--tzb-muted: #657074;
	--tzb-card: #fff;
	--tzb-card-hover: #f2f6f6;
	--tzb-card-selected: #e8f0f1;
	--tzb-tint: color-mix(in srgb, var(--tzb-petroleum) 7%, transparent);
	--tzb-tint-strong: color-mix(in srgb, var(--tzb-petroleum) 14%, transparent);
	--tzb-page-pad: var(--tzach-page-pad, clamp(20px, 4vw, 48px));
	color: var(--tzb-charcoal);
	font-family: Poppins, Arial, sans-serif;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.tzb [hidden] { display: none !important; }
.tzb * { box-sizing: border-box; }
.tzb button, .tzb input { font: inherit; }
.tzb-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 372px;
	gap: clamp(32px, 5vw, 72px);
	align-items: start;
}
.tzb-track {
	min-width: 0;
	padding: clamp(24px, 3vw, 40px) var(--tzb-page-pad) 40px;
}
.tzb-intro { margin-bottom: clamp(32px, 4vw, 48px); }
.tzb-eyebrow {
	display: block;
	color: var(--tzb-petroleum);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.tzb h2 {
	margin: 12px 0 10px;
	font-size: clamp(23px, 2.5vw, 30px);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -.025em;
}
.tzb h3 { margin: 0 0 6px; font-size: 18px; font-weight: 600; }
.tzb p { margin: 0; }
.tzb-intro > p, .tzb-step-sub { color: var(--tzb-muted); font-size: 16.5px; max-width: 54ch; }
.tzb-step-sub { margin-bottom: 22px !important; }
.tzb-step { position: relative; padding: 0 0 clamp(44px, 5.5vw, 68px) 56px; }
.tzb-step::before {
	content: "";
	position: absolute;
	left: 17px;
	top: 40px;
	bottom: 0;
	width: 2px;
	background: var(--tzb-border);
}
.tzb-step:last-of-type::before { display: none; }
.tzb-node {
	position: absolute;
	left: 0;
	top: 0;
	width: 36px;
	height: 36px;
	display: grid;
	place-items: center;
	border: 2px solid var(--tzb-border);
	border-radius: 50%;
	background: var(--tzb-canvas);
	color: var(--tzb-muted);
	font-size: 13px;
	font-weight: 600;
}
.tzb-step.is-done .tzb-node {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-petroleum);
	color: #fff;
}
.tzb-days { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; max-width: 520px; }
.tzb-day {
	display: grid;
	gap: 2px;
	padding: 16px 8px;
	border: 1px solid var(--tzb-border);
	border-radius: 12px;
	background: #fff;
	color: inherit;
	cursor: pointer;
	text-align: center;
	transition: border-color 180ms, background 180ms, transform 180ms;
}
.tzb-day:hover {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-card) !important;
	color: var(--tzb-charcoal) !important;
	transform: translateY(-2px);
}
.tzb-day[aria-pressed="true"] {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-card-selected) !important;
	color: var(--tzb-charcoal) !important;
}
.tzb-day > span, .tzb-day > small { color: var(--tzb-muted); font-size: 12px; letter-spacing: .07em; }
.tzb-day > b { color: inherit; font-size: 27px; font-weight: 600; line-height: 1.05; }
.tzb-day[aria-pressed="true"] > b { color: var(--tzb-petroleum); }
.tzb-block { margin-top: 24px; }
.tzb-block-label { display: block; margin-bottom: 12px; font-size: 15px; font-weight: 500; }
.tzb-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.tzb-chip {
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid var(--tzb-border);
	border-radius: 999px;
	background: #fff;
	color: inherit;
	cursor: pointer;
	font-size: 15px;
}
.tzb-chip:hover {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-card-hover) !important;
	color: var(--tzb-charcoal) !important;
}
.tzb-chip[aria-pressed="true"] {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-card-selected) !important;
	color: var(--tzb-petroleum) !important;
	font-weight: 500;
}
.tzb-hint, .tzb-note { display: block; margin-top: 12px; color: var(--tzb-muted); font-size: 13.5px; max-width: 62ch; }
.tzb-address {
	display: grid;
	grid-template-columns: 220px 130px 1fr;
	gap: 16px;
	max-width: 640px;
}
.tzb-address label { display: grid; gap: 6px; font-size: 14px; font-weight: 500; }
.tzb-address label > span:first-child { min-height: 21px; }
.tzb-address em { color: var(--tzb-muted); font-size: 13px; font-style: normal; font-weight: 400; }
.tzb-field-label {
	position: relative;
	display: flex;
	align-items: center;
	gap: 7px;
}
.tzb-info {
	display: inline-grid;
	width: 18px;
	height: 18px;
	padding: 0 !important;
	border: 1px solid var(--tzb-petroleum) !important;
	border-radius: 50% !important;
	background: transparent !important;
	color: var(--tzb-petroleum) !important;
	font: 600 12px/1 sans-serif;
	place-items: center;
}
.tzb-tooltip {
	position: absolute;
	z-index: 20;
	top: calc(100% + 8px);
	left: 0;
	width: min(300px, calc(100vw - 48px));
	padding: 11px 13px;
	border-radius: 10px;
	background: var(--tzb-charcoal);
	box-shadow: 0 8px 24px rgb(32 35 38 / 18%);
	color: #fff;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.45;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-4px);
	transition: opacity 160ms ease, transform 160ms ease;
	visibility: hidden;
}
.tzb-field-label:hover .tzb-tooltip,
.tzb-field-label:focus-within .tzb-tooltip {
	opacity: 1;
	transform: translateY(0);
	visibility: visible;
}
.tzb-cep-status {
	margin: 10px 0 0;
	color: var(--tzb-petroleum);
	font-size: 13px;
	font-weight: 500;
}
.tzb-cep-status .tzb-cep-contact {
	display: block;
	margin-top: 6px;
	color: var(--tzb-charcoal);
	font-weight: 500;
	line-height: 1.45;
}
.tzb .tzb-cep-status a.tzb-cep-wa {
	display: inline-flex;
	margin-top: 10px;
	padding: 8px 14px;
	border-radius: 999px;
	background: var(--tzb-petroleum);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}
.tzb-address input {
	min-height: 48px;
	padding: 0 15px;
	border: 1px solid var(--tzb-border);
	border-radius: 12px;
	background: #fff;
	color: var(--tzb-charcoal);
	font-size: 16px;
}
.tzb-address input:focus {
	outline: none;
	border-color: var(--tzb-petroleum);
	box-shadow: 0 0 0 3px var(--tzb-tint-strong);
}
.tzb-address input[aria-invalid="true"] { border-color: #9b4a3f; }
.tzb-services {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 14px;
	min-width: 0;
}
.tzb-service {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 16px;
	min-height: 0;
	padding: 22px 20px;
	border: 1px solid var(--tzb-border);
	border-radius: 20px;
	background: var(--tzb-card) !important;
	color: var(--tzb-charcoal) !important;
	cursor: pointer;
	text-align: left;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow: hidden;
	transition: border-color 180ms, background 180ms, transform 180ms;
}
.tzb-service:hover {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-card-hover) !important;
	color: var(--tzb-charcoal) !important;
	transform: translateY(-2px);
}
.tzb-service[aria-pressed="true"] {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-card-selected) !important;
	color: var(--tzb-charcoal) !important;
}
.tzb-service h3 {
	margin: 0;
	color: var(--tzb-charcoal) !important;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
	max-width: 100%;
	white-space: normal;
	overflow-wrap: anywhere;
}
.tzb-service p,
.tzb-service small {
	display: none !important;
}
.tzb-service strong {
	margin: 0;
	color: var(--tzb-petroleum) !important;
	font-size: 24px;
	font-weight: 600;
	letter-spacing: -.02em;
	max-width: 100%;
}
.tzb-pieces { display: none !important; }
.tzb-piece {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 8px 0;
	border-bottom: 1px solid var(--tzb-border);
	font-size: 15px;
}
.tzb-piece > div { display: flex; align-items: center; gap: 6px; }
.tzb-piece button {
	width: 40px;
	height: 40px;
	display: grid;
	place-items: center;
	border: 1px solid var(--tzb-border);
	border-radius: 10px;
	background: #fff;
	color: inherit;
	cursor: pointer;
	font-size: 19px;
}
.tzb-piece button:hover,
.tzb-piece button:focus {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-card-hover) !important;
	color: var(--tzb-petroleum) !important;
}
.tzb-piece output { min-width: 34px; text-align: center; font-variant-numeric: tabular-nums; }
.tzb button:focus-visible, .tzb input:focus-visible {
	outline: 3px solid var(--tzb-petroleum);
	outline-offset: 2px;
}
.tzb-panel-wrap { position: sticky; top: 100px; padding-top: clamp(24px, 3vw, 40px); }
.tzb-panel {
	padding: 24px;
	border: 1px solid var(--tzb-border);
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 18px 48px -30px rgb(32 35 38 / 26%);
}
.tzb-panel h2 { margin: 0 0 3px; font-size: 20px; }
.tzb-panel h2 + p { margin-bottom: 18px; color: var(--tzb-muted); font-size: 13.5px; }
.tzb-progress { display: flex; gap: 5px; margin-bottom: 16px; }
.tzb-progress i { flex: 1; height: 3px; border-radius: 99px; background: var(--tzb-border); }
.tzb-progress i.is-on { background: var(--tzb-petroleum); }
.tzb-summary { margin: 0; }
.tzb-summary > div {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 0;
	border-top: 1px solid var(--tzb-border);
	font-size: 14px;
}
.tzb-summary dt { flex: none; color: var(--tzb-muted); }
.tzb-summary dd { margin: 0; text-align: right; font-weight: 500; overflow-wrap: anywhere; }
.tzb-summary dd.is-empty { color: #aeb8b8; font-weight: 400; }
.tzb-price-row dd { color: var(--tzb-petroleum); font-size: 17px; font-weight: 600; }
.tzb-button {
	width: 100%;
	min-height: 52px;
	margin-top: 20px;
	padding: 0 26px;
	border: 1.5px solid transparent;
	border-radius: 14px;
	background: var(--tzb-petroleum);
	color: #fff;
	cursor: pointer;
	font-weight: 500;
}
.tzb-button:hover { background: var(--tzb-hover); }
.tzb-button:disabled { background: var(--tzb-border); color: var(--tzb-muted); cursor: not-allowed; }
.tzb-button.tzb-secondary { border-color: var(--tzb-border); background: transparent; color: var(--tzb-charcoal); }
.tzb-panel-note, .tzb-close p { margin-top: 12px !important; color: var(--tzb-muted); font-size: 12.5px; text-align: center; }
.tzb-done { text-align: center; }
.tzb-done > span {
	width: 46px;
	height: 46px;
	display: grid;
	place-items: center;
	margin: 0 auto 14px;
	border-radius: 50%;
	background: var(--tzb-tint);
	color: var(--tzb-petroleum);
	font-size: 22px;
}
.tzb-done .tzb-summary { margin-top: 16px; text-align: left; }
.tzb-close { display: none; padding-left: 56px; }
.tzb-sheet { display: none; }

@media (max-width: 1080px) {
	.tzb-layout { grid-template-columns: minmax(0, 1fr); }
	.tzb-panel-wrap { display: none; }
	.tzb-services { grid-template-columns: minmax(0, 1fr); }
	/* CTA final do trilho some no mobile: a sheet fixa cobre o mesmo papel. */
	.tzb-close { display: none !important; }
	.tzb-sheet {
		position: fixed;
		z-index: 50;
		right: 0;
		bottom: 0;
		left: 0;
		display: block;
		border-top: 1px solid var(--tzb-border);
		background: rgb(250 250 248 / 97%);
		box-shadow: 0 -12px 32px -24px rgb(32 35 38 / 50%);
		backdrop-filter: blur(12px);
		transform: translateY(110%);
		opacity: 0;
		pointer-events: none;
		visibility: hidden;
		transition: transform 220ms ease, opacity 180ms ease, visibility 0s linear 220ms;
	}
	/* Só aparece enquanto o trilho está na viewport (não no hero/FAQ/rodapé). */
	.tzb-sheet.is-visible {
		transform: translateY(0);
		opacity: 1;
		pointer-events: auto;
		visibility: visible;
		transition: transform 220ms ease, opacity 180ms ease, visibility 0s;
	}
	.tzb-sheet-body {
		max-height: 0;
		overflow: hidden;
		padding: 0 16px;
		transition: max-height 260ms;
	}
	.tzb-sheet.is-open .tzb-sheet-body { max-height: 60vh; overflow-y: auto; padding-top: 16px; }
	.tzb-sheet-row { display: flex; align-items: center; gap: 12px; padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); }
	.tzb-sheet-toggle {
		flex: 1;
		min-width: 0;
		border: 0;
		background: none;
		color: inherit;
		cursor: pointer;
		text-align: left;
	}
	.tzb-sheet-toggle b, .tzb-sheet-toggle span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	.tzb-sheet-toggle b { font-size: 14px; font-weight: 500; }
	.tzb-sheet-toggle span { color: var(--tzb-muted); font-size: 13px; }
	.tzb-sheet-row .tzb-button { width: auto; min-height: 44px; margin: 0; padding: 0 18px; font-size: 14px; }
	html.tzb-sheet-visible .tzach-booking-section,
	html.tzb-sheet-visible .elementor-widget-tzach-booking-rail {
		padding-bottom: calc(72px + env(safe-area-inset-bottom));
	}
}

@media (max-width: 760px) {
	.elementor-widget-tzach-booking-rail,
	.elementor-widget-tzach-booking-rail > .elementor-widget-container,
	.tzach-booking-section,
	.tzach-booking-section > .e-con-inner {
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}
	.tzb-track {
		padding: 24px var(--tzb-page-pad) 40px;
	}
	.tzb-days { grid-template-columns: repeat(2, 1fr); }
	.tzb-address { grid-template-columns: 1fr 1fr; }
	.tzb-complement { grid-column: 1 / -1; }
	.tzb-pieces { grid-template-columns: 1fr; }
	.tzb-step, .tzb-close { padding-left: 52px; }
}

@media (prefers-reduced-motion: reduce) {
	.tzb *, .tzb *::before, .tzb *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
	}
}

/* Checkout modal 02N */
html.tzb-modal-open {
	overflow: hidden;
}

.tzb-protocol {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 12px;
	padding: 12px 14px;
	border-radius: 12px;
	background: var(--tzb-card-selected);
	color: var(--tzb-charcoal);
	font-size: 14px;
}

.tzb-protocol strong {
	font-weight: 600;
	color: var(--tzb-petroleum);
}

.tzb-modal-root {
	position: fixed;
	inset: 0;
	z-index: 80;
	display: grid;
	place-items: center;
	padding: 20px;
}

.tzb-modal-root[hidden] {
	display: none !important;
}

.tzb-modal-bg {
	position: absolute;
	inset: 0;
	border: 0;
	background: rgba(32, 35, 38, 0.45) !important;
	cursor: pointer;
	box-shadow: none !important;
	transform: none !important;
}

.tzb-modal-bg:hover,
.tzb-modal-bg:focus,
.tzb-modal-bg:active {
	background: rgba(32, 35, 38, 0.45) !important;
	outline: none;
	box-shadow: none !important;
	transform: none !important;
	filter: none !important;
}

/* Com modal aberto, bloqueia overlays/hover do Elementor (ex.: rosa #F2295B no hero). */
html.tzb-modal-open .elementor-element:hover::before,
html.tzb-modal-open .elementor-element::before,
html.tzb-modal-open .e-con:hover::before,
html.tzb-modal-open .e-con::before,
html.tzb-modal-open .elementor-element:hover > .elementor-background-overlay,
html.tzb-modal-open .elementor-background-overlay {
	opacity: 0 !important;
	background: none !important;
	background-image: none !important;
	background-color: transparent !important;
	pointer-events: none !important;
}

html.tzb-modal-open .tzach-home-hero:hover,
html.tzb-modal-open .elementor-element:hover {
	filter: none !important;
}

.tzb-chosen { display: flex; flex-direction: column; gap: 10px; }
.tzb-chosen:empty { display: none; }
.tzb-chosen-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 18px;
	border: 1px solid var(--tzb-border);
	border-radius: 16px;
	background: #fff;
}
.tzb-chosen-row span { font-weight: 500; }
.tzb-chosen-row strong { color: var(--tzb-petroleum); font-size: 18px; white-space: nowrap; }
/* Quantidade por peça no trilho (1.3.111) */
.tzb-chosen-row { flex-wrap: wrap; }
.tzb-chosen-row span { flex: 1 1 auto; min-width: 0; }
.tzb-qtd { flex: 1 0 100%; display: flex; align-items: center; gap: 8px; }
.tzb-qtd small { margin-right: auto; color: #6b7280; font-size: 13px; }
.tzb-qtd button {
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	border-radius: 10px;
	background: #eef1f1;
	color: var(--tzb-petroleum);
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
}
.tzb-qtd button:disabled { opacity: .4; cursor: default; }
.tzb-qtd output { min-width: 28px; text-align: center; font-weight: 600; }
.tzb-qtd input { width: 96px; min-height: 36px; border: 1px solid #D8DDDD; border-radius: 10px; padding: 0 10px; font: inherit; }
.tzb-minimo-erro { flex: 1 0 100%; color: #a52a2a; font-size: 12px; }
.tzb-service-open {
	display: block;
	width: auto;
	min-height: 44px;
	margin: 14px auto 0;
	padding: 0 18px;
	border: 1.5px solid var(--tzb-petroleum);
	border-radius: 12px;
	background: #fff;
	color: var(--tzb-petroleum);
	cursor: pointer;
	font-weight: 600;
}
.tzb-service-open:hover { background: var(--tzb-tint); }
.tzb-modal.tzb-service-dialog {
	width: min(520px, 100%);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	padding: 22px 0 0;
}
.tzb-modal.tzb-service-dialog .tzb-modal-head { padding: 0 22px; }
.tzb-service-scroll { flex: 1 1 auto; min-height: 0; overflow: auto; padding: 0 22px 8px; }
.tzb p.tzb-service-group {
	margin: 28px 0 18px;
	color: var(--tzb-muted);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.2;
	text-transform: uppercase;
}
.tzb .tzb-service-scroll p.tzb-service-group:first-of-type { margin-top: 6px; }
body .tzb .tzb-service-option,
body .tzb .tzb-service-option:hover,
body .tzb .tzb-service-option:focus,
body .tzb .tzb-service-option:focus-visible,
body .tzb .tzb-service-option:active {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	margin: 0 0 8px;
	padding: 14px 16px;
	border: 1px solid var(--tzb-border);
	border-radius: 14px;
	background: #fff !important;
	background-color: #fff !important;
	background-image: none !important;
	color: var(--tzb-charcoal) !important;
	box-shadow: none;
	cursor: pointer;
	text-align: left;
}
body .tzb .tzb-service-option:hover,
body .tzb .tzb-service-option:focus-visible {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-tint) !important;
	background-color: var(--tzb-tint) !important;
}
body .tzb .tzb-service-option[aria-pressed="true"],
body .tzb .tzb-service-option[aria-pressed="true"]:hover,
body .tzb .tzb-service-option[aria-pressed="true"]:focus,
body .tzb .tzb-service-option[aria-pressed="true"]:active {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-tint) !important;
	background-color: var(--tzb-tint) !important;
	color: var(--tzb-charcoal) !important;
}
.tzb-service-mark {
	display: grid;
	place-items: center;
	width: 22px;
	height: 22px;
	flex: none;
	border: 1.5px solid #c5cdcd;
	border-radius: 50%;
	color: #fff;
	font-size: 13px;
	line-height: 1;
}
.tzb-service-option[aria-pressed="true"] .tzb-service-mark {
	border-color: var(--tzb-petroleum);
	background: var(--tzb-petroleum);
}
.tzb-service-option[aria-pressed="true"] .tzb-service-mark::after { content: "✓"; }
.tzb-service-name { flex: 1; font-weight: 600; color: var(--tzb-charcoal) !important; }
body .tzb .tzb-service-option strong,
body .tzb .tzb-service-option:hover strong,
body .tzb .tzb-service-option:focus strong,
body .tzb .tzb-service-option:active strong {
	color: var(--tzb-petroleum) !important;
	font-size: 16px;
	white-space: nowrap;
}
.tzb-service-foot {
	padding: 12px 22px 18px;
	border-top: 1px solid var(--tzb-border);
}
.tzb-service-foot p { margin: 0 0 8px; color: var(--tzb-muted); font-size: 13px; text-align: center; }
.tzb-service-foot .tzb-button { margin-top: 0; }

.tzb-modal {
	position: relative;
	z-index: 1;
	width: min(440px, 100%);
	max-height: min(90vh, 720px);
	overflow: auto;
	background: #fff;
	border-radius: 16px;
	padding: 22px 22px 26px;
	box-shadow: 0 24px 60px rgba(15, 23, 42, 0.2);
}

.tzb-modal-head {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 16px;
}

.tzb-modal-head h2 {
	margin: 0 0 6px;
	font-size: 1.25rem;
	color: var(--tzb-charcoal);
}

.tzb-modal-head p {
	margin: 0;
	color: var(--tzb-muted);
	font-size: 0.92rem;
}

.tzb-modal-close {
	border: 0;
	background: transparent;
	font-size: 1.6rem;
	line-height: 1;
	cursor: pointer;
	color: var(--tzb-muted);
}

.tzb-modal-tabs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6px;
	margin-bottom: 16px;
}

.tzb-modal-tabs button {
	border: 1px solid var(--tzb-border);
	background: #fff;
	border-radius: 10px;
	padding: 10px 8px;
	font-weight: 600;
	cursor: pointer;
	color: var(--tzb-muted);
	font-family: inherit;
}

.tzb-modal-tabs button.is-on {
	border-color: var(--tzb-petroleum);
	color: var(--tzb-petroleum);
	background: rgba(39, 93, 104, 0.08);
}

.tzb-modal-form {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.tzb-modal-form label {
	display: flex;
	flex-direction: column;
	gap: 6px;
	font-size: 0.78rem;
	font-weight: 600;
	color: var(--tzb-muted);
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.tzb-modal-form label[hidden] {
	display: none !important;
}

.tzb-modal-form input {
	border: 1px solid var(--tzb-border);
	border-radius: 10px;
	padding: 12px;
	font-size: 1rem;
	font-weight: 500;
	color: var(--tzb-charcoal);
	text-transform: none;
	letter-spacing: 0;
	font-family: inherit;
}

.tzb-modal-error {
	margin: 0;
	color: #b42318;
	font-size: 0.9rem;
	font-weight: 500;
	text-transform: none;
}

.tzb-modal-form .tzb-button {
	margin-top: 6px;
	width: 100%;
}

.tzb-account-links {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 12px 0 0;
}

.tzb-account-links a {
	color: var(--tzb-petroleum);
	font-weight: 600;
	text-decoration: none;
}

.tzb-modal-form .tzb-opt {
	text-transform: none;
	font-weight: 500;
	color: var(--tzb-muted);
}

.tzb-modal-form [data-login-phone] {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.tzb-modal-form .tzb-modal-lead {
	margin: 0;
	color: var(--tzb-muted);
	font-size: 0.95rem;
	font-weight: 500;
	text-transform: none;
	letter-spacing: 0;
}
