/**
 * Style 1 inner-page presentation for Local Studio Agency.
 * Structure stays Content Pack-owned; these rules only style Agency surfaces.
 */

body.lsa-agency-design:not(.home) {
	--lsa-inner-ink: #071b35;
	--lsa-inner-copy: #40546c;
	--lsa-inner-muted: #60738b;
	--lsa-inner-line: #dbe6f3;
	--lsa-inner-soft: #f3f7fc;
	--lsa-inner-primary: #0b5fd3;
	--lsa-inner-primary-rgb: 11 95 211;
	background: #f7faff;
	color: var(--lsa-inner-copy);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main :is(p, li, a, label, input, textarea, select) {
	font-size: 1rem;
	font-weight: 500;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main :is(h1, h2) {
	font-family: var(--wp--preset--font-family--heading, "Gabarito", "Manrope", sans-serif);
	font-weight: 800;
	letter-spacing: normal;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main :is(h3, h4, h5, h6),
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main .lsa-inner-kicker {
	font-family: var(--wp--preset--font-family--heading, "Gabarito", "Manrope", sans-serif);
	font-weight: 700;
	letter-spacing: normal;
}

body.lsa-agency-design main .wp-block-heading {
	max-width: none !important;
	width: auto !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main h1 {
	font-size: clamp(2.65rem, 4vw, 3.125rem) !important;
	line-height: 1;
	max-width: 58rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main h2 {
	color: var(--lsa-inner-ink);
	font-size: clamp(2.25rem, 3.2vw, 2.8125rem) !important;
	line-height: 1.08;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main h3 {
	color: var(--lsa-inner-ink);
	font-size: clamp(1.125rem, 1.4vw, 1.35rem);
	line-height: 1.2;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header {
	align-items: center;
	box-sizing: border-box;
	display: flex;
	isolation: isolate;
	margin: 0;
	min-height: clamp(20.25rem, calc(34vw - 3.75rem), 28.25rem);
	overflow: hidden;
	padding: clamp(3.625rem, calc(7vw - 1.875rem), 6.125rem) max(1.25rem, calc((100vw - 1380px) / 2));
	position: relative;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header::after {
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: -1;
}

body.lsa-style-agency-growth-dark:not(.home) .ls-page-header {
	background-color: #031226;
	background-image:
		linear-gradient(90deg, rgb(2 15 32 / 93%) 0%, rgb(4 23 45 / 78%) 48%, rgb(4 23 45 / 36%) 100%),
		url("../images/agency-why-town-blue-hour.jpg");
	background-position: center;
	background-size: cover;
	color: #f7fbff;
}

body.lsa-style-agency-growth-dark:not(.home) .ls-page-header::after {
	background: radial-gradient(circle at 78% 40%, rgb(33 139 255 / 25%), transparent 34%);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header > .wp-block-group {
	margin-inline: auto;
	max-width: 1380px !important;
	width: 100%;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header > .wp-block-group > * {
	margin-inline: 0 !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header h1,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header h2 {
	margin-block: 0.8rem 1.1rem;
}

body.lsa-style-agency-growth-dark:not(.home) .ls-page-header h1,
body.lsa-style-agency-growth-dark:not(.home) .ls-page-header h2 {
	color: #f7fbff;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header .ls-surface-inner-page-eyebrow,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header .ls-eyebrow {
	font-family: var(--wp--preset--font-family--heading, "Gabarito", "Manrope", sans-serif);
	font-size: 1rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em !important;
	margin: 0;
	text-transform: uppercase;
}

body.lsa-style-agency-growth-dark:not(.home) .ls-page-header .ls-surface-inner-page-eyebrow,
body.lsa-style-agency-growth-dark:not(.home) .ls-page-header .ls-eyebrow {
	color: #56aaff !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header .ls-surface-inner-page-description,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header .ls-surface-blog-description {
	font-size: 1.0625rem !important;
	line-height: 1.65;
	margin: 0;
	max-width: 44rem;
}

body.lsa-style-agency-growth-dark:not(.home) .ls-page-header .ls-surface-inner-page-description,
body.lsa-style-agency-growth-dark:not(.home) .ls-page-header .ls-surface-blog-description {
	color: #c5d5e8;
}

body.lsa-agency-design.lsa-style-agency-growth-dark:not(.home) #primary .ls-page-header p.ls-surface-inner-page-description,
body.lsa-agency-design.lsa-style-agency-growth-dark:not(.home) #primary .ls-page-header p.ls-surface-blog-description {
	font-size: 1.0625rem !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-content-shell {
	background: #f7faff;
	margin: 0;
	padding: 0;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-content-shell > .wp-block-post-content {
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

/* Agency Content Pack sections already own their full-width surface and inner
 * 1380px container. Keeping them inside the shared prose measure required a
 * fragile 100vw breakout and produced horizontal scrollbars. */
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-content-shell .wp-block-post-content > .lsa-inner-section {
	margin-inline: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

.lsa-inner-section {
	box-sizing: border-box;
	margin: 0;
	padding: clamp(4.75rem, 7vw, 7.5rem) max(1.25rem, calc((100vw - 1380px) / 2));
}

.lsa-inner-section > .alignwide,
.lsa-inner-section > .wp-block-columns.alignwide,
.lsa-inner-section > .wp-block-group.alignwide {
	margin-inline: auto;
	max-width: 1380px !important;
	width: 100%;
}

.lsa-inner-section :is(p, ul, figure, h2, h3),
.lsa-inner-heading > * {
	margin-block-start: 0;
}

.lsa-inner-section p,
.lsa-inner-section li {
	color: var(--lsa-inner-copy);
	line-height: 1.7;
}

.lsa-inner-quote-builder {
	background: #f7faff;
	padding-block: clamp(2.5rem, 4.5vw, 4.75rem);
}

.lsa-inner-quote-builder > .alignwide {
	max-width: 1380px !important;
}

.lsa-inner-quote-surface--white {
	background: #fff;
}

.lsa-inner-quote-surface--blue {
	background: #edf5ff;
}

.lsa-inner-quote-intro__aside {
	background: #f7faff;
	border: 1px solid var(--lsa-inner-line);
	border-radius: 1.15rem;
	box-sizing: border-box;
	padding: clamp(1.5rem, 3vw, 2.25rem);
}

.lsa-inner-quote-intro__aside ul {
	display: grid;
	gap: 0.75rem;
	margin: 0;
	padding-left: 1.2rem;
}

.lsa-inner-kicker {
	color: var(--lsa-inner-primary) !important;
	font-size: 1rem !important;
	line-height: 1.35 !important;
	margin-bottom: 0.75rem !important;
	text-transform: uppercase;
}

.lsa-inner-highlight {
	color: var(--lsa-inner-primary);
}

.lsa-inner-lede {
	font-size: 1.0625rem !important;
	line-height: 1.75 !important;
}

.lsa-inner-heading {
	margin-bottom: clamp(2rem, 3.5vw, 3rem);
	max-width: 46rem;
}

.lsa-inner-heading > h2 + p {
	margin-top: 1rem;
}

.lsa-inner-heading--center {
	margin-inline: auto;
	max-width: 54rem;
	text-align: center;
}

.lsa-inner-split,
.lsa-inner-card-grid,
.lsa-inner-services-grid,
.lsa-inner-included__grid,
.lsa-inner-process__steps,
.lsa-inner-contact__grid {
	gap: min(2.25rem, 4vw) !important;
}

.lsa-inner-checklist {
	display: grid;
	gap: 0.85rem;
	margin-block: 1.75rem 2rem;
}

.lsa-inner-checklist__item {
	align-items: flex-start;
	gap: 0.75rem;
	justify-content: flex-start;
	margin: 0;
	padding: 0;
}

.lsa-inner-checklist__item .wp-block-local-studio-icon {
	color: var(--lsa-inner-primary);
	flex: 0 0 auto;
	margin-top: 0.18rem;
}

.lsa-inner-checklist__item p {
	margin: 0;
	text-align: left;
}

.lsa-inner-about-intro {
	background: #f7faff;
}

.lsa-inner-about-visual {
	isolation: isolate;
	min-height: 34rem;
	position: relative;
}

.lsa-inner-about-visual::before {
	background: linear-gradient(135deg, #d8e6ff 0%, #f4d7ff 100%);
	border-radius: 45% 55% 58% 42% / 48% 42% 58% 52%;
	content: "";
	inset: 10% 6% 0 14%;
	position: absolute;
	transform: rotate(-4deg);
	z-index: -1;
}

.lsa-inner-about-visual__image {
	margin: 0 3rem 0 1rem;
}

.lsa-inner-about-visual__image img {
	border-radius: 1.5rem;
	box-shadow: 0 28px 65px rgb(24 57 105 / 18%);
	display: block;
	height: 30rem;
	object-fit: cover;
	width: 100%;
}

.lsa-inner-proof-card {
	background: #fff;
	border: 1px solid #e4edf7;
	border-radius: 1.1rem;
	box-shadow: 0 16px 38px rgb(20 61 117 / 14%);
	margin: 0;
	padding: 1.15rem 1.25rem;
	position: absolute;
	z-index: 2;
}

.lsa-inner-proof-card > * {
	margin-block: 0;
}

.lsa-inner-proof-card .wp-block-local-studio-icon,
.lsa-inner-proof-card__value {
	color: var(--lsa-inner-primary) !important;
}

.lsa-inner-proof-card__value {
	font-family: var(--wp--preset--font-family--heading, "Gabarito", sans-serif);
	font-size: 1.8rem !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	margin-block: 0.4rem !important;
}

.lsa-inner-proof-card__label {
	color: var(--lsa-inner-ink) !important;
	font-weight: 700 !important;
}

.lsa-inner-proof-card--projects {
	left: -1.25rem;
	top: 2rem;
	width: 12rem;
}

.lsa-inner-proof-card--focus {
	bottom: 1.25rem;
	right: 0;
	width: 16rem;
}

.lsa-inner-values,
.lsa-inner-next-steps {
	background: #eef5fd;
}

.lsa-inner-card-grid--four,
.lsa-inner-services-grid,
.lsa-inner-included__grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.lsa-inner-card-grid--three {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.lsa-inner-icon-card,
.lsa-inner-step-card,
.lsa-inner-mini-card {
	background: #fff;
	border: 1px solid var(--lsa-inner-line);
	border-radius: 1.1rem;
	box-shadow: 0 16px 38px rgb(25 58 102 / 8%);
	margin: 0;
	padding: 1.7rem;
}

.lsa-inner-icon-card .wp-block-local-studio-icon,
.lsa-inner-mini-card .wp-block-local-studio-icon {
	align-items: center;
	background: #e6f0ff;
	border-radius: 0.8rem;
	color: var(--lsa-inner-primary);
	display: inline-flex;
	justify-content: center;
	margin-bottom: 1.25rem;
	padding: 0.7rem;
}

.lsa-inner-icon-card h3,
.lsa-inner-mini-card h3,
.lsa-inner-step-card h3 {
	margin-bottom: 0.65rem;
}

.lsa-inner-icon-card p,
.lsa-inner-mini-card p,
.lsa-inner-step-card p {
	margin-bottom: 0;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-process {
	background-color: #03152c;
	background-image: linear-gradient(90deg, rgb(3 21 44 / 98%), rgb(4 30 60 / 92%)), url("../images/agency-why-town-blue-hour.jpg");
	background-position: center;
	background-size: cover;
	color: #f7fbff;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-process :is(h2, h3),
body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-process .lsa-inner-heading p,
body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-process .lsa-inner-process__step p {
	color: #f7fbff !important;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-process .lsa-inner-heading > p:last-child,
body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-process .lsa-inner-process__step > p:last-child {
	color: #bfd0e4 !important;
}

.lsa-inner-process__steps {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.lsa-inner-process__step {
	margin: 0;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-process__step {
	border-left: 1px solid rgb(111 174 245 / 32%);
	padding: 0.25rem 1.5rem;
}

.lsa-inner-process__number,
.lsa-inner-step-card__number {
	color: #4ca2ff !important;
	font-family: var(--wp--preset--font-family--heading, "Gabarito", sans-serif);
	font-size: 1rem !important;
	font-weight: 700 !important;
	margin-bottom: 1.25rem;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-final-cta {
	background: #f7faff;
}

.lsa-inner-final-cta__box {
	border-radius: 1.5rem;
	box-sizing: border-box;
	padding: clamp(3rem, 5vw, 5rem);
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-final-cta__box {
	background-color: #041833;
	background-image: linear-gradient(90deg, rgb(4 24 51 / 98%) 0%, rgb(4 24 51 / 78%) 58%, rgb(4 24 51 / 40%) 100%), url("../images/agency-final-cta-studio.jpg");
	background-position: center right;
	background-size: cover;
	box-shadow: 0 26px 60px rgb(15 45 89 / 18%);
	color: #fff;
}

.lsa-inner-final-cta__box > * {
	max-width: 52rem;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-final-cta__box :is(h2, p) {
	color: #fff !important;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-final-cta__box > p:not(.lsa-inner-kicker) {
	color: #c5d5e8 !important;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-final-cta__box .wp-block-button.is-style-outline .wp-block-button__link {
	background: rgb(3 20 42 / 42%);
	border-color: #76b7ff !important;
	color: #fff !important;
}

/* Gutenberg's constrained layout centers narrower direct children by default.
 * Keep the CTA copy column anchored to the same left edge as its headline on
 * desktop in both Agency styles; the mobile composition remains unchanged. */
@media (min-width: 782px) {
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .lsa-inner-final-cta__box > * {
		margin-left: 0 !important;
		margin-right: auto !important;
		text-align: left;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .lsa-inner-final-cta__box > .wp-block-buttons {
		justify-content: flex-start !important;
	}
}

.lsa-inner-services-overview {
	background: #f7faff;
}

.lsa-inner-services-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	row-gap: 2.25rem !important;
}

.lsa-inner-service-detail {
	background: #fff;
	border: 1px solid var(--lsa-inner-line);
	border-radius: 1.25rem;
	box-shadow: 0 18px 42px rgb(29 68 119 / 9%);
	display: grid;
	grid-template-columns: minmax(12rem, 38%) minmax(0, 1fr);
	overflow: hidden;
}

.lsa-inner-service-detail > .wp-block-image {
	height: 100%;
	margin: 0;
}

.lsa-inner-service-detail > .wp-block-image img {
	border-radius: 0;
	display: block;
	height: 100%;
	min-height: 22rem;
	object-fit: cover;
	width: 100%;
}

.lsa-inner-service-detail__body {
	box-sizing: border-box;
	padding: 2rem;
}

.lsa-inner-service-detail__body > * {
	margin-block-start: 0;
}

.lsa-inner-service-detail__body .wp-block-local-studio-icon {
	align-items: center;
	background: var(--lsa-inner-primary);
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	justify-content: center;
	margin-bottom: 1rem;
	padding: 0.75rem;
}

.lsa-inner-service-detail__eyebrow {
	color: var(--lsa-inner-primary) !important;
	font-size: 0.9375rem !important;
	font-weight: 700 !important;
	margin-bottom: 0.5rem;
	text-transform: uppercase;
}

.lsa-inner-service-detail__body ul {
	margin-bottom: 0;
	padding-left: 1.1rem;
}

.lsa-inner-included {
	background: #edf4fd;
}

.lsa-inner-included__grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lsa-inner-mini-card {
	min-height: 10.5rem;
}

.lsa-inner-faq-section {
	background: #f7faff;
}

.lsa-inner-faq-section .ls-module-faq {
	border-top: 1px solid #cbd9e9;
}

.lsa-inner-faq-section .ls-faq-item {
	border-bottom: 1px solid #cbd9e9;
	width: 100%;
}

.lsa-inner-faq-section .ls-faq-item summary {
	align-items: center;
	color: var(--lsa-inner-ink);
	cursor: pointer;
	display: grid;
	font-family: var(--wp--preset--font-family--heading, "Gabarito", sans-serif);
	font-size: 1.125rem;
	font-weight: 700;
	gap: 0.85rem;
	grid-template-columns: 2rem minmax(0, 1fr) 1.25rem;
	list-style: none;
	min-height: 4.75rem;
	padding: 1rem 0;
}

.lsa-inner-faq-section .ls-faq-item summary::-webkit-details-marker {
	display: none;
}

.lsa-inner-faq-section .ls-faq-item__number {
	align-items: center;
	border: 1px solid #4d9eff;
	border-radius: 999px;
	display: flex;
	height: 2rem;
	justify-content: center;
	width: 2rem;
}

.lsa-inner-faq-section .ls-faq-item__number::before {
	content: "+";
}

.lsa-inner-faq-section .ls-faq-item[open] .ls-faq-item__number::before {
	content: "−";
}

.lsa-inner-faq-section .ls-faq-item__toggle {
	border-bottom: 2px solid var(--lsa-inner-primary);
	border-right: 2px solid var(--lsa-inner-primary);
	height: 0.55rem;
	transform: rotate(45deg);
	transition: transform 300ms ease;
	width: 0.55rem;
}

.lsa-inner-faq-section .ls-faq-item[open] .ls-faq-item__toggle {
	transform: rotate(225deg);
}

.lsa-inner-faq-section .ls-faq-item__answer {
	padding: 0 2rem 1.5rem 2.85rem;
}

.lsa-inner-contact {
	background: #eef5fd;
}

.lsa-inner-contact__details {
	padding-top: 1.25rem;
}

.lsa-inner-contact__expectations {
	display: grid;
	gap: 1.4rem;
	margin-top: 2rem;
}

.lsa-inner-contact-point {
	align-items: flex-start;
	gap: 1rem;
}

.lsa-inner-contact-point > .wp-block-local-studio-icon {
	align-items: center;
	background: #dbeaff;
	border-radius: 0.8rem;
	color: var(--lsa-inner-primary);
	display: inline-flex;
	flex: 0 0 auto;
	justify-content: center;
	padding: 0.7rem;
}

.lsa-inner-contact-point h3,
.lsa-inner-contact-point p {
	margin: 0;
}

.lsa-inner-contact-point p {
	margin-top: 0.35rem;
}

.lsa-inner-contact__form-card {
	background: #fff;
	border: 1px solid var(--lsa-inner-line);
	border-radius: 1.35rem;
	box-shadow: 0 22px 52px rgb(20 57 105 / 12%);
	box-sizing: border-box;
	padding: clamp(2rem, 4vw, 3.2rem);
}

.lsa-inner-contact__form-card > * {
	margin-block-start: 0;
}

.lsa-inner-contact__form-card .ls-contact-form__fields {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 1.75rem;
}

.lsa-inner-contact__form-card .ls-form-field.is-textarea,
.lsa-inner-contact__form-card .ls-form-field.is-select {
	grid-column: 1 / -1;
}

.lsa-inner-contact__form-card .ls-form-field label,
.lsa-inner-contact__form-card .ls-form-field label > span {
	color: var(--lsa-inner-ink);
	display: block;
	font-weight: 700;
}

.lsa-inner-contact__form-card :is(input, select, textarea) {
	background: #f7faff;
	border: 1px solid #cbd9e9;
	border-radius: 0.65rem;
	box-sizing: border-box;
	color: var(--lsa-inner-ink);
	margin-top: 0.5rem;
	min-height: 3.2rem;
	padding: 0.8rem 0.9rem;
	width: 100%;
}

.lsa-inner-contact__form-card textarea {
	min-height: 9rem;
	resize: vertical;
}

.lsa-inner-contact__form-card button[type="submit"] {
	margin-top: 1.25rem;
	min-height: 3.25rem;
	width: 100%;
}

.lsa-inner-contact__form-card .ls-form-honeypot {
	left: -10000px;
	position: absolute;
}

.lsa-inner-contact-note {
	display: none !important;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-contact__form-card > h3.wp-block-heading {
	font-size: 35px !important;
	font-weight: 800 !important;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-contact__form-card :is(input, select, textarea) {
	background: #f7faff !important;
	color: #0b1f3a !important;
}

body.lsa-style-agency-growth-dark:not(.home) .lsa-inner-contact__form-card :is(input, textarea)::placeholder {
	color: #536581 !important;
	opacity: 1;
}

/* Journal, archives, search, and single articles. */
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).blog .ls-page-header,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).archive .ls-page-header,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).search .ls-page-header {
	background-position: center 64%;
}

body.lsa-style-agency-growth-dark:is(.archive, .search) :is(.ls-archive-hero, .ls-search-hero) {
	background-color: #031226 !important;
	background-image:
		linear-gradient(90deg, rgb(2 15 32 / 94%) 0%, rgb(4 23 45 / 80%) 52%, rgb(4 23 45 / 50%) 100%),
		url("../images/agency-why-town-blue-hour.jpg") !important;
	background-position: center 64% !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	color: #f7fbff !important;
	isolation: isolate;
}

body.lsa-style-agency-growth-dark:is(.archive, .search) :is(.ls-archive-hero, .ls-search-hero)::after {
	background: radial-gradient(circle at 78% 40%, rgb(33 139 255 / 25%), transparent 34%);
	background-image: radial-gradient(circle at 78% 40%, rgb(33 139 255 / 25%), transparent 34%);
}

body.lsa-style-agency-growth-dark:is(.archive, .search) :is(.ls-archive-hero, .ls-search-hero) :is(h1, .ls-inner-hero__title) {
	color: #f7fbff !important;
}

body.lsa-style-agency-growth-dark:is(.archive, .search) :is(.ls-archive-hero, .ls-search-hero) :is(.ls-eyebrow, .ls-surface-archive-eyebrow, .ls-surface-search-eyebrow) {
	color: #56aaff !important;
}

body.lsa-style-agency-growth-dark:is(.archive, .search) :is(.ls-archive-hero, .ls-search-hero) p {
	color: #c5d5e8 !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) :is(.ls-archive-query, .ls-search-query) {
	max-width: 1380px !important;
	padding-block: clamp(4.5rem, 7vw, 7rem);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-grid {
	display: grid !important;
	gap: 2.25rem !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-card {
	background: #fff;
	border: 1px solid var(--lsa-inner-line);
	border-radius: var(--ls-card-radius, var(--ls-radius-sm, 0.75rem));
	box-shadow: 0 14px 34px rgb(24 62 112 / 9%);
	height: 100%;
	overflow: hidden;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-card__image {
	margin: 0;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-card__image img {
	border-radius: 0 !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-card__body {
	box-sizing: border-box;
	padding: 1.75rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-card__date {
	color: var(--lsa-inner-primary);
	font-family: var(--wp--preset--font-family--heading, "Gabarito", sans-serif);
	font-size: 0.9375rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main .ls-archive-card__title {
	font-family: var(--wp--preset--font-family--heading, "Gabarito", "Manrope", sans-serif);
	font-size: 1.45rem !important;
	font-weight: 800 !important;
	line-height: 1.2;
	margin-block: 0.75rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main .lsa-portfolio-directory__body h2 {
	font-size: 1.5rem !important;
	line-height: 1.12;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-card__title a {
	color: var(--lsa-inner-ink);
	font-family: var(--wp--preset--font-family--heading, "Gabarito", "Manrope", sans-serif);
	font-weight: 800 !important;
	text-decoration: none;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-card__excerpt {
	color: var(--lsa-inner-copy);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-card__excerpt .wp-block-post-excerpt__more-link {
	color: var(--lsa-inner-primary);
	font-weight: 700;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).blog .wp-block-query-pagination {
	border-top-color: #c9def7;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).blog .wp-block-query-pagination :is(.page-numbers, .wp-block-query-pagination-previous, .wp-block-query-pagination-next) {
	font-weight: 800 !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).blog .wp-block-query-pagination-numbers .page-numbers.current {
	background: var(--lsa-inner-primary);
	color: #fff !important;
}

/* Portfolio detail: retain the shared Theme structure while presenting it as
 * an Agency case-study surface instead of using the demo capture as a hero. */
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__hero {
	align-items: center;
	min-height: clamp(20.25rem, calc(34vw - 3.75rem), 28.25rem) !important;
}

body.lsa-style-agency-growth-dark.single-ls_portfolio .ls-project-single__hero {
	background-color: #031226 !important;
	background-image:
		linear-gradient(90deg, rgb(2 15 32 / 94%) 0%, rgb(4 23 45 / 80%) 50%, rgb(4 23 45 / 42%) 100%),
		url("../images/agency-why-town-blue-hour.jpg") !important;
	background-position: center !important;
	background-size: cover !important;
}

body.lsa-style-agency-growth-dark.single-ls_portfolio .ls-project-single__hero > .wp-block-cover__image-background {
	opacity: 0 !important;
}

body.lsa-style-agency-growth-dark.single-ls_portfolio .ls-project-single__hero .wp-block-cover__background {
	background: transparent !important;
	opacity: 1 !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__hero::before {
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

body.lsa-style-agency-growth-dark.single-ls_portfolio .ls-project-single__hero::before {
	background: radial-gradient(circle at 78% 40%, rgb(33 139 255 / 25%), transparent 34%);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__hero-inner {
	box-sizing: border-box;
	max-width: 1380px !important;
	padding-inline: 0;
	width: min(1380px, calc(100% - 40px)) !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__hero-inner > * {
	margin-left: 0 !important;
	margin-right: auto !important;
	max-width: 52rem !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__terms,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__terms a {
	font-family: var(--wp--preset--font-family--heading, "Gabarito", sans-serif);
	font-size: 1rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em !important;
	text-decoration: none;
	text-transform: uppercase;
}

body.lsa-style-agency-growth-dark.single-ls_portfolio .ls-project-single__terms,
body.lsa-style-agency-growth-dark.single-ls_portfolio .ls-project-single__terms a {
	color: #56aaff !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__title {
	font-size: clamp(2.65rem, 4vw, 3.125rem) !important;
	line-height: 1 !important;
	margin-block: 0.8rem 1.1rem !important;
}

body.lsa-style-agency-growth-dark.single-ls_portfolio .ls-project-single__title {
	color: #f7fbff !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__rule {
	border: 0 !important;
	height: 3px;
	margin-block: 0 1.15rem !important;
	width: 4.5rem;
}

body.lsa-style-agency-growth-dark.single-ls_portfolio .ls-project-single__rule {
	background: #56aaff !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__excerpt,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__excerpt p {
	font-size: 1.0625rem !important;
	line-height: 1.65 !important;
	margin: 0 !important;
}

body.lsa-style-agency-growth-dark.single-ls_portfolio .ls-project-single__excerpt,
body.lsa-style-agency-growth-dark.single-ls_portfolio .ls-project-single__excerpt p {
	color: #c5d5e8 !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__content-section {
	background:
		radial-gradient(circle at 92% 8%, rgb(36 132 255 / 8%), transparent 24rem),
		#f5f8fd;
	padding: clamp(4rem, 6vw, 6rem) max(1.25rem, calc((100vw - 1380px) / 2)) !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__grid {
	gap: 2.25rem !important;
	max-width: 1380px !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-gallery,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__description,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-other-projects {
	background: #fff !important;
	border: 1px solid var(--lsa-inner-line) !important;
	border-radius: 1rem;
	box-shadow: 0 18px 44px rgb(20 57 105 / 10%);
	box-sizing: border-box;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-gallery {
	overflow: hidden;
	padding: 1rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-gallery__item,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-gallery__item img {
	border-radius: 0.65rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-gallery__button {
	align-items: center;
	display: inline-flex;
	justify-content: center;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__description {
	margin-top: 1.5rem;
	max-width: none;
	padding: 1.875rem !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__description > .wp-block-post-content {
	max-width: none !important;
	width: 100% !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .lsa-portfolio-preview-cta h2 {
	font-size: 2.5rem !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__description .wp-block-post-content > * {
	max-width: none !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-other-projects {
	border-top: 0.4rem solid var(--lsa-inner-primary) !important;
	padding: 1.5rem;
	position: sticky;
	top: 7rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-other-projects h2 {
	font-size: 1.5rem !important;
	margin-bottom: 1rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-other-projects ul {
	gap: 0.75rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-other-projects li a {
	background: #f6f9fd;
	border: 1px solid #e2eaf4;
	border-radius: 0.75rem;
	grid-template-columns: 5.5rem minmax(0, 1fr);
	padding: 0.65rem;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-other-projects li a:hover,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-other-projects li a:focus-visible {
	border-color: color-mix(in srgb, var(--lsa-inner-primary) 42%, #e2eaf4);
	box-shadow: 0 10px 22px rgb(20 57 105 / 10%);
	transform: translateY(-1px);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-other-projects img,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-other-projects__media {
	border-radius: 0.45rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__navigation {
	border-top: 0;
	margin-top: 1.5rem;
	padding-top: 0;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__navigation a {
	align-items: center;
	background: #fff;
	border: 1px solid var(--lsa-inner-line);
	border-radius: 0.7rem;
	box-shadow: 0 9px 22px rgb(20 57 105 / 8%);
	color: var(--lsa-inner-primary);
	display: inline-flex;
	font-weight: 700;
	min-height: 3rem;
	padding: 0.7rem 1rem;
	text-decoration: none;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-post-hero {
	min-height: clamp(23.25rem, calc(38vw - 3.75rem), 30.25rem);
}

body.lsa-style-agency-growth-dark.single-post .ls-post-hero {
	background-color: #03152c;
}

body.lsa-style-agency-growth-dark.single-post .ls-post-hero .wp-block-cover__background {
	background: linear-gradient(90deg, rgb(3 19 40 / 94%), rgb(3 19 40 / 58%)) !important;
	opacity: 1 !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-post-hero__content {
	max-width: 1380px !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-post-hero__title {
	font-size: clamp(2.25rem, 3.5vw, 2.5rem) !important;
	line-height: 1.08 !important;
	max-width: 48rem !important;
}

body.lsa-style-agency-growth-dark.single-post .ls-post-hero__title {
	color: #fff !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-surface-single-eyebrow {
	font-family: var(--wp--preset--font-family--heading, "Gabarito", sans-serif);
	font-size: 1rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase;
}

body.lsa-style-agency-growth-dark.single-post .ls-surface-single-eyebrow {
	color: #56aaff !important;
}

body.lsa-style-agency-growth-dark.single-post .ls-post-hero__excerpt,
body.lsa-style-agency-growth-dark.single-post .ls-post-hero__meta,
body.lsa-style-agency-growth-dark.single-post .ls-post-hero__meta a {
	color: #c5d5e8;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__body {
	background: #f7faff;
	padding-block: clamp(2.5rem, 4vw, 3.125rem);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__grid {
	gap: 2.25rem !important;
	max-width: 1380px !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-panel {
	background: #fff;
	border: 1px solid var(--lsa-inner-line);
	border-radius: 1rem;
	box-shadow: 0 14px 34px rgb(24 62 112 / 8%);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main {
	box-sizing: border-box;
	padding: 1.875rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__featured {
	margin-top: 0;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__featured img {
	border-radius: 0.8rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-panel {
	padding: clamp(1.5rem, 2.4vw, 2rem);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__sidebar {
	align-content: start;
	align-self: start;
	height: auto;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__sidebar > .ls-sidebar-panel {
	height: auto;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-panel h2 {
	font-size: clamp(1.55rem, 2vw, 1.8rem) !important;
	margin-bottom: 1.5rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main .wp-block-post-content > .wp-block-paragraph,
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main .wp-block-post-content > p {
	max-width: none !important;
	width: 100% !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main .wp-block-post-content > h1 { font-size: 2.5rem !important; }
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main .wp-block-post-content > h2 { font-size: 2.125rem !important; }
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main .wp-block-post-content > h3 { font-size: 1.75rem !important; }
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main .wp-block-post-content > h4 { font-size: 1.4375rem !important; }
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main .wp-block-post-content > h5 { font-size: 1.1875rem !important; }
body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main .wp-block-post-content > h6 { font-size: 1rem !important; }

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-recent-posts {
	display: grid;
	gap: 0;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-recent-posts li {
	background: transparent;
	border: 0;
	border-radius: 0;
	gap: 0.35rem 1rem;
	grid-template-columns: 5.5rem minmax(0, 1fr);
	margin: 0 !important;
	padding: 1rem 0;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-recent-posts li:last-child {
	padding-bottom: 0;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-recent-posts .wp-block-latest-posts__featured-image :is(a, img) {
	border-radius: var(--ls-radius-sm, 0.5rem);
	height: 5.5rem;
	width: 5.5rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-recent-posts a {
	color: var(--lsa-inner-ink);
	font-family: var(--wp--preset--font-family--heading, "Gabarito", sans-serif);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-recent-posts .wp-block-latest-posts__post-date {
	color: var(--lsa-inner-muted);
	font-size: 0.9375rem !important;
	line-height: 1.35;
	margin-top: 0;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-panel:has(.ls-sidebar-recent-posts) {
	border-top: 0.4rem solid var(--lsa-inner-primary);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-panel:has(.ls-sidebar-recent-posts) > h2 {
	border-bottom: 1px solid var(--lsa-inner-line);
	padding-bottom: 1.5rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-panel:has(.ls-sidebar-category-cloud) {
	background: #ffffff;
	border-color: var(--lsa-inner-line);
	border-top: 0.4rem solid var(--lsa-inner-primary);
	box-shadow: 0 14px 34px rgb(24 62 112 / 8%);
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-panel:has(.ls-sidebar-category-cloud) > h2 {
	border-bottom: 1px solid var(--lsa-inner-line);
	color: var(--lsa-inner-ink) !important;
	padding-bottom: 1.5rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-category-cloud {
	display: grid;
	gap: 0;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-category-cloud a {
	align-items: center;
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--lsa-inner-line);
	border-radius: 0;
	color: var(--lsa-inner-ink);
	display: flex;
	font-size: 1rem !important;
	font-weight: 700 !important;
	gap: 0.75rem;
	padding: 0.85rem 0;
	text-decoration: none;
	text-transform: none;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-category-cloud a::before {
	background: currentcolor;
	content: "";
	flex: 0 0 auto;
	height: 0.85rem;
	-webkit-mask: var(--ls-icon-chevron-right) center / contain no-repeat;
	mask: var(--ls-icon-chevron-right) center / contain no-repeat;
	transition: transform 180ms ease;
	width: 0.85rem;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-category-cloud a:last-child {
	border-bottom: 0;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-category-cloud a:is(:hover, :focus-visible) {
	color: var(--lsa-inner-primary);
}

body.lsa-style-agency-growth-dark.error404 .ls-404-page {
	background-color: #031226 !important;
	background-image:
		linear-gradient(90deg, rgb(2 15 32 / 94%) 0%, rgb(4 23 45 / 78%) 52%, rgb(4 23 45 / 52%) 100%),
		url("../images/agency-why-town-blue-hour.jpg") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	color: #f7fbff !important;
}

body.lsa-style-agency-growth-dark.error404 .ls-404-page::before {
	background: radial-gradient(circle at 76% 40%, rgb(33 139 255 / 24%), transparent 36%) !important;
}

body.lsa-style-agency-growth-dark.error404 .ls-404-page :is(.ls-404-page__title, .ls-404-page__description) {
	color: #f7fbff !important;
}

body.lsa-style-agency-growth-dark.error404 .ls-surface-404-eyebrow {
	color: #f7fbff !important;
	font-weight: 800 !important;
}

body.lsa-style-agency-growth-dark.error404 .ls-404-page__description {
	color: #c5d5e8 !important;
}

body.lsa-style-agency-growth-dark.error404 main.ls-404-page .ls-404-page__inner > p.ls-404-page__code {
	color: #56aaff !important;
	font-size: clamp(8rem, 22vw, 18rem) !important;
	font-weight: 800 !important;
	line-height: 0.8 !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).lsa-portfolio-directory-page .ls-page-header h1 {
	font-weight: 700 !important;
}

body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-category-cloud a:is(:hover, :focus-visible)::before {
	transform: translateX(0.2rem);
}

@media (max-width: 1100px) {
	.lsa-inner-card-grid--four,
	.lsa-inner-process__steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.lsa-inner-services-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 781px) {
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main h1 {
		font-size: clamp(2.5rem, 11vw, 2.8125rem) !important;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main h2 {
		font-size: clamp(2rem, 9vw, 2.25rem) !important;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main .ls-archive-card__title,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) main .lsa-portfolio-directory__body h2 {
		font-size: 1.35rem !important;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header {
		min-height: 18.25rem;
		padding-block: clamp(2.625rem, calc(16vw - 1.875rem), 3.875rem);
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header > .wp-block-group,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header > .wp-block-group > *,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-post-hero__content,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-post-hero__content > *,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__hero-inner,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__hero-inner > * {
		margin-left: auto !important;
		margin-right: auto !important;
		text-align: center;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header :is(.ls-surface-inner-page-description, .ls-surface-blog-description),
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-post-hero__excerpt,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__excerpt {
		margin-inline: auto !important;
		text-align: center;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light):not(.home) .ls-page-header .wp-block-separator,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-post-hero__rule,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__rule {
		margin-left: auto !important;
		margin-right: auto !important;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-post-hero__meta {
		justify-content: center !important;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__terms {
		display: block;
		text-align: center;
	}

	.lsa-inner-section {
		padding-block: 4.5rem;
	}

	.lsa-inner-card-grid--four,
	.lsa-inner-card-grid--three,
	.lsa-inner-process__steps,
	.lsa-inner-included__grid,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light) .ls-archive-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.lsa-inner-about-visual {
		min-height: 28rem;
	}

	.lsa-inner-about-visual__image {
		margin-inline: 0;
	}

	.lsa-inner-about-visual__image img {
		height: 25rem;
	}

	.lsa-inner-proof-card--projects {
		left: 0.75rem;
		top: 1rem;
	}

	.lsa-inner-proof-card--focus {
		bottom: 0;
		right: 0.75rem;
	}

	.lsa-inner-service-detail {
		grid-template-columns: minmax(0, 1fr);
	}

	.lsa-inner-service-detail > .wp-block-image img {
		min-height: 15rem;
	}

	.lsa-inner-contact__form-card .ls-contact-form__fields {
		grid-template-columns: minmax(0, 1fr);
	}

	.lsa-inner-contact__form-card .ls-form-field {
		grid-column: 1 / -1;
	}

	.lsa-inner-faq-section .ls-faq-item summary {
		grid-template-columns: 1.8rem minmax(0, 1fr) 1rem;
	}

	.lsa-inner-faq-section .ls-faq-item__answer {
		padding-left: 0;
	}

	.lsa-inner-final-cta__box {
		background-position: 64% center;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-single-post__main,
	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-post .ls-sidebar-panel {
		border-radius: 0.8rem;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__hero-inner {
		width: min(1380px, calc(100% - 32px)) !important;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-project-single__content-section {
		padding-block: 4.5rem !important;
	}

	body:is(.lsa-style-agency-growth-dark, .lsa-style-agency-showcase-light).single-ls_portfolio .ls-other-projects {
		position: static;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lsa-inner-faq-section .ls-faq-item__toggle {
		transition: none;
	}
}

body.lsa-agency-design.lsa-style-agency-growth-dark main .wp-block-heading {
	max-width: none !important;
	width: auto !important;
}

/* Style 2 keeps the complete Style 1 inner-page structure and type scale.
 * These rules only replace fonts, semantic surfaces, foreground colors, and
 * bundled decorative media. */
body.lsa-style-agency-showcase-light:not(.home) {
	--lsa-inner-ink: #071533;
	--lsa-inner-copy: #425577;
	--lsa-inner-muted: #617195;
	--lsa-inner-line: #d9e1f5;
	--lsa-inner-soft: #f5f7ff;
	--lsa-inner-primary: #0b5fff;
	--lsa-inner-primary-rgb: 11 95 255;
	background: #f7f9ff;
	color: var(--lsa-inner-copy);
	font-family: var(--wp--preset--font-family--body, "Plus Jakarta Sans", sans-serif);
	font-weight: 600;
}

body.lsa-style-agency-showcase-light:not(.home) main :is(p, li, a, label, input, textarea, select) {
	font-weight: 600;
}

body.lsa-style-agency-showcase-light:not(.home) main :is(h1, h2, h3, h4, h5, h6, .lsa-inner-kicker),
body.lsa-style-agency-showcase-light:not(.home) :is(.ls-surface-inner-page-eyebrow, .ls-eyebrow, .ls-surface-single-eyebrow) {
	font-family: var(--wp--preset--font-family--heading, "Plus Jakarta Sans", sans-serif);
	font-weight: 800;
}

body.lsa-style-agency-showcase-light:not(.home) .ls-page-header,
body.lsa-style-agency-showcase-light:is(.archive, .search) :is(.ls-archive-hero, .ls-search-hero) {
	background-color: #f5f7ff !important;
	background-image:
		linear-gradient(90deg, rgb(255 255 255 / 96%) 0%, rgb(248 250 255 / 88%) 48%, rgb(242 246 255 / 28%) 76%, rgb(239 243 255 / 12%) 100%),
		url("../images/agency-style2-inner-bg.webp") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	color: #071533 !important;
}

body.lsa-style-agency-showcase-light:not(.home) .ls-page-header::after,
body.lsa-style-agency-showcase-light:is(.archive, .search) :is(.ls-archive-hero, .ls-search-hero)::after {
	background: radial-gradient(circle at 80% 42%, rgb(67 39 231 / 11%), transparent 34%) !important;
	background-image: radial-gradient(circle at 80% 42%, rgb(67 39 231 / 11%), transparent 34%) !important;
}

body.lsa-style-agency-showcase-light:not(.home) .ls-page-header :is(h1, h2),
body.lsa-style-agency-showcase-light:is(.archive, .search) :is(.ls-archive-hero, .ls-search-hero) :is(h1, .ls-inner-hero__title) {
	color: #071533 !important;
}

body.lsa-style-agency-showcase-light:not(.home) :is(
	.ls-page-header .ls-surface-inner-page-eyebrow,
	.ls-page-header .ls-eyebrow,
	.ls-surface-single-eyebrow,
	.ls-project-single__terms,
	.ls-project-single__terms a,
	.ls-surface-archive-eyebrow,
	.ls-surface-search-eyebrow
) {
	background: linear-gradient(90deg, #0b5fff 0%, #4327e7 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
}

body.lsa-style-agency-showcase-light:not(.home) .ls-page-header :is(.ls-surface-inner-page-description, .ls-surface-blog-description),
body.lsa-style-agency-showcase-light:is(.archive, .search) :is(.ls-archive-hero, .ls-search-hero) p {
	color: #425577 !important;
}

body.lsa-style-agency-showcase-light .ls-archive-card__date,
body.lsa-style-agency-showcase-light .ls-archive-card__excerpt .wp-block-post-excerpt__more-link,
body.lsa-style-agency-showcase-light .ls-project-single__navigation a {
	color: #0b5fff;
}

body.lsa-style-agency-showcase-light :is(.ls-archive-card__title a, .ls-sidebar-recent-posts a, .ls-sidebar-category-cloud a) {
	font-family: var(--wp--preset--font-family--heading, "Plus Jakarta Sans", sans-serif);
	font-weight: 800 !important;
}

body.lsa-style-agency-showcase-light.single-ls_portfolio .ls-project-single__hero,
body.lsa-style-agency-showcase-light.single-post .ls-post-hero {
	background-color: #f5f7ff !important;
	background-image:
		linear-gradient(90deg, rgb(255 255 255 / 96%) 0%, rgb(248 250 255 / 88%) 48%, rgb(242 246 255 / 28%) 76%, rgb(239 243 255 / 12%) 100%),
		url("../images/agency-style2-inner-bg.webp") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

body.lsa-style-agency-showcase-light.single-ls_portfolio .ls-project-single__hero > .wp-block-cover__image-background,
body.lsa-style-agency-showcase-light.single-post .ls-post-hero > .wp-block-cover__image-background {
	opacity: 0 !important;
}

body.lsa-style-agency-showcase-light.single-ls_portfolio .ls-project-single__hero .wp-block-cover__background,
body.lsa-style-agency-showcase-light.single-post .ls-post-hero .wp-block-cover__background {
	background: linear-gradient(90deg, rgb(255 255 255 / 80%), rgb(248 250 255 / 36%)) !important;
	opacity: 1 !important;
}

body.lsa-style-agency-showcase-light.single-ls_portfolio .ls-project-single__hero::before {
	background: radial-gradient(circle at 80% 42%, rgb(67 39 231 / 11%), transparent 34%);
}

body.lsa-style-agency-showcase-light.single-ls_portfolio :is(.ls-project-single__title, .ls-project-single__excerpt, .ls-project-single__excerpt p),
body.lsa-style-agency-showcase-light.single-post :is(.ls-post-hero__title, .ls-post-hero__excerpt, .ls-post-hero__meta, .ls-post-hero__meta a) {
	color: #071533 !important;
}

body.lsa-style-agency-showcase-light.single-ls_portfolio .ls-project-single__rule,
body.lsa-style-agency-showcase-light.single-post .ls-post-hero__rule {
	background: linear-gradient(90deg, #0b5fff, #4327e7) !important;
}

body.lsa-style-agency-showcase-light.error404 .ls-404-page {
	background-color: #eff4ff !important;
	background-image: url("../images/agency-style2-404.webp") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	color: #071533 !important;
}

body.lsa-style-agency-showcase-light.error404 .ls-404-page::before {
	background: linear-gradient(90deg, rgb(247 250 255 / 96%) 0%, rgb(244 248 255 / 82%) 39%, rgb(238 244 255 / 12%) 68%, transparent 100%) !important;
}

body.lsa-style-agency-showcase-light.error404 .ls-404-page__inner {
	margin-left: max(1.25rem, calc((100vw - 1380px) / 2)) !important;
	margin-right: auto !important;
	max-width: min(40vw, 42rem) !important;
	text-align: left;
	width: 100%;
}

body.lsa-style-agency-showcase-light.error404 .ls-404-page__inner > * {
	margin-left: 0 !important;
	margin-right: auto !important;
}

body.lsa-style-agency-showcase-light.error404 .ls-404-page :is(.ls-404-page__title, .ls-404-page__description),
body.lsa-style-agency-showcase-light.error404 .ls-surface-404-eyebrow {
	color: #071533 !important;
}

body.lsa-style-agency-showcase-light.error404 main.ls-404-page .ls-404-page__inner > p.ls-404-page__code {
	background: linear-gradient(90deg, #0b5fff 0%, #4327e7 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
}

body.lsa-style-agency-showcase-light.error404 .ls-404-page__search .wp-block-search__inside-wrapper {
	background: rgb(255 255 255 / 84%);
	border-color: #cbd8f5;
}

body.lsa-style-agency-showcase-light.error404 .ls-404-page__search .wp-block-search__input {
	color: #071533;
}

body.lsa-style-agency-showcase-light.error404 :is(.ls-404-page__search .wp-block-search__button, .ls-404-page__home .wp-block-button__link) {
	background: linear-gradient(90deg, #0b5fff 0%, #4327e7 100%) !important;
	color: #ffffff !important;
}

body.lsa-style-agency-showcase-light.error404 .ls-404-page__actions {
	justify-content: flex-start !important;
}

/* Style 2 inner content surfaces: preserve the shared spacing contract while
 * replacing Style 1's cinematic dark panels with light tech-agency surfaces. */
body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-process {
	background-color: #f5f7ff;
	background-image:
		linear-gradient(90deg, rgb(246 249 255 / 18%) 0%, rgb(247 249 255 / 78%) 42%, #f7f9ff 72%),
		url("../images/agency-style2-why-map-2p5.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	color: #071533;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-process .lsa-inner-heading--center {
	margin-inline: 0 auto;
	max-width: 56rem;
	text-align: left;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-process :is(h2, h3),
body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-process .lsa-inner-heading p,
body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-process .lsa-inner-process__step p {
	color: #071533 !important;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-process .lsa-inner-heading > p:last-child,
body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-process .lsa-inner-process__step > p:last-child {
	color: #425577 !important;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-process__steps {
	gap: 1rem !important;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-process__step {
	background: #ffffff;
	border: 1px solid #dce4f6;
	border-radius: 1rem;
	box-shadow: 0 12px 28px rgb(39 62 137 / 7%);
	padding: 1.5rem;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-final-cta {
	background: #f7f9ff;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-final-cta__box {
	background-color: #f5f8ff;
	background-image:
		linear-gradient(90deg, rgb(248 250 255 / 26%) 0%, rgb(246 249 255 / 10%) 62%, transparent 78%),
		url("../images/agency-style2-final-cta-2p5.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: 1px solid #d9e3f7;
	box-shadow: 0 22px 54px rgb(40 61 143 / 11%);
	color: #071533;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-final-cta__box :is(h2, p) {
	color: #071533 !important;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-final-cta__box > h2.wp-block-heading {
	max-width: 37.5rem !important;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-final-cta__box > p:not(.lsa-inner-kicker) {
	color: #425577 !important;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-final-cta__box .wp-block-button.is-style-outline .wp-block-button__link {
	background: #ffffff;
	border-color: #0b5fff !important;
	color: #0b5fff !important;
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-included,
body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-next-steps {
	background: linear-gradient(135deg, #eef4ff 0%, #f4f1ff 100%);
}

body.lsa-style-agency-showcase-light:not(.home) :is(.lsa-inner-mini-card, .lsa-inner-step-card, .lsa-inner-service-detail, .lsa-inner-contact__form-card) {
	border-color: #dbe4f6;
	box-shadow: 0 12px 30px rgb(39 62 137 / 7%);
}

body.lsa-style-agency-showcase-light:not(.home) .lsa-inner-contact {
	background: linear-gradient(135deg, #eff5ff 0%, #f7f5ff 100%);
}

body.lsa-style-agency-showcase-light.lsa-portfolio-directory-page:not(.home) main .lsa-portfolio-directory__category {
	margin-bottom: 0.35rem !important;
}

body.lsa-style-agency-showcase-light.lsa-portfolio-directory-page:not(.home) main .lsa-portfolio-directory__body h2 {
	margin: 0 !important;
	font-family: var(--wp--preset--font-family--heading, "Plus Jakarta Sans", sans-serif);
	font-weight: 800 !important;
}

body.lsa-style-agency-showcase-light.lsa-portfolio-directory-page:not(.home) main .lsa-portfolio-directory__body > p:not(.lsa-portfolio-directory__category) {
	margin-top: 0.5rem !important;
}

body.lsa-style-agency-showcase-light.lsa-portfolio-directory-page:not(.home) main .lsa-portfolio-directory__links {
	padding-top: 1rem;
}

body.lsa-style-agency-showcase-light.lsa-portfolio-directory-page:not(.home) main .lsa-portfolio-directory__links :is(.lsa-portfolio-directory__preview, .lsa-portfolio-directory__details) {
	border: 0 !important;
	background: linear-gradient(90deg, #0b5fff 0%, #4327e7 100%) !important;
	box-shadow: 0 10px 24px rgb(45 53 238 / 18%) !important;
	color: #ffffff !important;
}

body.lsa-style-agency-showcase-light.single-ls_portfolio .ls-project-single {
	font-family: var(--wp--preset--font-family--body, "Plus Jakarta Sans", sans-serif);
	font-weight: 600;
}

body.lsa-style-agency-showcase-light.single-ls_portfolio .ls-project-single :is(p, li) {
	font-family: var(--wp--preset--font-family--body, "Plus Jakarta Sans", sans-serif) !important;
	font-weight: 600;
}

body.lsa-style-agency-showcase-light.single-ls_portfolio .ls-project-single :is(h1, h2, h3, h4, h5, h6) {
	font-family: var(--wp--preset--font-family--heading, "Plus Jakarta Sans", sans-serif) !important;
	font-weight: 800;
}

body.lsa-style-agency-showcase-light.single-ls_portfolio .lsa-portfolio-preview-cta .wp-element-button {
	background: linear-gradient(90deg, #0b5fff 0%, #4327e7 100%) !important;
	border: 0 !important;
	border-radius: 0.75rem;
	color: #ffffff !important;
}

@media (max-width: 781px) {
	body.lsa-style-agency-showcase-light.error404 .ls-404-page::before {
		background: linear-gradient(180deg, rgb(241 247 255 / 88%), rgb(238 244 255 / 72%)) !important;
	}

	body.lsa-style-agency-showcase-light.error404 .ls-404-page__inner {
		box-sizing: border-box;
		margin-inline: auto !important;
		max-width: min(calc(100% - 2rem), 42rem) !important;
		text-align: center;
		width: min(calc(100% - 2rem), 42rem) !important;
	}

	body.lsa-style-agency-showcase-light.error404 .ls-404-page__inner > * {
		margin-left: auto !important;
		margin-right: auto !important;
	}

	body.lsa-style-agency-showcase-light.error404 .ls-404-page__actions {
		justify-content: center !important;
	}
}
