:root {
	--wp--preset--color--ink: #102d42;
	--wp--preset--color--water: #087ea4;
	--wp--preset--color--foam: #eef8fb;
	--wp--preset--color--sand: #f5f1e8;
}

* { box-sizing: border-box; }

body { color: var(--wp--preset--color--ink); font-family: Inter, Arial, sans-serif; }

a { color: currentColor; text-underline-offset: .2em; }

a:focus-visible, button:focus-visible, input:focus-visible {
	outline: 3px solid var(--wp--preset--color--water);
	outline-offset: 3px;
}

.blue-pools-site-header, .blue-pools-site-footer {
	padding: clamp(1rem, 3vw, 2rem) max(1.25rem, calc((100vw - 76rem) / 2));
}

.blue-pools-site-header {
	border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--ink), transparent 82%);
	background: white;
}

.blue-pools-site-header__inner, .blue-pools-site-footer__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	margin: auto;
	max-width: 76rem;
}

.blue-pools-logo { align-items: center; display: inline-flex; gap: .55rem; text-decoration: none; white-space: nowrap; }
.blue-pools-logo__mark { align-items: center; background: var(--wp--preset--color--water); border-radius: 50%; color: white; display: inline-flex; font-size: 1.6rem; height: 2.4rem; justify-content: center; width: 2.4rem; }
.blue-pools-logo strong, .blue-pools-logo small { display: block; line-height: 1; }
.blue-pools-logo strong { font-size: 1.25rem; letter-spacing: -.04em; }
.blue-pools-logo small { color: var(--wp--preset--color--water); font-size: .72rem; letter-spacing: .18em; margin-top: .2rem; text-transform: uppercase; }
.blue-pools-logo__image { display: block; height: auto; max-height: 4rem; max-width: 12rem; width: auto; }

.blue-pools-site-nav ul { display: flex; flex-wrap: wrap; gap: .4rem 1.15rem; list-style: none; margin: 0; padding: 0; }
.blue-pools-site-nav a { font-weight: 600; text-decoration: none; }
.blue-pools-site-nav a:hover { color: var(--wp--preset--color--water); text-decoration: underline; }
.blue-pools-site-nav .wp-block-navigation-item.has-child { position: relative; }
.blue-pools-site-nav .wp-block-navigation-submenu__toggle { align-items: center; color: inherit; display: inline-flex; height: 1rem; justify-content: center; margin-left: .25rem; padding: 0; width: 1rem; }
.blue-pools-site-nav .wp-block-navigation-submenu__toggle svg { height: .75rem; margin-top: 0; width: .75rem; }
.blue-pools-site-nav .wp-block-navigation__submenu-container { background: white; border: 1px solid #dce7eb; border-radius: 1rem; box-shadow: 0 .8rem 1.75rem rgba(16,45,66,.16); display: none; height: auto; left: 50%; list-style: none; margin: 0; min-width: 18rem; opacity: 1; overflow: visible; padding: 1rem .5rem .5rem; position: absolute; top: 100%; transform: translateX(-50%); visibility: visible; z-index: 20; }
.blue-pools-site-nav .wp-block-navigation-item.has-child:hover > .wp-block-navigation__submenu-container,
.blue-pools-site-nav .wp-block-navigation-item.has-child:focus-within > .wp-block-navigation__submenu-container,
.blue-pools-site-nav .wp-block-navigation-item.has-child > .wp-block-navigation__submenu-container:focus-within { display: block; }
.blue-pools-site-nav .wp-block-navigation__submenu-container .wp-block-navigation-item { display: block; }
.blue-pools-site-nav .wp-block-navigation__submenu-container a { border-radius: .75rem; display: block; font-size: .875rem; font-weight: 500; padding: .7rem .75rem; white-space: nowrap; }
.blue-pools-site-nav .wp-block-navigation__submenu-container a:hover,
.blue-pools-site-nav .wp-block-navigation__submenu-container a:focus-visible { background: #eef8fb; color: var(--wp--preset--color--ink); text-decoration: none; }
.blue-pools-site-nav .wp-block-navigation__container.items-justified-right .has-child > .wp-block-navigation__submenu-container { left: 50%; right: auto; }
.blue-pools-mobile-nav { display: none; }

@media (max-width: 50rem) {
	.blue-pools-utility-bar, .blue-pools-site-header .blue-pools-site-nav.wp-block-navigation, .blue-pools-site-header .blue-pools-header-actions { display: none !important; }
	.blue-pools-site-header { padding-bottom: .8rem; padding-top: .8rem; position: relative; }
	.blue-pools-site-header__inner { align-items: center; flex-direction: row; }
	.blue-pools-logo__image { max-height: 3.25rem; }
	.blue-pools-mobile-nav { display: block; }
	.blue-pools-mobile-nav summary { align-items: center; cursor: pointer; display: flex; height: 2.75rem; justify-content: center; list-style: none; width: 2.75rem; }
	.blue-pools-mobile-nav summary::-webkit-details-marker { display: none; }
	.blue-pools-mobile-nav summary span::before { color: var(--wp--preset--color--ink); content: '☰'; font-size: 1.7rem; }
	.blue-pools-mobile-nav[open] summary span::before { content: '×'; font-size: 2rem; }
	.blue-pools-mobile-nav nav { background: #fbfdfd; border-bottom: 1px solid #dce7eb; display: flex; flex-direction: column; gap: .25rem; left: 0; padding: 1.5rem max(1.5rem, calc((100vw - 76rem) / 2)); position: absolute; right: 0; top: 100%; z-index: 30; }
	.blue-pools-mobile-nav a { text-decoration: none; }
	.blue-pools-mobile-nav__top-link { font-size: 1rem; font-weight: 700; padding: .65rem .75rem; }
	.blue-pools-mobile-nav__services { border-left: 1px solid #d4e1e6; display: flex; flex-direction: column; margin: 0 .75rem .35rem; padding-left: .75rem; }
	.blue-pools-mobile-nav__services a { color: #526574; font-size: .9rem; padding: .5rem .75rem; }
	.blue-pools-mobile-nav__phone { align-items: center; color: var(--wp--preset--color--water); display: flex; font-size: 1rem; font-weight: 700; gap: .5rem; margin: .75rem 0; padding: .65rem .75rem; }
	.blue-pools-mobile-nav__phone span { background: currentColor; height: 1rem; mask: url('../icons/phone.svg') center / contain no-repeat; width: 1rem; }
	.blue-pools-mobile-nav .blue-pools-button { text-align: center; width: 100%; }
	.blue-pools-site-nav .wp-block-navigation__submenu-container { border: 0; border-radius: 0; box-shadow: none; display: block; margin: .4rem 0 0; min-width: 0; padding: 0 0 0 1rem; position: static; transform: none; }
	.blue-pools-site-nav .wp-block-navigation__submenu-container a { font-size: .875rem; padding: .45rem .75rem; white-space: normal; }
	.blue-pools-site-nav .wp-block-navigation-submenu__toggle { display: none; }
}

.blue-pools-site-footer { background: #17364c; color: white; padding-bottom: 0; padding-top: 0; }
.blue-pools-site-footer__inner { align-items: start; display: grid; gap: 2.5rem; grid-template-columns: 1.4fr 1fr 1fr 1.1fr; margin: auto; max-width: 76rem; padding: clamp(3rem, 6vw, 4.5rem) 0; }
.blue-pools-site-footer p { margin: 0; }
.blue-pools-site-footer__brand .blue-pools-logo { color: white; }
.blue-pools-site-footer__brand .blue-pools-logo__image { max-height: 3.5rem; }
.blue-pools-site-footer__brand .blue-pools-logo small { color: #ead6a6; }
.blue-pools-site-footer__brand p { color: #bdcbd4; font-size: .875rem; line-height: 1.65; margin-top: 1.25rem; max-width: 18rem; }
.blue-pools-site-footer h2 { color: #ead6a6; font-family: Inter, Arial, sans-serif; font-size: .875rem; font-weight: 700; letter-spacing: .08em; margin: .4rem 0 1.25rem; text-transform: uppercase; }
.blue-pools-site-footer ul { list-style: none; margin: 0; padding: 0; }
.blue-pools-site-footer li { color: #bdcbd4; font-size: .875rem; line-height: 1.45; }
.blue-pools-site-footer__nav li + li { margin-top: .75rem; }
.blue-pools-site-footer a { text-decoration: none; transition: color .2s ease; }
.blue-pools-site-footer a:hover, .blue-pools-site-footer a:focus-visible { color: white; text-decoration: underline; }
.blue-pools-site-footer__contact-item { align-items: start; display: flex; gap: .7rem; }
.blue-pools-site-footer__contact-item + .blue-pools-site-footer__contact-item { margin-top: .8rem; }
.blue-pools-site-footer__contact-item > span { background: #ead6a6; flex: 0 0 1rem; height: 1rem; margin-top: .1rem; width: 1rem; }
.blue-pools-site-footer__contact-item--phone > span { mask: url('../icons/phone.svg') center / contain no-repeat; }
.blue-pools-site-footer__contact-item--email > span { mask: url('../icons/mail.svg') center / contain no-repeat; }
.blue-pools-site-footer__contact-item--address > span { mask: url('../icons/pin.svg') center / contain no-repeat; }
.blue-pools-site-footer__contact-item--hours > span { mask: url('../icons/clock.svg') center / contain no-repeat; }
.blue-pools-site-footer__legal { background: #102d42; border-top: 1px solid rgba(255,255,255,.16); color: #a9bbc7; display: flex; font-size: .75rem; gap: 1rem; justify-content: space-between; margin: 0 calc(max(1.25rem, (100vw - 76rem) / 2) * -1); padding: 1.75rem max(1.25rem, calc((100vw - 76rem) / 2)); }

@media (max-width: 44rem) {
	.blue-pools-site-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.blue-pools-site-footer__legal { flex-direction: column; }
	.blue-pools-site-nav ul { gap: .6rem 1rem; }
}

@media (max-width: 30rem) {
	.blue-pools-site-footer__inner { grid-template-columns: 1fr; }
}

.blue-pools-home { background: #fbfdfd; }
.blue-pools-home__wrap { margin: auto; max-width: 76rem; padding-left: 1.5rem; padding-right: 1.5rem; }
.blue-pools-hero { color: white; overflow: hidden; padding: clamp(6rem, 13vw, 10rem) 0; position: relative; }
.blue-pools-hero__content { margin-left: max(1.5rem, calc((100vw - 76rem) / 2)); margin-right: 1.5rem; max-width: 48rem; padding-left: 0; padding-right: 0; position: relative; text-align: left; }.blue-pools-eyebrow,.blue-pools-kicker { color: var(--wp--preset--color--water); font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }.blue-pools-hero .blue-pools-eyebrow { border: 1px solid #ffffff55; border-radius: 999px; color: #ead6a6; display: inline-block; padding: .45rem .85rem; }.blue-pools-hero h1,.blue-pools-home h2,.blue-pools-home h3 { font-family: Fraunces, Georgia, serif; }.blue-pools-hero h1 { font-size: clamp(3rem, 7vw, 5.5rem); line-height: .98; margin: 1.2rem 0; max-width: 40rem; }.blue-pools-hero__intro { font-size: 1.2rem; line-height: 1.6; max-width: 40rem; }.blue-pools-actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2rem; }.blue-pools-button { background: var(--wp--preset--color--water); border: 1px solid var(--wp--preset--color--water); border-radius: 99rem; color: white; display: inline-block; font-weight: 700; padding: .8rem 1.4rem; text-decoration: none; }.blue-pools-button--outline { background: transparent; border-color: #ffffff77; }.blue-pools-button--light { background: white; border-color: #dce7eb; color: var(--wp--preset--color--ink); }.blue-pools-button--sand { background: #ead6a6; border-color: #ead6a6; color: #102d42; }.blue-pools-checks,.blue-pools-list { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; list-style: none; padding: 0; }.blue-pools-checks li::before,.blue-pools-list li::before { content: '✓'; margin-right: .45rem; color: #ead6a6; }.blue-pools-trust { background: white; border-bottom: 1px solid #dce7eb; }.blue-pools-trust__grid,.blue-pools-value-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(4,1fr); padding-bottom: 2rem; padding-top: 2rem; }.blue-pools-trust p { margin: 0; }.blue-pools-trust strong,.blue-pools-trust span { display: block; }.blue-pools-trust span { color: #5b6d78; font-size: .85rem; }.blue-pools-section { padding: clamp(4rem,8vw,7rem) 0; }.blue-pools-section__intro { margin: auto auto 3rem; max-width: 44rem; text-align: center; }.blue-pools-section__intro h2,.blue-pools-experience h2,.blue-pools-cta h2 { font-size: clamp(2.2rem,4vw,3.6rem); line-height: 1.08; }.blue-pools-section__intro p:not(.blue-pools-kicker) { color: #5b6d78; }.blue-pools-service-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(3,1fr); }.blue-pools-service-card { background:white; border:1px solid #dce7eb; border-radius:1rem; overflow:hidden; transition:box-shadow .2s ease,transform .2s ease; }.blue-pools-service-card:hover,.blue-pools-service-card:focus-within { box-shadow:0 .75rem 1.5rem rgba(16,45,66,.16); transform:translateY(-.3rem); }.blue-pools-service-card img { aspect-ratio: 16/10; display:block; object-fit:cover; width:100%; }.blue-pools-service-card div { padding:1.4rem; }.blue-pools-service-card h3 { font-size:1.45rem; margin:0; }.blue-pools-service-card p { color:#5b6d78; line-height:1.55; }.blue-pools-service-card a { color:var(--wp--preset--color--water); font-weight:700; }.blue-pools-center{text-align:center;margin-top:2.5rem}.blue-pools-why{background:#eef8fb;padding:clamp(4rem,8vw,7rem) 0}.blue-pools-value-grid article{background:white;border:1px solid #dce7eb;border-radius:.8rem;padding:1.5rem}.blue-pools-value-grid h3{font-size:1.3rem}.blue-pools-value-grid p,.blue-pools-experience p{color:#5b6d78;line-height:1.6}.blue-pools-experience{display:grid;gap:clamp(2rem,6vw,5rem);grid-template-columns:1fr 1fr;align-items:center}.blue-pools-experience>img{aspect-ratio:4/3;border-radius:1rem;object-fit:cover;width:100%}.blue-pools-list{display:block}.blue-pools-list li{margin:.7rem 0}.blue-pools-cta{background:var(--wp--preset--color--water);color:white;padding:5rem 0;text-align:center}.blue-pools-cta>div{max-width:48rem}.blue-pools-cta p{margin-left:auto;margin-right:auto;max-width:40rem}@media(max-width:50rem){.blue-pools-trust__grid,.blue-pools-value-grid{grid-template-columns:repeat(2,1fr)}.blue-pools-service-grid,.blue-pools-experience{grid-template-columns:1fr}}@media(max-width:30rem){.blue-pools-trust__grid,.blue-pools-value-grid{grid-template-columns:1fr}}

.blue-pools-hero__image, .blue-pools-hero__overlay { height: 100%; inset: 0; position: absolute; width: 100%; }
.blue-pools-hero__image { object-fit: cover; }
.blue-pools-hero__overlay { background: linear-gradient(90deg, rgba(16,45,66,.94), rgba(16,45,66,.55), rgba(16,45,66,.35)), linear-gradient(0deg, rgba(16,45,66,.85), transparent); }
.blue-pools-utility-bar { background: #102d42; color: white; display: flex; font-size: .78rem; justify-content: space-between; padding: .45rem max(1.25rem, calc((100vw - 76rem) / 2)); }
.blue-pools-utility-bar p { margin: 0; }
.blue-pools-header-actions { align-items: center; display: flex; gap: 1rem; }
.blue-pools-header-actions > a:not(.blue-pools-button) { font-weight: 700; text-decoration: none; }
.blue-pools-trust p { align-items: center; display: flex; gap: .75rem; padding-left: 3.4rem; position: relative; }
.blue-pools-trust p::before { background: #e8f5f9; border-radius: 50%; content: ''; height: 2.7rem; left: 0; position: absolute; top: 50%; transform: translateY(-50%); width: 2.7rem; }
.blue-pools-trust p > img { filter: invert(43%) sepia(49%) saturate(1348%) hue-rotate(153deg) brightness(86%) contrast(94%); height: 1.15rem; left: .78rem; position: absolute; top: calc(50% - .575rem); width: 1.15rem; z-index: 1; }
.blue-pools-value-grid article > img { background: #e8f5f9; border-radius: .7rem; filter: invert(43%) sepia(49%) saturate(1348%) hue-rotate(153deg) brightness(86%) contrast(94%); height: 2.7rem; padding: .65rem; width: 2.7rem; }
.blue-pools-trust p > span { display: block; }
.blue-pools-trust p small { color: #5b6d78; display: block; font-size: .85rem; font-weight: 400; }
.wp-site-blocks > .wp-block-template-part, .wp-site-blocks > main { margin-block-start: 0; }
body { font-size: 1rem; }
.blue-pools-site-header { font-size: .875rem; padding-bottom: .75rem; padding-top: .75rem; }
.blue-pools-hero { padding-bottom: clamp(5rem, 10vw, 8rem); padding-top: clamp(5rem, 10vw, 8rem); }
.blue-pools-hero h1 { font-size: clamp(2.5rem, 5vw, 3.75rem); }
.blue-pools-hero__intro { font-size: 1.125rem; }
.blue-pools-section, .blue-pools-why { padding-bottom: clamp(3rem, 6vw, 6rem); padding-top: clamp(3rem, 6vw, 6rem); }
.blue-pools-section__intro h2, .blue-pools-experience h2, .blue-pools-cta h2 { font-size: clamp(1.875rem, 3vw, 2.25rem); }
.blue-pools-service-card h3 { font-size: 1.25rem; }
.blue-pools-cta { padding-bottom: 4rem; padding-top: 4rem; }
.blue-pools-cta .blue-pools-actions { justify-content: center; }
.blue-pools-value-grid article { position: relative; }
.blue-pools-value-grid article::before { background: #e8f5f9; border-radius: .55rem; content: ''; height: 2.7rem; left: 1.5rem; position: absolute; top: 1.5rem; width: 2.7rem; }
.blue-pools-value-grid article > img { background: none; border-radius: 0; filter: invert(43%) sepia(49%) saturate(1348%) hue-rotate(153deg) brightness(86%) contrast(94%); height: 1.15rem; margin: .775rem; padding: 0; position: relative; width: 1.15rem; z-index: 1; }
.blue-pools-button { transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease; }
.blue-pools-button:hover, .blue-pools-button:focus-visible { background: #159dc4; border-color: #159dc4; color: white; }
.blue-pools-button--outline:hover, .blue-pools-button--outline:focus-visible { background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .55); }
.blue-pools-button--light:hover, .blue-pools-button--light:focus-visible { background: #f0f7f9; border-color: #c5dce4; color: var(--wp--preset--color--ink); }
.blue-pools-button--sand:hover, .blue-pools-button--sand:focus-visible { background: #f1dfb0; border-color: #f1dfb0; color: #102d42; }
.blue-pools-service-page { background: #fbfdfd; }
.blue-pools-service-hero h1 { font-size: clamp(2.25rem, 4.25vw, 3.4rem); max-width: 52rem; }
.blue-pools-service-content aside { background: #eef8fb; }
.blue-pools-service-hero { color: white; min-height: 25rem; overflow: hidden; position: relative; }.blue-pools-service-hero > img { height: 100%; inset: 0; object-fit: cover; position: absolute; width: 100%; }.blue-pools-service-hero::after { background: linear-gradient(90deg, rgba(16,45,66,.92), rgba(16,45,66,.35)); content: ''; inset: 0; position: absolute; }.blue-pools-service-hero > div { margin: auto; max-width: 76rem; padding: 7rem 1.5rem; position: relative; z-index: 1; }.blue-pools-service-hero p { color: #ead6a6; font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }.blue-pools-service-hero h1 { font-family: Fraunces, Georgia, serif; font-size: clamp(2.5rem, 5vw, 3.75rem); line-height: 1; max-width: 44rem; }.blue-pools-service-content { display: grid; gap: 4rem; grid-template-columns: minmax(0, 1fr) 18rem; margin: auto; max-width: 76rem; padding: clamp(3rem, 6vw, 6rem) 1.5rem; }.blue-pools-service-content h2 { font-family: Fraunces, Georgia, serif; font-size: 2rem; margin-top: 2.5rem; }.blue-pools-service-content p { color: #526574; line-height: 1.7; }.blue-pools-service-content .blue-pools-lead { font-size: 1.125rem; }.blue-pools-service-content aside { align-self: start; background: #eef8fb; border: 1px solid #dce7eb; border-radius: 1rem; padding: 1.5rem; position: sticky; top: 1.5rem; }.blue-pools-service-content aside h2 { font-size: 1.3rem; margin-top: 0; }.blue-pools-service-content aside a { border-top: 1px solid #dce7eb; display: block; font-size: .9rem; font-weight: 600; padding: .8rem 0; text-decoration: none; }@media(max-width:50rem){.blue-pools-service-content{grid-template-columns:1fr}.blue-pools-service-content aside{position:static}}

.blue-pools-service-page { background: #fbfdfd; }
.blue-pools-service-hero h1 { font-size: clamp(2.25rem, 4.25vw, 3.4rem); max-width: 52rem; }
.blue-pools-service-content aside { background: #eef8fb; }
.blue-pools-service-callout { background: var(--wp--preset--color--water); border-radius: .7rem; color: white; margin-top: 1.5rem; padding: 1rem; }
.blue-pools-service-callout strong { font-family: Fraunces, Georgia, serif; }
.blue-pools-service-callout p { color: white; font-size: .78rem; line-height: 1.45; }
.blue-pools-service-callout .blue-pools-button { font-size: .75rem; padding: .65rem .8rem; text-align: center; }
.blue-pools-services-hero-copy { color: white !important; font-size: 1.125rem !important; letter-spacing: normal !important; max-width: 42rem; text-transform: none !important; }
.blue-pools-services-page .blue-pools-service-card h2 { font-size: 1.25rem; margin: 0; }
.blue-pools-services-page .blue-pools-section__intro p { font-size: 1.125rem; line-height: 1.7; }
.blue-pools-services-page .blue-pools-value-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.blue-pools-services-page .blue-pools-value-grid article::before { display: none; }
@media (max-width: 50rem) { .blue-pools-services-page .blue-pools-value-grid { grid-template-columns: 1fr; } }
.blue-pools-services-page > .blue-pools-section { background: #fff; padding-bottom: 3rem; }
.blue-pools-services-page > .blue-pools-why { border-top: 1px solid #dce7eb; padding-top: 3rem; }
.blue-pools-mission { background: #102d42; color: white; padding: 4rem 1.5rem; text-align: center; }.blue-pools-mission > div { margin: auto; max-width: 52rem; }.blue-pools-mission p { color: #ead6a6; font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }.blue-pools-mission h2 { font-family: Fraunces, Georgia, serif; font-size: clamp(1.875rem,3vw,2.25rem); line-height: 1.35; }.blue-pools-static-page .blue-pools-experience p { color: #526574; }.blue-pools-area-grid { grid-template-columns: repeat(3,1fr); }@media(max-width:50rem){.blue-pools-area-grid{grid-template-columns:1fr}}
.blue-pools-static-page .blue-pools-value-grid article::before { display: none; }
.blue-pools-static-page .blue-pools-value-grid article { position: relative; }
.blue-pools-static-page .blue-pools-value-grid article::before { background: #e8f5f9; border-radius: .55rem; content: ''; display: block; height: 2.7rem; left: 1.5rem; position: absolute; top: 1.5rem; width: 2.7rem; }
.blue-pools-static-page .blue-pools-value-grid article > img { background: none; border-radius: 0; filter: invert(43%) sepia(49%) saturate(1348%) hue-rotate(153deg) brightness(86%) contrast(94%); height: 1.15rem; margin: .775rem; padding: 0; position: relative; width: 1.15rem; z-index: 1; }
.blue-pools-area-grid article::before { background: #e8f5f9 url('../icons/pin.svg') center / 1.15rem no-repeat; filter: none; }
.blue-pools-area-grid article { padding-top: 4.7rem; }
.blue-pools-area-grid article::after { background: var(--wp--preset--color--water); content: ''; height: 1.15rem; left: 2.275rem; mask: url('../icons/pin.svg') center / contain no-repeat; position: absolute; top: 2.275rem; width: 1.15rem; }
.blue-pools-established-communities { border-top: 1px solid #dce7eb; text-align: center; }
.blue-pools-established-communities ul { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: center; list-style: none; margin: 2rem auto; max-width: 52rem; padding: 0; }
.blue-pools-established-communities li { background: white; border: 1px solid #dce7eb; border-radius: 99rem; padding: .45rem .9rem; }
.blue-pools-static-page > .blue-pools-section { background: #fff; padding-bottom: 3rem; padding-top: 3rem; }
.blue-pools-static-page > .blue-pools-established-communities { padding-bottom: 3rem; padding-top: 3rem; }
.blue-pools-form-page { background: #fbfdfd; min-height: 70vh; padding: clamp(3rem, 7vw, 6rem) 1.5rem; }.blue-pools-form-page > section { margin: auto; max-width: 42rem; text-align: center; }.blue-pools-form-page > section > p:first-child { color: var(--wp--preset--color--water); font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }.blue-pools-form-page h1 { font-family: Fraunces, Georgia, serif; font-size: clamp(2.25rem, 4vw, 3.4rem); }.blue-pools-form-page__form { background: white; border: 1px solid #dce7eb; border-radius: 1rem; margin: 2.5rem auto 0; max-width: 44rem; padding: clamp(1.5rem, 4vw, 3rem); }.blue-pools-form-notice { background: #eef8fb; margin: 0; padding: 1rem; }
.blue-pools-form-page { padding: 0 0 clamp(3rem, 7vw, 6rem); }.blue-pools-form-page > section { background: linear-gradient(90deg, rgba(16,45,66,.94), rgba(16,45,66,.65)), url('../images/hero-pool.png') center / cover; color: white; max-width: none; padding: clamp(4rem, 9vw, 7rem) 1.5rem; }.blue-pools-form-page > section > p:not(:first-child) { margin-left: auto; margin-right: auto; max-width: 38rem; }.blue-pools-form-page > section > p:first-child { color: #ead6a6; }.blue-pools-form-page__form { margin-top: clamp(2rem, 5vw, 4rem); }
.blue-pools-quote-page { background: #fbfdfd; }
.blue-pools-quote-hero { color: white; min-height: 26rem; overflow: hidden; position: relative; }
.blue-pools-quote-hero > img { height: 100%; inset: 0; object-fit: cover; position: absolute; width: 100%; }
.blue-pools-quote-hero::after { background: linear-gradient(90deg, rgba(16,45,66,.94), rgba(16,45,66,.55)); content: ''; inset: 0; position: absolute; }
.blue-pools-quote-hero > div { margin: auto; max-width: 76rem; padding: clamp(5rem, 10vw, 7rem) 1.5rem; position: relative; z-index: 1; }
.blue-pools-quote-hero h1, .blue-pools-quote-content h2 { font-family: Fraunces, Georgia, serif; }
.blue-pools-quote-hero h1 { font-size: clamp(2.5rem, 5vw, 3.75rem); line-height: 1; margin: .8rem 0 1.2rem; max-width: 38rem; }
.blue-pools-quote-hero p:first-child { color: #ead6a6; font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.blue-pools-quote-hero p:last-child { font-size: 1.125rem; line-height: 1.6; max-width: 39rem; }
.blue-pools-quote-content { display: grid; gap: clamp(2rem, 6vw, 5rem); grid-template-columns: minmax(0, 1.6fr) minmax(16rem, 1fr); margin: auto; max-width: 76rem; padding: clamp(3rem, 7vw, 6rem) 1.5rem; }
.blue-pools-quote-form > p { color: #526574; line-height: 1.65; margin: .75rem 0 0; max-width: 42rem; }
.blue-pools-quote-form .blue-pools-form-page__form { margin: 2rem 0 0; max-width: none; }
.blue-pools-quote-sidebar { display: grid; align-content: start; gap: 1.5rem; }
.blue-pools-quote-contact, .blue-pools-quote-reassurance { border: 1px solid #dce7eb; border-radius: 1rem; padding: 1.5rem; }
.blue-pools-quote-contact { background: white; box-shadow: 0 .25rem .6rem rgba(16,45,66,.05); }
.blue-pools-quote-reassurance { background: #eef8fb; }
.blue-pools-quote-contact h2, .blue-pools-quote-reassurance h2 { font-size: 1.25rem; margin: 0; }
.blue-pools-quote-contact ul, .blue-pools-quote-reassurance ul { list-style: none; margin: 1.5rem 0 0; padding: 0; }
.blue-pools-quote-contact li { color: #102d42; display: grid; grid-template-columns: 1.25rem 1fr; line-height: 1.4; }
.blue-pools-quote-contact li + li { margin-top: 1rem; }
.blue-pools-quote-contact li > span { background: var(--wp--preset--color--water); grid-row: span 2; height: 1.1rem; margin-top: .15rem; mask: url('../icons/phone.svg') center / contain no-repeat; width: 1.1rem; }
.blue-pools-quote-contact__email > span { mask-image: url('../icons/mail.svg'); }
.blue-pools-quote-contact__hours > span { mask-image: url('../icons/clock.svg'); }
.blue-pools-quote-contact__area > span { mask-image: url('../icons/pin.svg'); }
.blue-pools-quote-contact small { color: #526574; font-size: .875rem; }
.blue-pools-quote-contact a, .blue-pools-quote-contact strong { font-size: .9rem; font-weight: 700; text-decoration: none; }
.blue-pools-quote-contact a:hover { color: var(--wp--preset--color--water); text-decoration: underline; }
.blue-pools-quote-reassurance h2 { align-items: center; display: flex; gap: .5rem; }
.blue-pools-quote-reassurance h2 span { background: var(--wp--preset--color--water); height: 1.1rem; mask: url('../icons/shield.svg') center / contain no-repeat; width: 1.1rem; }
.blue-pools-quote-reassurance li { color: #102d42; font-size: .9rem; line-height: 1.45; padding-left: 1rem; position: relative; }
.blue-pools-quote-reassurance li + li { margin-top: .6rem; }
.blue-pools-quote-reassurance li::before { background: var(--wp--preset--color--water); border-radius: 50%; content: ''; height: .35rem; left: 0; position: absolute; top: .45rem; width: .35rem; }
@media (max-width: 50rem) { .blue-pools-quote-content { grid-template-columns: 1fr; } }
