/* Shared hero and page layout; tokens and typography load first. */
body.page-services{
overflow-x: hidden;
	background: var(--surface-raised);
	color: var(--text-primary);
}

.services-page-hero{
position: relative;
	isolation: isolate;
	overflow: hidden;
	padding: var(--space-24) 0 var(--space-24);
	background: var(--surface-sunken);
}

.services-page-hero::before{
position: absolute;
	z-index: -1;
	top: -190px;
	right: -120px;
	width: 540px;
	height: 540px;
	border-radius: 50%;
	background: var(--container-cool);
	content: "";
	opacity: 0.8;
}

.services-page-hero-grid{
display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(440px, 0.75fr);
	align-items: center;
	gap: var(--space-8);
}

.services-page-hero-copy{
position: relative;
	z-index: 2;
}

.services-page-hero h1{
max-width: 760px;
	margin: 0 0 var(--space-6);
	color: var(--brand);
}

.services-page-lead{
max-width: var(--measure-tight);
	margin: 0 0 var(--space-8);
	color: var(--text-secondary);
}

.services-page-actions{
display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-4);
}

.services-page-hero-media{
position: relative;
	min-height: 580px;
	margin: 0;
}

.services-page-hero-media img{
width: 100%;
	height: 580px;
	object-fit: cover;
	border-radius: var(--radius-xl);
	box-shadow: var(--shadow-md);
}

.services-page-hero-note{
position: absolute;
	right: -22px;
	bottom: 30px;
	width: min(330px, 86%);
	padding: var(--space-6) var(--space-6);
	border: 1px solid var(--border-subtle);
	border-radius: var(--radius-xl);
	background: var(--surface-base);
	box-shadow: var(--shadow-md);
}

.services-page-hero-note strong,
.services-page-hero-note span{
display: block;
}

.services-page-hero-note strong{
margin-bottom: var(--space-2);
	color: var(--brand);
}

.services-page-hero-note span{
color: var(--text-secondary);
}

@media  (max-width: 1199px) {
.services-page-hero-grid{
grid-template-columns: 1fr;
}

.services-page-hero-media{
width: min(100%, 720px);
}
}

@media  (max-width: 599px) {
.services-page-hero{
padding: var(--space-16) 0 var(--space-16);
}

.services-page-actions{
align-items: stretch;
	flex-direction: column;
}

.services-page-hero-media{
min-height: auto;
}

.services-page-hero-media img{
height: 410px;
	border-radius: var(--radius-xl);
}

.services-page-hero-note{
position: relative;
	right: auto;
	bottom: auto;
	width: calc(100% - 24px);
	margin: calc(-1 * var(--space-12)) 0 0 var(--space-6);
}
}

.page-services .section{
padding: var(--section-space) 0;
}

.services-intro{
background: var(--surface-base);
}

.services-intro-grid{
display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(320px, 0.65fr);
	align-items: end;
	gap: var(--space-8);
}

.services-intro h2{
max-width: 760px;
	margin: 0;
	color: var(--brand);
}

.services-intro-copy{
color: var(--text-secondary);
}

.services-intro-copy p:last-child{
margin-bottom: 0;
}

.services-catalog{
background: var(--surface-raised);
}

.services-catalog-heading{
display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(280px, 0.45fr);
	align-items: end;
	gap: var(--space-12);
	margin-bottom: var(--space-16);
}

.services-catalog-heading h2,
.services-catalog-heading p{
margin-bottom: 0;
}

.services-catalog-heading > p{
color: var(--text-secondary);
}





















.services-guidance{
background: var(--brand);
	color: var(--surface-base);
}

.services-guidance-grid{
display: grid;
	grid-template-columns: minmax(0, 0.75fr) minmax(0, 1fr);
	align-items: center;
	gap: var(--space-8);
}

.services-guidance h2{
max-width: 700px;
	margin-bottom: var(--space-6);
	color: var(--surface-base);
}

.services-guidance-copy > p{
max-width: 650px;
	margin-bottom: var(--space-8);
	color: var(--text-on-dark-muted);
}

.services-guidance-list{
display: grid;
	margin: 0;
	padding: 0;
	list-style: none;
}

.services-guidance-list li{
position: relative;
	padding: var(--space-4) 0 var(--space-4) var(--space-8);
	border-top: 1px solid var(--border-subtle-on-dark);
}

.services-guidance-list li::before{
position: absolute;
	top: 21px;
	left: 3px;
	color: var(--accent);
	content: "✓";
}

.services-guidance-actions{
display: flex;
	flex-wrap: wrap;
	gap: var(--space-4);
}

@media  (max-width: 1199px) {



}

@media  (max-width: 899px) {
.page-services .section{
padding: var(--section-space) 0;
}

.services-intro-grid,
.services-catalog-heading,
.services-guidance-grid{
grid-template-columns: 1fr;
}

.services-catalog-heading{
margin-bottom: var(--space-12);
}
}

@media  (max-width: 599px) {






.services-guidance-actions{
align-items: stretch;
	flex-direction: column;
}
}

@media  (prefers-reduced-motion: reduce) {

}
