:root {
	--aad-bg: #ffffff;
	--aad-panel: #ffffff;
	--aad-text: #1f2933;
	--aad-muted: #6b7280;
	--aad-accent: #b45309;
	--aad-border: #e5e7eb;
	--aad-shadow: 0 20px 50px rgba(55, 40, 20, 0.08);
}

.aad-directory-shell {
	background: #ffffff;
	color: var(--aad-text);
	padding: 32px 16px 56px;
}

.aad-hero {
	max-width: 840px;
	margin: 0 auto 24px;
	text-align: center;
}

.aad-market-shell {
	padding-top: 40px;
}

.aad-market-hero {
	margin-bottom: 22px;
}

.aad-landing-intro {
	margin: 0 auto 28px;
	max-width: 1180px;
}

.aad-breadcrumbs {
	align-items: center;
	color: var(--aad-muted);
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 auto 18px;
	max-width: 1180px;
}

.aad-breadcrumbs a,
.aad-breadcrumbs span {
	font-size: 0.94rem;
	text-decoration: none;
}

.aad-breadcrumbs a {
	color: inherit;
}

.aad-breadcrumbs a::after {
	content: "/";
	margin-left: 10px;
	opacity: 0.5;
}

.aad-highlight-grid,
.aad-link-grid {
	display: grid;
	gap: 18px;
	margin: 0 auto 24px;
	max-width: 1180px;
}

.aad-highlight-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.aad-link-grid {
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.aad-highlight-card,
.aad-link-card {
	background: rgba(255, 255, 255, 0.98);
	border: 1px solid var(--aad-border);
	border-radius: 24px;
	box-shadow: var(--aad-shadow);
	padding: 20px 22px;
}

.aad-highlight-label,
.aad-link-card-meta {
	color: var(--aad-muted);
	margin: 0;
}

.aad-highlight-value {
	font-size: clamp(1.9rem, 3vw, 2.8rem);
	font-weight: 800;
	margin: 10px 0 0;
}

.aad-link-card {
	display: grid;
	gap: 8px;
	text-decoration: none;
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.aad-link-card:hover,
.aad-link-card:focus-visible {
	border-color: #d8b177;
	box-shadow: 0 24px 48px rgba(55, 40, 20, 0.12);
	transform: translateY(-2px);
}

.aad-link-card.is-current {
	background: #f5f9ff;
	border-color: #9fbef7;
	box-shadow: 0 18px 36px rgba(33, 86, 171, 0.1);
}

.aad-link-card-title {
	color: var(--aad-text);
	font-size: 1.02rem;
	font-weight: 700;
}

.aad-city-browser-section {
	margin-bottom: 28px;
}

.aad-city-browser {
	background: #ffffff;
	border-top: 1px solid var(--aad-border);
	padding-top: 14px;
}

.aad-city-browser[open] {
	padding-bottom: 8px;
}

.aad-city-browser-summary {
	align-items: center;
	color: var(--aad-text);
	cursor: pointer;
	display: flex;
	font-size: 1.05rem;
	font-weight: 600;
	gap: 10px;
	list-style: none;
}

.aad-city-browser-summary::-webkit-details-marker {
	display: none;
}

.aad-city-browser-summary::after {
	color: #3c74db;
	content: "⌃";
	font-size: 1rem;
	margin-left: auto;
	transform: translateY(-1px);
}

.aad-city-browser:not([open]) .aad-city-browser-summary::after {
	content: "⌄";
}

.aad-city-browser-panel {
	padding-top: 16px;
}

.aad-city-browser-tabs {
	align-items: center;
	display: flex;
	gap: 10px;
	margin-bottom: 14px;
}

.aad-city-browser-tabs span {
	color: var(--aad-muted);
	font-size: 0.98rem;
}

.aad-city-browser-tabs .is-active {
	color: var(--aad-text);
	font-weight: 700;
}

.aad-city-browser-list {
	column-gap: 48px;
	columns: 4 180px;
}

.aad-city-browser-link {
	break-inside: avoid;
	color: #4d7ff0;
	display: block;
	font-size: 0.98rem;
	line-height: 1.5;
	margin-bottom: 6px;
	text-decoration: none;
}

.aad-city-browser-link:hover,
.aad-city-browser-link:focus-visible {
	text-decoration: underline;
}

.aad-link-section,
.aad-results-meta,
.aad-section-heading {
	margin-left: auto;
	margin-right: auto;
	max-width: 1180px;
}

.aad-section-heading h2 {
	font-size: clamp(1.5rem, 3vw, 2.2rem);
	margin: 0 0 12px;
}

.aad-eyebrow {
	color: var(--aad-accent);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	margin: 0 0 12px;
	text-transform: uppercase;
}

.aad-hero h1 {
	font-size: clamp(2.2rem, 5vw, 4.3rem);
	line-height: 1;
	margin: 0;
}

.aad-subhead {
	color: var(--aad-muted);
	font-size: 1.05rem;
	line-height: 1.7;
	margin: 14px auto 0;
	max-width: 640px;
}

.aad-filters {
	background: rgba(255, 255, 255, 0.98);
	border: 1px solid var(--aad-border);
	border-radius: 22px;
	box-shadow: var(--aad-shadow);
	display: grid;
	gap: 12px;
	grid-template-columns: 2fr 1fr 1fr 1fr auto;
	margin: 0 auto 18px;
	max-width: 1180px;
	padding: 16px;
}

.aad-filters input,
.aad-filters select,
.aad-filters button {
	border: 1px solid var(--aad-border);
	border-radius: 14px;
	font-size: 0.98rem;
	min-height: 48px;
	padding: 0 14px;
}

.aad-filters button {
	background: var(--aad-text);
	color: #fff;
	cursor: pointer;
	font-weight: 700;
}

.aad-results-meta {
	color: var(--aad-muted);
	margin: 0 auto 18px;
	max-width: 1180px;
}

.aad-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: 1fr;
	margin: 0 auto;
	max-width: 1180px;
}

.aad-card {
	background: var(--aad-panel);
	border: 1px solid var(--aad-border);
	border-radius: 24px;
	box-shadow: var(--aad-shadow);
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 22px;
}

.aad-card-profile {
	align-items: center;
	display: grid;
	gap: 22px;
	grid-template-columns: 160px minmax(0, 1fr) 230px;
}

.aad-card-media {
	align-self: stretch;
}

.aad-card-photo-link {
	display: block;
	height: 100%;
	text-decoration: none;
}

.aad-card-photo,
.aad-card-photo-placeholder {
	border-radius: 16px;
	display: block;
	height: 100%;
	max-height: 188px;
	min-height: 188px;
	object-fit: cover;
	width: 100%;
}

.aad-card-photo-placeholder {
	align-items: center;
	background: linear-gradient(135deg, #d7e6ff 0%, #8fb4ef 100%);
	color: #2f6fba;
	display: flex;
	font-size: 3rem;
	font-weight: 800;
	justify-content: center;
}

.aad-card-content {
	display: grid;
	gap: 12px;
	min-width: 0;
}

.aad-card-header {
	display: grid;
	gap: 8px;
	position: relative;
}

.aad-badge-row {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.aad-badge {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 800;
	gap: 7px;
	letter-spacing: 0.02em;
	padding: 6px 12px;
}

.aad-badge-review {
	background: #e9f2ff;
	color: #2458c6;
}

.aad-badge-verified {
	background: #e8f7ef;
	color: #1c7b4d;
}

.aad-badge-verified::before {
	align-items: center;
	background: #ffffff;
	border: 1px solid rgba(28, 123, 77, 0.28);
	border-radius: 4px;
	color: #1c7b4d;
	content: "✓";
	display: inline-flex;
	flex: 0 0 16px;
	font-size: 0.72rem;
	font-weight: 900;
	height: 16px;
	justify-content: center;
	line-height: 1;
	width: 16px;
}

.aad-tier-pill {
	background: #efe4d4;
	border-radius: 999px;
	color: #8b5a18;
	display: inline-block;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin-bottom: 10px;
	padding: 6px 10px;
	text-transform: uppercase;
}

.aad-card-kicker {
	color: var(--aad-accent);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin: 0 0 10px;
	text-transform: uppercase;
}

.aad-card h2 {
	font-size: 1.3rem;
	line-height: 1.2;
	margin: 0;
}

.aad-card h2 a,
.aad-card-link a {
	color: #3c74db;
	text-decoration: none;
}

.aad-card-subtitle,
.aad-card-location,
.aad-excerpt {
	color: var(--aad-muted);
	margin: 0;
}

.aad-card-subtitle {
	font-size: 1.02rem;
}

.aad-card-location {
	font-size: 0.96rem;
}

.aad-card-review-line {
	align-items: center;
	color: var(--aad-text);
	display: flex;
	flex-wrap: wrap;
	gap: 8px 10px;
	margin: 0;
}

.aad-card-review-line strong {
	color: #183f78;
	font-size: 0.96rem;
}

.aad-star-rating {
	color: #f0b323;
	font-size: 0.98rem;
	letter-spacing: 0.12em;
	line-height: 1;
}

.aad-star-rating-lg {
	font-size: 1.1rem;
}

.aad-card-actions {
	align-items: stretch;
	display: grid;
	gap: 14px;
	justify-self: end;
	width: 100%;
}

.aad-card-phone {
	font-size: 1.1rem;
	font-weight: 800;
	margin: 0;
	text-align: center;
}

.aad-card-action-buttons {
	display: grid;
	gap: 12px;
}

.aad-button {
	background: var(--aad-text);
	border: 1px solid var(--aad-text);
	border-radius: 999px;
	color: #fff;
	display: inline-block;
	font-weight: 700;
	padding: 12px 18px;
	text-decoration: none;
}

.aad-button-secondary {
	background: transparent;
	color: var(--aad-text);
}

.aad-auth-shell {
	background: linear-gradient(180deg, #ffffff 0%, #eef3f9 100%);
	margin: 0;
	max-width: none;
	min-height: calc(100vh - 80px);
	padding: 0 0 56px;
	width: min(1280px, calc(100vw - 24px));
}

.aad-auth-stage {
	margin: 0 auto;
	max-width: none;
	width: 100%;
}

.aad-auth-topbar {
	align-items: center;
	background: #ffffff;
	border-bottom: 1px solid #edf1f6;
	display: flex;
	justify-content: space-between;
	padding: 22px max(28px, calc((100vw - 1200px) / 2 + 28px));
}

.aad-auth-brand {
	align-items: center;
	display: inline-flex;
}

.aad-auth-brand-logo .custom-logo-link,
.aad-auth-brand-logo .custom-logo {
	display: block;
	height: auto;
	max-height: 54px;
	width: auto;
}

.aad-auth-brand-text {
	color: #2f3f8f;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: 700;
	line-height: 1;
}

.aad-auth-topbar__actions {
	align-items: center;
	display: inline-flex;
	flex-wrap: wrap;
	gap: 26px;
	justify-content: flex-end;
}

.aad-auth-topbar__actions a,
.aad-auth-region {
	color: var(--aad-text);
	font-size: 1rem;
	text-decoration: none;
}

.aad-auth-topbar__link {
	color: #2f5fd4;
	font-weight: 700;
}

.aad-auth-topbar__link:hover,
.aad-auth-topbar__link:focus-visible {
	text-decoration: underline;
}

.aad-auth-topbar__button {
	align-items: center;
	background: #4d7ff0;
	border: 1px solid #4d7ff0;
	border-radius: 999px;
	box-shadow: 0 10px 24px rgba(77, 127, 240, 0.14);
	color: #ffffff !important;
	display: inline-flex;
	font-weight: 800;
	justify-content: center;
	min-height: 44px;
	padding: 0 20px;
	text-decoration: none;
	transition: background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.aad-auth-topbar__button:hover,
.aad-auth-topbar__button:focus-visible {
	background: #3d6dd9;
	box-shadow: 0 14px 28px rgba(77, 127, 240, 0.18);
	color: #ffffff !important;
	transform: translateY(-1px);
}

.aad-auth-region::before {
	content: "◎";
	font-size: 0.95rem;
	margin-right: 6px;
}

.aad-auth-progress {
	align-items: center;
	background: #ffffff;
	border-bottom: 1px solid #edf1f6;
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 18px max(28px, calc((100vw - 1200px) / 2 + 28px));
}

.aad-auth-progress li {
	align-items: center;
	color: #97a0ae;
	display: flex;
	gap: 14px;
	min-width: 0;
	position: relative;
}

.aad-auth-progress li::after {
	background: #dce4ee;
	content: "";
	height: 1px;
	left: calc(34px + 14px);
	position: absolute;
	right: -8px;
	top: 50%;
	transform: translateY(-50%);
}

.aad-auth-progress li:last-child::after {
	display: none;
}

.aad-auth-progress li.is-active {
	color: #4d7ff0;
	font-weight: 700;
}

.aad-auth-progress__count {
	align-items: center;
	background: #eaf1ff;
	border-radius: 999px;
	color: #88a5dd;
	display: inline-flex;
	flex: 0 0 24px;
	font-size: 0.88rem;
	height: 24px;
	justify-content: center;
	position: relative;
	z-index: 1;
}

.aad-auth-progress li.is-active .aad-auth-progress__count {
	background: #4d7ff0;
	color: #ffffff;
}

.aad-auth-progress__label {
	background: #ffffff;
	padding-right: 12px;
	position: relative;
	z-index: 1;
}

.aad-auth-layout {
	align-items: center;
	display: grid;
	gap: 32px;
	grid-template-columns: minmax(0, 780px) minmax(260px, 1fr);
	margin: 0 auto;
	max-width: 1256px;
	padding: 32px 28px 0;
}

.aad-auth-layout-login {
	grid-template-columns: minmax(0, 720px) minmax(280px, 1fr);
}

.aad-auth-panel {
	background: #ffffff;
	border: 1px solid #d8e0eb;
	border-radius: 24px;
	box-shadow: 0 18px 40px rgba(48, 70, 110, 0.08);
}

.aad-auth-panel-form {
	padding: 24px;
}

.aad-auth-panel__header {
	align-items: flex-start;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin-bottom: 18px;
}

.aad-auth-panel__header h2 {
	font-size: clamp(2rem, 3.4vw, 2.8rem);
	line-height: 1.05;
	margin: 0 0 8px;
}

.aad-auth-panel__header p {
	color: var(--aad-text);
	font-size: 1.05rem;
	margin: 0;
}

.aad-auth-flag {
	align-items: center;
	background: #f5f8ff;
	border-radius: 999px;
	color: #4d7ff0;
	display: inline-flex;
	font-size: 0.88rem;
	font-weight: 700;
	height: 34px;
	justify-content: center;
	min-width: 34px;
	padding: 0 12px;
}

.aad-auth-form {
	gap: 16px;
	margin-top: 0;
}

.aad-auth-field {
	display: block;
}

.aad-auth-field > span {
	color: #243142;
	display: block;
	font-size: 0.96rem;
	font-weight: 700;
	margin-bottom: 8px;
}

.aad-auth-form input[type="text"],
.aad-auth-form input[type="email"],
.aad-auth-form input[type="password"] {
	background: #ffffff;
	border: 1px solid #d8e0eb;
	box-shadow: inset 0 1px 2px rgba(18, 32, 54, 0.04);
	border-radius: 14px;
	color: var(--aad-text);
	font-size: 1.08rem;
	min-height: 58px;
	padding: 0 16px;
	transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
	width: 100%;
}

.aad-auth-form input[type="text"]::placeholder,
.aad-auth-form input[type="email"]::placeholder,
.aad-auth-form input[type="password"]::placeholder {
	color: #7c8594;
}

.aad-auth-form input[type="text"]:focus,
.aad-auth-form input[type="text"]:focus-visible,
.aad-auth-form input[type="email"]:focus,
.aad-auth-form input[type="email"]:focus-visible,
.aad-auth-form input[type="password"]:focus,
.aad-auth-form input[type="password"]:focus-visible {
	background: #ffffff;
	border-color: #4d7ff0;
	box-shadow: 0 0 0 4px rgba(77, 127, 240, 0.14);
	outline: none;
}

.aad-auth-check {
	align-items: flex-start;
	color: #4b5666;
	display: flex;
	gap: 12px;
	font-size: 0.96rem;
	font-weight: 600;
}

.aad-auth-check input {
	accent-color: #4d7ff0;
	flex: 0 0 18px;
	height: 18px;
	margin-top: 2px;
	min-height: 18px;
	padding: 0;
	width: 18px;
}

.aad-auth-inline-actions {
	align-items: center;
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr) auto;
}

.aad-auth-alt-button {
	background: #ffffff;
	border-color: #d8e0eb;
	color: #20314b;
	min-height: 56px;
}

.aad-auth-alt-button:hover,
.aad-auth-alt-button:focus-visible {
	background: #f7faff;
	border-color: #9db9ff;
	color: #20314b;
}

.aad-auth-support {
	color: #667084;
	font-size: 0.96rem;
	line-height: 1.55;
	margin: 2px 0 0;
}

.aad-auth-member-types {
	display: grid;
	gap: 14px;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.aad-auth-member-type {
	background: #ffffff;
	border: 1px solid #d8e0eb;
	border-radius: 18px;
	cursor: pointer;
	display: grid;
	gap: 8px;
	min-height: 102px;
	padding: 18px 20px;
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.aad-auth-member-type:hover,
.aad-auth-member-type:focus-within {
	border-color: #9db9ff;
	box-shadow: 0 10px 24px rgba(77, 127, 240, 0.08);
	transform: translateY(-1px);
}

.aad-auth-member-type input {
	opacity: 0;
	pointer-events: none;
	position: absolute;
}

.aad-auth-member-type:has(input:checked) {
	border-color: #4d7ff0;
	box-shadow: 0 12px 28px rgba(77, 127, 240, 0.12);
}

.aad-auth-member-type:has(input:checked)::after {
	align-items: center;
	background: #4d7ff0;
	border-radius: 999px;
	color: #ffffff;
	content: "✓";
	display: inline-flex;
	font-size: 0.9rem;
	height: 22px;
	justify-content: center;
	position: absolute;
	right: 16px;
	top: 16px;
	width: 22px;
}

.aad-auth-member-type__title {
	color: #2f5fd4;
	font-size: 1.12rem;
	font-weight: 800;
	line-height: 1.2;
	max-width: calc(100% - 28px);
}

.aad-auth-member-type__copy {
	color: #5f6a79;
	font-size: 0.96rem;
	line-height: 1.45;
}

.aad-auth-trust {
	align-items: center;
	color: #2d3540;
	display: flex;
	flex-wrap: wrap;
	font-size: 1rem;
	gap: 12px;
	justify-content: center;
	margin: 8px 0 0;
	text-align: center;
}

.aad-auth-note {
	background: #f5f8ff;
	border: 1px solid #d8e6ff;
	border-radius: 18px;
	color: #425063;
	display: grid;
	gap: 8px;
	margin-top: 8px;
	padding: 16px 18px;
}

.aad-auth-note strong {
	color: #1f2a37;
	font-size: 1rem;
}

.aad-auth-note p {
	font-size: 0.95rem;
	line-height: 1.55;
	margin: 0;
}

.aad-auth-panel .aad-status-error {
	background: #fff4f2;
	border: 1px solid #f4c7bf;
	border-radius: 14px;
	color: #b42318;
	padding: 12px 14px;
}

.aad-auth-stars {
	color: #efb218;
	font-size: 1rem;
	letter-spacing: 0.18em;
}

.aad-auth-submit {
	background: #4d7ff0;
	border-color: #4d7ff0;
	display: block;
	margin-top: 8px;
	min-height: 56px;
	width: 100%;
}

.aad-auth-panel-quote {
	background: transparent;
	border: 0;
	box-shadow: none;
	display: grid;
	gap: 18px;
	justify-items: center;
	padding: 12px 12px 12px 0;
	text-align: center;
}

.aad-auth-avatar {
	align-items: center;
	background: radial-gradient(circle at 30% 30%, #fff9ef 0%, #d7e8ff 40%, #8fb4ef 100%);
	border-radius: 50%;
	box-shadow: 0 20px 44px rgba(77, 127, 240, 0.16);
	color: #2f5fd4;
	display: flex;
	font-size: 4.5rem;
	font-weight: 800;
	height: min(26vw, 260px);
	justify-content: center;
	width: min(26vw, 260px);
}

.aad-auth-panel-quote blockquote {
	color: #222b35;
	font-size: clamp(1.7rem, 3vw, 2.2rem);
	font-style: italic;
	line-height: 1.3;
	margin: 0;
	max-width: 320px;
}

.aad-auth-panel-quote p {
	color: #7b8794;
	font-size: 1rem;
	margin: 0;
}

.aad-auth-panel-quote-login blockquote {
	max-width: 360px;
}

.aad-auth-panel-benefits {
	align-content: center;
	justify-items: start;
	padding-right: 0;
	text-align: left;
}

.aad-auth-panel-benefits h3 {
	color: #1f2a37;
	font-size: clamp(1.6rem, 2.8vw, 2.2rem);
	line-height: 1.15;
	margin: 0;
}

.aad-auth-benefit-list {
	color: #4f5d70;
	display: grid;
	gap: 12px;
	line-height: 1.55;
	list-style: disc;
	margin: 0;
	max-width: 360px;
	padding-left: 24px;
}

.aad-auth-benefit-list li::marker {
	color: #4d7ff0;
}

.aad-compare,
.aad-pricing,
.aad-account {
	margin: 0 auto 24px;
	max-width: 1180px;
}

.aad-compare h2,
.aad-pricing h2,
.aad-account h2 {
	font-size: clamp(1.7rem, 3.5vw, 2.6rem);
	margin: 0 0 18px;
}

.aad-compare-grid,
.aad-pricing-grid,
.aad-account-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.aad-compare-card,
.aad-price-card,
.aad-account-card,
.aad-editor {
	background: rgba(255, 255, 255, 0.98);
	border: 1px solid var(--aad-border);
	border-radius: 24px;
	box-shadow: var(--aad-shadow);
	padding: 22px;
}

.aad-compare-card h3,
.aad-price-card h3,
.aad-account-card h3 {
	margin-top: 0;
}

.aad-big-stat {
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: 800;
	margin: 8px 0 0;
}

.aad-compare-list ul,
.aad-plan-points {
	margin: 10px 0 0;
	padding-left: 18px;
}

.aad-price-card.is-featured {
	background: #ffffff;
	border-color: #d8b177;
}

.aad-price-line {
	font-size: 1.7rem;
	font-weight: 800;
	margin-bottom: 4px;
}

.aad-price-subline,
.aad-pricing-note {
	color: var(--aad-muted);
}

.aad-inline-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.aad-status,
.aad-form-note {
	color: var(--aad-muted);
	margin: 0 0 12px;
}

.aad-form-note a {
	color: #2f5fd4;
	font-weight: 700;
	text-decoration: none;
}

.aad-form-note a:hover,
.aad-form-note a:focus-visible {
	text-decoration: underline;
}

.aad-status-error {
	color: #b42318;
}

.aad-price-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 18px;
}

.aad-account-header,
.aad-pricing-header {
	margin-bottom: 18px;
}

.aad-account-access {
	margin: 0 auto 24px;
	max-width: 1180px;
}

.aad-account-access__layout {
	align-items: stretch;
	padding: 8px 0 0;
}

.aad-account-access__card,
.aad-account-access__side {
	background: #ffffff;
}

.aad-account-access__card {
	padding: 28px;
}

.aad-account-access__header {
	margin-bottom: 20px;
}

.aad-account-access__header h2 {
	font-size: clamp(2rem, 3.5vw, 2.9rem);
}

.aad-account-access__form {
	gap: 16px;
	margin-top: 0;
}

.aad-account-access__footer {
	border-top: 1px solid #e5ebf3;
	display: grid;
	gap: 12px;
	margin-top: 22px;
	padding-top: 18px;
}

.aad-account-access__footer p {
	color: #5f6a79;
	font-size: 0.98rem;
	line-height: 1.6;
	margin: 0;
}

.aad-account-access__create-link {
	color: #2f5fd4;
	font-size: 1rem;
	font-weight: 800;
	text-decoration: none;
}

.aad-account-access__create-link:hover,
.aad-account-access__create-link:focus-visible {
	text-decoration: underline;
}

.aad-account-access__side {
	display: grid;
	gap: 18px;
	padding: 28px;
}

.aad-account-access__side h3 {
	font-size: clamp(1.45rem, 2.4vw, 2rem);
	line-height: 1.1;
	margin: 0;
}

.aad-account-access__side .aad-plain-list {
	color: #4f5d70;
	display: grid;
	gap: 10px;
	line-height: 1.6;
	margin: 0;
	padding-left: 18px;
}

.aad-account-access__side-button {
	align-self: start;
	margin-top: 4px;
}

.aad-editor {
	display: grid;
	gap: 12px;
	margin-top: 24px;
}

.aad-growth-landing {
	background:
		radial-gradient(circle at top left, rgba(84, 130, 232, 0.12), transparent 34%),
		linear-gradient(180deg, #f7fbff 0%, #ffffff 18%, #ffffff 100%);
	color: var(--aad-text);
	padding: 24px 16px 72px;
}

.aad-growth-hero,
.aad-growth-section {
	margin: 0 auto;
	max-width: 1180px;
}

.aad-growth-hero {
	margin-bottom: 28px;
}

.aad-growth-hero__grid {
	align-items: center;
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
}

.aad-growth-hero__content,
.aad-growth-hero__panel,
.aad-growth-benefit-card,
.aad-growth-stat-card,
.aad-growth-list-card,
.aad-growth-plan-card,
.aad-growth-faq-item,
.aad-growth-cta__panel {
	background: rgba(255, 255, 255, 0.98);
	border: 1px solid #dce7f5;
	border-radius: 28px;
	box-shadow: 0 20px 46px rgba(22, 52, 101, 0.08);
}

.aad-growth-hero__content {
	padding: 34px;
}

.aad-growth-hero__content h1,
.aad-growth-section__intro h2,
.aad-growth-cta__panel h2 {
	font-size: clamp(2.2rem, 4.8vw, 4rem);
	letter-spacing: -0.04em;
	line-height: 0.98;
	margin: 0;
}

.aad-growth-subhead,
.aad-growth-section__intro p,
.aad-growth-cta__panel p {
	color: #546274;
	font-size: 1.05rem;
	line-height: 1.75;
	margin: 0;
}

.aad-growth-subhead {
	margin-top: 16px;
	max-width: 58ch;
}

.aad-growth-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 24px;
}

.aad-growth-actions .aad-button {
	min-width: 210px;
}

.aad-growth-proof {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 24px;
}

.aad-growth-proof__item {
	background: #f5f9ff;
	border: 1px solid #deebfb;
	border-radius: 20px;
	display: grid;
	gap: 8px;
	padding: 18px 20px;
}

.aad-growth-proof__item strong,
.aad-growth-stat-card strong {
	color: #133f73;
	font-size: clamp(1.7rem, 3vw, 2.7rem);
	line-height: 1;
}

.aad-growth-proof__item span,
.aad-growth-stat-card span {
	color: #5d6878;
	font-size: 0.96rem;
	line-height: 1.55;
}

.aad-growth-hero__panel {
	display: grid;
	gap: 18px;
	padding: 28px;
}

.aad-growth-hero__label {
	color: #2458c6;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	margin: 0;
	text-transform: uppercase;
}

.aad-growth-panel__button {
	margin-top: 4px;
}

.aad-growth-stats {
	margin-bottom: 30px;
}

.aad-growth-stats__grid,
.aad-growth-benefits,
.aad-growth-plan-grid {
	display: grid;
	gap: 18px;
}

.aad-growth-stats__grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.aad-growth-stat-card {
	display: grid;
	gap: 12px;
	padding: 22px;
}

.aad-growth-section {
	margin-bottom: 30px;
}

.aad-growth-section__intro {
	display: grid;
	gap: 12px;
	margin: 0 auto 18px;
	max-width: 820px;
	text-align: center;
}

.aad-growth-section__intro--left {
	margin-left: 0;
	text-align: left;
}

.aad-growth-section__intro h2 {
	font-size: clamp(1.95rem, 4vw, 3.25rem);
}

.aad-growth-benefits {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aad-growth-benefit-card {
	display: grid;
	gap: 12px;
	padding: 24px;
}

.aad-growth-benefit-card__head {
	align-items: center;
	display: flex;
	gap: 14px;
}

.aad-growth-benefit-icon {
	align-items: center;
	background: #eef5ff;
	border: 1px solid #d7e6ff;
	border-radius: 18px;
	color: #2458c6;
	display: inline-flex;
	flex: 0 0 56px;
	height: 56px;
	justify-content: center;
	width: 56px;
}

.aad-growth-benefit-icon svg {
	display: block;
	fill: none;
	height: 26px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.9;
	width: 26px;
}

.aad-growth-benefit-card h3,
.aad-growth-list-card h3,
.aad-growth-plan-card h3 {
	font-size: 1.2rem;
	line-height: 1.25;
	margin: 0;
}

.aad-growth-benefit-card p,
.aad-growth-list-card p,
.aad-growth-plan-card p {
	color: #5d6878;
	line-height: 1.7;
	margin: 0;
}

.aad-growth-inline-link {
	color: #2f5fd4;
	font-size: 0.96rem;
	font-weight: 800;
	margin-top: auto;
	text-decoration: none;
}

.aad-growth-inline-link:hover,
.aad-growth-inline-link:focus-visible {
	text-decoration: underline;
}

.aad-growth-split__grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aad-growth-list-card {
	display: grid;
	gap: 16px;
	padding: 24px;
}

.aad-growth-plan-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aad-growth-plan-grid-single {
	grid-template-columns: minmax(0, 1fr);
}

.aad-growth-plan-card {
	display: grid;
	gap: 12px;
	padding: 24px;
}

.aad-growth-plan-card-cta {
	margin: 0;
	max-width: none;
	text-align: left;
}

.aad-growth-plan-card.is-featured {
	background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
	border-color: #a9c4ff;
}

.aad-growth-plan-card__price {
	color: #133f73;
	font-size: 1.7rem;
	font-weight: 800;
	line-height: 1.05;
	margin: 4px 0 0;
}

.aad-growth-plan-card__subprice {
	color: #6f7c8d;
	font-size: 0.96rem;
	margin: -2px 0 0;
}

.aad-growth-plan-card .aad-button {
	margin-top: 10px;
}

.aad-growth-faq-list {
	display: grid;
	gap: 14px;
}

.aad-growth-faq-item {
	padding: 0;
}

.aad-growth-faq-item summary {
	color: #1e293b;
	cursor: pointer;
	font-size: 1.06rem;
	font-weight: 800;
	list-style: none;
	padding: 20px 24px;
	position: relative;
}

.aad-growth-faq-item summary::-webkit-details-marker {
	display: none;
}

.aad-growth-faq-item summary::after {
	color: #4d7ff0;
	content: "+";
	font-size: 1.35rem;
	font-weight: 700;
	position: absolute;
	right: 24px;
	top: 50%;
	transform: translateY(-50%);
}

.aad-growth-faq-item[open] summary::after {
	content: "−";
}

.aad-growth-faq-item p {
	border-top: 1px solid #e8eef7;
	color: #59677a;
	line-height: 1.75;
	margin: 0;
	padding: 0 24px 22px;
}

.aad-growth-cta__panel {
	background: linear-gradient(135deg, #123f74 0%, #245ab9 100%);
	border-color: rgba(36, 90, 185, 0.18);
	color: #ffffff;
	padding: 32px;
	text-align: center;
}

.aad-growth-cta__panel .aad-eyebrow,
.aad-growth-cta__panel h2,
.aad-growth-cta__panel p {
	color: #ffffff;
}

.aad-growth-actions-center {
	justify-content: center;
}

.aad-growth-cta__panel .aad-button-secondary {
	background: rgba(255, 255, 255, 0.14);
	border-color: rgba(255, 255, 255, 0.42);
	color: #ffffff;
}

.aad-growth-cta__panel .aad-button-secondary:hover,
.aad-growth-cta__panel .aad-button-secondary:focus-visible {
	background: rgba(255, 255, 255, 0.2);
	border-color: rgba(255, 255, 255, 0.54);
}

.aad-wizard-shell {
	background: linear-gradient(180deg, #ffffff 0%, #eef3f9 100%);
	border-radius: 28px;
	margin: 0 auto 24px;
	max-width: none;
	padding: 0 0 40px;
	width: min(1280px, calc(100vw - 24px));
}

.aad-wizard-stage {
	margin: 0 auto;
	max-width: none;
	width: 100%;
}

.aad-wizard-stage__intro {
	display: grid;
	gap: 10px;
	margin: 0 auto;
	max-width: 860px;
	padding: 28px 24px 18px;
	text-align: center;
}

.aad-wizard-stage__intro h2 {
	font-size: clamp(2rem, 4vw, 3.1rem);
	line-height: 1.05;
	margin: 0;
}

.aad-wizard-stage__intro p {
	color: var(--aad-muted);
	font-size: 1.02rem;
	margin: 0;
}

.aad-wizard-frame {
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.7fr);
	padding: 26px 24px 0;
}

.aad-wizard-main,
.aad-wizard-main-gate {
	min-width: 0;
}

.aad-wizard-form {
	background: transparent;
	grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.7fr);
	margin-top: 0;
	padding: 0;
}

.aad-wizard {
	gap: 28px;
}

.aad-wizard-steps {
	align-items: center;
	background: #ffffff;
	border-top: 1px solid #edf1f6;
	border-bottom: 1px solid #edf1f6;
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 18px 24px;
}

.aad-wizard-steps li {
	align-items: center;
	color: #97a0ae;
	cursor: default;
	display: flex;
	gap: 14px;
	min-width: 0;
	position: relative;
}

.aad-wizard-steps-onboard li {
	cursor: pointer;
}

.aad-wizard-steps li::after {
	background: #dce4ee;
	content: "";
	height: 1px;
	left: calc(34px + 14px);
	position: absolute;
	right: -8px;
	top: 50%;
	transform: translateY(-50%);
}

.aad-wizard-steps li:last-child::after {
	display: none;
}

.aad-wizard-steps li.is-active {
	color: #4d7ff0;
}

.aad-wizard-steps li.is-complete {
	color: #174d91;
}

.aad-wizard-step__count {
	align-items: center;
	background: #eaf1ff;
	border-radius: 999px;
	color: #88a5dd;
	display: inline-flex;
	flex: 0 0 24px;
	font-size: 0.88rem;
	font-weight: 700;
	height: 24px;
	justify-content: center;
	position: relative;
	z-index: 1;
}

.aad-wizard-steps li.is-active .aad-wizard-step__count {
	background: #4d7ff0;
	color: #ffffff;
}

.aad-wizard-steps li.is-complete .aad-wizard-step__count {
	background: #d7e7ff;
	color: #174d91;
}

.aad-wizard-step__label {
	background: #ffffff;
	font-size: 0.98rem;
	font-weight: 600;
	padding-right: 12px;
	position: relative;
	text-align: left;
	z-index: 1;
}

.aad-wizard-panel {
	background: #ffffff;
	border: 1px solid #d8e0eb;
	border-radius: 24px;
	box-shadow: 0 18px 40px rgba(48, 70, 110, 0.08);
	display: grid;
	gap: 16px;
	padding: 24px;
}

.aad-wizard-panel__intro {
	display: grid;
	gap: 8px;
}

.aad-wizard-panel__intro h3,
.aad-wizard-panel h4 {
	font-size: clamp(1.55rem, 2vw, 2rem);
	line-height: 1.15;
	margin: 0;
}

.aad-wizard-panel__intro p {
	color: var(--aad-muted);
	margin: 0;
}

.aad-wizard-grid {
	display: grid;
	gap: 14px;
}

.aad-wizard-grid-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aad-field-help {
	color: var(--aad-muted);
	font-size: 0.86rem;
}

.aad-upload-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aad-upload-card {
	background: #ffffff;
	border: 1px dashed #cfd8e3;
	border-radius: 20px;
	display: grid;
	gap: 10px;
	padding: 18px;
}

.aad-upload-card__title {
	color: var(--aad-text);
	font-size: 1rem;
	font-weight: 800;
}

.aad-upload-card__copy {
	color: var(--aad-muted);
	font-size: 0.95rem;
	line-height: 1.5;
}

.aad-upload-card input[type="file"] {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding: 0;
}

.aad-upload-preview {
	display: block;
}

.aad-upload-preview img {
	border: 1px solid var(--aad-border);
	border-radius: 16px;
	height: auto;
	max-width: 100%;
}

.aad-upload-preview-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(76px, 1fr));
}

.aad-upload-preview-grid img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
	width: 100%;
}

.aad-wizard-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: space-between;
	margin-top: 4px;
}

.aad-wizard-side {
	display: grid;
	gap: 18px;
}

.aad-wizard-side-card,
.aad-wizard-gate-card {
	background: #ffffff;
	border: 1px solid #d8e0eb;
	border-radius: 24px;
	box-shadow: 0 18px 40px rgba(48, 70, 110, 0.08);
	display: grid;
	gap: 14px;
	padding: 24px;
}

.aad-wizard-side-card h3,
.aad-wizard-gate-card h3 {
	font-size: 1.25rem;
	margin: 0;
}

.aad-wizard-side-card p,
.aad-wizard-gate-card p {
	color: var(--aad-muted);
	margin: 0;
}

.aad-plan-choice-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.aad-plan-choice {
	background: #fff;
	border: 1px solid var(--aad-border);
	border-radius: 22px;
	cursor: pointer;
	display: grid;
	gap: 10px;
	padding: 20px;
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.aad-plan-choice:hover,
.aad-plan-choice:focus-within {
	border-color: #bfd8ff;
	box-shadow: 0 18px 36px rgba(19, 63, 115, 0.08);
	transform: translateY(-1px);
}

.aad-plan-choice input {
	accent-color: #133f73;
	position: absolute;
	right: 18px;
	top: 18px;
}

.aad-plan-choice.is-selected {
	border-color: #133f73;
	box-shadow: 0 20px 40px rgba(19, 63, 115, 0.16);
	transform: translateY(-2px);
}

.aad-plan-choice__label {
	font-size: 1.15rem;
	font-weight: 800;
}

.aad-plan-choice__desc,
.aad-plan-choice__annual,
.aad-plan-choice__locations {
	color: var(--aad-muted);
}

.aad-plan-choice__price {
	color: var(--aad-text);
	font-size: 1.5rem;
	font-weight: 800;
}

.aad-plan-choice.is-featured {
	border-color: #d8b177;
	box-shadow: 0 16px 36px rgba(16, 61, 115, 0.08);
}

.aad-billing-choice {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.aad-billing-choice label {
	align-items: center;
	display: flex;
	gap: 8px;
	font-weight: 700;
}

.aad-review-upgrade {
	margin-top: 18px;
}

.aad-review-upgrade__card {
	background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
	border: 1px solid #d7e4f7;
	border-radius: 22px;
	display: grid;
	gap: 10px;
	padding: 22px;
}

.aad-review-upgrade__card input {
	accent-color: #133f73;
	justify-self: start;
	margin: 0 0 4px;
}

.aad-review-upgrade__label {
	color: var(--aad-text);
	font-size: 1.1rem;
	font-weight: 800;
}

.aad-review-upgrade__price {
	color: #133f73;
	font-size: 1.25rem;
	font-weight: 800;
}

.aad-review-upgrade__copy,
.aad-review-upgrade__disclaimer {
	color: var(--aad-muted);
	margin: 0;
}

.aad-review-upgrade__points {
	display: grid;
	gap: 8px;
	margin: 0;
	padding-left: 18px;
}

.aad-review-upgrade__points li {
	color: var(--aad-text);
}

.aad-editor label {
	display: grid;
	gap: 8px;
	font-weight: 600;
}

.aad-editor input,
.aad-editor select,
.aad-editor textarea {
	border: 1px solid var(--aad-border);
	border-radius: 14px;
	font: inherit;
	padding: 12px 14px;
}

.aad-single {
	--aad-accent: #2f6fba;
	--aad-shadow: 0 14px 34px rgba(19, 46, 92, 0.08);
	background: linear-gradient(180deg, #f5f8fd 0%, #ffffff 240px);
	padding: 32px 16px 72px;
}

.aad-single-frame {
	margin: 0 auto;
	max-width: 1180px;
}

.aad-profile-hero-card,
.aad-side-card {
	background: #ffffff;
	border: 1px solid #d8e1ee;
	border-radius: 20px;
	box-shadow: var(--aad-shadow);
}

.aad-profile-hero-card {
	align-items: start;
	display: grid;
	gap: 22px;
	grid-template-columns: minmax(0, 1fr) 300px;
	margin-bottom: 18px;
	padding: 26px;
}

.aad-profile-identity {
	align-items: flex-start;
	display: grid;
	gap: 22px;
	grid-template-columns: 136px minmax(0, 1fr);
}

.aad-profile-photo,
.aad-profile-placeholder {
	border-radius: 16px;
	height: 136px;
	object-fit: cover;
	width: 136px;
}

.aad-profile-placeholder {
	align-items: center;
	background: linear-gradient(135deg, #c6853a 0%, #8b5a18 100%);
	color: #fff;
	display: flex;
	font-size: 2.6rem;
	font-weight: 800;
	justify-content: center;
}

.aad-profile-summary h1 {
	font-size: clamp(2.1rem, 4vw, 2.9rem);
	line-height: 1.08;
	margin: 0;
}

.aad-profile-rating-row {
	align-items: center;
	color: var(--aad-muted);
	display: flex;
	flex-wrap: wrap;
	gap: 8px 10px;
	margin-top: 10px;
}

.aad-profile-rating-row strong {
	color: #123f79;
	font-size: 1rem;
}

.aad-profile-subtitle {
	color: #374151;
	font-size: 1rem;
	font-weight: 600;
	margin: 10px 0 0;
}

.aad-badge-row-profile {
	margin-top: 14px;
}

.aad-review-highlight {
	background: linear-gradient(180deg, #f7fbff 0%, #ffffff 100%);
	border: 1px solid #dce8fb;
	border-radius: 18px;
	display: grid;
	gap: 8px;
	margin-top: 14px;
	padding: 14px 16px;
}

.aad-review-highlight__stars {
	align-items: center;
	color: #163f77;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.aad-review-highlight__stars strong {
	font-size: 1rem;
}

.aad-review-highlight__summary {
	color: var(--aad-text);
	font-size: 0.96rem;
	line-height: 1.6;
	margin: 0;
}

.aad-profile-meta {
	color: var(--aad-muted);
	display: flex;
	flex-wrap: wrap;
	gap: 10px 14px;
	margin: 14px 0 0;
}

.aad-profile-meta span {
	position: relative;
}

.aad-profile-meta span:not(:last-child)::after {
	content: "•";
	margin-left: 14px;
	opacity: 0.45;
}

.aad-profile-fact-list {
	display: grid;
	gap: 10px;
	list-style: none;
	margin: 16px 0 0;
	padding: 0;
}

.aad-profile-fact-list li {
	align-items: flex-start;
	color: var(--aad-text);
	display: flex;
	gap: 10px;
	line-height: 1.6;
}

.aad-profile-fact-list li::before {
	background: #2f6fba;
	border-radius: 999px;
	content: "";
	flex: 0 0 8px;
	height: 8px;
	margin-top: 9px;
}

.aad-profile-service-pills,
.aad-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.aad-profile-service-pills {
	margin-top: 16px;
}

.aad-profile-service-pills span,
.aad-tags span {
	background: #f4f7fb;
	border: 1px solid #d8e2f0;
	border-radius: 999px;
	color: #32527d;
	display: inline-flex;
	font-size: 0.88rem;
	font-weight: 700;
	padding: 8px 12px;
}

.aad-tags {
	margin-top: 14px;
}

.aad-profile-cta {
	display: grid;
	gap: 12px;
	align-content: start;
	background: #f8fbff;
	border: 1px solid #d9e6f7;
	border-radius: 20px;
	padding: 18px;
}

.aad-profile-cta .aad-profile-cta__button,
.aad-profile-cta .aad-profile-cta__button:visited {
	align-items: center;
	border: 1px solid #d6e2f1;
	border-radius: 16px;
	box-shadow: 0 10px 22px rgba(16, 61, 115, 0.08);
	display: flex;
	font-weight: 800;
	justify-content: center;
	line-height: 1.2;
	min-height: 56px;
	padding: 14px 18px;
	text-align: center;
	text-decoration: none;
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease;
	width: 100%;
}

.aad-button-block {
	display: block;
	text-align: center;
	width: 100%;
}

.aad-cta-stack {
	display: grid;
	gap: 10px;
}

.aad-button-call {
	background: linear-gradient(180deg, #3b73db 0%, #2458c8 100%);
	border-color: #2458c8;
	border-radius: 14px;
	box-shadow: 0 12px 24px rgba(36, 88, 200, 0.18);
	padding: 14px 16px;
}

.aad-button-call:hover,
.aad-button-call:focus-visible {
	background: linear-gradient(180deg, #467de3 0%, #2b62cf 100%);
	border-color: #2b62cf;
}

.aad-profile-cta .aad-profile-cta__button-call,
.aad-profile-cta .aad-profile-cta__button-call:visited {
	align-items: center;
	background: linear-gradient(180deg, #3b73db 0%, #2458c8 100%);
	border-color: #2458c8;
	color: #ffffff;
	display: grid;
	gap: 8px;
	justify-items: center;
	min-height: 74px;
	padding: 16px 18px;
}

.aad-profile-cta .aad-profile-cta__button-secondary,
.aad-profile-cta .aad-profile-cta__button-secondary:visited {
	background: #ffffff;
	border-color: #d6e2f1;
	color: #18314f;
}

.aad-profile-cta .aad-profile-cta__button-secondary:hover,
.aad-profile-cta .aad-profile-cta__button-secondary:focus-visible {
	background: #f5f9ff;
	border-color: #9fbef7;
	color: #18314f;
	box-shadow: 0 14px 28px rgba(33, 86, 171, 0.12);
	transform: translateY(-1px);
}

.aad-button-call__eyebrow {
	display: block;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.15;
	margin: 0;
	max-width: 140px;
	opacity: 0.9;
	text-align: center;
	text-transform: uppercase;
}

.aad-button-call strong,
.aad-button-call__number {
	display: block;
	font-size: clamp(1.18rem, 2vw, 1.42rem);
	line-height: 1.1;
	margin: 0;
	text-align: center;
	white-space: nowrap;
}

.aad-cta-mini-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aad-cta-mini-grid .aad-button {
	align-items: center;
	border-radius: 14px;
	display: inline-flex;
	font-size: 0.92rem;
	justify-content: center;
	min-height: 56px;
	padding-left: 12px;
	padding-right: 12px;
}

.aad-profile-nav {
	align-items: center;
	background: #183f78;
	border: 0;
	border-radius: 16px;
	box-shadow: 0 16px 36px rgba(24, 63, 120, 0.18);
	display: flex;
	flex-wrap: wrap;
	gap: 0 18px;
	margin: 0 auto 18px;
	overflow-x: auto;
	padding: 0 18px;
}

.aad-profile-nav a {
	border-bottom: 3px solid transparent;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.95rem;
	font-weight: 700;
	padding: 16px 6px 14px;
	text-decoration: none;
}

.aad-profile-nav a:first-child {
	border-bottom-color: #ffffff;
	color: #ffffff;
}

.aad-profile-nav a:hover,
.aad-profile-nav a:focus-visible {
	border-bottom-color: #ffffff;
	color: #ffffff;
}

.aad-single-inner {
	display: grid;
	gap: 22px;
	grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
	margin: 0 auto;
	max-width: 1180px;
}

.aad-single-layout {
	display: grid;
	gap: 22px;
	grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr);
}

.aad-single-main,
.aad-single-side {
	display: grid;
	gap: 18px;
}

.aad-single-main,
.aad-single-side,
.aad-section-card {
	background: #ffffff;
	border: 1px solid #d8e1ee;
	border-radius: 18px;
	box-shadow: var(--aad-shadow);
	padding: 26px;
}

.aad-section-card {
	background: #ffffff;
}

.aad-single-main {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}

.aad-single-side {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}

.aad-side-card {
	padding: 24px;
}

.aad-section-card h2,
.aad-side-card h2 {
	font-size: 1.45rem;
	margin: 0 0 14px;
}

.aad-breadcrumbs-single {
	margin-bottom: 14px;
}

.aad-breadcrumbs-single a,
.aad-breadcrumbs-single span {
	font-size: 0.88rem;
}

.aad-breadcrumbs-single span:last-child {
	color: var(--aad-text);
	font-weight: 700;
}

.aad-rich-text > *:first-child {
	margin-top: 0;
}

.aad-rich-text > *:last-child {
	margin-bottom: 0;
}

.aad-inline-detail {
	border-top: 1px solid var(--aad-border);
	display: grid;
	gap: 6px;
	margin-top: 18px;
	padding-top: 16px;
}

.aad-insight-grid,
.aad-detail-grid,
.aad-location-grid,
.aad-license-list {
	display: grid;
	gap: 18px;
}

.aad-insight-grid {
	grid-template-columns: 1fr;
}

.aad-detail-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aad-practice-list {
	display: grid;
	gap: 18px;
	min-width: 0;
}

.aad-practice-visual {
	align-items: start;
	display: grid;
	gap: 26px;
	grid-template-columns: minmax(180px, 220px) minmax(240px, 1fr);
}

.aad-practice-pie-wrap {
	display: flex;
	justify-content: center;
	position: relative;
}

.aad-practice-pie {
	align-items: center;
	border-radius: 50%;
	cursor: help;
	display: flex;
	height: 180px;
	justify-content: center;
	outline: 0;
	position: relative;
	width: 180px;
}

.aad-practice-pie:focus-visible {
	box-shadow: 0 0 0 4px rgba(47, 111, 186, 0.2);
}

.aad-practice-pie::after {
	background: #ffffff;
	border-radius: 50%;
	content: "";
	height: 110px;
	position: absolute;
	width: 110px;
}

.aad-practice-pie__center {
	display: grid;
	gap: 2px;
	justify-items: center;
	position: relative;
	text-align: center;
	z-index: 1;
}

.aad-practice-pie__center strong {
	font-size: 2.2rem;
	line-height: 1;
}

.aad-practice-pie__center span {
	color: var(--aad-muted);
	font-size: 0.92rem;
	max-width: 90px;
}

.aad-practice-hovercard {
	background: rgba(19, 31, 51, 0.96);
	border-radius: 18px;
	box-shadow: 0 18px 40px rgba(19, 31, 51, 0.22);
	color: #ffffff;
	left: calc(100% + 14px);
	max-width: 240px;
	opacity: 0;
	padding: 14px 16px;
	pointer-events: none;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) translateX(8px);
	transition: opacity 160ms ease, transform 160ms ease;
	visibility: hidden;
	width: max-content;
	z-index: 5;
}

.aad-practice-pie-wrap:hover .aad-practice-hovercard,
.aad-practice-pie-wrap:focus-within .aad-practice-hovercard {
	opacity: 1;
	transform: translateY(-50%) translateX(0);
	visibility: visible;
}

.aad-practice-hovercard::before {
	border-bottom: 10px solid transparent;
	border-right: 10px solid rgba(19, 31, 51, 0.96);
	border-top: 10px solid transparent;
	content: "";
	left: -9px;
	position: absolute;
	top: calc(50% - 10px);
}

.aad-practice-hovercard__title {
	font-size: 0.92rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	margin: 0 0 10px;
	text-transform: uppercase;
}

.aad-practice-hovercard__list {
	display: grid;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.aad-practice-hovercard__list li {
	align-items: center;
	column-gap: 8px;
	display: grid;
	grid-template-columns: 12px minmax(0, 1fr) auto;
}

.aad-practice-hovercard__list span {
	font-size: 0.95rem;
}

.aad-practice-hovercard__list strong {
	font-size: 0.95rem;
	white-space: nowrap;
}

.aad-practice-row {
	display: grid;
	gap: 10px;
}

.aad-practice-row-chart {
	align-items: start;
	border-bottom: 1px solid var(--aad-border);
	padding-bottom: 14px;
}

.aad-practice-row-chart:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.aad-practice-row h3,
.aad-fee-card h3,
.aad-timeline-copy h3,
.aad-license-card h3 {
	margin: 0;
}

.aad-practice-row__top {
	align-items: start;
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr) auto;
}

.aad-practice-title {
	align-items: center;
	display: inline-flex;
	gap: 10px;
	min-width: 0;
}

.aad-practice-title h3 {
	line-height: 1.25;
	word-break: break-word;
}

.aad-practice-copy p,
.aad-fee-lines p,
.aad-license-subtitle,
.aad-timeline-copy p,
.aad-location-card p,
.aad-field-help,
.aad-muted-copy {
	color: var(--aad-muted);
	margin: 0;
}

.aad-practice-score {
	align-items: center;
	display: inline-flex;
	font-size: 1.05rem;
	font-weight: 700;
	justify-self: end;
	line-height: 1;
	white-space: nowrap;
}

.aad-practice-dot {
	border-radius: 999px;
	display: inline-block;
	flex: 0 0 12px;
	height: 12px;
	width: 12px;
}

.aad-practice-years {
	color: var(--aad-muted);
	font-size: 0.98rem;
	margin: 0;
	padding-left: 22px;
}

.aad-practice-bar {
	background: #e5e7eb;
	border-radius: 999px;
	grid-column: 1 / -1;
	height: 12px;
	overflow: hidden;
}

.aad-practice-bar span {
	background: linear-gradient(90deg, #2f6fba 0%, #53c7bf 100%);
	border-radius: inherit;
	display: block;
	height: 100%;
}

.aad-fee-summary {
	font-size: 1.15rem;
	font-weight: 700;
	margin: 0 0 10px;
}

.aad-photo-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.aad-photo-card {
	border: 1px solid var(--aad-border);
	border-radius: 18px;
	box-shadow: var(--aad-shadow);
	display: block;
	overflow: hidden;
	text-decoration: none;
}

.aad-photo-card img {
	aspect-ratio: 4 / 3;
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.aad-fee-lines {
	display: grid;
	gap: 8px;
}

.aad-side-group {
	border-top: 1px solid var(--aad-border);
	margin-top: 18px;
	padding-top: 18px;
}

.aad-plain-list {
	display: grid;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.aad-license-card,
.aad-location-card {
	background: #ffffff;
	border: 1px solid #dce5f0;
	border-radius: 18px;
	box-shadow: 0 8px 22px rgba(19, 46, 92, 0.05);
	display: grid;
	gap: 10px;
	padding: 18px;
}

.aad-license-details {
	display: grid;
	gap: 6px;
	list-style: none;
	margin: 12px 0 0;
	padding: 0;
}

.aad-location-grid {
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.aad-location-label {
	color: var(--aad-text);
	font-weight: 700;
}

.aad-location-map {
	border: 1px solid #d8e0eb;
	border-radius: 16px;
	margin-top: 4px;
	overflow: hidden;
}

.aad-location-map iframe {
	aspect-ratio: 4 / 3;
	border: 0;
	display: block;
	height: auto;
	min-height: 220px;
	width: 100%;
}

.aad-location-map-link {
	color: #2f6fba;
	font-size: 0.95rem;
	font-weight: 700;
	text-decoration: none;
}

.aad-location-map-link:hover,
.aad-location-map-link:focus-visible {
	text-decoration: underline;
}

.aad-location-disclosure {
	margin-top: 18px;
}

.aad-location-disclosure__summary {
	color: #2f6fba;
	cursor: pointer;
	font-size: 0.98rem;
	font-weight: 700;
	list-style: none;
	text-decoration: none;
}

.aad-location-disclosure__summary::-webkit-details-marker {
	display: none;
}

.aad-location-disclosure__summary:hover,
.aad-location-disclosure__summary:focus-visible {
	text-decoration: underline;
}

.aad-location-disclosure__label--open {
	display: none;
}

.aad-location-disclosure[open] .aad-location-disclosure__label--closed {
	display: none;
}

.aad-location-disclosure[open] .aad-location-disclosure__label--open {
	display: inline;
}

.aad-location-disclosure__grid {
	margin-top: 18px;
}

.aad-timeline-list {
	display: grid;
	gap: 16px;
}

.aad-timeline-item {
	border-left: 2px solid #53c7bf;
	display: grid;
	gap: 8px 16px;
	grid-template-columns: 110px minmax(0, 1fr);
	padding-left: 14px;
}

.aad-timeline-year {
	color: var(--aad-accent);
	font-weight: 700;
}

.aad-stat-list {
	display: grid;
	gap: 12px;
}

.aad-stat-list p {
	margin: 0;
}

.aad-review-card {
	background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}

.aad-review-card__score {
	align-items: baseline;
	color: #133f73;
	display: inline-flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 10px;
}

.aad-review-card__score strong {
	font-size: 2.35rem;
	line-height: 1;
}

.aad-review-card__score span {
	font-size: 1rem;
	font-weight: 700;
}

.aad-review-card__summary,
.aad-review-card__description,
.aad-review-card__disclaimer {
	margin: 0;
}

.aad-review-card__summary {
	color: var(--aad-text);
	font-weight: 600;
}

.aad-review-card__description {
	color: var(--aad-text);
	line-height: 1.7;
}

.aad-review-card__description p {
	margin: 0 0 12px;
}

.aad-review-card__description p:last-child {
	margin-bottom: 0;
}

.aad-review-card__disclaimer {
	color: var(--aad-muted);
	font-size: 0.92rem;
}

.aad-modal-open {
	overflow: hidden;
}

.aad-modal {
	align-items: center;
	display: flex;
	inset: 0;
	justify-content: center;
	padding: 24px;
	position: fixed;
	z-index: 1000;
}

.aad-modal[hidden] {
	display: none;
}

.aad-modal__backdrop {
	background: rgba(15, 23, 42, 0.58);
	inset: 0;
	position: absolute;
}

.aad-modal__dialog {
	background: #ffffff;
	border: 1px solid #d9e1ec;
	border-radius: 24px;
	box-shadow: 0 28px 60px rgba(15, 23, 42, 0.22);
	max-height: min(92vh, 840px);
	max-width: 680px;
	overflow: auto;
	padding: 24px;
	position: relative;
	width: min(100%, 680px);
	z-index: 1;
}

.aad-modal__dialog--contact {
	max-height: min(78vh, 720px);
	max-width: 620px;
	padding: 22px;
	width: min(100%, 620px);
}

.aad-modal__close {
	align-items: center;
	background: #f5f8ff;
	border: 1px solid #d7e2f3;
	border-radius: 999px;
	color: var(--aad-text);
	cursor: pointer;
	display: inline-flex;
	font-size: 1.5rem;
	height: 40px;
	justify-content: center;
	padding: 0;
	position: absolute;
	right: 18px;
	top: 18px;
	width: 40px;
}

.aad-modal__content {
	display: grid;
	gap: 14px;
}

.aad-modal__content h2 {
	font-size: 1.7rem;
	margin: 0;
	padding-right: 52px;
}

.aad-contact-actions {
	margin-top: 16px;
}

.aad-contact-form {
	background: #ffffff;
	border: 1px solid #d9e1ec;
	border-radius: 20px;
	box-shadow: none;
	gap: 12px;
	margin-top: 12px;
	padding: 16px;
}

.aad-contact-form label {
	color: var(--aad-text);
	font-size: 0.98rem;
	font-weight: 700;
}

.aad-contact-form input,
.aad-contact-form textarea {
	background: #ffffff;
	border: 1px solid #cfd8e3;
	border-radius: 14px;
	box-shadow: inset 0 1px 2px rgba(16, 61, 115, 0.04);
	color: var(--aad-text);
	min-height: 48px;
	padding: 12px 15px;
}

.aad-contact-form textarea {
	line-height: 1.6;
	min-height: 136px;
	resize: vertical;
}

.aad-contact-form input:focus,
.aad-contact-form textarea:focus {
	border-color: #4d7ff0;
	box-shadow: 0 0 0 4px rgba(77, 127, 240, 0.14);
	outline: 0;
}

.aad-contact-form .aad-button {
	background: linear-gradient(180deg, #5683e8 0%, #4776de 100%);
	border-color: #4776de;
	min-height: 52px;
}

.aad-contact-form .aad-button:hover,
.aad-contact-form .aad-button:focus-visible {
	background: linear-gradient(180deg, #5f8cf1 0%, #4c7ae1 100%);
	border-color: #4c7ae1;
}

.aad-contact-honeypot {
	left: -9999px;
	margin: 0;
	position: absolute;
	top: auto;
}

@media (max-width: 860px) {
	.aad-auth-topbar,
	.aad-auth-layout {
		padding-left: 18px;
		padding-right: 18px;
	}

	.aad-auth-progress {
		gap: 12px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding: 16px 18px;
	}

	.aad-auth-progress li::after {
		display: none;
	}

	.aad-wizard-stage__intro {
		padding-left: 18px;
		padding-right: 18px;
		text-align: left;
	}

	.aad-wizard-steps {
		gap: 12px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding: 16px 18px;
	}

	.aad-wizard-steps li::after {
		display: none;
	}

	.aad-highlight-grid {
		grid-template-columns: 1fr 1fr;
	}

	.aad-filters,
	.aad-wizard-steps,
	.aad-wizard-grid-2,
	.aad-upload-grid,
	.aad-wizard-frame,
	.aad-wizard-form,
	.aad-auth-layout,
	.aad-auth-member-types,
	.aad-growth-hero__grid,
	.aad-growth-stats__grid,
	.aad-growth-benefits,
	.aad-growth-split__grid,
	.aad-growth-plan-grid,
	.aad-card-profile,
	.aad-single-inner,
	.aad-single-layout,
	.aad-insight-grid,
	.aad-detail-grid,
	.aad-practice-visual,
	.aad-profile-hero-card,
	.aad-profile-identity,
	.aad-timeline-item {
		grid-template-columns: 1fr;
	}

	.aad-profile-placeholder,
	.aad-profile-photo,
	.aad-card-photo,
	.aad-card-photo-placeholder {
		height: 96px;
		max-height: 220px;
		min-height: 96px;
		width: 96px;
	}

	.aad-card-photo,
	.aad-card-photo-placeholder {
		width: 100%;
	}

	.aad-card-actions {
		justify-self: stretch;
	}

	.aad-wizard-frame {
		padding-left: 18px;
		padding-right: 18px;
	}

	.aad-growth-landing {
		padding-left: 18px;
		padding-right: 18px;
	}

	.aad-growth-proof {
		grid-template-columns: 1fr;
	}

	.aad-growth-section__intro,
	.aad-growth-section__intro--left,
	.aad-growth-cta__panel {
		text-align: left;
	}

	.aad-growth-actions-center {
		justify-content: flex-start;
	}

	.aad-city-browser-list {
		columns: 2 160px;
		column-gap: 28px;
	}

	.aad-auth-panel-quote {
		padding-left: 0;
	}

	.aad-auth-avatar {
		height: 220px;
		width: 220px;
	}

	.aad-practice-hovercard {
		left: 50%;
		max-width: min(260px, calc(100vw - 72px));
		top: calc(100% + 14px);
		transform: translateX(-50%) translateY(8px);
	}

	.aad-practice-pie-wrap:hover .aad-practice-hovercard,
	.aad-practice-pie-wrap:focus-within .aad-practice-hovercard {
		transform: translateX(-50%) translateY(0);
	}

	.aad-practice-hovercard::before {
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 0;
		border-bottom: 10px solid rgba(19, 31, 51, 0.96);
		left: calc(50% - 10px);
		top: -9px;
	}

	.aad-modal {
		padding: 18px;
	}

	.aad-cta-mini-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.aad-auth-shell {
		padding-bottom: 40px;
	}

	.aad-growth-landing {
		padding: 18px 12px 48px;
	}

	.aad-growth-hero__content,
	.aad-growth-hero__panel,
	.aad-growth-benefit-card,
	.aad-growth-stat-card,
	.aad-growth-list-card,
	.aad-growth-plan-card,
	.aad-growth-cta__panel {
		padding: 20px;
	}

	.aad-growth-hero__content h1,
	.aad-growth-section__intro h2,
	.aad-growth-cta__panel h2 {
		font-size: clamp(1.95rem, 10vw, 2.7rem);
	}

	.aad-growth-actions .aad-button {
		width: 100%;
	}

	.aad-growth-faq-item summary,
	.aad-growth-faq-item p {
		padding-left: 18px;
		padding-right: 18px;
	}

	.aad-wizard-shell {
		padding-bottom: 28px;
	}

	.aad-auth-topbar {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
		padding: 18px 14px 16px;
	}

	.aad-auth-topbar__actions {
		gap: 18px;
	}

	.aad-auth-progress {
		grid-template-columns: 1fr;
		padding-left: 14px;
		padding-right: 14px;
	}

	.aad-wizard-stage__intro,
	.aad-wizard-frame {
		padding-left: 14px;
		padding-right: 14px;
	}

	.aad-wizard-steps {
		grid-template-columns: 1fr;
		padding-left: 14px;
		padding-right: 14px;
	}

	.aad-auth-layout {
		padding: 22px 14px 0;
	}

	.aad-auth-inline-actions {
		grid-template-columns: 1fr;
	}

	.aad-directory-shell {
		padding-left: 12px;
		padding-right: 12px;
	}

	.aad-highlight-grid,
	.aad-link-grid {
		grid-template-columns: 1fr;
	}

	.aad-auth-panel-form {
		padding: 18px;
	}

	.aad-auth-panel__header {
		align-items: flex-start;
		flex-direction: column;
	}

	.aad-auth-panel__header h2 {
		font-size: 1.9rem;
	}

	.aad-wizard-stage__intro h2 {
		font-size: 2rem;
	}

	.aad-wizard-panel,
	.aad-wizard-side-card,
	.aad-wizard-gate-card {
		padding: 18px;
	}

	.aad-auth-form input[type="text"],
	.aad-auth-form input[type="email"],
	.aad-auth-form input[type="password"] {
		font-size: 1rem;
		min-height: 54px;
	}

	.aad-auth-trust {
		font-size: 0.96rem;
	}

	.aad-auth-avatar {
		height: 180px;
		width: 180px;
	}

	.aad-modal {
		padding: 12px;
	}

	.aad-modal__dialog {
		padding: 18px;
	}

	.aad-modal__dialog--contact {
		max-height: min(84vh, 680px);
		padding: 16px;
	}

	.aad-modal__content h2 {
		font-size: 1.45rem;
		padding-right: 44px;
	}

	.aad-card,
	.aad-compare-card,
	.aad-price-card,
	.aad-account-card,
	.aad-editor,
	.aad-highlight-card,
	.aad-link-card,
	.aad-profile-hero-card,
	.aad-side-card,
	.aad-section-card,
	.aad-single-main,
	.aad-single-side {
		border-radius: 20px;
		padding: 18px;
	}

	.aad-profile-nav {
		padding: 12px;
	}

	.aad-cta-mini-grid {
		grid-template-columns: 1fr;
	}

	.aad-city-browser-list {
		columns: 1;
	}
}
