/* Land Perc refinements: incumbent fonts, photography and brand palette. */
:root {
  --lp-navy: #093850;
  --lp-aqua: #00afb9;
  --lp-aqua-soft: #edf7f8;
  --lp-aqua-pale: #f4fafa;
  --lp-amber: #e69816;
  --lp-ink: #3e5865;
  --lp-line: #cce4e7;
  --lp-ease: cubic-bezier(.16, 1, .3, 1);
}
::selection { background: var(--lp-aqua); color: var(--lp-navy); }
html { scroll-padding-top: 100px; }
body a:focus-visible, body button:focus-visible, body [tabindex]:focus-visible,
body input:focus-visible, body textarea:focus-visible, body select:focus-visible {
  outline: 3px solid var(--lp-navy); outline-offset: 5px;
}
.et_pb_button, .lp-primary-action, .lp-secondary-action {
  transition: background-color .2s, color .2s, border-color .2s, box-shadow .2s;
}
.et_pb_slider .et_pb_active_slide .et_pb_slide_description {
  opacity: 1 !important; transform: none !important; animation: none !important;
}
.lp-chat-toggle { display: grid; place-items: center; box-shadow: 0 6px 18px #09385026; }
.lp-chat-toggle svg { width: 25px; height: 25px; }
.lp-chat-toggle:hover { background: #12516b; }
.lp-chat-toggle:focus-visible { outline-color: var(--lp-amber); }
.mobile_menu_bar { min-width: 44px; min-height: 44px; display: grid; place-items: center; cursor: pointer; }
.et_mobile_menu a { min-height: 44px; display: flex; align-items: center; }
.et_pb_menu a[aria-current="page"] { color: var(--lp-navy) !important; text-decoration: underline; text-underline-offset: 6px; }

/* A compact, useful desktop navigation; retain the original mobile menu. */
@media (min-width: 1200px) {
  #page-container .et-l--header .et_pb_row_0_tb_header {
    display: flex !important; align-items: center; gap: 28px;
    width: calc(100% - 80px) !important; max-width: 1360px !important; padding: 22px 0 !important;
  }
  #page-container .et-l--header .et_pb_row_1_tb_header { display: none !important; }
  #page-container .et-l--header .et_pb_column_0_tb_header { width: auto !important; flex: 1; margin: 0 !important; }
  #page-container .et-l--header .et_pb_column_1_tb_header { width: auto !important; gap: 12px; margin: 0 !important; }
  .et-l--header .et_pb_menu__logo img { max-width: 190px !important; }
  .et-l--header .et_pb_menu__wrap { justify-content: flex-end !important; }
  .et-l--header .et_pb_menu__menu { display: flex !important; }
  .et-l--header .et_mobile_nav_menu { display: none !important; }
  .et-l--header .et-menu > li { padding-left: 10px !important; padding-right: 10px !important; }
  .et-l--header .et-menu a { font-size: 14px !important; }
  #page-container .et-l--header .et_pb_button { padding: 12px 15px !important; min-height: 44px; border-radius: 5px; }
  #page-container .et-l--header .et_pb_button_1_tb_header { background: transparent !important; border-color: var(--lp-line) !important; }
}

/* The existing droplet image remains the hero's visual signature. */
body.home #main-content .et_pb_section_0 {
  background: var(--lp-aqua-pale) !important; padding: 68px 0 76px !important;
}
body.home #main-content .et_pb_section_0 > .et_pb_row {
  display: grid; grid-template-columns: minmax(0, 1.16fr) minmax(0, 1fr);
  align-items: center; gap: clamp(36px, 5vw, 80px);
  width: calc(100% - 96px) !important; max-width: 1280px !important; padding: 0 !important;
}
body.home #main-content .et_pb_section_0 > .et_pb_row::after { display: none; }
body.home #main-content .et_pb_section_0 > .et_pb_row > .et_pb_column {
  width: 100% !important; margin: 0 !important; padding: 0 !important; min-width: 0;
}
body.home #main-content .et_pb_row_inner_0 { width: 100% !important; padding: 0 !important; }
body.home #main-content .et_pb_row_inner_0 > .et_pb_column { width: 100% !important; padding: 0 !important; margin: 0 !important; }
body.home #main-content .et_pb_heading_0 { margin-bottom: 26px !important; }
body.home #main-content h1 {
  font-size: clamp(40px, 3.9vw, 58px) !important; line-height: 1.07 !important;
  letter-spacing: -.025em; text-wrap: balance; max-width: 21ch; padding: 0;
}
body.home .lp-hero-emphasis { display: block; color: var(--lp-navy); margin-top: .16em; }
body.home #main-content .et_pb_text_1 { max-width: 57ch; font-size: 18px !important; line-height: 1.7 !important; margin-bottom: 28px !important; color: var(--lp-ink) !important; }
body.home .lp-hero-actions { display: flex; flex-wrap: wrap; gap: 18px 24px; align-items: center; }
.lp-primary-action {
  display: inline-flex; align-items: center; justify-content: center; gap: 14px;
  min-height: 50px; padding: 15px 21px; background: var(--lp-amber); color: var(--lp-navy);
  font-family: Montserrat, Helvetica, Arial, sans-serif; font-size: 12px; line-height: 1.5;
  font-weight: 700; letter-spacing: .025em; border-radius: 5px;
}
.lp-primary-action svg { width: 18px; height: 18px; flex: none; }
.lp-primary-action:hover { background: #f3aa2e; color: var(--lp-navy); box-shadow: 0 5px 15px #09385017; }
.lp-secondary-action { min-height: 44px; display: inline-flex; align-items: center; color: var(--lp-navy); font-size: 15px; font-weight: 700; text-decoration: underline; text-underline-offset: 5px; }
.lp-secondary-action:hover { color: #006f77; }
body.home #main-content .et_pb_code_0 { width: 100% !important; max-width: none !important; }
body.home .custom-hero { width: 100% !important; height: auto !important; aspect-ratio: 1 / 1; }
body.home .parallax-droplet { width: 100% !important; height: 100% !important; margin: 0 !important; }
body.home .parallax-droplet img { display: block; width: 100%; height: 100%; object-fit: contain; }
body.home .custom-hero .circle { animation: none !important; }

/* Give each content group a clear beginning and its own composition. */
body.home #main-content > article .et_pb_section:not(.et_pb_section_0) { padding-top: 88px; padding-bottom: 88px; }
body.home #main-content .et_pb_section > .et_pb_row:not(.et_pb_row_15):not(.et_pb_row_16):not(.et_pb_row_17):not(.et_pb_row_18) { max-width: 1180px; }
body.home #main-content h2 { color: var(--lp-navy) !important; font-size: clamp(30px, 3vw, 42px); line-height: 1.14; letter-spacing: -.018em; text-wrap: balance; }
body.home #main-content h3 { line-height: 1.22; text-wrap: balance; }
body.home #main-content .et_pb_section_1 { padding: 78px 0 !important; }
body.home #main-content .et_pb_section_1 .et_pb_column_2 { display: grid; grid-template-columns: .95fr 1.05fr; gap: 0 70px; }
body.home #main-content .et_pb_section_1 .et_pb_heading { grid-column: 1; grid-row: 1 / 4; text-align: left !important; margin: 0 !important; }
body.home #main-content .et_pb_section_1 .et_pb_heading h2 { text-align: left !important; }
body.home #main-content .et_pb_section_1 .et_pb_text,
body.home #main-content .et_pb_section_1 .et_pb_button_module_wrapper { grid-column: 2; text-align: left !important; }
body.home #main-content .et_pb_section_1 .et_pb_text { margin-bottom: 22px !important; padding: 0 !important; }
body.home #main-content .et_pb_section_1 .et_pb_text_inner,
body.home #main-content .et_pb_section_1 .et_pb_text_inner > * { text-align: left !important; }
body.home #main-content .et_pb_section_1 .et_pb_button { color: var(--lp-navy) !important; border-color: var(--lp-amber) !important; border-radius: 5px; }
body.home #main-content .et_pb_section_2 { background: var(--lp-aqua-soft) !important; padding: 88px 0 !important; }
body.home #main-content .et_pb_section_2 .et_pb_row_1 { padding-top: 0; padding-bottom: 34px; }
body.home #main-content .et_pb_section_2 .et_pb_row_1 .et_pb_text { max-width: 72ch; margin: 20px auto 0 !important; }
body.home #main-content .et_pb_section_2 .et_pb_row_2 .et_pb_heading,
body.home #main-content .et_pb_section_2 .et_pb_row_2 .et_pb_text { text-align: left !important; }
body.home #main-content .et_pb_section_2 .et_pb_image { margin-bottom: 24px !important; }
body.home #main-content .et_pb_section_2 .et_pb_row_2 h3 { text-align: left !important; }
body.home #main-content .et_pb_section_2 .et_pb_row_2 .et_pb_heading { min-height: 64px; margin-bottom: 12px !important; }
body.home #main-content .et_pb_section_2 .et_pb_image img { aspect-ratio: 3 / 2; object-fit: cover; }

/* Services read as capabilities, with compact images beside the copy. */
body.home #main-content .et_pb_section_4 { padding: 88px 0 !important; }
body.home #main-content .et_pb_section_4 .et_pb_row_3 { padding-top: 0; padding-bottom: 38px; }
body.home #main-content .et_pb_section_4 .et_pb_row_4,
body.home #main-content .et_pb_section_4 .et_pb_row_5 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px; padding: 0 !important; align-items: start !important; }
body.home #main-content .et_pb_section_4 .et_pb_row_4::after,
body.home #main-content .et_pb_section_4 .et_pb_row_5::after { display: none; }
body.home #main-content .et_pb_section_4 .et_pb_column_1_2 {
  width: 100% !important; margin: 0 !important; padding: 30px 0 !important;
  border-top: 1px solid var(--lp-line); display: grid; grid-template-columns: 138px minmax(0, 1fr); column-gap: 26px; align-content: start;
}
body.home #main-content .et_pb_section_4 .et_pb_image { grid-row: 1 / 3; margin: 0 !important; width: 100% !important; }
body.home #main-content .et_pb_section_4 .et_pb_image_wrap,
body.home #main-content .et_pb_section_4 .et_pb_image img { border-radius: 6px !important; width: 100%; }
body.home #main-content .et_pb_section_4 .et_pb_image img { aspect-ratio: 1 / 1.1; object-fit: cover; }
body.home #main-content .et_pb_section_4 .et_pb_heading { grid-column: 2; text-align: left !important; margin-bottom: 12px !important; }
body.home #main-content .et_pb_section_4 h3 { font-size: 23px !important; padding-bottom: 0; text-align: left !important; }
body.home #main-content .et_pb_section_4 .et_pb_text { grid-column: 2; text-align: left !important; font-size: 16px; line-height: 1.7; margin: 0 !important; }

/* Navy repeats the existing closing CTA; aqua keeps its statewide role. */
body.home #main-content .et_pb_section_5 { background: var(--lp-navy) !important; padding: 82px 0 90px !important; }
body.home #main-content .et_pb_section_5 h2,
body.home #main-content .et_pb_section_5 h3 { color: white !important; }
body.home #main-content .et_pb_section_5 h3 { text-align: left !important; }
body.home #main-content .et_pb_section_5 .et_pb_row_7 { align-items: start !important; }
body.home #main-content .et_pb_section_5 .et_pb_row_7 .et_pb_heading { min-height: 74px; margin-bottom: 12px !important; }
body.home #main-content .et_pb_section_5 .et_pb_text { color: #dfedef !important; text-align: left !important; }
body.home #main-content .et_pb_section_5 .et_pb_heading { text-align: left !important; }
body.home #main-content .et_pb_section_5 .et_pb_row_6 { padding-top: 0; padding-bottom: 34px; }
body.home #main-content .et_pb_section_5 .et_pb_image { margin-bottom: 24px !important; }
body.home #main-content .et_pb_section_5 .et_pb_image img { aspect-ratio: 3 / 2; object-fit: cover; }
body.home #main-content .et_pb_section_6 { padding: 70px 0 !important; }
body.home #main-content .et_pb_section_6 .et_pb_text { color: var(--lp-navy) !important; max-width: 74ch; margin-left: auto !important; margin-right: auto !important; }
body.home #main-content .et_pb_section_7 { padding: 88px 0 !important; }
body.home #main-content .et_pb_section_7 > .et_pb_row { display: flex; align-items: center; }
body.home #main-content .et_pb_section_8,
body.home #main-content .et_pb_section_9 { background: var(--lp-aqua-soft) !important; }
body.home #main-content .et_pb_section_8 { padding: 82px 0 18px !important; }
body.home #main-content .et_pb_section_8 .et_pb_row { padding: 0; }
body.home #main-content .et_pb_section_9 { padding: 0 0 82px !important; }
body.home #main-content .et_pb_section_9 .et_pb_column_1_2 { padding: 28px 0 !important; border-top: 1px solid var(--lp-line); display: grid; grid-template-columns: 92px minmax(0, 1fr); column-gap: 24px; align-content: start; }
body.home #main-content .et_pb_section_9 .et_pb_image { grid-row: 1 / 3; width: 100% !important; margin: 0 !important; }
body.home #main-content .et_pb_section_9 .et_pb_image_wrap,
body.home #main-content .et_pb_section_9 .et_pb_image img { width: 100%; border-radius: 5px !important; }
body.home #main-content .et_pb_section_9 .et_pb_image img { aspect-ratio: 1; object-fit: cover; }
body.home #main-content .et_pb_section_9 .et_pb_heading,
body.home #main-content .et_pb_section_9 .et_pb_text { text-align: left !important; }
body.home #main-content .et_pb_section_9 h3 { font-size: 23px !important; text-align: left !important; }
body.home #main-content .et_pb_section_9 .et_pb_heading,
body.home #main-content .et_pb_section_9 .et_pb_text { grid-column: 2; }
body.home #main-content .et_pb_section_9 .et_pb_row { align-items: start !important; }
body.home #main-content .et_pb_section_10 { padding: 88px 0 !important; }
body.home #main-content .et_pb_section_10 .et_pb_row_14 .et_pb_column { padding-top: 26px; border-top: 1px solid var(--lp-line); }
body.home #main-content .et_pb_section_10 .et_pb_row_14 .et_pb_heading { text-align: left !important; }
body.home #main-content .et_pb_section_12 h2,
body.home #main-content .et_pb_section_13 h2 { color: white !important; }
body.home #main-content .et_pb_section_16 { padding: 82px 0 !important; }
body.home #main-content .et_pb_section_16 .et_pb_slider { max-width: 900px !important; width: 100% !important; margin: 32px auto 0 !important; }
body.home #main-content .et_pb_section_16 .et_pb_slide { background: var(--lp-aqua-pale) !important; border-radius: 8px; padding: 36px 64px !important; }
body.home #main-content .et_pb_section_16 .et_pb_slide_description { padding: 0 !important; text-shadow: none !important; }
body.home #main-content .et_pb_section_16 .et_pb_slider,
body.home #main-content .et_pb_section_16 .et_pb_slide,
body.home #main-content .et_pb_section_16 .et_pb_container { min-height: 0 !important; height: auto !important; }
body.home #main-content .et_pb_section_16 .et_pb_slider_container_inner { display: block !important; }
body.home #main-content .et_pb_section_16 .et_pb_slide_description h4,
body.home #main-content .et_pb_section_16 .et_pb_slide_description h5,
body.home #main-content .et_pb_section_16 .et_pb_slide_description p { color: var(--lp-navy) !important; }
body.home #main-content .et_pb_section_16 .et-pb-arrow-prev,
body.home #main-content .et_pb_section_16 .et-pb-arrow-next { color: var(--lp-navy) !important; }
body.home #main-content .et_pb_section_18 h2 { color: white !important; }
body.home #main-content .et_pb_section_18 .et_pb_button { background: var(--lp-amber) !important; border-color: var(--lp-amber) !important; color: var(--lp-navy) !important; min-height: 46px; }

@media (max-width: 980px) {
  body.home #main-content .et_pb_section_0 { padding: 38px 0 48px !important; }
  body.home #main-content .et_pb_section_0 > .et_pb_row { width: calc(100% - 48px) !important; grid-template-columns: 1fr; gap: 32px; }
  body.home #main-content h1 { font-size: clamp(34px, 6vw, 48px) !important; max-width: 24ch; }
  body.home #main-content .et_pb_text_1 { font-size: 17px !important; margin-bottom: 24px !important; }
  body.home #main-content .et_pb_section_0 .et_pb_column_inner { margin-bottom: 0 !important; }
  body.home .custom-hero { width: min(100%, 430px) !important; margin: 0 auto; }
  body.home #main-content .et_pb_section_1 .et_pb_column_2 { display: block; }
  body.home #main-content .et_pb_section_1 .et_pb_heading { margin-bottom: 24px !important; }
  body.home #main-content .et_pb_section_4 .et_pb_row_4,
  body.home #main-content .et_pb_section_4 .et_pb_row_5 { grid-template-columns: 1fr; gap: 0; }
  body.home #main-content .et_pb_section_7 > .et_pb_row { display: block; }
  body.home #main-content .et_pb_section_16 .et_pb_slide { padding: 30px 38px !important; }
}
@media (max-width: 600px) {
  body.home #main-content .et_pb_section_0 > .et_pb_row { width: calc(100% - 40px) !important; }
  body.home #main-content .et_pb_section_0 { padding-top: 24px !important; }
  body.home #main-content h1 { font-size: 35px !important; letter-spacing: -.025em; line-height: 1.09 !important; }
  body.home #main-content h2 { font-size: 31px !important; }
  body.home #main-content h3 { font-size: 23px !important; }
  body.home #main-content .et_pb_section_1,
  body.home #main-content .et_pb_section_2,
  body.home #main-content .et_pb_section_4,
  body.home #main-content .et_pb_section_5,
  body.home #main-content .et_pb_section_6,
  body.home #main-content .et_pb_section_7,
  body.home #main-content .et_pb_section_10,
  body.home #main-content .et_pb_section_16 { padding: 56px 0 !important; }
  body.home #main-content .et_pb_section_8 { padding-top: 56px !important; }
  body.home #main-content .et_pb_section_9 { padding-bottom: 40px !important; }
  body.home #main-content .et_pb_section_4 .et_pb_column_1_2 { grid-template-columns: 1fr; gap: 0; }
  body.home #main-content .et_pb_section_4 .et_pb_image { grid-column: 1; grid-row: auto; margin-bottom: 22px !important; }
  body.home #main-content .et_pb_section_4 .et_pb_image img { aspect-ratio: 16 / 9; }
  body.home #main-content .et_pb_section_4 .et_pb_heading,
  body.home #main-content .et_pb_section_4 .et_pb_text { grid-column: 1; }
  body.home #main-content .et_pb_section_9 .et_pb_column_1_2 { grid-template-columns: 64px minmax(0, 1fr); column-gap: 18px; }
  body.home #main-content .et_pb_section_2 .et_pb_row_2 .et_pb_heading,
  body.home #main-content .et_pb_section_5 .et_pb_row_7 .et_pb_heading { min-height: 0; }
  body.home #main-content .et_pb_section_16 .et_pb_slide { padding: 28px 28px !important; }
  body.home .lp-hero-actions { gap: 12px 22px; }
  .lp-chat-toggle { width: 48px; height: 48px; right: 16px; bottom: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .et_pb_button, .lp-primary-action, .lp-secondary-action { transition: none; }
}


/* Services: a navigable capability page with three distinct service groups. */
body.lp-services-page #main-content .et_pb_section_1 { padding: 64px 0 28px !important; }
body.lp-services-page #main-content .et_pb_row_1 { width: calc(100% - 80px) !important; max-width: 1180px !important; padding: 0 !important; }
body.lp-services-page #main-content .et_pb_column_1 { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
body.lp-services-page #main-content .et_pb_heading_1 { margin: 0 !important; }
body.lp-services-page #main-content .et_pb_heading_1 h2 { color: var(--lp-navy) !important; font-size: clamp(32px, 3vw, 42px) !important; line-height: 1.15 !important; text-align: left !important; text-wrap: balance; }
body.lp-services-page #main-content .et_pb_heading_2 { margin: 0 !important; }
body.lp-services-page .lp-services-lead { font-family: Raleway, Helvetica, Arial, sans-serif; font-size: 19px; line-height: 1.7; color: var(--lp-ink); text-align: left; font-weight: 400; }
body.lp-services-page .lp-service-index { width: calc(100% - 80px); max-width: 1180px; margin: 0 auto 62px; padding-top: 24px; display: flex; flex-wrap: wrap; gap: 16px 34px; }
body.lp-services-page .lp-service-index a { display: inline-flex; gap: 18px; align-items: center; min-height: 48px; padding: 8px 0; color: var(--lp-navy); border-bottom: 1px solid var(--lp-line); font-size: 15px; font-weight: 700; }
body.lp-services-page .lp-service-index a:hover { border-color: var(--lp-aqua); color: #006f77; }
body.lp-services-page .lp-service-index svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
body.lp-services-page .lp-service-group { padding: 76px max(40px, calc((100% - 1180px) / 2)); scroll-margin-top: 110px; }
body.lp-services-page .lp-service-group-heading { margin: 0 0 42px; }
body.lp-services-page .lp-service-group-heading h2 { font-size: clamp(30px, 3vw, 40px); line-height: 1.16; color: var(--lp-navy); padding: 0; letter-spacing: -.018em; text-wrap: balance; }
body.lp-services-page #main-content .lp-service-item { background: transparent !important; padding: 0 !important; margin: 0 !important; min-width: 0; }
body.lp-services-page #main-content .lp-service-item > .et_pb_row { width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important; }
body.lp-services-page #main-content .lp-service-item > .et_pb_row::after { display: none; }
body.lp-services-page #main-content .lp-service-item .et_pb_column { width: auto !important; margin: 0 !important; padding: 0 !important; min-width: 0; }
body.lp-services-page #main-content .lp-service-item .et_pb_heading { margin: 0 0 16px !important; padding: 0 !important; }
body.lp-services-page #main-content .lp-service-item h3 { font-size: 27px !important; line-height: 1.2; color: var(--lp-navy); text-align: left !important; text-wrap: balance; padding: 0; }
body.lp-services-page #main-content .lp-service-item .et_pb_text { font-size: 17px !important; line-height: 1.7 !important; padding: 0 !important; margin: 0 !important; color: var(--lp-ink); }
body.lp-services-page #main-content .lp-service-item ul { padding: 0 0 0 1.1em !important; }
body.lp-services-page #main-content .lp-service-item li { padding: 0 0 9px 3px; }
body.lp-services-page #main-content .lp-service-item li::marker { color: #007b84; }
body.lp-services-page #main-content .lp-service-item ol { padding-left: 1.35em; margin-top: 8px; }
body.lp-services-page #main-content .lp-service-item .et_pb_image { width: 100% !important; max-width: none !important; margin: 0 !important; }
body.lp-services-page #main-content .lp-service-item .et_pb_image_wrap { display: block; width: 100%; }
body.lp-services-page #main-content .lp-service-item img { display: block; width: 100%; object-fit: cover; border-radius: 6px; }

/* Site and soil: two clear capabilities within one pale-aqua band. */
body.lp-services-page .lp-site-services { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 56px; background: var(--lp-aqua-soft); }
body.lp-services-page .lp-site-services .lp-service-group-heading { grid-column: 1 / -1; }
body.lp-services-page #main-content .lp-site-services .et_pb_row { display: flex; flex-direction: column; gap: 28px; }
body.lp-services-page .lp-site-services .lp-service-media { order: -1; }
body.lp-services-page .lp-site-services img { aspect-ratio: 16 / 8.5; }

/* System design: a navy band separates advanced design from field services. */
body.lp-services-page .lp-system-services { background: var(--lp-navy); }
body.lp-services-page .lp-system-services .lp-service-group-heading h2,
body.lp-services-page #main-content .lp-system-services h3 { color: white !important; }
body.lp-services-page #main-content .lp-system-services .et_pb_text { color: #dfedef !important; }
body.lp-services-page #main-content .lp-system-services li::marker { color: var(--lp-aqua); }
body.lp-services-page #main-content .lp-system-services .et_pb_row { display: grid; grid-template-columns: .9fr 1.1fr; column-gap: 56px; align-items: center; }
body.lp-services-page #main-content .lp-system-services .lp-service-media { grid-column: 1; grid-row: 1; }
body.lp-services-page #main-content .lp-system-services .lp-service-copy { grid-column: 2; grid-row: 1; }
body.lp-services-page .lp-system-services img { aspect-ratio: 16 / 11; }
body.lp-services-page #main-content .lp-system-services .lp-service-item + .lp-service-item { padding-top: 44px !important; margin-top: 44px !important; border-top: 1px solid #356075; }

/* Project support: service name, practical detail, and a compact project image. */
body.lp-services-page .lp-project-services { background: white; }
body.lp-services-page #main-content .lp-project-services .et_pb_row { display: grid; grid-template-columns: .9fr 1.35fr .65fr; gap: 34px; align-items: start; }
body.lp-services-page #main-content .lp-project-services .lp-service-copy { display: contents; }
body.lp-services-page #main-content .lp-project-services .et_pb_heading { grid-column: 1; grid-row: 1; }
body.lp-services-page #main-content .lp-project-services .et_pb_text { grid-column: 2; grid-row: 1; }
body.lp-services-page #main-content .lp-project-services .lp-service-media { grid-column: 3; grid-row: 1; }
body.lp-services-page .lp-project-services img { aspect-ratio: 4 / 3; }
body.lp-services-page #main-content .lp-project-services .lp-service-item { border-top: 1px solid var(--lp-line); padding-top: 34px !important; margin-top: 34px !important; }
body.lp-services-page #main-content .et_pb_section_10 h2 { color: white !important; }
body.lp-services-page #main-content .et_pb_section_10 .et_pb_button { background: var(--lp-amber) !important; border-color: var(--lp-amber) !important; color: var(--lp-navy) !important; }

/* Contact: compact guidance, a prominent form, and SMS details kept intact. */
body.lp-contact-page #main-content .et_pb_section_1 { padding: 56px 0 72px !important; }
body.lp-contact-page #main-content .et_pb_row_1 { width: calc(100% - 80px) !important; max-width: 1120px !important; padding: 0 !important; }
body.lp-contact-page #main-content .et_pb_column_1 { display: grid; grid-template-columns: .8fr 1.5fr; column-gap: 56px; row-gap: 24px; align-items: start; }
body.lp-contact-page #main-content .lp-contact-intro { grid-column: 1; grid-row: 1; font-size: 16px !important; line-height: 1.65 !important; color: var(--lp-ink); padding: 0 !important; margin: 0 !important; }
body.lp-contact-page .lp-contact-intro p { padding-bottom: 16px; }
body.lp-contact-page #main-content .lp-contact-form { grid-column: 2; grid-row: 1 / 3; width: 100%; min-width: 0; margin: 0 !important; padding: 32px !important; background: var(--lp-aqua-pale); border-radius: 8px; }
body.lp-contact-page .lp-contact-form .gform_heading { margin-bottom: 22px; }
body.lp-contact-page .lp-contact-form .gform_title { color: var(--lp-navy); font-size: 30px !important; line-height: 1.2; margin-bottom: 12px; }
body.lp-contact-page .lp-contact-form .gform_required_legend { font-size: 14px; line-height: 1.5; }
body.lp-contact-page #gform_wrapper_12.gform-theme { --gf-color-primary: #093850; --gf-color-primary-rgb: 9, 56, 80; --gf-ctrl-label-font-size-primary: 15px; --gf-ctrl-label-font-size-secondary: 13px; }
body.lp-contact-page #gform_wrapper_12 .gform_fields { row-gap: 24px; }
body.lp-contact-page #gform_wrapper_12 input:not([type=hidden]) { min-height: 46px; font-size: 16px; background: white; border-color: #c1d4db; box-shadow: none; border-radius: 4px; }
body.lp-contact-page #gform_wrapper_12 .gfield_label { font-size: 15px; }
body.lp-contact-page #gform_wrapper_12 .ginput_complex label { font-size: 13px; }
body.lp-contact-page #gform_wrapper_12 [type=submit] { min-height: 48px; padding: 13px 28px; background: var(--lp-amber); color: var(--lp-navy); border: 1px solid var(--lp-amber); font-family: Montserrat, Helvetica, Arial, sans-serif; font-weight: 700; border-radius: 5px; cursor: pointer; }
body.lp-contact-page #gform_wrapper_12 [type=submit]:hover { background: #f3aa2e; }
body.lp-contact-page .lp-sms-details { grid-column: 1; grid-row: 2; font-size: 14px; line-height: 1.65; color: var(--lp-ink); border-top: 1px solid var(--lp-line); padding-top: 22px; }
body.lp-contact-page .lp-sms-details p { padding-bottom: 12px; }
body.lp-contact-page .lp-sms-details p:first-child { color: var(--lp-navy); font-size: 15px; }

@media (max-width: 980px) {
  body.lp-services-page #main-content .et_pb_column_1 { gap: 28px; }
  body.lp-services-page .lp-site-services { gap: 0 32px; }
  body.lp-services-page #main-content .lp-system-services .et_pb_row { column-gap: 32px; }
  body.lp-services-page #main-content .lp-project-services .et_pb_row { grid-template-columns: .9fr 1.3fr; gap: 24px 32px; }
  body.lp-services-page #main-content .lp-project-services .lp-service-media { grid-column: 1; grid-row: 2; }
  body.lp-services-page #main-content .lp-project-services .et_pb_text { grid-row: 1 / 3; }
  body.lp-contact-page #main-content .et_pb_column_1 { column-gap: 30px; grid-template-columns: .8fr 1.25fr; }
  body.lp-contact-page #main-content .lp-contact-form { padding: 26px !important; }
}
@media (max-width: 700px) {
  body.lp-services-page #main-content .et_pb_section_1 { padding-top: 44px !important; }
  body.lp-services-page #main-content .et_pb_row_1 { width: calc(100% - 40px) !important; }
  body.lp-services-page #main-content .et_pb_column_1 { display: block; }
  body.lp-services-page #main-content .et_pb_heading_1 { margin-bottom: 20px !important; }
  body.lp-services-page .lp-services-lead { font-size: 17px; }
  body.lp-services-page .lp-service-index { width: calc(100% - 40px); gap: 4px 24px; margin-bottom: 42px; padding-top: 8px; }
  body.lp-services-page .lp-service-index a { font-size: 14px; }
  body.lp-services-page .lp-service-group { padding: 48px 20px; }
  body.lp-services-page .lp-service-group-heading { margin-bottom: 30px; }
  body.lp-services-page .lp-service-group-heading h2 { font-size: 31px; }
  body.lp-services-page .lp-site-services { display: block; }
  body.lp-services-page #main-content .lp-site-services .lp-service-item + .lp-service-item { margin-top: 38px !important; border-top: 1px solid var(--lp-line); padding-top: 32px !important; }
  body.lp-services-page #main-content .lp-service-item h3 { font-size: 25px !important; }
  body.lp-services-page #main-content .lp-service-item .et_pb_text { font-size: 16px !important; }
  body.lp-services-page #main-content .lp-system-services .et_pb_row { display: flex; flex-direction: column; gap: 26px; }
  body.lp-services-page .lp-system-services .lp-service-media { order: -1; }
  body.lp-services-page #main-content .lp-project-services .et_pb_row { display: grid; grid-template-columns: 1fr; gap: 20px; }
  body.lp-services-page #main-content .lp-project-services .et_pb_heading { grid-column: 1; grid-row: 1; }
  body.lp-services-page #main-content .lp-project-services .lp-service-media { grid-column: 1; grid-row: 2; }
  body.lp-services-page #main-content .lp-project-services .et_pb_text { grid-column: 1; grid-row: 3; }
  body.lp-services-page .lp-project-services img { aspect-ratio: 16 / 8; }
  body.lp-contact-page #main-content .et_pb_section_1 { padding: 36px 0 52px !important; }
  body.lp-contact-page #main-content .et_pb_row_1 { width: calc(100% - 40px) !important; }
  body.lp-contact-page #main-content .et_pb_column_1 { display: block; }
  body.lp-contact-page #main-content .lp-contact-intro { margin-bottom: 24px !important; }
  body.lp-contact-page #main-content .lp-contact-form { padding: 24px 20px !important; margin-bottom: 28px !important; }
  body.lp-contact-page .lp-contact-form .gform_title { font-size: 27px !important; }
  body.lp-contact-page .lp-sms-details { padding-top: 24px; }
}

body.lp-services-page #main-content .et_pb_section_0 h1,
body.lp-contact-page #main-content .et_pb_section_0 h1 { font-family: "Nunito Sans", Helvetica, Arial, sans-serif; font-size: 65px; font-weight: 900; line-height: 1.1; color: var(--lp-navy); text-align: left; }
@media (max-width: 700px) { body.lp-services-page #main-content .et_pb_section_0 h1, body.lp-contact-page #main-content .et_pb_section_0 h1 { font-size: 44px; } }

body.lp-services-page #main-content .lp-system-services a { color: #91e0e4 !important; text-decoration: underline; text-underline-offset: 3px; }
