/* ==========================================================================
   High Tide Pools & Spas (cincyhightide.com) — Recovered Webflow Style System
   ========================================================================== */

:root {
  /* --- Color variables (real hex, pulled from Webflow's Base variable collection) --- */
  --swatch-ce59c7fa: #48b1db; /* "Primary" — links (a), button bg, borders/accents, icons */
  --swatch-21efe7d1: black; /* "Black" — heading / dark UI text, h1-h6, li, blockquote, button text */
  --swatch-d071c41d: white; /* "White" — card backgrounds, white text on dark */
  --swatch-85ad8a33: #141a29; /* "Secondary" — dark/navy background, .background-dark, preloader */
  --swatch-1890c01d: #d7d7d8; /* "Light Gray" — .color-light-gray, descriptions, footer text */
  --swatch-00593cf3: #5f5f5f; /* "Dark Grey" — body copy text, p tag, "grey text" utility */
  --swatch-f03d7d69: #f1f3f5; /* "White Smoke" — .background-smoke, booking card bg */
  --swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4: #0067b4; /* "Dark Blue" — CTA wrapper bg, "Color Heading", finance/count numerals */

  /* --- Image variables (real CDN URLs, pulled from Webflow's Asset Manager) --- */
  --img-69496bed74bbf3b99e189e23: url("/wf-img/692525a484535d51ca603112/69496bed74bbf3b99e189e23_pool-color-sandstone-shimmer.jpg");
  --img-69496bed74bbf3b99e189e22: url("/wf-img/692525a484535d51ca603112/69496bed74bbf3b99e189e22_pool-color-california.webp");
  --img-69496bed74bbf3b99e189e21: url("/wf-img/692525a484535d51ca603112/69496bed74bbf3b99e189e21_pool-color-maya.webp");
  --img-69496bed74bbf3b99e189e25: url("/wf-img/692525a484535d51ca603112/69496bed74bbf3b99e189e25_pool-color-caribbean-sparkle.webp");
  --img-69496bed74bbf3b99e189e20: url("/wf-img/692525a484535d51ca603112/69496bed74bbf3b99e189e20_pool-color-arctic-shimmer.webp");
  --img-69496bed74bbf3b99e189e1f: url("/wf-img/692525a484535d51ca603112/69496bed74bbf3b99e189e1f_pool-color-granite-gray.webp");
  --img-6925de103d50267feb72d301: url("/wf-img/692525a484535d51ca603112/6925de103d50267feb72d301_HorzHighTidePool.jpg");
  --img-69252a5045a1ef40b24e107b: url("/wf-img/692525a484535d51ca603112/69252a5045a1ef40b24e107b_HeroBack.jpg");
  --img-692525a684535d51ca603244: url("/wf-img/692525a484535d51ca603112/692525a684535d51ca603244_man-working-on-tools.jpeg");
  --img-692525a684535d51ca603243: url("/wf-img/692525a484535d51ca603112/692525a684535d51ca603243_aerial-view-photography-of-building-Flip.jpeg");
  --img-692525a684535d51ca603225: url("/wf-img/692525a484535d51ca603112/692525a684535d51ca603225_empty-pathway.jpeg");
  --img-692525a684535d51ca603224: url("/wf-img/692525a484535d51ca603112/692525a684535d51ca603224_yellow-and-black-heavy-equipment-on-field-during-daytime.jpeg");
  /* Unresolved legacy Webflow asset IDs — mapped to reasonable real content images so nothing renders blank */
  --img-692525a684535d51ca603213: url("/wf-img/692525a684535d51ca60319d/6925dc381fe3d9fca488e202_aboveAnglePool.jpg");
  --img-692525a684535d51ca603214: url("/wf-img/692525a684535d51ca60319d/6925dc8aa9b3887d566a3e1e_curvedPool.jpg");
  --img-692525a684535d51ca6031b3: url("/wf-img/692525a684535d51ca60319d/6925dce5a5fa8301bbe7e4c1_pexels-anderson-wei-2151965849-34861784.jpg");
  --img-692525a684535d51ca60320d: url("/wf-img/692525a684535d51ca60319d/6925dce5a5fa8301bbe7e4c1_pexels-anderson-wei-2151965849-34861784.jpg");
  --img-692525a684535d51ca6031c1: url("/wf-img/692525a684535d51ca60319d/6925dc381fe3d9fca488e202_aboveAnglePool.jpg");
  --img-692525a684535d51ca6031b2: url("/wf-img/692525a684535d51ca60319d/693e3b0c199f36e194443bcd_1152%201.jpg");
  --img-example-bg: url("/wf-img/692525a684535d51ca60319d/6925dc381fe3d9fca488e202_aboveAnglePool.jpg");
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
img { max-width: 100%; display: inline-block; vertical-align: middle; border: 0; }

/* Preloader Right */
.preloader-right { position: absolute; left: 0%; top: 0%; right: auto; bottom: 0%; width: 50%; min-height: 100vh; background-color: var(--swatch-85ad8a33); }
.testimonial-slider { height: auto; background-color: transparent; }
.text-block { color: var(--swatch-85ad8a33); }
.projects-hero-large-overlay.darken { background-image: linear-gradient(to bottom, rgba(40, 165, 255, 0.2),rgba(40, 165, 255, 0.2)); }
.collection-list { display: grid; grid-auto-columns: 1fr; grid-column-gap: 20px; grid-row-gap: 0px; grid-template-columns: 1fr 1fr 1fr 1fr; grid-template-rows: auto auto; }
.river-pools-colors-2.sandstone { background-image: var(--img-69496bed74bbf3b99e189e23); background-position: 50% 50%; background-size: cover; }
.services-image { width: 100%; max-height: 230px; min-height: 230px; background-image: var(--img-example-bg); background-position: 0px 0px; background-size: cover; background-repeat: no-repeat; object-fit: cover; }
.container-full.background-features { max-width: 1440px; }
.services-card-link { position: relative; display: flex; width: 100%; flex-direction: column; background-color: var(--swatch-d071c41d); transition-property: none; }
.color-heading { color: var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); font-size: 48px; text-align: center; }
.works-flex { display: flex; width: 90%; margin-right: auto; margin-left: auto; justify-content: space-around; flex-wrap: wrap; grid-column-gap: 5px; }
.hero-half-wrapper { display: flex; width: 100%; max-height: 415px; min-height: 415px; margin-right: auto; margin-left: auto; align-items: center; background-position: center; background-size: cover; }
.services-hero-large-overlay { position: absolute; inset: 0; overflow: hidden; width: 100%; max-height: 480px; max-width: 100%; min-height: 480px; background-image: linear-gradient(to bottom, hsla(43.26, 100%, 57.84%, 0.10),hsla(43.26, 100%, 57.84%, 0.10)); opacity: 0.8; }
.projects-content-on-hover { position: absolute; inset: 0; z-index: 3; display: flex; width: 100%; padding: 0 45px; flex-direction: column; justify-content: center; align-items: center; grid-row-gap: 15px; background-color: var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); }
.line-bottom { position: absolute; left: 0%; bottom: -15px; max-height: 1px; max-width: 290px; min-height: 1px; min-width: 290px; background-color: hsla(224.44, 0%, 0%, 0.10); }
.count-flex-block { justify-content: space-between; align-items: center; grid-column-gap: 15px; }
.utility-hero-half-content { display: flex; width: 100%; max-width: 1440px; margin-right: auto; margin-left: auto; flex-direction: column; justify-content: center; align-items: center; }
.footer-wrapper-half-big { position: relative; display: flex; width: 100%; max-width: 58.33%; min-height: 1px; flex-direction: column; align-items: flex-start; }
.numbers-row-count { display: flex; overflow: hidden; width: 100%; margin-right: auto; margin-left: auto; justify-content: center; align-items: center; flex-wrap: wrap; }
.section.low-move-down { margin-top: 100px; }
.faq-title-wrapper { display: flex; width: 60%; margin-right: auto; margin-left: auto; flex-direction: column; align-items: center; text-align: center; }
.river-pools-colors-2.california { background-image: var(--img-69496bed74bbf3b99e189e22); background-position: 50% 50%; background-size: cover; }
.sg-colour-wrapper { display: flex; width: 100%; padding: 16px; flex-direction: column; align-items: center; border-radius: 5px; }
.services-hero-content { display: flex; width: 100%; justify-content: space-between; align-items: center; grid-column-gap: 40px; grid-row-gap: 40px; flex-wrap: wrap; }
.utility-page-form { display: flex; flex-direction: column; align-items: center; }
.circle-subheading { line-height: 0.9; }
.team-title-wrapper { width: 60%; min-height: 1px; margin-right: auto; margin-left: auto; padding: 0 15px; }
.projects-single-page-wrapper { max-width: 1440px; padding: 0 120px; }
.utilities-gallery-row { display: flex; justify-content: flex-start; flex-wrap: wrap; }
.card-shadow { position: absolute; left: 10%; right: 0%; bottom: 0%; z-index: -1; width: 80%; height: 25%; background-color: hsla(43.26, 84.43%, 10.48%, 1); opacity: 0.5; filter: blur(15px); }
.projects-main-image { max-height: 570px; min-height: 570px; min-width: 900px; max-width: 100%; cursor: pointer; object-fit: cover; object-position: 50% 100%; border-radius: 5px; }
.footer-legal-text { color: hsla(0, 0%, 14.51%, 1); font-size: 15px; white-space: nowrap; }
.footer-block-content { display: flex; width: 40%; flex-direction: column; }
.team-card { position: relative; display: flex; width: 100%; max-height: 320px; min-height: 320px; flex-direction: column; align-items: center; background-color: var(--swatch-d071c41d); cursor: default; }
.preloader-left { position: absolute; top: 0%; right: 0%; bottom: 0%; display: block; width: 50%; min-height: 100vh; background-color: var(--swatch-85ad8a33); }
.centered { text-align: center; list-style-type: none; }
.testimonial-wrapper { width: 90%; margin-right: auto; margin-left: auto; }
.error-massage { width: 60%; margin-right: auto; margin-left: auto; padding: 0 15px; text-align: center; }
sup { color: var(--swatch-ce59c7fa); font-size: 10px; }
.hero-half-wrapper.utility-hero-image { background-image: linear-gradient(to bottom, hsla(232.34, 62.67%, 44.12%, 0.10),hsla(232.34, 62.67%, 44.12%, 0.10)), linear-gradient(to bottom, hsla(224.44, 42.86%, 12.35%, 0.60),hsla(224.44, 42.86%, 12.35%, 0.60)), var(--img-692525a684535d51ca603225); background-size: cover; background-position: center; }
.sg-logo-wrapper { position: relative; display: flex; flex-direction: column; justify-content: flex-start; align-items: center; }
.button-wrapper { display: inline-block; }
.hero-large-wrapper { position: relative; display: flex; overflow: hidden; width: 100%; max-height: 480px; min-height: 480px; margin-right: auto; margin-left: auto; align-items: center; }
.projects-hero-large-content { position: absolute; left: 0%; top: 300px; right: 0%; bottom: 0%; z-index: 3; display: flex; max-height: 220px; max-width: 700px; min-height: 220px; margin-right: auto; margin-left: auto; flex-direction: row; justify-content: center; align-items: center; background-color: var(--swatch-85ad8a33); }
.nav-tab-law { display: flex; padding: 0 15px; justify-content: center; flex-wrap: wrap; align-items: center; }
.button-text { margin-top: 0px; font-family: "Work Sans", sans-serif; color: var(--swatch-d071c41d); font-size: 15px; font-weight: 500; text-align: center; }
.button.border { padding: 17px 0; border: 3px solid var(--swatch-d071c41d); background-color: transparent; }
.footer-social-link { width: 1.2em; }
.footer-divider { width: 90%; height: 1px; margin: 40px auto; background-color: hsla(49.69, 100%, 55.49%, 0.30); }
.testimonial-card { position: relative; display: flex; width: 100%; max-height: 300px; min-height: 300px; padding: 60px; flex-direction: row; justify-content: space-around; align-items: center; border-left: 5px solid var(--swatch-ce59c7fa); background-color: var(--swatch-d071c41d); }
.utilities-row { display: flex; width: 89%; margin-right: auto; margin-left: auto; flex-wrap: wrap; }
.faq-dropdown-accordion { min-width: 100%; background-color: var(--swatch-d071c41d); }
.blog-side-bar-left { margin-top: 90px; padding: 0 60px; background-color: var(--swatch-d071c41d); }
.container-full.max-width-1440px.btm-margin { margin-bottom: 120px; }
.hero-half-badge-right { color: var(--swatch-d071c41d); font-size: 50px; font-weight: 300; }
.sg-colour-swatch { width: 100%; margin-bottom: 16px; padding-top: 100%; border-radius: 50%; }
ul { margin: 0; padding-left: 40px; }
.image-overlay { position: absolute; z-index: 3; min-height: 100%; min-width: 100%; }
.space-blog { display: flex; min-height: 75px; }
.footer-bottom-link { color: var(--swatch-21efe7d1); }
.gallery-list-wrapper { overflow: hidden; display: flex; flex-direction: row; flex-wrap: wrap; grid-column-gap: 21px; grid-row-gap: 21px; }
strong { font-weight: 700; }
.contact-info-wrapper { position: sticky; top: 30px; display: flex; width: 30%; margin-right: auto; margin-left: auto; flex-direction: column; justify-content: center; grid-row-gap: 30px; }
.footer-wrapper-half-big.self-align-right { align-items: flex-end; }
.about-us-image-wrapper { position: relative; display: flex; width: 45%; max-height: 360px; max-width: 500px; min-height: 360px; margin-right: auto; margin-left: auto; background-image: linear-gradient(to bottom, hsla(205, 100%, 57.84%, 0.10),hsla(205, 100%, 57.84%, 0.10)), var(--img-692525a684535d51ca603213); background-size: auto, cover; background-position: center; border-radius: 6px; overflow: hidden; }
.services-side-bar-right { margin-right: 40px; padding-right: 40px; border-right: 1px solid hsla(0, 0%, 0%, 0.10); }
.testimonial-client-info-wrapper { display: flex; flex-wrap: nowrap; align-items: center; grid-column-gap: 30px; }
.dropdown-description-wrapper { overflow: hidden; }
.utilities-h1 { color: var(--swatch-d071c41d); }
.projects-single-title { display: flex; min-height: 100%; min-width: 70%; padding: 0 60px; flex-direction: column; justify-content: center; align-items: flex-start; background-color: var(--swatch-85ad8a33); }
.style-guide-line { max-height: 1px; min-height: 1px; min-width: 100%; margin: 30px 0; background-color: hsla(28.57, 16.54%, 24.90%, 0.10); }
.hero-half-subheading.services-subheading { width: 124px; border-left-color: var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); }
._404-title { color: var(--swatch-d071c41d); font-size: 7rem; text-align: center; }
.plan-pool-header { color: var(--swatch-21efe7d1); font-size: 1.4rem; font-weight: 600; }
.projects-main-image-wrapper { position: relative; overflow: hidden; max-width: 900px; min-height: 570px; min-width: 900px; margin: 0 auto 15px; }
.sg-colour-swatch.primary { background-color: var(--swatch-ce59c7fa); color: var(--swatch-ce59c7fa); }
.projects-title-wrapper { display: flex; width: 90%; margin-right: auto; margin-left: auto; flex-direction: column; justify-content: center; align-items: flex-start; }
.image-wrapper { position: relative; display: flex; overflow: hidden; width: 100%; max-height: 300px; min-height: 300px; flex-direction: column; border-radius: 5px; background-color: rgba(0, 0, 0, 0.4); object-fit: cover; }
.services-main-card-body { z-index: 2; display: flex; width: 100%; margin-right: auto; margin-left: auto; padding: 15px 30px 30px; flex-direction: column; justify-content: center; align-items: center; flex: 1; border: 1px solid hsla(0, 0%, 0%, 0.10); border-top: none; }
.semi-bold { font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 17px; font-weight: 600; }
.footer-legal-text-wrapper { display: flex; width: 100%; justify-content: flex-end; grid-column-gap: 60px; }
.description-max-width { max-width: 580px; margin-right: auto; margin-left: auto; text-align: center; }
p { margin-top: 7.5px; margin-bottom: 0px; font-family: "Open Sans", sans-serif; color: var(--swatch-00593cf3); font-size: 17px; font-weight: 400; text-align: left; letter-spacing: 0.6px; }
.testimonial-title-wrapper { width: 90%; margin-right: auto; margin-left: auto; text-align: left; }
.dropdown-description { width: 70%; max-width: 70%; margin-right: auto; margin-left: auto; text-align: center; }
.utilities-wrapper { width: 100%; max-width: 1440px; margin-right: auto; margin-left: auto; padding: 0 120px; text-align: center; }
._404-row { display: flex; max-width: 600px; justify-content: center; flex-wrap: wrap; margin: 0 auto; }
.hero-half-wrapper.services-hero-image { background-image: linear-gradient(to bottom, hsla(232.34, 62.67%, 44.12%, 0.10),hsla(232.34, 62.67%, 44.12%, 0.10)), linear-gradient(to bottom, hsla(224.44, 42.86%, 12.35%, 0.60),hsla(224.44, 42.86%, 12.35%, 0.60)), var(--img-692525a684535d51ca603244); background-size: cover; background-position: center; }
.sg-outer-wrapper { width: 100%; max-width: 1440px; margin-right: auto; margin-left: auto; justify-content: space-between; align-items: flex-start; }
.favicon { width: 32px; height: 32px; }
.blog-card-link { position: relative; display: flex; width: 100%; flex-direction: column; background-color: var(--swatch-d071c41d); }
.container-full-no-overflow { max-width: 100%; }
.about-us-icon-circle-wrapper { display: flex; max-height: 80px; max-width: 80px; min-height: 80px; min-width: 80px; margin: -40px auto 15px; justify-content: center; align-items: center; border-radius: 100%; background-color: var(--swatch-21efe7d1); }
.hero-description { max-width: 800px; margin-top: 0px; color: var(--swatch-1890c01d); font-size: 23px; font-weight: 300; text-align: left; }
.hero-half-wrapper.projects-hero-image { position: relative; background-image: linear-gradient(to bottom, hsla(43.26, 100%, 57.84%, 0.10),hsla(43.26, 100%, 57.84%, 0.10)), linear-gradient(to bottom, hsla(222.86, 34.43%, 11.96%, 0.60),hsla(222.86, 34.43%, 11.96%, 0.60)), var(--img-692525a684535d51ca603243); background-size: cover; background-position: center; }
.mg-top-extra-large { display: flex; margin-top: 48px; flex-direction: column; justify-content: center; align-items: flex-start; }
.faq-numbers-back { position: absolute; z-index: 0; margin-left: -20px; color: var(--swatch-f03d7d69); font-size: 90px; font-weight: 900; }
.liner-image { aspect-ratio: 3/2; border-radius: 10px; object-fit: cover; width: 100%; }
.message-title-field-wrapper { display: flex; padding: 10px 15px 0; flex-direction: column; align-items: flex-start; }
.booking-form-block { width: 100%; margin-bottom: 0px; }
.contact-us-wrapper-half { position: relative; width: 100%; max-width: 50%; min-height: 1px; padding: 0 15px; }
.about-us-icon-wrapper { display: flex; max-height: 80px; max-width: 80px; min-height: 80px; min-width: 80px; margin: -40px auto 15px; justify-content: center; align-items: center; background-color: var(--swatch-ce59c7fa); border-radius: 100%; }
.about-us-image-big { width: 100%; object-fit: cover; border-radius: 6px; }
.nav-menu-link-home { margin: 0 5px; padding: 5px 10px; color: hsla(60, 0%, 100%, 1); font-size: 13px; line-height: 20px; font-weight: 400; text-decoration: none; text-transform: uppercase; }
.space-mid { min-height: 60px; }
.river-pools-colors { display: flex; width: 100%; height: 220px; flex-direction: column; justify-content: center; align-items: center; border: 2px solid var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); border-radius: 20px; background-color: transparent; }
.max-width-1440px { overflow: hidden; width: 100%; max-width: 1440px; margin-right: auto; margin-left: auto; }
.call-to-action-description { max-width: 450px; }
.hero-half-badge-card { position: absolute; right: 14%; bottom: -12%; display: flex; padding: 15px 30px; justify-content: center; align-items: center; background-color: var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); font-family: "Changa One", sans-serif; color: hsla(60, 10%, 96.08%, 1); font-size: 0.9rem; font-weight: 400; text-align: center; text-transform: uppercase; white-space: nowrap; border-radius: 4px; }
.text-area { min-height: 15vh; margin-bottom: 20px; padding: 0 15px; border-radius: 5px; background-color: hsla(210, 16.67%, 95.29%, 1); width: 100%; }
.error { max-width: 500px; margin-right: auto; margin-left: auto; border-radius: 16px; text-align: center; }
.numbers-card-body { position: relative; z-index: 2; display: flex; margin-right: auto; margin-left: auto; flex-direction: column; justify-content: center; align-items: center; flex: 1; }
.success-text { color: var(--swatch-d071c41d); font-size: 16px; }
.success-message { margin-right: auto; margin-left: auto; padding: 15px 30px; border-radius: 1rem; background-color: var(--swatch-ce59c7fa); text-align: center; }
.contact-us-form { display: flex; width: 90%; margin-right: auto; margin-left: auto; flex-direction: column; align-items: flex-start; grid-row-gap: 15px; }
.hero-half-content { width: 100%; max-width: 1440px; margin-right: auto; margin-left: auto; padding-left: 90px; }
.projects-text-link { color: var(--swatch-21efe7d1); font-size: 16px; }
.space-large.minus-15px { min-height: 105px; }
.text-field-name { margin-bottom: 0px; padding: 0.4375rem 0; border-bottom: 1px solid transparent; background-color: transparent; color: hsla(28, 28.21%, 19.24%, 1); width: 100%; }
.finance-title { margin-bottom: 60px; color: var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); font-size: 28px; }
.features-construction-stack { display: flex; width: 80%; margin-right: auto; margin-left: auto; justify-content: center; grid-column-gap: 60px; flex-wrap: wrap; }
.paragraph-max-width.not-centered { margin-right: 0px; margin-left: 0px; }
.bold { font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 17px; font-weight: 700; }
.hero-half-wrapper.about-hero-image { position: relative; max-height: 450px; min-height: 450px; padding-top: 40px; background-image: linear-gradient(to bottom, hsla(43.26, 100%, 57.84%, 0.10),hsla(43.26, 100%, 57.84%, 0.10)), linear-gradient(to bottom, hsla(222.86, 34.43%, 11.96%, 0.60),hsla(222.86, 34.43%, 11.96%, 0.60)), var(--img-6925de103d50267feb72d301); background-size: cover; background-position: center; }
.footer-social-link-wrapper { display: flex; width: 10em; justify-content: space-between; align-items: center; }
.blog-catagory { display: flex; margin-bottom: 15px; padding: 4px 15px 4px 21px; justify-content: center; background-color: var(--swatch-ce59c7fa); border-radius: 3px; color: white; font-size: 12px; text-transform: uppercase; }
.features-bar-graph-wrapper { position: relative; overflow: hidden; width: 100%; margin-right: auto; margin-left: auto; }
figcaption { margin: 10px 0; line-height: 1.5em; font-weight: 300; text-align: center; }
.hero-half-subheading.about-us-subheading { width: 78px; border-left-color: var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); }
.works-content-wrapper { position: relative; display: flex; max-width: 330px; min-width: 330px; align-items: center; grid-column-gap: 30px; }
.space-large.minus-30px { min-height: 105px; }
.hero-half-wrapper.contact-hero-image { position: relative; background-image: linear-gradient(to bottom, hsla(43.26, 100%, 57.84%, 0.10),hsla(43.26, 100%, 57.84%, 0.10)), linear-gradient(to bottom, hsla(222.86, 34.43%, 11.96%, 0.60),hsla(222.86, 34.43%, 11.96%, 0.60)), var(--img-692525a684535d51ca60320d); background-size: cover; background-position: center; }
body { display: flex; flex-direction: column; font-family: "Open Sans", sans-serif; color: var(--swatch-00593cf3); font-size: 16px; line-height: 1.5; margin: 0; }
.logo-lb { max-width: 100%; }
.numbers-description { color: var(--swatch-1890c01d); font-size: 13px; line-height: 1.8; }
.river-pools-colors.diamond { background-image: var(--img-69496bed74bbf3b99e189e1f); background-position: 0px 0px; background-size: cover; }
.heading.dark-text { color: var(--swatch-85ad8a33); }
.testimonial-name { color: var(--swatch-d071c41d); line-height: 1.5; }
.team-image-wrapper { position: relative; display: flex; overflow: hidden; width: 100%; max-height: 320px; min-height: 320px; justify-content: center; align-items: flex-start; background-color: hsla(43.26, 0%, 96%, 1); }
.tail-percentage-box { width: 10px; height: 13px; margin-bottom: -5px; background-color: var(--swatch-85ad8a33); }
.services-hero-title { display: flex; width: 100%; max-width: 1440px; min-height: 360px; margin-right: auto; margin-left: auto; padding: 100px 120px 0; flex-direction: column; justify-content: center; align-items: flex-start; }
.base-bar { overflow: hidden; max-width: 600px; min-width: 100%; background-color: hsla(240, 1.27%, 84.51%, 0.40); }
.btm-margin { margin-bottom: 120px; }
.services-wrapper { max-width: 1440px; padding: 0 120px; }
.call-to-action-image { width: 90%; max-height: 700px; max-width: 90%; min-height: 700px; margin-right: auto; background-image: linear-gradient(to bottom, rgba(0,0,0,0.50),rgba(0,0,0,0.50)), var(--img-6925de103d50267feb72d301); background-size: cover; background-position: center; border-radius: 6px; }
.circle-mask.right { border-top-right-radius: 150px; border-bottom-right-radius: 150px; }
.projects-grid { display: grid; width: 90%; min-width: 90%; margin-right: auto; margin-left: auto; grid-column-gap: 15px; grid-row-gap: 15px; grid-template-columns: repeat(3, 1fr); }
.gallery-one { padding: 0; text-align: center; }
.blod-card-author { border-radius: 10px; }
.contact-us-title-wrapper { display: flex; width: 100%; flex-direction: column; align-items: center; }
.booking-form { display: flex; overflow: hidden; width: 100%; flex-direction: column; justify-content: center; align-items: flex-start; grid-row-gap: 15px; }
.footer-title-text { color: var(--swatch-d071c41d); font-size: 16px; line-height: 2; font-weight: 500; }
.footer-grid-wrapper { display: grid; width: 50%; grid-column-gap: 16px; grid-row-gap: 16px; grid-template-columns: repeat(3, 1fr); }
.footer-social-link-wrapper.invert { width: 7em; margin-top: 7.5px; }
.bar-percentage-box { position: absolute; top: -14px; z-index: 1; display: flex; width: 60px; height: 40px; margin-bottom: 15px; flex-direction: column; justify-content: flex-end; align-items: center; border-radius: 6px; background-color: var(--swatch-85ad8a33); }
.projects-page-grid { width: 100%; align-items: start; grid-template-columns: 1fr; }
.projects-main-grid { display: grid; width: 90%; min-width: 90%; margin-right: auto; margin-left: auto; grid-column-gap: 15px; grid-row-gap: 15px; grid-template-columns: repeat(2, 1fr); }
.river-pools-colors.california { background-image: var(--img-69496bed74bbf3b99e189e22); background-position: 50% 50%; background-size: cover; }
.team-row-card { display: flex; justify-content: center; flex-wrap: nowrap; grid-column-gap: 60px; }
.gallery-grid-list { display: grid; justify-content: center; justify-items: center; align-items: center; grid-template-columns: repeat(3, 1fr); }
.footer-logo-link { padding-top: 3%; display: inline-block; }
.count-h2 { color: var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); font-size: 72px; font-weight: 700; margin: 0; }
.projects-cell-wrapper { max-height: 240px; max-width: 100%; min-height: 240px; min-width: 100%; justify-content: center; }
.features-image { position: relative; display: flex; width: 100%; max-height: 360px; max-width: 600px; min-height: 360px; margin-right: auto; margin-left: auto; object-fit: cover; border-radius: 6px; overflow: hidden; }
.testimonial-container { max-width: 100%; }
.projects-wrapper { position: relative; display: flex; width: 100%; height: 240px; justify-content: center; align-items: center; }
.about-us-content-wrapper { position: relative; overflow: hidden; width: 55%; margin-right: auto; margin-left: auto; }
.projects-details { color: var(--swatch-21efe7d1); font-size: 16px; line-height: 0.9; }
.sg-right-bottom-wrapper { position: relative; display: flex; width: auto; min-height: 100vh; margin-left: 300px; flex-direction: column; }
.text { margin: 10px 0; font-family: "Work Sans", sans-serif; color: hsla(28, 28.21%, 19.24%, 1); font-size: 14px; line-height: 1.313rem; font-weight: 300; }
.about-us-flex-wrapper { position: relative; display: flex; width: 50%; align-items: flex-start; grid-column-gap: 15px; }
.nav-bar-menu-wrapper { display: flex; margin-top: 20px; justify-content: space-between; align-items: center; }
.river-pools-colors.maya { background-image: var(--img-69496bed74bbf3b99e189e21); background-position: 50% 50%; background-size: cover; }
.hero-half-subheading.contact-subheading { width: 143px; }
.space-text { min-height: 15px; }
.blog-title { margin-left: 0px; line-height: 1.1; text-align: center; }
.footer-block { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; }
.blog-grid-list { display: grid; grid-column-gap: 45px; grid-row-gap: 30px; grid-template-columns: repeat(3, 1fr); }
.team-row { display: flex; justify-content: center; flex-wrap: wrap; grid-column-gap: 30px; grid-row-gap: 30px; }
.image { width: 100%; height: auto; object-fit: cover; }
.return-to-top-lb { position: fixed; right: 16px; bottom: 16px; z-index: 100; display: flex; width: 48px; height: 48px; justify-content: center; align-items: center; border-radius: 50%; background-color: var(--swatch-ce59c7fa); box-shadow: 6px 6px 16px 0 hsla(0, 0%, 20%, 0.15); color: hsla(0, 0%, 93.33%, 1); }
.nav-social-link { width: 15px; }
.blog-side-bar-right { position: sticky; top: -30px; padding-right: 120px; }
.hero-half-badge-left { margin-right: 5px; font-size: 64px; font-weight: 600; }
.text.centered { text-align: center; }
.nav-dropdown-link { color: var(--swatch-d071c41d); display: block; padding: 8px 16px; }
.hero-icon { max-height: 16px; align-self: center; transform: rotate(-135deg); }
.paragraph-max-width { max-width: 700px; margin-right: auto; margin-left: auto; text-align: center; }
.projects-image-overlay { position: absolute; inset: 0; z-index: 1; min-height: 100%; min-width: 100%; background-image: linear-gradient(to bottom, hsla(43.26, 100%, 57.84%, 0.10),hsla(43.26, 100%, 57.84%, 0.10)); }
.inquire-title-wrapper { width: 80%; min-height: 1px; margin-right: auto; margin-left: auto; padding: 0 15px; }
.contact-us-block-wrapper { display: flex; overflow: hidden; width: 100%; flex-direction: column; }
.services-main-image-wrapper { position: relative; overflow: hidden; width: 100%; max-height: 500px; min-height: 500px; background-position: 50% 50%; background-size: cover; border-radius: 6px; }
.testimonial-icon { font-family: "Roboto Slab", serif; color: var(--swatch-1890c01d); font-size: 25px; font-weight: 900; }
.services-list-wrapper { width: 80%; margin-right: auto; margin-left: auto; }
.contact-us-wrapper { display: flex; max-width: 90%; margin-right: auto; margin-left: auto; grid-column-gap: 30px; flex-wrap: wrap; }
.blog-single-image { display: flex; width: 100%; max-height: 480px; min-height: 480px; margin-right: auto; margin-left: auto; align-items: center; background-position: 50% 50%; background-size: cover; }
.services-h5 { color: var(--swatch-ce59c7fa); }
.numbers-wrapper { width: 90%; margin-right: auto; margin-left: auto; }
.gallery-item { overflow: hidden; width: 100%; height: 100%; }
.contact-us-form-wrapper { width: 70%; margin-right: auto; margin-left: auto; padding: 0 60px; background-color: hsla(0, 0%, 100%, 1); }
.dropdown-toggle { min-width: 100%; margin-top: 15px; padding: 0 60px; justify-content: space-between; align-items: center; cursor: pointer; }
.about-us-wrapper { display: flex; width: 90%; margin-right: auto; margin-left: auto; grid-column-gap: 30px; flex-wrap: wrap; }
.color-heading-2 { font-size: 48px; }
.blog-card-image-wrapper { overflow: hidden; width: 130px; max-height: 130px; max-width: 130px; margin: 0 auto; border-radius: 50%; background-color: var(--swatch-d071c41d); }
.blog-hero-large-overlay { overflow: hidden; width: 100%; max-height: 480px; max-width: 100%; min-height: 480px; background-image: linear-gradient(to bottom, hsla(43.26, 100%, 57.84%, 0.10),hsla(43.26, 100%, 57.84%, 0.10)); opacity: 0.8; }
.brand-logo-image { display: inline-block; }
.hero-half-badge-card.style-guide { position: static; }
.description-max-width.add-width { max-width: 600px; }
.color-light-gray { color: var(--swatch-1890c01d); }
.sg-colour-label-wrapper { display: flex; flex-direction: column; align-items: center; }
.heading-2 { color: var(--swatch-1890c01d); }
.sg-colour-swatch.black { background-color: var(--swatch-21efe7d1); }
.blog-hero-image { position: relative; display: flex; width: 100%; margin-right: auto; margin-left: auto; align-items: center; background-position: 50% 50%; background-size: cover; }
.light { font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 17px; font-weight: 300; }
.hero-title { color: var(--swatch-d071c41d); font-size: 64px; text-align: left; margin: 0; }
.container.max-width-1440px { overflow: hidden; width: 90%; margin: 0 auto; }
.faq-wrapper { width: 90%; margin-right: auto; margin-left: auto; padding: 0 15px; text-align: center; }
.call-to-action-wrapper { position: absolute; top: 15%; right: 5%; bottom: 0%; display: flex; max-height: 500px; max-width: 40%; min-height: 500px; padding: 0 60px; flex-direction: column; justify-content: center; align-items: flex-start; background-color: var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); }
.hero-half-subheading.projects-subheading { width: 94px; }
.blog-title-wrapper { display: flex; width: 100%; flex-direction: column; justify-content: center; align-items: center; }
.button-text.color-white { color: var(--swatch-d071c41d); }
.works-wrapper { display: flex; width: 100%; max-height: 300px; min-height: 300px; margin-right: auto; margin-left: auto; align-items: center; background-color: var(--swatch-85ad8a33); }
h1 { margin: 0 0 0 -3px; font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 52px; line-height: 1.1; font-weight: 600; }
a { transition: letter-spacing 300ms, color 400ms; font-family: "Work Sans", sans-serif; color: var(--swatch-ce59c7fa); font-size: 17px; font-weight: 400; text-decoration: none; cursor: pointer; }
.numbers-card { position: relative; display: flex; width: 100%; margin: 30px 0; flex-direction: column; justify-content: center; align-items: center; }
.faq-dropdown-title { position: relative; max-width: 90%; font-size: 22px; font-weight: 500; text-align: left; }
.about-us-flex { display: flex; max-width: 90%; margin-right: auto; margin-left: auto; flex-direction: row; justify-content: center; flex-wrap: wrap; grid-column-gap: 30px; }
.projects-title { z-index: 2; display: flex; justify-content: center; align-items: center; color: var(--swatch-21efe7d1); font-size: 18px; line-height: 1.5; text-align: center; }
.testimonial-mask { width: 90%; margin-right: auto; }
.team-name { margin-left: 0px; line-height: 0.9; }
.button-icon { max-height: 10px; margin-left: 0px; align-self: center; }
.section { width: 100%; }
.sg-colour-swatch.light-gray { background-color: var(--swatch-1890c01d); }
.card-body-contact { display: flex; width: 90%; margin: -50px auto 0; padding: 80px 5px; flex-direction: column; justify-content: center; align-items: center; border-radius: 6px; }
.services-grid-list { display: grid; grid-column-gap: 45px; grid-row-gap: 45px; grid-template-columns: repeat(3, 1fr); }
h2 { margin: 0 0 0 -1px; font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 38px; line-height: 1.1; font-weight: 600; }
.blog-button-icon { max-height: 10px; margin-left: 7.5px; align-self: center; }
.works-description-wrapper { max-width: 200px; text-align: left; }
.services-side-bar-left { position: sticky; top: 30px; }
.faq-flex { position: relative; margin: 30px 0; justify-content: center; align-items: center; grid-column-gap: 30px; }
.projects-title.color-white { color: var(--swatch-d071c41d); }
.global-container { width: 100%; max-width: 1200px; margin-right: auto; margin-left: auto; }
.tabs-menu { display: flex; margin-bottom: 40px; justify-content: center; grid-column-gap: 40px; flex-wrap: wrap; }
h3 { margin: 0 0 0 -1px; font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 26px; line-height: 1.4; font-weight: 500; }
.finance-snippet { margin-bottom: 10px; color: var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); }
.projects-image-wrapper { position: relative; overflow: hidden; max-width: 290px; min-height: 180px; min-width: 290px; margin-bottom: 15px; border-radius: 6px; }
.services-hero-image { position: relative; display: flex; width: 100%; margin-right: auto; margin-left: auto; align-items: center; }
.services-single-image { position: relative; display: flex; width: 100%; max-height: 480px; min-height: 480px; margin-right: auto; margin-left: auto; align-items: center; background-size: cover; }
.faq { width: 100%; margin-right: auto; margin-left: auto; }
.projects-categories { color: var(--swatch-21efe7d1); line-height: 0.9; }
.navbar { position: relative; padding-top: 20px; padding-bottom: 20px; background-color: var(--swatch-85ad8a33); }
.heading-3 { color: var(--swatch-1890c01d); }
.services-main-grid-list { display: grid; grid-row-gap: 60px; grid-template-columns: 1fr; }
.social-media-icon { max-height: 2.2rem; }
.sg-colour-swatch.secondary { background-color: var(--swatch-85ad8a33); color: var(--swatch-85ad8a33); }
.hero { position: relative; display: flex; width: 100%; min-height: 85vh; margin-right: auto; margin-left: auto; justify-content: center; align-items: center; background-image: linear-gradient(to bottom, rgba(0,0,0,0.35),rgba(0,0,0,0.35)), var(--img-69252a5045a1ef40b24e107b); background-size: cover; background-position: center; }
h4 { margin: 0 0 0 -1px; clear: left; font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 20px; line-height: 1.5; font-weight: 500; text-align: left; }
.sg-colour-swatch.dark-gray { background-color: var(--swatch-00593cf3); }
.space-semi { min-height: 45px; }
.not-centered { text-align: left; }
.normal { font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 17px; font-weight: 400; }
._404-button-wrapper { position: relative; display: flex; width: 100%; max-width: 66.6%; min-height: 1px; flex-direction: column; justify-content: center; align-items: center; text-align: center; margin: 0 auto; }
.heading.plan-title { margin-top: 40px; margin-bottom: 20px; color: var(--swatch-85ad8a33); font-size: 40px; }
.image-2 { width: 90px; }
h5 { margin: 0 0 0 -1px; font-family: "Work Sans", sans-serif; color: var(--swatch-ce59c7fa); font-size: 14px; line-height: 2.4; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; }
.background-dark { background-color: var(--swatch-85ad8a33); }
.booking-card { position: sticky; top: 100px; display: flex; height: 100%; max-width: 360px; min-width: 300px; padding: 46px 45px 60px; flex-direction: column; justify-content: center; border-radius: 8px; background-color: var(--swatch-f03d7d69); }
.flex-block-bar { width: 100%; align-items: flex-start; grid-row-gap: 15px; }
.form-block { display: flex; width: 100%; flex-direction: column; justify-content: space-between; align-items: flex-start; }
.hero-half-wrapper.blog-hero-image { background-image: linear-gradient(to bottom, hsla(232.34, 62.67%, 44.12%, 0.10),hsla(232.34, 62.67%, 44.12%, 0.10)), linear-gradient(to bottom, rgba(18, 25, 45, 0.6),rgba(18, 25, 45, 0.6)), var(--img-692525a684535d51ca6031b2); background-size: cover; background-position: center; }
.icon-404 { position: static; max-height: 180px; max-width: 180px; }
.finance-text-wrap { padding: 40px; }
.services-main-title-wrapper { display: flex; width: 80%; margin-right: auto; margin-left: auto; flex-direction: column; justify-content: center; align-items: flex-start; }
.contact-form-block { width: 100%; margin-bottom: 0px; }
.space-small { min-height: 30px; }
.space-large { min-height: 120px; }
h6 { margin: 0; font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 12px; line-height: 2.9; font-weight: 400; letter-spacing: 3px; text-transform: uppercase; }
blockquote { margin-bottom: 0px; padding: 24px; border-left: 5px solid var(--swatch-ce59c7fa); font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 18px; font-weight: 400; }
.services-card-body { z-index: 2; display: flex; margin-right: auto; margin-left: auto; padding: 15px 30px 30px; flex-direction: column; justify-content: center; align-items: center; flex: 1; }
.upper-box { z-index: 3; display: flex; max-height: 420px; max-width: 290px; min-height: 420px; min-width: 290px; margin-top: 90px; flex-direction: column; justify-content: center; align-items: center; background-color: var(--swatch-f03d7d69); }
.color-primary { color: var(--swatch-ce59c7fa); }
.circle-mask.left { border-top-left-radius: 150px; border-bottom-left-radius: 150px; }
.button { display: inline-flex; overflow: hidden; max-width: 220px; min-width: 180px; padding: 17px 24px; justify-content: center; align-items: center; background-color: var(--swatch-ce59c7fa); transition: letter-spacing 200ms, box-shadow 300ms, transform 400ms, border-color 400ms, background-color 400ms; color: var(--swatch-21efe7d1); font-size: 15px; text-align: center; text-transform: uppercase; text-decoration: none; border: none; cursor: pointer; border-radius: 3px; }
.footer-wrapper-half-small { position: relative; display: flex; width: 100%; max-width: 41.66667%; min-height: 1px; padding: 0 15px; flex-direction: column; justify-content: center; align-items: flex-start; }
.text-field-inquiry { max-height: 50px; min-height: 50px; margin-bottom: 20px; padding: 0 16px; border: 1px solid transparent; background-color: hsla(60, 0%, 100%, 1); color: hsla(28, 28.21%, 19.24%, 1); font-size: 0.9rem; width: 100%; border-radius: 4px; }
.heading { color: var(--swatch-1890c01d); }
.services-image-wrapper { position: relative; overflow: hidden; width: 100%; max-height: 230px; min-height: 230px; border-radius: 6px; }
.river-pools-colors-2 { display: flex; width: 100%; height: 300px; flex-direction: column; justify-content: center; align-items: center; }
.button.blue-back { background-color: hsla(205.67, 100%, 35.29%, 1); color: var(--swatch-d071c41d); }
.style-guide-flex { width: 100%; grid-column-gap: 30px; }
.container-full.max-width-1440px { max-width: 1440px; }
.projects-text-wrapper { display: flex; width: 100%; flex-direction: column; justify-content: center; align-items: center; }
.description-max-width.left-aligned { text-align: left; }
.projects-details-wrapper { width: 90%; max-width: 900px; margin-right: auto; margin-left: auto; padding-left: 6.25%; border-left: 1px solid hsla(0, 0%, 0%, 0.10); }
.utility-page-content { display: flex; width: 260px; flex-direction: column; text-align: center; }
.blog-wrapper-full-single { display: flex; width: 100%; margin-right: auto; margin-left: auto; flex-direction: column; justify-content: center; align-items: center; }
.circle-mask { position: absolute; width: 80px; height: 160px; border: 5px solid var(--swatch-ce59c7fa); }
.footer-legal-text-link { width: 100%; margin-right: 10px; color: hsla(0, 0%, 14.51%, 1); font-size: 15px; white-space: nowrap; }
.background-smoke { background-color: hsla(210, 16.67%, 95.29%, 1); }
.footer { width: 100%; margin-right: auto; margin-left: auto; padding: 0 15px; }
.faq-plus-icon { position: absolute; top: 0%; right: 0%; max-height: 30px; max-width: 30px; }
.about-us-circles-wrapper { display: flex; width: 100%; margin-right: auto; margin-left: auto; flex-direction: row; align-items: flex-start; grid-column-gap: 15px; }
.webclip { width: 256px; height: 256px; object-fit: contain; }
.about-us-icon { position: static; max-height: 50px; max-width: 50px; }
.hero-half-subheading { margin-bottom: 7.5px; padding-left: 12px; border-left: 5px solid var(--swatch-ce59c7fa); background-color: hsla(60, 0%, 100%, 0.20); }
.fix-scroll-container { z-index: 1; width: 100%; max-width: 1440px; margin-right: auto; margin-left: auto; }
.services-title-paragraph { color: var(--swatch-1890c01d); }
.blog-wrapper { width: 80%; margin-right: auto; margin-left: auto; }
.row-tab-law { display: flex; width: 80%; margin: 0 auto 60px; justify-content: space-around; flex-wrap: nowrap; align-items: center; }
.projects-main-wrapper { position: relative; display: flex; width: 100%; max-height: 360px; min-height: 360px; justify-content: center; align-items: center; }
.footer-copyright { color: hsla(0, 0%, 14.51%, 1); font-size: 15px; }
.faq-row { display: flex; width: 90%; margin-right: auto; margin-left: auto; flex-direction: column; justify-content: center; flex-wrap: wrap; align-items: center; }
.footer-flex-block { justify-content: flex-start; align-items: flex-end; }
.angled-top { display: none; }
.blog-date-wrapper { position: absolute; display: flex; max-height: 75px; max-width: 50px; min-height: 75px; min-width: 50px; padding: 15px 0; flex-direction: column; justify-content: center; align-items: center; background-color: var(--swatch-e135bbe7-ca5e-c414-1b83-5e139778a2b4); text-align: center; }
.contact-us-card-description { margin: 0; color: var(--swatch-00593cf3); font-size: 15px; }
.hero-icon.invert.down-arrow { transform: none; }
.flex { display: flex; flex-direction: row; }
.team-occupation { line-height: 0.9; }
.nav-social-link-wrapper { display: flex; justify-content: space-around; align-items: center; grid-column-gap: 15px; }
.services-page-grid { align-items: start; grid-template-columns: 1fr; }
.projects-more-images-wrapper { display: grid; width: 100%; max-width: 900px; margin-right: auto; margin-left: auto; justify-content: center; grid-column-gap: 15px; grid-row-gap: 15px; grid-template-columns: repeat(3, 1fr); }
.footer-text { display: block; padding: 9px 0; color: var(--swatch-1890c01d); font-size: 15px; text-decoration: none; }
.team-image { max-height: 325px; min-height: 325px; width: 100%; cursor: default; object-fit: cover; }
.button.background-dark.color-white { color: white; }
.button.background-dark { background-color: var(--swatch-85ad8a33); color: white; }
.card-icon { position: relative; max-height: 70px; max-width: 70px; margin: 0 auto 10px; }
.image-one { width: 100%; height: 100%; min-height: 300px; cursor: pointer; object-fit: cover; border-radius: 6px; }
.blog-single-hero-wrapper { width: 100%; min-height: 300px; margin-right: auto; margin-left: auto; background-color: transparent; }
.blog-author-info { display: flex; max-width: 80%; margin: 15px auto 0; padding: 0 15px; flex-direction: column; justify-content: center; align-items: center; border-radius: 6px; }
.pool-blog-wrap { display: grid; grid-column-gap: 20px; grid-row-gap: 20px; grid-template-columns: repeat(3, 1fr); }
.footer-flex-wrapper { display: flex; width: 90%; margin-right: auto; margin-left: auto; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; gap: 40px; }
.grey-text { color: var(--swatch-00593cf3); }
.tabs { width: 100%; padding: 0 20px; }

/* --- Additional layout / utility helpers (new, consistent with system above) --- */
.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; width: 100%; }
.space { min-height: 90px; }
.space-tiny { min-height: 7.5px; }
.color-white { color: white; }
li { margin-top: 7.5px; font-family: "Work Sans", sans-serif; color: var(--swatch-21efe7d1); font-size: 17px; }
ol { margin: 10px 0; padding-left: 40px; }
label { display: block; margin-bottom: 6px; font-family: "Open Sans", sans-serif; font-size: 0.95rem; font-weight: 600; color: var(--swatch-21efe7d1); }
.text-field, select.select { display: block; width: 100%; margin-bottom: 20px; padding: 12px 14px; border: 1px solid #ddd; border-radius: 4px; background-color: hsla(210, 16.67%, 95.29%, 1); color: hsla(28, 28.21%, 19.24%, 1); font-family: "Open Sans", sans-serif; font-size: 0.95rem; }
input[type="checkbox"] { width: 16px; height: 16px; margin-right: 8px; vertical-align: middle; }
.w-form-label { font-weight: 400; }
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.card { background: white; border-radius: 6px; overflow: hidden; box-shadow: 0 2px 12px rgba(0,0,0,0.08); }
.cta-h5 { font-size: 0.9rem; letter-spacing: 3px; text-transform: uppercase; font-weight: 600; margin: 0 0 10px; }
.cta-h2 { font-size: 38px; margin: 0; color: white; }
.eyebrow { color: var(--swatch-ce59c7fa); font-weight: 600; letter-spacing: 2px; text-transform: uppercase; font-size: 13px; }
.page-hero { position: relative; padding: 90px 24px 60px; text-align: left; color: white; background: linear-gradient(to bottom, rgba(20,26,41,0.75), rgba(20,26,41,0.75)), var(--img-6925de103d50267feb72d301); background-size: cover; background-position: center; }
.page-hero h1 { color: white; }
.gallery-picker-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 16px; }
.gallery-picker-item { text-align: center; }
.gallery-picker-item img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 6px; margin-bottom: 8px; }
.gallery-picker-item p { margin: 0; font-size: 14px; font-weight: 600; color: var(--swatch-21efe7d1); }
@media (max-width: 900px) {
  .hero-title { font-size: 42px; }
  h1 { font-size: 38px; }
  h2 { font-size: 28px; }
  .grid-2, .services-grid-list, .blog-grid-list, .projects-grid, .projects-main-grid, .footer-grid-wrapper, .pool-blog-wrap { grid-template-columns: 1fr; }
  .about-us-wrapper, .about-us-flex-wrapper, .about-us-image-wrapper, .footer-block-content, .footer-flex-wrapper, .contact-us-wrapper, .contact-us-wrapper-half { width: 100%; max-width: 100%; }
  .nav-bar-menu-wrapper { flex-wrap: wrap; }
  .nav-menu-wrapper { display: flex; flex-wrap: wrap; }
}

/* Mobile sticky click-to-call bar */
.mobile-call-bar { display: none; }
@media (max-width: 767px) {
  .mobile-call-bar {
    display: flex;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 14px 16px;
    background-color: var(--swatch-ce59c7fa);
    color: white;
    font-family: "Work Sans", sans-serif;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    box-shadow: 0 -2px 10px rgba(0,0,0,0.15);
  }
  body { padding-bottom: 54px; }
}

/* ---- Seasonal bar, seasonal grid, step cards ---- */
.season-bar{display:block;background:var(--swatch-ce59c7fa);color:#fff;text-align:center;padding:10px 16px;font-size:15px;text-decoration:none;line-height:1.35;}
.season-bar:hover{filter:brightness(1.08);color:#fff;}
.seasonal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;}
.seasonal-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,0.08);}
.contact-us-form select.select,.contact-us-form textarea.text-area{width:100%;}

/* ---- Nav, dropdowns, footer, compact forms (layout fixes) ---- */
.navbar{position:relative;background:#141a29;padding:12px 0;z-index:50}
.navbar .container{max-width:1280px;width:92%;margin:0 auto;overflow:visible}
.nav-bar-menu-wrapper{display:flex;align-items:center;justify-content:space-between;margin-top:0;gap:24px}
.nav-menu-wrapper{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:4px}
.nav-menu-wrapper>a,.nav-menu-wrapper .nav-menu-link-home{color:#fff;font-size:15px;text-transform:uppercase;letter-spacing:.04em;margin:0;padding:8px 12px;white-space:nowrap}
.nav-menu-wrapper>a:hover,.nav-menu-wrapper .nav-menu-link-home:hover{color:#48b1db}
.w-dropdown{position:relative;display:inline-block}
.w-dropdown-toggle{display:flex;align-items:center;cursor:pointer;margin:0;padding:0;flex-direction:row-reverse}
.w-dropdown-list{display:none;position:absolute;top:100%;left:0;min-width:250px;background:#141a29;border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:6px 0;z-index:100;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.w-dropdown:hover>.w-dropdown-list,.w-dropdown:focus-within>.w-dropdown-list{display:block}
.w-dropdown-list .nav-dropdown-link{display:block;padding:9px 18px;color:#fff;font-size:15px}
.w-dropdown-list .nav-dropdown-link:hover{background:rgba(255,255,255,.08);color:#48b1db}
.brand-logo-image{display:block}
.footer-wrapper-full{background:#141a29;color:#fff;padding-bottom:20px}
.footer-card{flex-wrap:wrap;justify-content:center;text-align:center;gap:16px;width:90%;max-width:990px;padding:60px 20px}
.footer-card .footer-title-wrapper{width:100%}
.footer-social-link-image{filter:invert(1)}
.footer-wrapper-full .footer-flex-wrapper{gap:40px;flex-wrap:wrap}
.footer-wrapper-full .footer-grid-wrapper{flex:1;min-width:300px;width:auto;grid-template-columns:1fr 1.6fr;max-width:520px;margin-left:auto}
.footer-wrapper-full .footer-title-text{font-weight:600;margin-bottom:6px}
.footer-wrapper-full .footer-copyright,.footer-wrapper-full .footer-bottom-link{color:var(--swatch-1890c01d)}
.footer-wrapper-full .footer-text:hover,.footer-wrapper-full .footer-bottom-link:hover{color:#48b1db}

/* compact two-column forms */
.contact-us-form{display:grid;grid-template-columns:repeat(6,1fr);gap:12px 16px;width:100%;align-items:start}
.contact-us-form>*{grid-column:1/-1;min-width:0}
.contact-us-form>.form-field{grid-column:span 2;display:flex;flex-direction:column;gap:5px}
.contact-us-form>.form-field:has(select){grid-column:span 3}
.container:has(form.contact-us-form){max-width:980px!important}
.contact-us-form>.form-field:has(textarea){grid-column:1/-1}
.contact-us-form label{font-size:14px;margin:0}
.contact-us-form .text-field,.contact-us-form select.select{height:42px;min-height:42px;max-height:42px;margin:0;padding:0 12px;width:100%}
.contact-us-form textarea.text-area{height:60px;min-height:60px;width:100%;margin:0}
.contact-us-form .button{justify-self:start}
@media (max-width:700px){.contact-us-form{grid-template-columns:1fr}.contact-us-form>.form-field,.contact-us-form>.form-field:has(select){grid-column:1/-1}}
@media (max-width:900px){
  .nav-menu-wrapper{gap:0}
  .w-dropdown-list{position:static;box-shadow:none;border:0;min-width:0}
  .w-dropdown:hover>.w-dropdown-list{display:none}
  .w-dropdown:focus-within>.w-dropdown-list{display:block}
}

/* ---- Spacing + two-column FAQ ---- */
main h1{margin:0 0 18px}
main h2{margin:0 0 18px;line-height:1.2}
main h3,main h4,main h5{margin:0 0 10px}
main .eyebrow,main h6{margin:0 0 10px}
main p{margin:0 0 14px;font-size:17px;line-height:1.6}
main section.section{padding:72px 24px 64px}
main section.section .container>div[style*="display:flex"],main section.section .container>div[style*="display: flex"]{gap:22px}
main section.section .container>p{max-width:760px;margin-left:auto;margin-right:auto}
.seasonal-grid{gap:22px}
.card{padding:26px}
.faq-wrapper{max-width:1180px!important;width:94%;display:grid;grid-template-columns:1fr 1fr;gap:0 28px;padding:0}
.faq-wrapper>*{min-width:0}
.faq-dropdown-accordion{padding:18px 20px!important}
.faq-dropdown-title{font-size:17px;max-width:100%;line-height:1.35;font-weight:600}
.faq-dropdown-accordion p{font-size:15px;line-height:1.55;margin:8px 0 0}
.faq-title-wrapper{width:90%;max-width:760px;margin-bottom:28px}
@media(max-width:800px){.faq-wrapper{grid-template-columns:1fr}}

/* ---- Spacing deep-dive: cards, mobile nav, mobile spacing ---- */
.services-card-link.card,a.card{padding:0}
.services-card-body{padding:18px 24px 26px}
.services-grid-list,.blog-grid-list,.projects-grid{gap:24px}
.testimonial-grid,.reviews-grid{gap:24px}
img{max-width:100%;height:auto}
@media (max-width:767px){
  main section.section{padding:44px 16px 40px}
  main section.section .container{padding-left:0;padding-right:0;width:100%;max-width:100%}
  main section:not(.section) .container,.hero .container{padding-left:18px;padding-right:18px}
  .hero p,.hero-text p{font-size:17px}
  main h1,.hero-title{font-size:34px;line-height:1.15}
  main h2{font-size:27px}
  main h3{font-size:22px}
  main p{font-size:16px;line-height:1.55}
  .services-card-body{padding:14px 18px 22px}
  .services-grid-list,.blog-grid-list,.projects-grid,.seasonal-grid{gap:16px}
  .navbar{padding:10px 0}
  .navbar .container{width:94%}
  .nav-bar-menu-wrapper{flex-direction:column;align-items:flex-start;gap:6px}
  .brand-logo-link .brand-logo-image{width:78px}
  .nav-menu-wrapper{gap:0;margin-left:-8px}
  .nav-menu-wrapper>a,.nav-menu-wrapper .nav-menu-link-home{font-size:13px;padding:6px 8px}
  .nav-social-link-wrapper{display:none}
  .footer-card{padding:40px 16px;width:92%}
  .footer-wrapper-full .footer-flex-wrapper{flex-direction:column;gap:28px;width:92%}
  .footer-block-content{width:100%}
  .footer-wrapper-full .footer-grid-wrapper{grid-template-columns:1fr 1fr;min-width:0;width:100%;gap:20px 16px}
  .footer-text{white-space:normal;overflow-wrap:anywhere}
  .footer-bottom{width:92%}
  .contact-us-form-wrapper{width:100%;padding-left:16px;padding-right:16px}
  .faq-dropdown-title{font-size:16px}
}

/* ---- Mobile hamburger menu ---- */
.nav-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:8px;width:46px;height:42px;padding:0;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.nav-toggle span{display:block;width:22px;height:2px;background:#fff;border-radius:2px;transition:transform .2s,opacity .2s}
.navbar.menu-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.navbar.menu-open .nav-toggle span:nth-child(2){opacity:0}
.navbar.menu-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (max-width:900px){
  .nav-toggle{display:flex}
  .nav-bar-menu-wrapper{flex-direction:row!important;align-items:center!important;justify-content:space-between}
  .nav-menu-wrapper{display:none!important;position:absolute;top:100%;left:3%;right:3%;margin:8px 0 0;padding:8px;background:#1d2538;border:1px solid rgba(255,255,255,.14);border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.45);flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:0;z-index:200;max-height:75vh;overflow-y:auto;overflow-x:hidden}
  .navbar.menu-open .nav-menu-wrapper{display:flex!important}
  .nav-menu-wrapper>a,.nav-menu-wrapper .w-dropdown-toggle{font-size:15px;padding:14px 12px;border-bottom:1px solid rgba(255,255,255,.08);width:100%;box-sizing:border-box}
  .nav-menu-wrapper>a:last-child{border-bottom:0}
  .nav-menu-wrapper .w-dropdown{display:block;width:100%;flex:none}
  .nav-menu-wrapper>a{flex:none}
  .nav-menu-wrapper .w-dropdown-toggle{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center}
  .nav-menu-wrapper .w-dropdown-toggle .nav-menu-link-home{padding:0;margin:0}
  .w-dropdown:focus-within>.w-dropdown-list,.w-dropdown:hover>.w-dropdown-list{display:none}
  .nav-menu-wrapper .w-dropdown.open>.w-dropdown-list{display:block;position:static;background:rgba(255,255,255,.05);border:0;box-shadow:none;border-radius:8px;margin:4px 0 6px;padding:2px 0;min-width:0}
  .w-dropdown-list .nav-dropdown-link{padding:11px 16px;font-size:14px}
  .brand-logo-link .brand-logo-image{width:70px}
}

/* ---- Full-page mobile menu (hamburger left) ---- */
@media (max-width:900px){
  .nav-bar-menu-wrapper{justify-content:flex-start!important;gap:16px!important}
  .nav-toggle{order:-1;margin:0;flex:none}
  .brand-logo-link{order:0}
  .navbar.menu-open .nav-toggle{position:fixed;top:14px;left:3%;z-index:400}
  .nav-menu-wrapper{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%;max-height:none!important;margin:0!important;padding:88px 26px 40px!important;background:#141a29!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow-y:auto!important;z-index:300!important}
  .nav-menu-wrapper>a,.nav-menu-wrapper .w-dropdown-toggle{font-size:20px!important;padding:18px 4px!important;letter-spacing:.06em}
  .nav-menu-wrapper .w-dropdown.open>.w-dropdown-list{background:transparent!important;margin:0 0 8px!important;padding:0 0 4px 14px!important}
  .w-dropdown-list .nav-dropdown-link{font-size:17px!important;padding:13px 4px!important;border-bottom:1px solid rgba(255,255,255,.06)}
  body:has(.navbar.menu-open){overflow:hidden}
}
@media (max-width:900px){
  .nav-menu-wrapper .w-dropdown-toggle .nav-menu-link-home{font-size:20px!important;letter-spacing:.06em;text-transform:uppercase}
  body:has(.navbar.menu-open) .mobile-call-bar{display:none!important}
}
.hero .button.border,.hero a.button.border{color:#fff!important;border-color:#fff;background:rgba(255,255,255,.08)}
.hero .button.border:hover{background:#fff;color:#141a29!important}

/* ---- Hamburger on the right, larger logo ---- */
@media (max-width:900px){
  .nav-bar-menu-wrapper{justify-content:space-between!important}
  .nav-toggle{order:1!important}
  .brand-logo-link{order:0!important}
  .brand-logo-link .brand-logo-image{width:96px!important}
  .navbar.menu-open .nav-toggle{left:auto!important;right:3%!important}
}

/* ---- Mobile FAQ: tap to expand ---- */
@media(max-width:767px){
  .faq-dropdown-accordion{cursor:pointer;padding:16px 4px!important}
  .faq-dropdown-title{position:relative;padding-right:34px;max-width:100%}
  .faq-dropdown-title::after{content:'+';position:absolute;right:2px;top:-2px;font-size:26px;line-height:1;font-weight:400;color:var(--swatch-ce59c7fa,#2aa5d8)}
  .faq-dropdown-accordion.open .faq-dropdown-title::after{content:'\2212'}
  .faq-dropdown-accordion p{display:none}
  .faq-dropdown-accordion.open p{display:block}
}

/* ---- Footer rebuild (desktop + mobile) ---- */
.footer-wrapper-full{background:#141a29!important;padding:0!important}
.footer-wrapper-full>.space{display:none!important}
.footer-wrapper-full .footer-card{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:14px 16px!important;max-width:760px!important;margin:0 auto!important;padding:72px 24px 56px!important;text-align:center!important;background:none!important;border:0!important}
.footer-wrapper-full .footer-title-wrapper{width:100%!important;max-width:100%!important;margin:0 0 14px!important;padding:0!important;display:flex;flex-direction:column;align-items:center;gap:10px}
.footer-wrapper-full .footer-title-wrapper h5,.footer-wrapper-full .footer-title-wrapper h2{margin:0!important;text-align:center!important}
.footer-wrapper-full .footer-title-wrapper h2{font-size:clamp(28px,4vw,40px)!important;line-height:1.2!important}
.footer-wrapper-full .footer-card .button{margin:0!important;min-width:180px;padding:15px 30px!important;display:inline-flex!important;justify-content:center;align-items:center;border-radius:6px}
.footer-wrapper-full .footer-card .button.border{background:transparent!important;border:2px solid #fff!important}
.footer-wrapper-full .footer-card .button.background-dark{background:var(--swatch-ce59c7fa,#2aa5d8)!important;border:2px solid var(--swatch-ce59c7fa,#2aa5d8)!important}
.footer-wrapper-full .footer-card .button p,.footer-wrapper-full .footer-card .button .hero-flex-block{margin:0!important;color:#fff!important}
.footer-wrapper-full .footer{max-width:1180px!important;width:100%!important;margin:0 auto!important;padding:56px 24px 28px!important;border-top:1px solid rgba(255,255,255,.14);box-sizing:border-box}
.footer-wrapper-full .footer-flex-wrapper{width:100%!important;display:flex!important;flex-wrap:wrap!important;justify-content:space-between!important;align-items:flex-start!important;gap:44px 56px!important;margin:0!important}
.footer-wrapper-full .footer-block-content{width:auto!important;flex:1 1 300px;max-width:380px;gap:0}
.footer-wrapper-full .footer-block-content .brand-logo-image,.footer-wrapper-full .footer-logo-link img{width:150px!important;height:auto!important;display:block}
.footer-wrapper-full .footer-descrption-wrapper{margin:18px 0 22px!important;padding:0!important}
.footer-wrapper-full .footer-descrption-wrapper p{margin:0!important;font-size:15px!important;line-height:1.65!important}
.footer-wrapper-full .footer-social-link-wrapper{display:flex!important;gap:16px!important;margin:0!important;padding:0!important}
.footer-wrapper-full .footer-grid-wrapper{flex:1 1 380px!important;width:auto!important;min-width:0!important;max-width:560px;margin:0!important;display:grid!important;grid-template-columns:1fr 1.4fr!important;gap:28px 48px!important}
.footer-wrapper-full .footer-block{gap:12px!important;align-items:flex-start}
.footer-wrapper-full .footer-title-text{margin:0 0 4px!important;font-size:17px!important;font-weight:600;color:#fff}
.footer-wrapper-full .footer-text{margin:0!important;padding:0!important;font-size:15px!important;line-height:1.5!important;overflow-wrap:anywhere}
.footer-wrapper-full .footer-divider{margin:36px 0 22px!important;height:1px;background:rgba(255,255,255,.14)!important}
.footer-wrapper-full .footer-bottom,.footer-wrapper-full .footer-wrapper-half-small{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}
.footer-wrapper-full .footer-copyright{margin:0!important;font-size:13px!important;line-height:1.7!important;text-align:left}
@media(max-width:767px){
  .footer-wrapper-full .footer-card{padding:56px 22px 44px!important}
  .footer-wrapper-full .footer-card .button{width:100%;max-width:320px}
  .footer-wrapper-full .footer{padding:40px 22px 24px!important}
  .footer-wrapper-full .footer-flex-wrapper{flex-direction:column!important;gap:34px!important}
  .footer-wrapper-full .footer-block-content{max-width:100%;flex:none;width:100%!important}
  .footer-wrapper-full .footer-grid-wrapper{flex:none!important;width:100%!important;max-width:100%;grid-template-columns:1fr 1fr!important;gap:30px 20px!important}
  .footer-wrapper-full .footer-block:last-child{grid-column:1/-1}
  .footer-wrapper-full .footer-divider{margin:32px 0 18px!important}
  .footer-wrapper-full .footer-copyright{text-align:center}
}
.footer-wrapper-full .footer-divider{width:100%!important;max-width:100%!important}
.footer-wrapper-full .footer-bottom-link{font-size:inherit!important;line-height:inherit!important}
.footer-wrapper-full .footer-bottom{display:block!important}
