:root {
	--ft-bg: #f7f8fa;
	--ft-surface: #ffffff;
	--ft-border: #dfe3e8;
	--ft-border-strong: #c8ced6;
	--ft-text: #20242a;
	--ft-muted: #667085;
	--ft-accent: #1f5eff;
	--ft-accent-hover: #1749ca;
	--ft-success: #16794b;
	--ft-success-bg: #ecfdf3;
	--ft-warning: #9a6700;
	--ft-warning-bg: #fff8e6;
	--ft-danger: #b42318;
	--ft-danger-bg: #fff0ee;
	--ft-info: #175cd3;
	--ft-info-bg: #eff8ff;
	--ft-radius: 12px;
	--ft-shadow: 0 1px 2px rgba(16,24,40,.05);
	--ft-space-1: 4px;
	--ft-space-2: 8px;
	--ft-space-3: 12px;
	--ft-space-4: 16px;
	--ft-space-5: 20px;
	--ft-space-6: 24px;
	--ft-space-8: 32px;
}

.ft-public-page .entry-content,
.ft-public-page .site-main {
	overflow: visible;
}

.ft-public-page .ft-auth,
.ft-public-page .ft-professional-profile,
.ft-public-page .ft-request-funnel,
.ft-public-page .ft-client-dashboard,
.ft-public-page .ft-professional-dashboard,
.ft-public-page .ft-packages,
.ft-public-page .ft-notifications,
.ft-public-page .ft-support-center,
.ft-public-page .ft-privacy-center {
	max-width: 1180px;
	margin: 0 auto;
	color: var(--ft-text);
	font-size: 16px;
	line-height: 1.5;
}

.ft-public-page .ft-auth form,
.ft-public-page .ft-professional-profile form,
.ft-public-page .ft-request-funnel form,
.ft-public-page .ft-client-dashboard form,
.ft-public-page .ft-professional-dashboard form,
.ft-public-page .ft-support-center form,
.ft-public-page .ft-privacy-center form {
	box-sizing: border-box;
}

.ft-public-page input[type="text"],
.ft-public-page input[type="email"],
.ft-public-page input[type="tel"],
.ft-public-page input[type="password"],
.ft-public-page input[type="number"],
.ft-public-page input[type="file"],
.ft-public-page select,
.ft-public-page textarea {
	width: 100%;
	max-width: 100%;
	min-height: 44px;
	box-sizing: border-box;
	border: 1px solid var(--ft-border-strong);
	border-radius: 9px;
	background: var(--ft-surface);
	color: var(--ft-text);
	padding: 10px 12px;
	font: inherit;
	outline: none;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.ft-public-page textarea {
	min-height: 110px;
	resize: vertical;
}

.ft-public-page input[type="checkbox"],
.ft-public-page input[type="radio"] {
	width: auto;
	min-height: auto;
	margin-right: 6px;
	accent-color: var(--ft-accent);
}

.ft-public-page input:focus,
.ft-public-page select:focus,
.ft-public-page textarea:focus {
	border-color: var(--ft-accent);
	box-shadow: 0 0 0 3px rgba(31,94,255,.12);
}

.ft-public-page label {
	color: var(--ft-text);
	font-weight: 600;
}

.ft-public-page small,
.ft-public-page .description {
	color: var(--ft-muted);
}

.ft-public-page button,
.ft-public-page .button,
.ft-public-page a.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 42px;
	border: 1px solid transparent;
	border-radius: 9px;
	padding: 9px 16px;
	background: var(--ft-button, var(--ft-accent));
	color: var(--ft-button-text, #fff);
	font: inherit;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: background .15s ease, border-color .15s ease, transform .05s ease;
}

.ft-public-page button:hover,
.ft-public-page .button:hover,
.ft-public-page a.button:hover {
	background: var(--ft-accent-hover);
	color: var(--ft-button-text, #fff);
	text-decoration: none;
}

.ft-public-page button:active,
.ft-public-page .button:active {
	transform: translateY(1px);
}

.ft-public-page button:disabled,
.ft-public-page .button:disabled {
	opacity: .48;
	cursor: not-allowed;
}

.ft-public-page .ft-auth-notice,
.ft-public-page .ft-auth-message {
	border: 1px solid var(--ft-border);
	border-radius: 10px;
	padding: 12px 14px;
	margin: 0 0 16px;
	background: var(--ft-info-bg);
	color: var(--ft-info);
}

.ft-public-page .ft-auth-notice-success {
	background: var(--ft-success-bg);
	color: var(--ft-success);
	border-color: rgba(22,121,75,.2);
}

.ft-public-page .ft-auth-notice-warning {
	background: var(--ft-warning-bg);
	color: var(--ft-warning);
	border-color: rgba(154,103,0,.2);
}

.ft-public-page .ft-auth-notice-error {
	background: var(--ft-danger-bg);
	color: var(--ft-danger);
	border-color: rgba(180,35,24,.2);
}

.ft-public-page .ft-page-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 24px;
}

.ft-public-page .ft-page-title {
	margin: 0;
	font-size: clamp(28px, 4vw, 40px);
	line-height: 1.12;
	letter-spacing: -.02em;
}

.ft-public-page .ft-page-description {
	margin: 8px 0 0;
	color: var(--ft-muted);
	max-width: 760px;
}

.ft-public-page .ft-card,
.ft-public-page .ft-auth form,
.ft-public-page .ft-request-funnel > form,
.ft-public-page .ft-professional-profile > form,
.ft-public-page .ft-support-center > div,
.ft-public-page .ft-privacy-center > div {
	background: var(--ft-surface);
	border: 1px solid var(--ft-border);
	border-radius: var(--ft-radius);
	box-shadow: var(--ft-shadow);
	padding: 20px;
}

.ft-public-page hr {
	border: 0;
	border-top: 1px solid var(--ft-border);
	margin: 24px 0;
}

.ft-public-page fieldset {
	border: 1px solid var(--ft-border);
	border-radius: 10px;
	padding: 16px;
	margin: 20px 0;
}

.ft-public-page legend {
	padding: 0 6px;
}

.ft-public-page table.widefat,
.ft-public-page table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--ft-border);
	border-radius: 10px;
	overflow: hidden;
	background: var(--ft-surface);
}

.ft-public-page table th,
.ft-public-page table td {
	padding: 11px 12px;
	border-bottom: 1px solid var(--ft-border);
	text-align: left;
	vertical-align: top;
}

.ft-public-page table th {
	background: #f9fafb;
	font-size: 13px;
	color: #475467;
}

.ft-public-page table tr:last-child td {
	border-bottom: 0;
}

.ft-public-page .ft-empty-state {
	text-align: center;
	padding: 32px 20px;
	border: 1px dashed var(--ft-border-strong);
	border-radius: 12px;
	background: #fbfcfd;
	color: var(--ft-muted);
}

.ft-public-page .ft-empty-state strong {
	display: block;
	color: var(--ft-text);
	font-size: 17px;
}

.ft-public-page .ft-empty-state p {
	margin: 6px 0 0;
}

.ft-public-page .ft-empty-state__icon {
	width: 36px;
	height: 36px;
	border-radius: 999px;
	margin: 0 auto 10px;
	display: grid;
	place-items: center;
	background: #eef2f6;
	color: var(--ft-muted);
	font-size: 24px;
}

.ft-public-page .ft-packages > div,
.ft-public-page .ft-client-dashboard > div[style*="display:grid"],
.ft-public-page .ft-professional-dashboard > div[style*="display:grid"] {
	gap: 16px !important;
}

.ft-public-page .ft-packages > div > div,
.ft-public-page .ft-client-dashboard > div[style*="display:grid"] > div,
.ft-public-page .ft-professional-dashboard > div[style*="display:grid"] > div {
	border-radius: var(--ft-radius) !important;
	border-color: var(--ft-border) !important;
	background: var(--ft-surface);
	box-shadow: var(--ft-shadow);
}

.ft-public-page .ft-professional-dashboard nav a.button {
	background: #fff;
	color: var(--ft-text);
	border-color: var(--ft-border-strong);
}

.ft-public-page .ft-professional-dashboard nav a.button:hover,
.ft-public-page .ft-professional-dashboard nav a.button.button-primary {
	background: var(--ft-accent);
	border-color: var(--ft-accent);
	color: #fff;
}

.ft-public-page .ft-notifications article {
	border-radius: var(--ft-radius) !important;
	border-color: var(--ft-border) !important;
	background: var(--ft-surface);
	box-shadow: var(--ft-shadow);
}

.ft-public-page .ft-funnel-questions {
	margin-top: 20px;
	padding: 18px;
	border-radius: 10px;
	background: #f9fafb;
	border: 1px solid var(--ft-border);
}

.ft-public-page p {
	margin-top: 0;
	margin-bottom: 16px;
}

.ft-public-page h2,
.ft-public-page h3 {
	color: var(--ft-text);
}

.ft-public-page h2 {
	margin: 0 0 18px;
	font-size: clamp(24px, 3vw, 32px);
}

.ft-public-page h3 {
	margin: 22px 0 12px;
	font-size: 19px;
}

.ft-public-page a:not(.button) {
	color: var(--ft-accent);
}

.ft-public-page a:not(.button):hover {
	color: var(--ft-accent-hover);
}

.ft-public-page .ft-mobile-table {
	display: none;
}

@media (max-width: 760px) {
	.ft-public-page .ft-auth,
	.ft-public-page .ft-professional-profile,
	.ft-public-page .ft-request-funnel,
	.ft-public-page .ft-client-dashboard,
	.ft-public-page .ft-professional-dashboard,
	.ft-public-page .ft-packages,
	.ft-public-page .ft-notifications,
	.ft-public-page .ft-support-center,
	.ft-public-page .ft-privacy-center {
		font-size: 15px;
	}

	.ft-public-page .ft-auth form,
	.ft-public-page .ft-card,
	.ft-public-page .ft-request-funnel > form,
	.ft-public-page .ft-professional-profile > form {
		padding: 16px;
	}

	.ft-public-page table.widefat,
	.ft-public-page table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		white-space: nowrap;
	}

	.ft-public-page table td {
		white-space: normal;
		min-width: 120px;
	}

	.ft-public-page button,
	.ft-public-page .button,
	.ft-public-page a.button {
		min-height: 44px;
	}

	.ft-public-page .ft-professional-dashboard nav {
		overflow-x: auto;
		flex-wrap: nowrap !important;
		padding-bottom: 4px;
	}

	.ft-public-page .ft-professional-dashboard nav a.button {
		flex: 0 0 auto;
	}

	.ft-public-page .ft-notifications article > div {
		flex-direction: column;
	}
}


.ft-public-page .ft-account-menu {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	max-width: 1180px;
	margin: 0 auto 24px;
	padding: 12px 14px;
	border: 1px solid var(--ft-border);
	border-radius: var(--ft-radius);
	background: var(--ft-surface);
	box-shadow: var(--ft-shadow);
}

.ft-public-page .ft-account-menu__identity {
	display: flex;
	flex-direction: column;
	min-width: 160px;
}

.ft-public-page .ft-account-menu__name {
	font-weight: 700;
	color: var(--ft-text);
}

.ft-public-page .ft-account-menu__role {
	font-size: 12px;
	color: var(--ft-muted);
}

.ft-public-page .ft-account-menu__links {
	display: flex;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
}

.ft-public-page .ft-account-menu__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 36px;
	padding: 7px 10px;
	border-radius: 8px;
	color: var(--ft-text);
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
}

.ft-public-page .ft-account-menu__link:hover,
.ft-public-page .ft-account-menu__link.is-current {
	background: #f1f4f8;
	color: var(--ft-accent);
}

.ft-public-page .ft-account-menu__logout {
	color: var(--ft-danger);
}

.ft-public-page .ft-account-menu__badge {
	display: inline-grid;
	place-items: center;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 999px;
	background: var(--ft-button, var(--ft-accent));
	color: var(--ft-button-text, #fff);
	font-size: 11px;
	line-height: 1;
}

@media (max-width: 860px) {
	.ft-public-page .ft-account-menu {
		align-items: stretch;
		flex-direction: column;
	}

	.ft-public-page .ft-account-menu__links {
		flex-wrap: nowrap;
		overflow-x: auto;
		padding-bottom: 2px;
	}

	.ft-public-page .ft-account-menu__link {
		flex: 0 0 auto;
	}
}


.ft-public-page .ft-professional-directory,
.ft-public-page .ft-public-profile {
	max-width: 1180px;
	margin: 0 auto;
	color: var(--ft-text);
}

.ft-public-page .ft-professional-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(240px,1fr));
	gap: 16px;
}

.ft-public-page .ft-professional-card {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	padding: 16px;
	border: 1px solid var(--ft-border);
	border-radius: var(--ft-radius);
	background: var(--ft-surface);
	box-shadow: var(--ft-shadow);
}

.ft-public-page .ft-professional-card__photo,
.ft-public-page .ft-professional-card__photo--placeholder {
	width: 72px;
	height: 72px;
	flex: 0 0 72px;
	border-radius: 999px;
	object-fit: cover;
	background: #eef2f6;
}

.ft-public-page .ft-professional-card__body {
	min-width: 0;
}

.ft-public-page .ft-professional-card__body h3 {
	margin: 0 0 4px;
}

.ft-public-page .ft-professional-card__meta,
.ft-public-page .ft-professional-card__rating {
	color: var(--ft-muted);
	margin-bottom: 10px;
}

.ft-public-page .ft-public-profile__hero {
	display: grid;
	grid-template-columns: minmax(180px,240px) 1fr;
	gap: 24px;
	align-items: center;
	padding: 22px;
	border: 1px solid var(--ft-border);
	border-radius: var(--ft-radius);
	background: var(--ft-surface);
	box-shadow: var(--ft-shadow);
}

.ft-public-page .ft-public-profile__photo,
.ft-public-page .ft-public-profile__photo--placeholder {
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: 16px;
	background: #eef2f6;
}

.ft-public-page .ft-public-profile__summary h1 {
	margin: 0 0 8px;
	font-size: clamp(30px,4vw,44px);
	line-height: 1.05;
}

.ft-public-page .ft-public-profile__city,
.ft-public-page .ft-public-profile__rating {
	color: var(--ft-muted);
}

.ft-public-page .ft-public-profile__chips {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin: 16px 0;
}

.ft-public-page .ft-chip {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 5px 10px;
	border-radius: 999px;
	background: #f1f4f8;
	color: #344054;
	font-size: 13px;
	font-weight: 600;
}

.ft-public-page .ft-public-profile__section,
.ft-public-page .ft-public-profile__privacy {
	margin-top: 18px;
	padding: 20px;
	border: 1px solid var(--ft-border);
	border-radius: var(--ft-radius);
	background: var(--ft-surface);
	box-shadow: var(--ft-shadow);
}

.ft-public-page .ft-review-list {
	display: grid;
	gap: 12px;
}

.ft-public-page .ft-review-card {
	padding: 16px;
	border: 1px solid var(--ft-border);
	border-radius: 10px;
	background: #fbfcfd;
}

.ft-public-page .ft-review-card__head {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 8px;
}

.ft-public-page .ft-public-profile__privacy {
	background: #f9fafb;
}

@media (max-width: 720px) {
	.ft-public-page .ft-public-profile__hero {
		grid-template-columns: 1fr;
	}

	.ft-public-page .ft-public-profile__media {
		max-width: 180px;
	}
}


.ft-public-page .ft-professional-search {
	margin: 0 0 20px;
	padding: 18px;
	border: 1px solid var(--ft-border);
	border-radius: var(--ft-radius);
	background: var(--ft-surface);
	box-shadow: var(--ft-shadow);
}

.ft-public-page .ft-professional-search__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(180px,1fr));
	gap: 14px;
}

.ft-public-page .ft-professional-search__grid p {
	margin-bottom: 0;
}

.ft-public-page .ft-professional-search__actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 16px;
}

.ft-public-page .ft-button-secondary {
	background: #fff !important;
	color: var(--ft-text) !important;
	border-color: var(--ft-border-strong) !important;
}

.ft-public-page .ft-button-secondary:hover {
	background: #f1f4f8 !important;
	color: var(--ft-accent) !important;
}

.ft-public-page .ft-professional-directory__result-meta {
	margin: 0 0 14px;
	color: var(--ft-muted);
}

@media (max-width: 620px) {
	.ft-public-page .ft-professional-search__actions {
		flex-direction: column;
	}

	.ft-public-page .ft-professional-search__actions .button,
	.ft-public-page .ft-professional-search__actions button {
		width: 100%;
	}
}


/* V0.67 — funil contextual e confirmação */
.ft-page-funnel-profession .entry-title,
.ft-page-funnel-profession .page-title,
.ft-page-funnel-profession .wp-block-post-title {
	display: none;
}

.ft-public-page .ft-funnel-context-title {
	margin: 0 0 8px;
	font-size: clamp(22px, 3vw, 30px);
	line-height: 1.2;
}

.ft-public-page .ft-funnel-profession-choice {
	margin: 0 0 18px;
	color: var(--ft-muted);
}

.ft-page-verify-whatsapp .entry-title,
.ft-page-verify-whatsapp .page-title,
.ft-page-verify-whatsapp .wp-block-post-title {
	font-size: 18px !important;
	line-height: 1.3 !important;
}

.ft-public-page .ft-verify-actions,
.ft-public-page .ft-continue-request__actions,
.ft-public-page .ft-confirmation-modal__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.ft-public-page .ft-verify-actions form,
.ft-public-page .ft-verify-actions form p {
	margin: 0;
}

.ft-public-page .ft-button-secondary {
	background: var(--ft-surface);
	color: var(--ft-text);
	border-color: var(--ft-border-strong);
}

.ft-public-page .ft-confirmation-modal {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: grid;
	place-items: center;
	padding: 20px;
}

.ft-public-page .ft-confirmation-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(16,24,40,.55);
}

.ft-public-page .ft-confirmation-modal__card {
	position: relative;
	z-index: 1;
	width: min(560px, 100%);
	background: var(--ft-surface);
	color: var(--ft-text);
	border-radius: 14px;
	padding: 24px;
	box-shadow: 0 20px 50px rgba(16,24,40,.22);
}

.ft-public-page .ft-confirmation-modal__card h2 {
	margin: 0 0 12px;
	font-size: 24px;
}

@media (max-width: 520px) {
	.ft-public-page .ft-verify-actions,
	.ft-public-page .ft-continue-request__actions,
	.ft-public-page .ft-confirmation-modal__actions {
		align-items: stretch;
	}

	.ft-public-page .ft-verify-actions form,
	.ft-public-page .ft-verify-actions button,
	.ft-public-page .ft-continue-request__actions .button,
	.ft-public-page .ft-confirmation-modal__actions .button {
		width: 100%;
	}
}


/* V0.68 — catálogo, funil em 2 etapas e confirmação */
.ft-page-services .entry-title,
.ft-page-services .page-title,
.ft-page-services .wp-block-post-title {
	display: none;
}

.ft-process-page .site-title,
.ft-process-page .site-description,
.ft-process-page .site-branding .site-title,
.ft-process-page .site-branding .site-description {
	display: none !important;
}

.ft-process-page .entry-title,
.ft-process-page .page-title,
.ft-process-page .wp-block-post-title,
.ft-page-continue-request .entry-title,
.ft-page-continue-request .page-title,
.ft-page-continue-request .wp-block-post-title {
	font-size: 20px !important;
	line-height: 1.25 !important;
}

.ft-public-page .ft-services-directory {
	display: grid;
	gap: 18px;
}

.ft-public-page .ft-services-category {
	border: 1px solid var(--ft-border);
	border-radius: var(--ft-radius);
	background: var(--ft-surface);
	padding: 18px;
}

.ft-public-page .ft-services-category__title {
	margin: 0 0 12px;
	font-size: 20px;
	line-height: 1.25;
}

.ft-public-page .ft-services-professions {
	margin: 0;
	padding-left: 20px;
	columns: 2;
	column-gap: 30px;
}

.ft-public-page .ft-services-professions li {
	margin: 0 0 8px;
	break-inside: avoid;
}

.ft-public-page .ft-funnel-context-title,
.ft-public-page .ft-flow-title {
	font-size: 20px !important;
	line-height: 1.3;
	margin: 0 0 14px;
}

.ft-public-page .ft-progress {
	display: grid;
	gap: 8px;
	margin: 0 0 18px;
}

.ft-public-page .ft-progress--five {
	grid-template-columns: repeat(5, minmax(0,1fr));
}

.ft-public-page .ft-progress--three {
	grid-template-columns: repeat(3, minmax(0,1fr));
}

.ft-public-page .ft-progress span {
	position: relative;
	display: flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
	padding: 8px 6px;
	border-top: 3px solid var(--ft-border);
	color: var(--ft-muted);
	font-size: 12px;
}

.ft-public-page .ft-progress span.is-active,
.ft-public-page .ft-progress span:has(~ span) {
	border-top-color: var(--ft-accent);
	color: var(--ft-text);
}

.ft-public-page .ft-progress b {
	display: inline-grid;
	place-items: center;
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	border-radius: 999px;
	background: #eef2f6;
	font-size: 11px;
}

.ft-public-page .ft-form-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 16px;
}

.ft-public-page .ft-consent-text,
.ft-public-page .ft-consent-text label,
.ft-public-page .ft-consent-text small {
	font-size: 12px !important;
	line-height: 1.4;
}

.ft-public-page .ft-preserved-message {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 14px;
	padding: 10px 12px;
	border: 1px solid rgba(22,121,75,.22);
	border-radius: 9px;
	background: var(--ft-success-bg);
	color: var(--ft-success);
	font-weight: 600;
}

.ft-public-page .ft-preserved-message span,
.ft-public-page .ft-success-check {
	display: inline-grid;
	place-items: center;
	border-radius: 999px;
	background: var(--ft-success);
	color: #fff;
	font-weight: 800;
}

.ft-public-page .ft-preserved-message span {
	width: 22px;
	height: 22px;
}

.ft-public-page .ft-verification-card {
	border: 1px solid var(--ft-border);
	border-radius: var(--ft-radius);
	background: var(--ft-surface);
	padding: 18px;
}

.ft-public-page .ft-verification-card form {
	border: 0;
	box-shadow: none;
	padding: 0;
	margin: 0;
	background: transparent;
}

.ft-public-page .ft-verification-buttons,
.ft-public-page .ft-verification-card {
	display: grid;
	gap: 10px;
}

.ft-public-page .ft-verification-card .ft-resend-form {
	margin-top: 10px;
}

.ft-public-page .ft-verification-card .ft-text-back {
	display: inline-block;
	margin-top: 10px;
}

.ft-public-page .ft-request-confirmation-page {
	min-height: 340px;
}

.ft-public-page .ft-confirmation-modal.is-inline {
	position: fixed;
}

.ft-public-page .ft-success-check {
	width: 44px;
	height: 44px;
	margin: 0 auto 12px;
	font-size: 24px;
}

.ft-public-page .ft-confirmation-modal__card {
	text-align: center;
}

.ft-public-page .ft-confirmation-modal__actions {
	justify-content: center;
}

.ft-public-page .ft-urgent-badge {
	display: inline-block;
	padding: 4px 8px;
	border-radius: 999px;
	background: var(--ft-warning-bg);
	color: var(--ft-warning);
	font-weight: 700;
}

@media (max-width: 760px) {
	.ft-public-page .ft-services-professions {
		columns: 1;
	}
	.ft-public-page .ft-progress--five {
		grid-template-columns: 1fr;
	}
	.ft-public-page .ft-progress--three {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 520px) {
	.ft-public-page .ft-form-actions {
		align-items: stretch;
	}
	.ft-public-page .ft-form-actions .button,
	.ft-public-page .ft-form-actions button {
		width: 100%;
	}
}

.ft-public-page .ft-funnel-context-title,
.ft-public-page .ft-flow-title,
.ft-page-verify-whatsapp .entry-title,
.ft-page-verify-whatsapp .page-title,
.ft-page-verify-whatsapp .wp-block-post-title,
.ft-process-page .entry-title,
.ft-process-page .page-title,
.ft-process-page .wp-block-post-title,
.ft-page-continue-request .entry-title,
.ft-page-continue-request .page-title,
.ft-page-continue-request .wp-block-post-title{font-size:24px!important;line-height:1.25!important}

.ft-public-page .ft-progress{position:relative;gap:0;margin:0 0 22px}
.ft-public-page .ft-progress span{position:relative;border-top:0;padding:34px 8px 0;text-align:center;justify-content:center;font-size:12px}
.ft-public-page .ft-progress span::before{content:"";position:absolute;top:14px;left:0;right:0;height:3px;background:var(--ft-border);z-index:0}
.ft-public-page .ft-progress span:first-child::before{left:50%}
.ft-public-page .ft-progress span:last-child::before{right:50%}
.ft-public-page .ft-progress b{position:absolute;top:3px;left:50%;transform:translateX(-50%);z-index:1;width:24px;height:24px;background:var(--ft-surface);border:2px solid var(--ft-border-strong);color:var(--ft-muted)}
.ft-public-page .ft-progress span.is-active b{border-color:var(--ft-accent);background:var(--ft-accent);color:#fff}

.ft-public-page .ft-consent-inline{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0 16px;font-size:12px}
.ft-public-page .ft-consent-inline label{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:400}
.ft-public-page .ft-verification-confirm{margin-top:18px}
.ft-public-page .ft-verification-secondary-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px}
.ft-page-client-dashboard .site-title,.ft-page-client-dashboard .site-description,.ft-page-client-dashboard .site-branding .site-title,.ft-page-client-dashboard .site-branding .site-description{display:none!important}

:root{--ft-black:#000000;--ft-white:#ffffff;--ft-yellow:#ffa300;--ft-yellow-soft:#ffde95;--ft-dark:#21201d;--ft-whatsapp:#25d366;--ft-green:#1daa61;--ft-gray:#b4b4b4;--ft-accent:#ffa300;--ft-accent-hover:#ffde95;--ft-button:#ffa300;--ft-button-text:#000000;--ft-text:#21201d;--ft-border:#b4b4b4;--ft-border-strong:#b4b4b4}
.ft-page-services .site-branding,.ft-page-services .site-title,.ft-page-services .site-description,.ft-process-page .site-branding,.ft-process-page .site-title,.ft-process-page .site-description,.ft-page-client-dashboard .site-branding,.ft-page-client-dashboard .site-title,.ft-page-client-dashboard .site-description{display:none!important}
.ft-public-page button:hover,.ft-public-page .button:hover,.ft-public-page a.button:hover,.ft-public-page .ft-button-secondary:hover{background:#ffde95!important;color:#000!important;border-color:#ffa300!important}
.ft-public-page .ft-progress-header{display:flex;justify-content:space-between;gap:12px;margin:0 0 8px;font-size:13px}
.ft-public-page .ft-progress-bar{height:8px;background:#ececec;border-radius:999px;overflow:hidden;margin-bottom:14px}
.ft-public-page .ft-progress-bar>span{display:block;height:100%;background:#ffa300;border-radius:999px}
.ft-public-page .ft-progress-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:18px}
.ft-public-page .ft-progress-steps span{display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px;color:#777;text-align:center}
.ft-public-page .ft-progress-steps b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:999px;background:#f2f2f2;border:1px solid #b4b4b4;font-size:11px}
.ft-public-page .ft-progress-steps .is-done b{background:#1daa61;border-color:#1daa61;color:#fff}
.ft-public-page .ft-progress-steps .is-current{color:#21201d;font-weight:700}
.ft-public-page .ft-progress-steps .is-current b{background:#ffa300;border-color:#ffa300;color:#000}
.ft-public-page .ft-progress-complete{color:#1daa61;font-weight:800;margin-bottom:8px}
.ft-public-page .ft-auth-title{font-size:24px!important;line-height:1.25;margin:0 0 14px}
.ft-public-page .ft-role-select{font-weight:700}
.ft-public-page .ft-verification-confirm{margin-top:24px}
.ft-public-page .ft-verification-secondary-actions{display:flex;align-items:stretch;gap:10px}
.ft-public-page .ft-card-status-active{border-color:#1daa61!important;background:#eefaf4!important}
.ft-public-page .ft-card-status-active strong,.ft-public-page .ft-card-status-active div{color:#1daa61!important}
@media(max-width:700px){.ft-public-page .ft-request-funnel--profession-locked #ft-category,.ft-public-page .ft-request-funnel--profession-locked #ft-profession{display:none!important}.ft-public-page .ft-progress-steps{grid-template-columns:1fr}.ft-public-page .ft-progress-steps span{justify-content:flex-start}}

.ft-public-page .ft-services-professions a:hover,
.ft-public-page .ft-services-professions a:focus{color:#ffa300!important}
.ft-public-page input[type="checkbox"],.ft-public-page input[type="radio"]{accent-color:#ffa300!important}
.ft-public-page select:focus,.ft-public-page input:focus,.ft-public-page textarea:focus{border-color:#ffa300!important;box-shadow:0 0 0 3px rgba(255,163,0,.18)!important}
.ft-public-page .ft-auth-notice-info{color:#ffa300!important;background:#ffde95!important;border-color:#ffa300!important;font-weight:700}
.ft-public-page .ft-register .ft-auth-title{font-size:20px!important}
.ft-public-page .ft-auth-title-verify{font-size:24px!important}
.ft-public-page .ft-verification-secondary-actions{justify-content:center!important;align-items:center!important}
.ft-public-page .ft-verification-secondary-actions form,.ft-public-page .ft-verification-secondary-actions .button{margin:0!important}
.ft-public-page .ft-verification-confirm{display:flex;justify-content:center;margin-top:24px}
.ft-public-page .ft-verification-confirm button{min-width:140px}
.ft-public-page .ft-confirmation-modal__card h2{color:#1daa61}


/* V0.72 — recuperação e redefinição de senha */
.ft-public-page .ft-password-recovery,
.ft-public-page .ft-password-reset{
	max-width:620px;
	margin:0 auto;
}

.ft-public-page .ft-password-recovery .ft-auth-title,
.ft-public-page .ft-password-reset .ft-auth-title{
	font-size:24px!important;
}

.ft-public-page .ft-form-help{
	font-size:13px;
	color:var(--ft-muted);
}

.ft-public-page .ft-progress-steps--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.ft-public-page .ft-auth-notice-info{background:#ffffff!important;color:#ffa300!important;border-color:#ffa300!important}
.ft-public-page select{accent-color:#ffa300}
.ft-public-page select:hover,.ft-public-page select:focus{border-color:#ffa300!important;box-shadow:0 0 0 3px rgba(255,163,0,.18)!important}
.ft-public-page option:checked{background:#ffa300 linear-gradient(0deg,#ffa300 0%,#ffa300 100%)!important;color:#000!important}

.ft-public-page .ft-flow-subtitle{margin:-6px 0 18px;color:#667085;font-size:14px;line-height:1.5}
.ft-public-page .ft-auth-secondary-link{margin:14px 0 0;text-align:center;font-size:14px}
.ft-public-page .ft-auth-secondary-link a{color:#21201d}.ft-public-page .ft-auth-secondary-link a:hover{color:#ffa300}
.ft-public-page .ft-progress-steps{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:700px){.ft-public-page .ft-progress-steps{grid-template-columns:repeat(5,minmax(44px,1fr));overflow-x:auto}.ft-public-page .ft-progress-steps span{font-size:10px}}

.ft-public-page .ft-auth-notice-info{background:#ffde95!important;color:#000!important;border-color:#000!important}
.ft-public-page .ft-password-field{position:relative;display:block}.ft-public-page .ft-password-field input{padding-right:44px}.ft-public-page .ft-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent!important;padding:4px;cursor:pointer}
.ft-public-page .ft-otp-input{letter-spacing:12px;text-align:center;font-size:20px}
.ft-public-page .ft-otp-boxes{display:grid;grid-template-columns:repeat(6,44px);gap:8px;justify-content:center;margin:12px 0 18px}.ft-public-page .ft-otp-boxes span{display:grid;place-items:center;height:46px;border:1px solid #b4b4b4;border-radius:8px}.ft-public-page .ft-otp-boxes span.is-filled{border-color:#ffa300;box-shadow:0 0 0 3px rgba(255,163,0,.14)}
.ft-public-page select:hover,.ft-public-page option:hover{background:#ffa300!important;color:#000!important}

.ft-public-page .ft-budget-note{margin:12px 0 16px;padding:0;border:0;background:transparent;color:#21201d;font-weight:600}
.ft-public-page .ft-password-toggle{color:#b4b4b4!important;transition:color .18s ease}
.ft-public-page .ft-password-toggle:hover,.ft-public-page .ft-password-toggle:focus{color:#ffa300!important;background:transparent!important}
.ft-public-page select:hover,.ft-public-page option:hover{background:#ffffff!important;color:#21201d!important}
.ft-public-page .ft-confirmation-modal__card h2{color:#1daa61!important}

.ft-public-page .ft-review-request{max-width:760px;margin:0 auto}
.ft-public-page .ft-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.ft-public-page .ft-review-grid>div{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid #b4b4b4;border-radius:10px;background:#fff}
.ft-public-page .ft-review-grid__wide{grid-column:1/-1}
@media(max-width:640px){.ft-public-page .ft-review-grid{grid-template-columns:1fr}}

/* V0.79 — stepper sequencial consistente */
.ft-public-page .ft-progress-steps span b{background:#f2f2f2;border-color:#b4b4b4;color:#21201d}
.ft-public-page .ft-progress-steps span.is-done b{background:#1daa61!important;border-color:#1daa61!important;color:#fff!important}
.ft-public-page .ft-progress-steps span.is-current b{background:#ffa300!important;border-color:#ffa300!important;color:#000!important}
.ft-public-page .ft-progress-steps span.is-done{color:#1daa61;font-weight:700}
.ft-public-page .ft-progress-steps span.is-current{color:#21201d;font-weight:700}


/* V0.83 — ajustes visuais e revisão */
.ft-public-page .ft-budget-note{
	color:#ffa300!important;
}

.ft-public-page select,
.ft-public-page option{
	background:#ffffff;
}

.ft-public-page select:hover,
.ft-public-page select:focus,
.ft-public-page option:hover{
	background:#ffffff!important;
}

.ft-public-page button[type="submit"],
.ft-public-page .ft-form-actions button[type="submit"]{
	background:#ffa300!important;
	border-color:#ffa300!important;
	color:#000!important;
}

.ft-public-page button[type="submit"]:hover,
.ft-public-page .ft-form-actions button[type="submit"]:hover{
	background:#ffde95!important;
	border-color:#ffa300!important;
	color:#000!important;
}

.ft-request-list-active{
	color:#1daa61!important;
	font-weight:700;
}

.ft-request-list-neutral{
	color:#b4b4b4!important;
	font-weight:700;
}


/* V0.84 — refinamentos visuais finais */
.ft-public-page .ft-budget-note{
	color:#000000!important;
	font-weight:600;
}

.ft-public-page .ft-password-toggle{
	color:#b4b4b4!important;
	background:transparent!important;
}

.ft-public-page .ft-password-toggle:hover,
.ft-public-page .ft-password-toggle:focus{
	color:#b4b4b4!important;
	background:transparent!important;
}

.ft-public-page select,
.ft-public-page input,
.ft-public-page textarea{
	background:#ffffff!important;
}

.ft-public-page select:hover,
.ft-public-page input:hover,
.ft-public-page textarea:hover{
	background:#ffffff!important;
}

.ft-public-page select:focus,
.ft-public-page input:focus,
.ft-public-page textarea:focus{
	border-color:#ffa300!important;
	box-shadow:0 0 0 3px rgba(255,163,0,.18)!important;
}

.ft-public-page option:checked{
	background:#ffa300 linear-gradient(0deg,#ffa300 0%,#ffa300 100%)!important;
	color:#000!important;
}

.ft-public-page .ft-button-muted{
	background:#ffffff!important;
	color:#21201d!important;
	border-color:#b4b4b4!important;
}

.ft-public-page .ft-button-muted:hover,
.ft-public-page .ft-button-muted:focus{
	background:#ffde95!important;
	color:#000!important;
	border-color:#ffa300!important;
}

.ft-public-page .ft-change-number-link{
	color:#21201d!important;
	font-weight:600;
}

.ft-public-page .ft-change-number-link:hover,
.ft-public-page .ft-change-number-link:focus{
	color:#ffa300!important;
}

.ft-public-page .ft-confirmation-kicker{
	margin:0 0 8px;
	color:#1daa61;
	font-weight:800;
	font-size:18px;
}


/* V0.85 — popup final */
.ft-public-page .ft-confirmation-kicker{
	color:#000000!important;
}
