/* Original Elementor layout, spacing, typography and responsive breakpoints remain authoritative. */
/* The captured phone header uses z-index: 100000; photo controls must sit above it. */
html.eeg-responsive .elementor-lightbox {
  z-index: 100001 !important;
}
.elementor-location-footer a[href^="mailto:"] .elementor-icon-list-text {
  overflow-wrap: anywhere;
  min-width: 0;
}
html.eeg-responsive .eeg-phone-label {
  display: block;
  font-size: 0.75em;
  font-weight: 500;
  line-height: 1.4;
}
html.eeg-responsive .eeg-phone-number { display: block; }
html.eeg-responsive .eeg-phone-contact {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 44px;
  color: inherit;
}
html.eeg-responsive .eeg-phone-contact + .eeg-phone-contact { margin-top: 8px; }
html.eeg-responsive .eeg-contact-options {
  display: grid;
  gap: 14px;
  padding: clamp(18px, 4vw, 28px);
  color: #20364b;
  background: #fff;
  text-align: center;
  font-size: 16px;
  line-height: 1.5;
}
html.eeg-responsive .eeg-contact-options p { margin: 0 0 4px; }
html.eeg-responsive .eeg-contact-options .eeg-contact-call {
  display: grid;
  gap: 3px;
  padding: 14px 10px;
  border: 1px solid #102f53;
  border-radius: 8px;
  background: #102f53;
  color: #fff;
  text-decoration: none;
}
html.eeg-responsive .eeg-contact-call span { font-size: 14px; }
html.eeg-responsive .eeg-contact-call strong { font-size: clamp(20px, 4vw, 24px); line-height: 1.3; }
html.eeg-responsive .eeg-contact-options .eeg-contact-secondary { color: #102f53; background: #f1f6fb; }
html.eeg-responsive .eeg-contact-options .eeg-contact-email {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  color: #102f53;
  text-decoration: underline;
  text-underline-offset: 3px;
}
html.eeg-responsive .eeg-contact-options a:focus-visible {
  outline: 3px solid #2698ec;
  outline-offset: 3px;
}

/* Keyboard focus and reduced motion do not alter page geometry. */
html.eeg-responsive :is(a, button, [role="button"], input, select, textarea):focus-visible {
  outline: 3px solid #2594f2;
  outline-offset: 4px;
}
@media (prefers-reduced-motion: reduce) {
  html.eeg-responsive *, html.eeg-responsive *::before, html.eeg-responsive *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  html.eeg-responsive .elementor-invisible { visibility: visible; }
}

/* Background repairs only: never change section geometry or text placement. */
.elementor-2894 .elementor-element.elementor-element-d1cf791, .elementor-2894 .elementor-element.elementor-element-d1cf791 > .elementor-motion-effects-container > .elementor-motion-effects-layer { background-image: url("/assets/performance/images/72db8bdb0a7404a53008.webp") !important; }
.elementor-2894 .elementor-element.elementor-element-a971cfe, .elementor-2894 .elementor-element.elementor-element-a971cfe > .elementor-motion-effects-container > .elementor-motion-effects-layer { background-image: url("/assets/performance/images/9d73570cc8f7c21fb187.webp") !important; }
.elementor-2943 .elementor-element.elementor-element-a971cfe, .elementor-2943 .elementor-element.elementor-element-a971cfe > .elementor-motion-effects-container > .elementor-motion-effects-layer { background-image: url("/assets/performance/images/427544ed0b1347c662f3.webp") !important; }
.elementor-2950 .elementor-element.elementor-element-d1cf791, .elementor-2950 .elementor-element.elementor-element-d1cf791 > .elementor-motion-effects-container > .elementor-motion-effects-layer { background-image: url("/assets/performance/images/46f3014828ffe011fae2.webp") !important; }
.elementor-2950 .elementor-element.elementor-element-a971cfe, .elementor-2950 .elementor-element.elementor-element-a971cfe > .elementor-motion-effects-container > .elementor-motion-effects-layer { background-image: url("/assets/performance/images/0d53e520100b98dc4c15.webp") !important; }
.elementor-2950 .elementor-element.elementor-element-5ab2e4f, .elementor-2950 .elementor-element.elementor-element-5ab2e4f > .elementor-motion-effects-container > .elementor-motion-effects-layer { background-image: url("/assets/performance/images/9a08526c8e7aa8bf2d3c.webp") !important; }
.elementor-3807 .elementor-element.elementor-element-e185945, .elementor-3807 .elementor-element.elementor-element-e185945 > .elementor-motion-effects-container > .elementor-motion-effects-layer { background-image: url("/assets/photos/b0e0f094bc842125.webp") !important; }
@media (max-width: 1024px) {
.elementor-2880 .elementor-element.elementor-element-d1cf791,
.elementor-2894 .elementor-element.elementor-element-d1cf791,
.elementor-2943 .elementor-element.elementor-element-d1cf791,
.elementor-2950 .elementor-element.elementor-element-d1cf791,
.elementor-2959 .elementor-element.elementor-element-d1cf791,
.elementor-2987 .elementor-element.elementor-element-f9bd542,
.elementor-3015 .elementor-element.elementor-element-b4db2b4,
.elementor-3091 .elementor-element.elementor-element-242f814,
.elementor-3148 .elementor-element.elementor-element-1d1d73a,
.elementor-3165 .elementor-element.elementor-element-4e48a90,
.elementor-3426 .elementor-element.elementor-element-d1cf791,
.elementor-3431 .elementor-element.elementor-element-d1cf791,
.elementor-3433 .elementor-element.elementor-element-d1cf791,
.elementor-3434 .elementor-element.elementor-element-d1cf791,
.elementor-3437 .elementor-element.elementor-element-d1cf791,
.elementor-3807 .elementor-element.elementor-element-02ee519,
.elementor-3933 .elementor-element.elementor-element-242f814,
.elementor-3934 .elementor-element.elementor-element-242f814,
.elementor-3935 .elementor-element.elementor-element-242f814,
.elementor-3950 .elementor-element.elementor-element-242f814,
.elementor-3951 .elementor-element.elementor-element-242f814,
.elementor-3952 .elementor-element.elementor-element-242f814,
.elementor-3953 .elementor-element.elementor-element-242f814,
.elementor-3954 .elementor-element.elementor-element-242f814,
.elementor-3975 .elementor-element.elementor-element-242f814,
.elementor-3976 .elementor-element.elementor-element-242f814,
.elementor-3986 .elementor-element.elementor-element-242f814,
.elementor-3991 .elementor-element.elementor-element-242f814,
.elementor-3996 .elementor-element.elementor-element-242f814 {
  background-attachment: scroll !important;
  background-position: center center !important;
  background-size: cover !important;
}
}

/* Consistent, readable page layouts while preserving Elite's imagery and identity. */
body.eeg-polished { color: #24394e; }
.eeg-polished .elementor-column, .eeg-polished .elementor-widget-wrap { min-width: 0; box-sizing: border-box; }
.eeg-polished [data-elementor-type="wp-page"] h2.elementor-heading-title {
  font-size: clamp(28px, 3.2vw, 44px) !important;
  line-height: 1.15 !important;
  letter-spacing: -.025em;
  overflow-wrap: break-word;
}
.eeg-polished [data-elementor-type="wp-page"] h2.eeg-eyebrow {
  font-size: 15px !important;
  line-height: 1.5 !important;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.eeg-polished [data-elementor-type="wp-page"] .elementor-widget-text-editor { font-size: 18px; line-height: 1.65; }
.eeg-polished [data-elementor-type="wp-page"] .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.eeg-polished .elementor-location-header > .elementor-section > .elementor-container {
  max-width: 1240px;
  width: calc(100% - 48px);
  margin-inline: auto;
}
.eeg-polished .elementor-menu-toggle { min-height: 44px; min-width: 44px; align-items: center; justify-content: center; }
.eeg-polished .elementor-location-header .elementor-nav-menu--dropdown { background: #112f50; }
.eeg-polished .elementor-location-header .elementor-nav-menu--dropdown a.elementor-item { color: #fff !important; background: #112f50 !important; }
.eeg-polished .elementor-location-header .elementor-nav-menu--dropdown a.elementor-sub-item { color: #112f50 !important; background: #eef5fb !important; }
.eeg-polished .elementor-location-header .elementor-nav-menu--dropdown a:is(:hover,:focus-visible) { color: #fff !important; background: #216599 !important; }
.eeg-polished .elementor .eeg-hero { min-height: 0; padding: 120px 24px 86px; }
.eeg-polished .elementor .eeg-hero > .elementor-container { min-height: 300px; max-width: 1200px; }
.eeg-polished .elementor .eeg-hero :is(h1,h2).elementor-heading-title {
  font-size: clamp(32px, 5vw, 64px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em;
  text-wrap: balance;
  max-width: 1080px;
  margin-inline: auto;
}
.eeg-polished .elementor .eeg-hero .elementor-widget-text-editor { font-size: clamp(17px, 1.8vw, 23px); line-height: 1.5; }
.eeg-polished .elementor .eeg-hero .elementor-widget-text-editor p { max-width: 70ch; margin-inline: auto; }
.eeg-polished .elementor-2553 .eeg-hero { padding-bottom: 140px; }

/* Residential hero: retain the original photo as a full, uncropped background. */
.page-id-2880.eeg-polished .elementor-2880 .eeg-hero {
  box-sizing: border-box;
  min-height: 75.11vw !important;
  margin-top: -100px !important;
  padding: clamp(160px, 13vw, 240px) 24px 92px !important;
  background-color: #0e2e53 !important;
  background-image: url("/wp-content/uploads/2020/03/Sunsetview-07.jpg") !important;
  background-position: center top !important;
  background-size: 100% auto !important;
  background-repeat: no-repeat !important;
  background-attachment: scroll !important;
}
.page-id-2880.eeg-polished .elementor-2880 .eeg-hero > .elementor-container {
  min-height: 0 !important;
}
.page-id-2880.eeg-polished .elementor-2880 .eeg-hero::before {
  display: none !important;
}
.page-id-2880.eeg-polished .elementor-2880 .eeg-hero > .elementor-background-overlay {
  background: linear-gradient(180deg, rgba(5, 19, 35, .66) 0%, rgba(5, 19, 35, .38) 58%, rgba(5, 19, 35, .14) 100%) !important;
  opacity: 1 !important;
}
@media (max-width: 767px) {
  .page-id-2880.eeg-polished .elementor-location-header,
  .page-id-2880.eeg-polished .elementor-location-header > .elementor-section {
    background: transparent !important;
  }
  .page-id-2880.eeg-polished .elementor-2880 .eeg-hero {
    min-height: 75.11vw !important;
    margin-top: -100px !important;
    padding: 105px 20px 0 !important;
    background-position: center top !important;
    background-size: contain !important;
  }
  .page-id-2880.eeg-polished .elementor-2880 .eeg-hero > .elementor-background-overlay {
    background: rgba(5, 19, 35, .66) !important;
  }
}
@media (max-width: 430px) {
  .page-id-2880.eeg-polished .elementor-2880 .eeg-hero .elementor-widget-wrap {
    padding: 0 !important;
  }
  .page-id-2880.eeg-polished .elementor-2880 .eeg-hero .elementor-widget-heading,
  .page-id-2880.eeg-polished .elementor-2880 .eeg-hero .elementor-widget-text-editor {
    margin-bottom: 10px !important;
  }
  .page-id-2880.eeg-polished .elementor-2880 .eeg-hero h1.elementor-heading-title {
    font-size: 26px !important;
    line-height: 1.05 !important;
  }
  .page-id-2880.eeg-polished .elementor-2880 .eeg-hero .elementor-widget-text-editor {
    font-size: 14px !important;
    line-height: 1.35 !important;
  }
}
@media (max-width: 360px) {
  .page-id-2880.eeg-polished .elementor-2880 .eeg-hero {
    background-size: 100% 100% !important;
  }
}
.eeg-polished .elementor .eeg-split-section { padding: 72px 28px !important; min-height: 0 !important; }
.eeg-polished .elementor .eeg-split-section > .elementor-container {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 48px;
  width: 100%;
  max-width: 1200px;
  min-height: 0;
  align-items: center;
}
.eeg-polished .elementor .eeg-split-section > .elementor-container > .elementor-column { width: 100% !important; }
.eeg-polished .elementor .eeg-split-section > .elementor-container > .elementor-column > .elementor-widget-wrap {
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0;
  align-content: center;
}
.eeg-polished .eeg-split-section .elementor-widget-image img { width: 100%; height: auto; max-height: 560px; object-fit: cover; border-radius: 22px; }
.eeg-polished .elementor .eeg-equal-columns { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.eeg-polished .elementor .eeg-equal-columns > .elementor-column { width: 100% !important; margin: 0 !important; }
.eeg-polished .elementor .eeg-equal-columns > .elementor-column > .elementor-widget-wrap { width: 100%; margin: 0 !important; }
.eeg-polished .elementor-accordion .elementor-tab-title { padding: 20px !important; font-size: 18px; line-height: 1.45; }
.eeg-polished .elementor-accordion .elementor-tab-content { padding: 4px 20px 22px !important; font-size: 17px; line-height: 1.65; }
.eeg-polished .elementor-accordion .elementor-accordion-item { border-color: #dfe7ef; }
.eeg-polished .elementor-button, .eeg-polished .premium-button { min-height: 46px; }
.eeg-polished .elementor-location-footer .elementor-icon-list-text { overflow-wrap: anywhere; }
.eeg-polished .elementor-location-footer .elementor-icon-list-item a { min-width: 0; }
.eeg-polished .elementor-location-footer .elementor-widget-text-editor { font-size: 16px; line-height: 1.7; }
.eeg-polished .elementor-form input:not([type="checkbox"]):not([type="radio"]), .eeg-polished .elementor-form select { min-height: 48px; font-size: 16px; }
.eeg-polished [id="form"] { scroll-margin-top: 110px; }
/* The legacy confirmation page had white copy on white and negative margins. */
.page-id-3747.eeg-polished .elementor-location-header { background: #112f50; }
.eeg-polished .elementor-3747 .eeg-hero { background: #112f50; padding: 72px 24px !important; }
.eeg-polished .elementor-3747 .eeg-hero > .elementor-container { min-height: 260px !important; }
.eeg-polished .elementor-3747 .eeg-hero .elementor-widget-wrap { padding: 0; gap: 20px; }
.eeg-polished .elementor-3747 .eeg-hero .elementor-widget-container { margin: 0 !important; }
.eeg-polished .elementor-3747 .eeg-hero .elementor-widget { margin-bottom: 0; }
.eeg-polished .elementor-3747 .eeg-hero h1 { color: #fff; font-family: "Figtree", Arial, sans-serif; font-weight: 700; font-size: clamp(32px, 4.5vw, 56px) !important; line-height: 1.12 !important; margin: 0 auto; max-width: 900px; }
.eeg-polished .elementor-3747 .eeg-hero p { color: #e2edf6; font-family: "Figtree", Arial, sans-serif; font-size: 19px; line-height: 1.6; margin: 0 auto; }
.eeg-polished .elementor-3747 .eeg-hero .elementor-invisible { visibility: visible; }
@media (max-width: 1100px) {
  .eeg-polished .elementor .eeg-equal-columns { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .eeg-polished .elementor .eeg-split-section > .elementor-container { gap: 32px; }
  .eeg-polished .elementor .eeg-hero > .elementor-container { min-height: 260px; }
}
@media (max-width: 900px) {
  .eeg-polished .elementor .eeg-split-section > .elementor-container { grid-template-columns: minmax(0,1fr); }
  .eeg-polished .elementor .eeg-split-section { padding: 48px 24px !important; }
  .eeg-polished .eeg-split-section .elementor-widget-image img { max-height: 460px; object-fit: cover; }
}
@media (max-width: 767px) {
  .eeg-polished .elementor-location-header > .elementor-section > .elementor-container { width: calc(100% - 32px); }
  .eeg-polished .elementor .eeg-hero { padding: 100px 20px 64px; }
  .eeg-polished .elementor .eeg-hero > .elementor-container { min-height: 240px; }
  .eeg-polished .elementor-2553 .eeg-hero { padding-bottom: 72px; }
  .eeg-polished .elementor .eeg-equal-columns { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .eeg-polished .elementor .eeg-split-section { padding: 40px 20px !important; }
  .eeg-polished [data-elementor-type="wp-page"] .elementor-widget-text-editor { font-size: 17px; }
  .eeg-polished .elementor-accordion .elementor-tab-title { font-size: 16px; padding: 18px 14px !important; }
  .eeg-polished .elementor-accordion .elementor-tab-content { padding: 0 14px 18px !important; font-size: 16px; }
}

/* Service directory photos: complete cover images and labels visible on touch. */
.elementor .elementor-widget-premium-addon-banner.eeg-service-photo-widget { height:100%; margin-bottom:0; }
.elementor .eeg-service-photo-widget > .elementor-widget-container { height:100%; }
.elementor .eeg-service-photo-widget .premium-banner-ib.eeg-service-photo-card {
  display:grid; position:relative; isolation:isolate; width:100%; height:100%; min-height:380px;
  margin:0; overflow:hidden; border-radius:20px; background:#112f50; text-align:left;
}
.elementor .eeg-service-photo-widget .eeg-service-photo-card::before {
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg,rgba(9,28,48,.08) 0%,rgba(9,28,48,.18) 25%,rgba(9,28,48,.78) 61%,rgba(9,28,48,.96) 100%);
}
.elementor .eeg-service-photo-widget .premium-banner-ib.eeg-service-photo-card .premium-banner-img {
  position:absolute; inset:0; display:block; width:100% !important; min-width:100%; max-width:100% !important;
  height:100% !important; max-height:none; object-fit:cover; object-position:center; border-radius:0;
  opacity:1 !important; transform:none !important; filter:none !important; transition:none;
}
.elementor .eeg-service-photo-widget .premium-banner-ib.eeg-service-photo-card .premium-banner-ib-desc {
  position:relative; align-self:end; top:auto; bottom:auto; inset-inline-start:auto; z-index:2;
  width:100%; height:auto; min-height:0; max-height:none; padding:140px 26px 28px;
  text-align:left; transform:none; pointer-events:none;
}
.elementor .eeg-service-photo-widget .eeg-service-photo-card .premium-banner-ib-desc .premium-banner-ib-title {
  position:static; margin:0 0 12px; padding:0; color:#fff; background:none;
  font:700 28px/1.18 "Figtree",Arial,sans-serif; letter-spacing:-.4px; text-align:left;
  transform:none !important; opacity:1 !important; transition:none; overflow-wrap:break-word;
}
.elementor .eeg-service-photo-widget .eeg-service-photo-card .premium-banner-ib-desc .premium-banner-ib-content {
  position:static; margin:0; padding:0; height:auto; max-height:none; color:#eef5fb;
  font:400 16px/1.5 "Figtree",Arial,sans-serif; text-align:left;
  transform:none !important; opacity:1 !important; transition:none;
}
.elementor .eeg-service-photo-widget .eeg-service-photo-card .premium-banner-ib-content p { margin:0; font:inherit; color:inherit; }
.elementor .eeg-service-photo-widget .eeg-service-photo-card .premium-banner-ib-link {
  position:absolute; inset:0; display:block; width:100%; height:100%; z-index:3;
  opacity:1; text-indent:0; border:0; border-radius:inherit; background:transparent;
}
.elementor .eeg-service-photo-widget .eeg-service-photo-card .premium-banner-ib-link::after {
  content:"↗"; position:absolute; top:22px; right:22px; display:grid; place-items:center;
  width:42px; height:42px; border:1px solid #ffffffa6; border-radius:50%;
  background:#102f534d; color:#fff; font:400 23px/1 "Figtree",Arial,sans-serif; text-indent:0;
}
.elementor .eeg-service-photo-widget .eeg-service-photo-card .premium-banner-ib-link:hover::after { background:#176bb4; border-color:#fff; }
.elementor .eeg-service-photo-widget .eeg-service-photo-card .premium-banner-ib-link:focus-visible { outline:3px solid #fff; outline-offset:-7px; box-shadow:inset 0 0 0 4px #176bb4; }
.elementor .elementor-element.eeg-services-intro-with-card > .elementor-container {
  display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:center; gap:36px;
}
.elementor .elementor-element.eeg-services-intro-with-card > .elementor-container > .elementor-column { width:100% !important; min-width:0; }
.elementor .elementor-element.eeg-services-intro-with-card > .elementor-container > .elementor-column > .elementor-widget-wrap { padding:0 !important; margin:0; }
@media(max-width:1100px) {
  .elementor .eeg-service-photo-widget .eeg-service-photo-card .premium-banner-ib-desc .premium-banner-ib-title { font-size:25px; }
  .elementor .eeg-service-photo-widget .premium-banner-ib.eeg-service-photo-card .premium-banner-ib-desc { padding:130px 23px 25px; }
}
@media(max-width:1024px) {
  .elementor .elementor-element.eeg-services-intro-with-card > .elementor-container { grid-template-columns:minmax(0,1fr); gap:28px; }
  .elementor .eeg-services-intro-with-card .premium-banner-ib.eeg-service-photo-card { min-height:340px; }
}
@media(max-width:767px) {
  .elementor .eeg-service-photo-widget .premium-banner-ib.eeg-service-photo-card { min-height:350px; border-radius:18px; }
  .elementor .eeg-service-photo-widget .premium-banner-ib.eeg-service-photo-card .premium-banner-ib-desc { padding:130px 22px 24px; }
  .elementor .eeg-service-photo-widget .eeg-service-photo-card .premium-banner-ib-desc .premium-banner-ib-title { font-size:24px; }
}

/* Content restored to formerly empty service and project sections. */
.elementor .elementor-element.eeg-offerings-section > .elementor-container { min-height:0; }
.eeg-offerings-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; width:100%; margin-top:30px; }
.eeg-offerings-grid,.eeg-offerings-grid * { box-sizing:border-box; }
.eeg-offerings-grid .eeg-offering-card { display:flex; flex-direction:column; align-items:flex-start; min-width:0; padding:28px; border:1px solid #dce7f0; border-radius:18px; background:#fff; box-shadow:0 8px 24px #102f5305; text-align:left; }
.eeg-offerings-grid .eeg-offering-card::before { content:""; width:36px; height:4px; margin-bottom:22px; border-radius:4px; background:#238dcc; }
.eeg-offerings-grid .eeg-offering-card h3 { margin:0 0 12px; color:#102f53; font:700 23px/1.25 "Figtree",Arial,sans-serif; letter-spacing:-.35px; overflow-wrap:break-word; }
.eeg-offerings-grid .eeg-offering-card p { margin:0 0 20px; color:#4d6172; font:400 16px/1.6 "Figtree",Arial,sans-serif; }
.eeg-offerings-grid .eeg-offering-card p:last-child { margin-bottom:0; }
.eeg-offerings-grid .eeg-offering-link { display:inline-flex; align-items:center; justify-content:space-between; gap:18px; margin-top:auto; min-height:44px; color:#125e97; font:700 15px/1.4 "Figtree",Arial,sans-serif; text-decoration:none; }
.eeg-offerings-grid .eeg-offering-link:hover { color:#0e2e53; text-decoration:underline; text-underline-offset:4px; }
.eeg-offering-link:focus-visible,.eeg-project-feature a:focus-visible { outline:3px solid #238dcc; outline-offset:5px; }
.elementor .eeg-content-photo-column { min-width:0; }
.elementor .eeg-content-photo-column > .eeg-content-photo-wrap { align-content:center; }
.elementor .eeg-project-feature { position:relative; width:100%; margin:0; border-radius:22px; background:#173d61; overflow:hidden; }
.elementor .eeg-project-feature a { display:block; color:#fff; }
.elementor .eeg-project-feature img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border-radius:0; }
.elementor .eeg-project-feature figcaption { position:absolute; inset:auto 0 0; display:flex; justify-content:space-between; align-items:flex-end; gap:20px; margin:0; padding:64px 26px 25px; color:#fff; text-align:left; background:linear-gradient(transparent,rgba(9,28,48,.87)); pointer-events:none; }
.elementor .eeg-project-feature figcaption small { display:block; margin-bottom:7px; font:600 11px/1.4 "Figtree",Arial,sans-serif; letter-spacing:1.6px; }
.elementor .eeg-project-feature figcaption strong { display:block; font:700 27px/1.2 "Figtree",Arial,sans-serif; }
.elementor .eeg-project-feature-arrow { display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; border:1px solid #ffffff80; border-radius:50%; font:400 24px/1 "Figtree",Arial,sans-serif; }
.elementor .eeg-project-feature a:focus-visible { outline-offset:-5px; }
@media(max-width:1024px) {
  .eeg-offerings-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
  .eeg-offerings-grid .eeg-offering-card { padding:24px; }
  .elementor .eeg-project-feature figcaption { padding:56px 20px 20px; }
}
@media(max-width:767px) {
  .eeg-offerings-grid { grid-template-columns:minmax(0,1fr); gap:16px; margin-top:22px; }
  .eeg-offerings-grid .eeg-offering-card { padding:24px; }
  .eeg-offerings-grid .eeg-offering-card::before { margin-bottom:18px; }
  .elementor .eeg-content-photo-column > .eeg-content-photo-wrap { padding:0; margin:0; }
  .elementor .eeg-project-feature { border-radius:18px; }
  .elementor .eeg-project-feature img { aspect-ratio:4/3; }
  .elementor .eeg-project-feature figcaption strong { font-size:24px; }
}

/* Shared inquiry and review presentation. Only transformer-tagged sections match. */
html.eeg-responsive .elementor .eeg-contact-shell {
  padding: 80px 28px !important;
  margin: 0 !important;
  min-height: 0 !important;
  background: #f4f7fa !important;
  border-radius: 0 !important;
}
html.eeg-responsive .elementor .eeg-contact-shell > .elementor-container {
  width: 100% !important;
  max-width: 1200px !important;
  min-height: 0 !important;
  margin-inline: auto !important;
}
html.eeg-responsive .elementor .eeg-contact-shell-wrapper {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html.eeg-responsive .elementor .eeg-contact-layout:not(.eeg-contact-shell) {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html.eeg-responsive .elementor .eeg-contact-columns {
  display: grid !important;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
  align-items: start !important;
  gap: 40px;
  width: 100% !important;
  max-width: 1200px !important;
  min-height: 0 !important;
  margin-inline: auto !important;
}
html.eeg-responsive .elementor .eeg-contact-layout--form-last > .eeg-contact-columns {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr);
}
html.eeg-responsive .elementor .eeg-contact-layout--single > .eeg-contact-columns {
  grid-template-columns: minmax(0, 1fr);
  max-width: 760px !important;
}
html.eeg-responsive .elementor .eeg-contact-columns > .elementor-column {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html.eeg-responsive .elementor .eeg-contact-columns > .elementor-column > .elementor-widget-wrap {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  align-content: start !important;
}
html.eeg-responsive .elementor .eeg-contact-form-column {
  background: transparent !important;
}
html.eeg-responsive .elementor .eeg-contact-form-column > .elementor-widget-wrap > .elementor-widget {
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 20px !important;
}
html.eeg-responsive .elementor .eeg-contact-form-column > .elementor-widget-wrap > .elementor-widget > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}
html.eeg-responsive .elementor .eeg-contact-form-column > .elementor-widget-wrap > .elementor-widget-heading .elementor-heading-title {
  color: #123257 !important;
  font-size: clamp(28px, 2.5vw, 38px) !important;
  line-height: 1.15 !important;
  text-align: left !important;
  letter-spacing: -.02em;
}
html.eeg-responsive .elementor .eeg-contact-form-column > .elementor-widget-wrap > .elementor-widget-text-editor {
  color: #4d6175 !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
  text-align: left !important;
}
html.eeg-responsive .elementor .eeg-contact-form-widget,
html.eeg-responsive .elementor .eeg-contact-form-widget > .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html.eeg-responsive .elementor .eeg-contact-companion {
  overflow: hidden;
  border-radius: 24px !important;
  background: #0e2e53 !important;
  color: #fff;
}
html.eeg-responsive .elementor .eeg-contact-columns > .eeg-contact-companion > .elementor-widget-wrap {
  padding: 30px !important;
}
html.eeg-responsive .elementor .eeg-contact-reviews > .elementor-widget-wrap > .elementor-widget-heading {
  margin: 0 0 24px !important;
}
html.eeg-responsive .elementor .eeg-contact-reviews > .elementor-widget-wrap > .elementor-widget-heading .elementor-heading-title {
  color: #fff !important;
  font-size: 28px !important;
  line-height: 1.2 !important;
  text-align: left !important;
}
/* Give the review panel the same calm spacing and scale on every service page. */
html.eeg-responsive .elementor .eeg-contact-reviews {
  border-radius: 20px !important;
  background: #102f52 !important;
}
html.eeg-responsive .elementor .eeg-contact-columns > .eeg-contact-reviews > .elementor-widget-wrap {
  padding: clamp(22px, 3vw, 34px) !important;
}
html.eeg-responsive .elementor .eeg-contact-reviews > .elementor-widget-wrap > .elementor-widget-heading {
  margin: 0 0 20px !important;
}
html.eeg-responsive .elementor .eeg-contact-reviews > .elementor-widget-wrap > .elementor-widget-heading .elementor-heading-title {
  font-size: clamp(23px, 2vw, 27px) !important;
  font-weight: 700 !important;
  letter-spacing: -.025em;
}
html.eeg-responsive .elementor .eeg-contact-information .elementor-section,
html.eeg-responsive .elementor .eeg-contact-information .elementor-container,
html.eeg-responsive .elementor .eeg-contact-information .elementor-column,
html.eeg-responsive .elementor .eeg-contact-information .elementor-widget-wrap {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}
html.eeg-responsive .elementor .eeg-contact-information .elementor-section,
html.eeg-responsive .elementor .eeg-contact-information .elementor-container,
html.eeg-responsive .elementor .eeg-contact-information .elementor-column,
html.eeg-responsive .elementor .eeg-contact-information .elementor-column > .elementor-widget-wrap {
  padding: 0 !important;
  background: transparent !important;
}
html.eeg-responsive .elementor .eeg-contact-information .elementor-background-overlay { display: none; }
html.eeg-responsive .elementor .eeg-contact-information .elementor-widget-spacer { display: none; }
html.eeg-responsive .elementor .eeg-contact-information .elementor-widget-heading .elementor-heading-title {
  color: #fff !important;
  font-size: 30px !important;
  line-height: 1.2 !important;
}
html.eeg-responsive .elementor .eeg-contact-information .elementor-widget-text-editor,
html.eeg-responsive .elementor .eeg-contact-information .elementor-icon-list-text {
  color: #e2eaf3 !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
  overflow-wrap: anywhere;
}
html.eeg-responsive .elementor .eeg-contact-information .elementor-widget-button { margin-bottom: 28px; }
html.eeg-responsive .elementor .eeg-contact-information .elementor-icon-list-icon { align-self: flex-start; padding-top: 5px; }
html.eeg-responsive .elementor .eeg-contact-information .elementor-icon-list-icon i { color: #69c0ff !important; }

/* Retain the Elementor carousel and pagination; make each quote a compact card. */
html.eeg-responsive .elementor .eeg-readable-reviews,
html.eeg-responsive .elementor .eeg-readable-reviews > .elementor-widget-container,
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-swiper {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-main-swiper {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 0 44px !important;
  overflow: hidden;
}
html.eeg-responsive .elementor .eeg-readable-reviews .swiper-wrapper { align-items: flex-start !important; }
html.eeg-responsive .elementor .eeg-readable-reviews .swiper-slide { height: auto !important; }
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial {
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  padding: clamp(22px, 2.5vw, 30px) !important;
  margin: 0 !important;
  border: 1px solid #e1e8ef !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #24394e !important;
  box-shadow: 0 10px 28px rgba(3, 25, 49, .1) !important;
  text-align: left !important;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__header {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 12px;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border: 0 !important;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__image {
  display: grid !important;
  place-items: center;
  flex: 0 0 42px !important;
  width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
  overflow: hidden;
  border-radius: 50%;
  background: #e6eff5;
  color: #234966;
  font: 700 16px/1 "Figtree", Arial, sans-serif;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__image[data-eeg-review-initial]::before {
  content: attr(data-eeg-review-initial);
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__image[data-eeg-review-initial] img {
  display: none !important;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__cite {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  margin: 0 !important;
  font-style: normal;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__name {
  display: block;
  margin: 0 0 5px !important;
  color: #173754 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  overflow-wrap: normal;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-star-rating {
  display: inline-flex !important;
  flex-wrap: nowrap !important;
  gap: 2px;
  width: max-content !important;
  margin: 0 !important;
  color: #bd7a16 !important;
  font-size: 15px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-star-rating i {
  flex: 0 0 auto !important;
  margin: 0 !important;
  font-size: inherit !important;
  line-height: 1 !important;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__icon {
  flex: 0 0 20px !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__icon svg {
  width: 20px !important;
  height: 20px !important;
}
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__content,
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__text {
  padding: 0 !important;
  margin: 0 !important;
  color: #344b60 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  text-align: left !important;
  overflow-wrap: anywhere;
}
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-excerpt { margin: 0 0 14px; }
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-disclosure { margin: 0; }
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-disclosure summary {
  width: fit-content;
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  cursor: pointer;
  color: #155686;
  background: #edf5fa;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 650;
  text-decoration: none;
  list-style: none;
}
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-disclosure summary::-webkit-details-marker { display: none; }
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-disclosure summary::after { content: '+'; font-size: 18px; line-height: 1; }
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-disclosure[open] summary::after { content: '−'; }
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-disclosure summary:hover { background: #e0eff8; }
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-disclosure summary:focus-visible { outline: 3px solid #2594f2; outline-offset: 4px; border-radius: 4px; }
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-close-label,
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-disclosure[open] .eeg-review-open-label { display: none; }
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-disclosure[open] .eeg-review-close-label { display: inline; }
html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__text:has(.eeg-review-disclosure[open]) > .eeg-review-excerpt { display: none; }
html.eeg-responsive .elementor .eeg-readable-reviews .eeg-review-full { margin-top: 12px; }
html.eeg-responsive .elementor .eeg-readable-reviews .swiper-pagination {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 2px;
  bottom: 0 !important;
}
html.eeg-responsive .elementor .eeg-readable-reviews .swiper-pagination-bullet {
  display: grid;
  place-items: center;
  flex: 0 0 40px;
  width: 40px !important;
  height: 40px !important;
  margin: 0 !important;
  border: 0;
  border-radius: 8px;
  background: transparent !important;
  opacity: 1 !important;
}
html.eeg-responsive .elementor .eeg-readable-reviews .swiper-pagination-bullet::before {
  content: '';
  display: block;
  width: 7px;
  height: 7px;
  border-radius: 99px;
  background: #a9bed1;
  transition: width .2s ease, background-color .2s ease;
}
html.eeg-responsive .elementor .eeg-readable-reviews .swiper-pagination-bullet-active::before {
  width: 20px;
  background: #fff;
}
html.eeg-responsive .elementor .eeg-readable-reviews .swiper-pagination-bullet:hover::before { background: #fff; }
html.eeg-responsive .elementor .eeg-readable-reviews .swiper-pagination-bullet:focus-visible { outline: 2px solid #fff; outline-offset: -2px; }

/* One complete preserved client review fills the previously empty homepage slot. */
html.eeg-responsive .elementor .eeg-featured-review-column { min-width: 0; }
html.eeg-responsive .elementor .eeg-featured-review-column > .elementor-widget-wrap { padding: 0 0 0 32px !important; align-content: start !important; }
html.eeg-responsive .elementor .eeg-featured-review {
  width: 100%;
  margin: 0;
  padding: 34px;
  border: 1px solid #dbe6f0;
  border-radius: 24px;
  background: #fff;
  color: #233e57;
  text-align: left;
}
html.eeg-responsive .elementor .eeg-featured-review-stars { color: #b97713; font-size: 23px; letter-spacing: 3px; white-space: nowrap; margin-bottom: 20px; }
html.eeg-responsive .elementor .eeg-featured-review blockquote { padding: 0; margin: 0 0 24px; border: 0; color: #304c63; font-size: 18px; line-height: 1.7; font-style: normal; }
html.eeg-responsive .elementor .eeg-featured-review blockquote p:last-child { margin-bottom: 0; }
html.eeg-responsive .elementor .eeg-featured-review figcaption { display: flex; flex-direction: column; gap: 4px; padding-top: 20px; border-top: 1px solid #dde7f0; font-size: 16px; line-height: 1.5; }
html.eeg-responsive .elementor .eeg-featured-review figcaption span { color: #61778b; font-size: 14px; }
html.eeg-responsive .elementor .eeg-featured-review-source { display: inline-flex; align-items: center; min-height: 44px; gap: 8px; margin-top: 8px; color: #145d99; font-size: 15px; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
html.eeg-responsive .elementor .eeg-featured-review-source:focus-visible { outline: 3px solid #2594f2; outline-offset: 4px; }

@media (max-width: 1100px) {
  html.eeg-responsive .elementor .eeg-contact-columns,
  html.eeg-responsive .elementor .eeg-contact-layout--form-last > .eeg-contact-columns {
    grid-template-columns: minmax(0, 1fr);
    max-width: 760px !important;
    gap: 32px;
  }
  html.eeg-responsive .elementor .eeg-contact-shell > .elementor-container { max-width: 760px !important; }
  html.eeg-responsive .elementor .eeg-contact-columns > .eeg-contact-companion > .elementor-widget-wrap { padding: 30px !important; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial { padding: 26px !important; }
}
@media (max-width: 767px) {
  html.eeg-responsive .elementor .eeg-contact-shell { padding: 48px 20px !important; }
  html.eeg-responsive .elementor .eeg-contact-columns { gap: 28px; }
  html.eeg-responsive .elementor .eeg-contact-companion { border-radius: 20px !important; }
  html.eeg-responsive .elementor .eeg-contact-columns > .eeg-contact-companion > .elementor-widget-wrap { padding: 22px !important; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial { padding: 22px !important; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__header { gap: 10px; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__name { font-size: 16px !important; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__text { font-size: 15px !important; }
  html.eeg-responsive .elementor .eeg-featured-review-column > .elementor-widget-wrap { padding: 24px 0 0 !important; }
  html.eeg-responsive .elementor .eeg-featured-review { padding: 24px; border-radius: 20px; }
  html.eeg-responsive .elementor .eeg-featured-review blockquote { font-size: 17px; }
}
@media (max-width: 380px) {
  html.eeg-responsive .elementor .eeg-contact-columns > .eeg-contact-companion > .elementor-widget-wrap { padding: 18px !important; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial { padding: 16px !important; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__header { gap: 8px; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__image,
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__image img { width: 36px !important; height: 36px !important; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__image { flex-basis: 36px !important; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__icon,
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__icon svg { width: 18px !important; height: 18px !important; }
  html.eeg-responsive .elementor .eeg-readable-reviews .elementor-testimonial__icon { flex-basis: 18px !important; }
}

/* A self-contained footer: no nested Elementor column widths or clipped email. */
footer.eeg-site-footer {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  background: #0b2542;
  color: #d5e2ee;
  font: 400 16px/1.6 "Figtree", Arial, sans-serif;
  text-align: left;
}
.eeg-site-footer *, .eeg-site-footer *::before, .eeg-site-footer *::after { box-sizing: border-box; }
.eeg-site-footer .eeg-footer-inner { width: min(100% - 48px, 1200px); margin-inline: auto; }
.eeg-site-footer .eeg-footer-main {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr);
  align-items: start;
  gap: clamp(40px, 6vw, 96px);
  padding-block: 64px 48px;
}
.eeg-site-footer :is(.eeg-footer-company, .eeg-footer-services, nav, ul, li, a) { min-width: 0; }
.eeg-site-footer a { color: inherit; text-decoration: none; text-underline-offset: 5px; }
.eeg-site-footer a:hover { color: #fff; text-decoration: underline; }
.eeg-site-footer a:focus-visible { outline: 3px solid #70c3ff; outline-offset: 5px; border-radius: 3px; }
.eeg-site-footer .eeg-footer-brand { display: inline-flex; max-width: 100%; margin-bottom: 24px; }
.eeg-site-footer .eeg-footer-brand img { display: block; width: 300px; max-width: 100%; height: auto; }
.eeg-site-footer p { margin: 0; }
.eeg-site-footer .eeg-footer-intro { max-width: 40ch; margin-bottom: 14px; font-size: 16px; line-height: 1.65; }
.eeg-site-footer .eeg-footer-region { color: #91cfff; font-size: 14px; line-height: 1.6; }
.eeg-site-footer .eeg-footer-contact {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 24px;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid #38506a;
  font-style: normal;
}
.eeg-site-footer .eeg-footer-contact a { display: block; padding-block: 2px; }
.eeg-site-footer .eeg-footer-contact a > span { display: block; color: #afc3d6; font-size: 12px; font-weight: 500; line-height: 1.5; }
.eeg-site-footer .eeg-footer-contact strong { display: block; color: #fff; font-size: 16px; font-weight: 600; line-height: 1.6; white-space: nowrap; }
.eeg-site-footer .eeg-footer-contact .eeg-footer-email {
  grid-column: 1 / -1;
  max-width: 100%;
  color: #fff;
  font-size: 16px;
  line-height: 1.7;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  overflow: visible;
  text-overflow: clip;
}
.eeg-site-footer .eeg-footer-contact p { grid-column: 1 / -1; font-size: 15px; line-height: 1.65; }
.eeg-site-footer .eeg-footer-service-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px 24px;
  margin-bottom: 32px;
  padding-bottom: 24px;
  border-bottom: 1px solid #38506a;
}
.eeg-site-footer .eeg-footer-service-heading h2 { margin: 0; color: #fff; font-size: clamp(24px, 2.3vw, 30px); font-weight: 650; line-height: 1.2; letter-spacing: -.025em; }
.eeg-site-footer .eeg-footer-project-link { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; color: #91cfff; font-weight: 600; }
.eeg-site-footer .eeg-footer-project-link span { font-size: 24px; line-height: 1; }
.eeg-site-footer .eeg-footer-service-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.eeg-site-footer nav { display: block; margin: 0; padding: 0; }
.eeg-site-footer h3 { margin: 0 0 12px; color: #fff; font-size: 15px; font-weight: 650; line-height: 1.5; letter-spacing: 0; }
.eeg-site-footer ul { list-style: none; display: block; margin: 0; padding: 0; }
.eeg-site-footer li { margin: 0; padding: 0; }
.eeg-site-footer .eeg-footer-service-groups a { display: flex; align-items: center; min-height: 44px; padding: 9px 0; font-size: 15px; font-weight: 400; line-height: 1.5; overflow-wrap: break-word; }
.eeg-site-footer .eeg-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px 32px;
  padding-block: 20px 24px;
  border-top: 1px solid #38506a;
}
.eeg-site-footer .eeg-footer-bottom ul { display: flex; flex-wrap: wrap; gap: 4px 24px; }
.eeg-site-footer .eeg-footer-bottom a { display: inline-flex; align-items: center; min-height: 44px; padding-block: 8px; font-size: 14px; font-weight: 500; }
.eeg-site-footer .eeg-footer-bottom p { color: #afc3d6; font-size: 13px; line-height: 1.6; }
@media (max-width: 1000px) {
  .eeg-site-footer .eeg-footer-main { grid-template-columns: minmax(0, 1fr); gap: 40px; padding-block: 48px 40px; }
  .eeg-site-footer .eeg-footer-company { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 40px; align-items: start; }
  .eeg-site-footer .eeg-footer-brand, .eeg-site-footer .eeg-footer-intro, .eeg-site-footer .eeg-footer-region { grid-column: 1; }
  .eeg-site-footer .eeg-footer-contact { grid-column: 2; grid-row: 1 / 4; margin-top: 0; padding-top: 0; border: 0; }
}
@media (max-width: 620px) {
  .eeg-site-footer .eeg-footer-inner { width: calc(100% - 40px); }
  .eeg-site-footer .eeg-footer-main { padding-top: 40px; gap: 36px; }
  .eeg-site-footer .eeg-footer-company { display: block; }
  .eeg-site-footer .eeg-footer-contact { margin-top: 24px; padding-top: 22px; border-top: 1px solid #38506a; }
  .eeg-site-footer .eeg-footer-service-heading { margin-bottom: 24px; padding-bottom: 20px; }
  .eeg-site-footer .eeg-footer-service-groups { gap: 24px; }
  .eeg-site-footer .eeg-footer-bottom { align-items: flex-start; padding-block: 16px 24px; gap: 12px; }
  .eeg-site-footer .eeg-footer-bottom ul { gap: 0 24px; }
}
@media (max-width: 479px) {
  .eeg-site-footer .eeg-footer-service-groups { grid-template-columns: minmax(0, 1fr); }
  .eeg-site-footer .eeg-footer-service-groups nav + nav { border-top: 1px solid #38506a; padding-top: 24px; }
}
@media (max-width: 359px) {
  .eeg-site-footer .eeg-footer-contact { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .eeg-site-footer .eeg-footer-brand img { width: 270px; }
}

/* Authentic company story and readable reviews; no plugin is needed to reveal content. */
.eeg-trust-section, .eeg-trust-section *, .eeg-about-page, .eeg-about-page * { box-sizing: border-box; }
.eeg-trust-section { padding: 88px 0; color: #142f4b; font-family: "Figtree", Arial, sans-serif; }
.eeg-trust-width { width: calc(100% - 64px); max-width: 1200px; margin-inline: auto; }
.eeg-trust-section h2 { margin: 0 0 24px; font: 750 clamp(32px, 3.5vw, 48px)/1.08 "Figtree", Arial, sans-serif; letter-spacing: -.035em; color: #0e2e53; text-wrap: balance; }
.eeg-trust-section p { margin: 0 0 18px; font-size: 18px; line-height: 1.65; }
.eeg-trust-section .eeg-trust-eyebrow { margin: 0 0 18px; color: #176bb4; font-size: 12px; line-height: 1.5; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.eeg-trust-section a { text-decoration: none; }
.eeg-trust-section a:focus-visible, .eeg-trust-section summary:focus-visible { outline: 3px solid #2693ed; outline-offset: 5px; }
.eeg-trust-about { background: #fff; }
.eeg-trust-about-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(36px, 5.5vw, 76px); }
.eeg-trust-about-grid > * { min-width: 0; }
.eeg-trust-work-photo, .eeg-trust-work-photo figure { margin: 0; }
.eeg-trust-work-photo img { display: block; width: 100%; aspect-ratio: 1.12; height: auto; object-fit: cover; object-position: 48% center; border-radius: 20px; }
.eeg-trust-work-photo figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 14px; padding-top: 14px; color: #173854; font-size: 13px; font-weight: 700; line-height: 1.45; }
.eeg-trust-work-photo figcaption span { font-weight: 400; color: #607284; }
.eeg-trust-about-copy > p:not(.eeg-trust-eyebrow) { color: #4a5b6d; }
.eeg-trust-company-facts { display: flex; flex-direction: column; gap: 8px; margin: 24px 0 30px; padding-left: 18px; border-left: 3px solid #278fe1; color: #173854; font-size: 14px; line-height: 1.45; font-weight: 600; }
.eeg-trust-section .eeg-trust-button { display: inline-flex; align-items: center; justify-content: center; gap: 28px; min-height: 52px; padding: 14px 24px; border-radius: 999px; color: #fff; background: #176bb4; border: 1px solid #176bb4; font-size: 15px; line-height: 1.4; font-weight: 700; text-align: center; transition: background .18s ease; }
.eeg-trust-section .eeg-trust-button:hover { background: #0e2e53; border-color: #0e2e53; color: #fff; }
.eeg-trust-button > span { font-size: 22px; font-weight: 400; }
.eeg-trust-section .eeg-trust-text-link { display: inline-flex; align-items: center; gap: 18px; min-height: 44px; color: #165d97; font-weight: 700; font-size: 15px; line-height: 1.5; }
.eeg-trust-text-link:hover { text-decoration: underline; text-underline-offset: 5px; }
/* Client reviews: native swipe/scroll, progressive navigation, full original text. */
.eeg-trust-reviews { background: #f3f6f8; padding-block: 72px; border-block: 1px solid #e4eaf0; }
.eeg-home-reviews-heading { margin-bottom: 28px; }
.eeg-home-reviews-heading .eeg-trust-eyebrow { margin-bottom: 12px; }
.eeg-trust-reviews #eeg-trust-reviews-title { margin: 0; color: #0e2e53; font-size: clamp(30px, 3.2vw, 42px); line-height: 1.12; font-weight: 750; letter-spacing: -.035em; text-align: left; scroll-margin-top: 120px; }
.eeg-home-review-track { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 40px) / 3); gap: 20px; align-items: start; min-width: 0; padding: 4px 2px 12px; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x proximity; scroll-padding-inline: 2px; scrollbar-width: thin; scrollbar-color: #9fb4c5 transparent; }
.eeg-home-review-track:focus-visible { outline: 2px solid #176bb4; outline-offset: 5px; border-radius: 14px; }
.eeg-trust-reviews[data-reviews-ready="true"] .eeg-home-review-track { scrollbar-width: none; }
.eeg-trust-reviews[data-reviews-ready="true"] .eeg-home-review-track::-webkit-scrollbar { display: none; }
.eeg-home-review { display: flex; flex-direction: column; min-width: 0; min-height: 322px; margin: 0; padding: 26px; border: 1px solid #dce5ec; border-radius: 16px; background: #fff; color: #263b4c; scroll-snap-align: start; box-shadow: 0 3px 12px #142f4b04; }
.eeg-home-review-author { display: flex; align-items: center; gap: 12px; margin-bottom: 22px; }
.eeg-home-review-avatar { display: grid; place-items: center; flex: 0 0 42px; width: 42px; height: 42px; background: var(--review-avatar, #62808d); border-radius: 50%; color: #fff; font-size: 17px; font-weight: 600; line-height: 1; }
.eeg-home-review-person { flex: 1; min-width: 0; }
.eeg-trust-reviews .eeg-home-review-person h3 { margin: 0 0 3px; color: #142f4b; font: 700 15px/1.35 "Figtree", Arial, sans-serif; letter-spacing: 0; overflow-wrap: anywhere; }
.eeg-trust-reviews .eeg-home-review-person p { margin: 0; color: #607284; font-size: 12px; line-height: 1.4; }
.eeg-home-review-google, .eeg-home-review-google svg { display: block; width: 20px; height: 20px; flex: 0 0 20px; }
.eeg-home-review-stars { display: block; margin-bottom: 14px; color: #b77a0b; font-size: 17px; line-height: 1; letter-spacing: 2px; white-space: nowrap; }
.eeg-trust-reviews .eeg-home-review-copy { min-width: 0; margin: 0; padding: 0; border: 0; background: transparent; color: #263b4c; font-style: normal; }
.eeg-trust-reviews .eeg-home-review-copy::before, .eeg-trust-reviews .eeg-home-review-copy::after { content: none; }
.eeg-trust-reviews .eeg-home-review-copy p { margin: 0 0 14px; color: inherit; font-size: 17px; font-weight: 400; line-height: 1.6; overflow-wrap: anywhere; }
.eeg-trust-reviews .eeg-home-review-copy p:last-child { margin-bottom: 0; }
.eeg-home-review-detail { margin-top: auto; padding-top: 12px; }
.eeg-home-review-detail > summary { display: flex; align-items: center; gap: 12px; width: fit-content; min-height: 44px; padding: 7px 0; color: #175d96; font-size: 13px; font-weight: 650; line-height: 1.5; list-style: none; cursor: pointer; }
.eeg-home-review-detail > summary::-webkit-details-marker { display: none; }
.eeg-home-review-detail > summary:hover { color: #0e2e53; text-decoration: underline; text-underline-offset: 4px; }
.eeg-review-detail-symbol::before { content: '+'; font-size: 18px; font-weight: 400; }
.eeg-home-review-detail[open] > summary .eeg-review-detail-symbol::before { content: '−'; }
.eeg-review-collapse-label, .eeg-home-review-detail[open] > summary .eeg-review-expand-label { display: none; }
.eeg-home-review-detail[open] > summary .eeg-review-collapse-label { display: inline; }
.eeg-home-review:has(> .eeg-home-review-detail[open]) > .eeg-home-review-excerpt { display: none; }
.eeg-home-review-detail[open] { margin-top: 0; padding-top: 0; }
.eeg-trust-reviews .eeg-home-review-full { margin-top: 8px; }
.eeg-home-reviews-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 16px; }
.eeg-trust-reviews .eeg-home-review-all { display: inline-flex; align-items: center; gap: 14px; min-height: 44px; padding-block: 8px; color: #0e2e53; font-size: 14px; font-weight: 650; line-height: 1.5; text-underline-offset: 4px; }
.eeg-home-review-all > span { font-size: 22px; font-weight: 400; }
.eeg-home-review-all:hover { color: #176bb4; text-decoration: underline; }
.eeg-home-review-navigation { display: flex; align-items: center; gap: 12px; }
.eeg-home-review-navigation[hidden] { display: none !important; }
.eeg-trust-reviews .eeg-home-review-navigation button { display: grid; place-items: center; flex: 0 0 46px; width: 46px; height: 46px; min-height: 46px; margin: 0; padding: 0; border: 1px solid #a6b8c8; border-radius: 50%; background: #fff; color: #0e2e53; box-shadow: none; cursor: pointer; }
.eeg-home-review-navigation button svg { display: block; width: 20px; height: 20px; }
.eeg-home-review-prev svg { transform: rotate(180deg); }
.eeg-trust-reviews .eeg-home-review-navigation button:hover:not(:disabled) { background: #0e2e53; border-color: #0e2e53; color: #fff; }
.eeg-trust-reviews .eeg-home-review-navigation button:disabled { color: #8798a8; border-color: #d5dfe8; background: transparent; cursor: default; }
.eeg-trust-reviews .eeg-home-review-navigation button:focus-visible { outline: 3px solid #176bb4; outline-offset: 4px; }
.eeg-home-review-position { min-width: 66px; color: #50677b; font-size: 13px; line-height: 1.4; text-align: center; font-variant-numeric: tabular-nums; }
/* About uses the same measured type, original project imagery and published company facts. */
body.elementor-page-3015 .elementor-location-header { background: #0e2e53; }
.eeg-about-page { font-family: "Figtree", Arial, sans-serif; background: #fff; }
.eeg-about-intro { padding: 78px 0 62px; background: #0e2e53; color: #fff; }
.eeg-about-intro .eeg-trust-eyebrow { color: #8dcbff; }
.eeg-about-intro h1 { color: #fff; font: 750 clamp(40px, 5.8vw, 78px)/1.04 "Figtree", Arial, sans-serif; letter-spacing: -.045em; margin: 0 0 30px; }
.eeg-about-intro-bottom { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.eeg-about-intro-bottom p { max-width: 620px; margin: 0; color: #dce6ef; font-size: 20px; line-height: 1.6; }
.eeg-about-intro-bottom .eeg-trust-button { flex-shrink: 0; background: #fff; border-color: #fff; color: #0e2e53; }
.eeg-about-intro-bottom .eeg-trust-button:hover { background: #dcedfa; border-color: #dcedfa; color: #0e2e53; }
.eeg-about-project-photo { position: relative; margin: 0; background: #0e2e53; }
.eeg-about-project-photo > img { display: block; width: 100%; height: clamp(320px, 42vw, 620px); object-fit: cover; object-position: center 55%; }
.eeg-about-project-photo figcaption { position: absolute; bottom: 0; inset-inline: 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 48px max(32px, calc((100% - 1200px) / 2)) 24px; background: linear-gradient(transparent, #081c32e8); color: #fff; font-size: 16px; line-height: 1.5; font-weight: 700; }
.eeg-about-project-photo figcaption a { color: #fff; text-decoration: none; font-size: 14px; font-weight: 500; }
.eeg-about-project-photo figcaption a:hover { text-decoration: underline; }
.eeg-about-project-photo figcaption a:focus-visible { outline: 3px solid #90ceff; outline-offset: 6px; }
.eeg-about-project-photo figcaption a span { margin-left: 12px; }
.eeg-about-story-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 80px; }
.eeg-about-story-copy p { color: #4a5b6d; }
.eeg-about-story-copy p:last-child { margin-bottom: 0; }
.eeg-about-work { padding-top: 0; }
.eeg-about-service-list { margin-top: 30px; border-top: 1px solid #dce5ee; }
.eeg-about-service-list a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 0; border-bottom: 1px solid #dce5ee; color: #0e2e53; font-size: 18px; line-height: 1.4; font-weight: 600; }
.eeg-about-service-list a:hover { color: #176bb4; }
.eeg-about-service-list a > span:last-child { font-size: 24px; font-weight: 400; }
.eeg-about-approach { background: #f1f5f8; }
.eeg-about-principles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; margin-top: 42px; }
.eeg-about-principles article { border-top: 2px solid #2a8edb; padding-top: 24px; }
.eeg-about-principles h3 { margin: 0 0 14px; color: #0e2e53; font-size: 24px; line-height: 1.2; font-weight: 750; }
.eeg-about-principles p { margin-bottom: 0; color: #4a5b6d; font-size: 17px; }
.eeg-about-partners { padding: 52px 0; background: #0e2e53; }
.eeg-about-partner-row { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 48px; align-items: center; }
.eeg-about-partner-row + .eeg-about-partner-row { border-top: 1px solid #ffffff26; margin-top: 28px; padding-top: 28px; }
.eeg-about-partners h2 { color: #fff; font-size: 19px; line-height: 1.3; letter-spacing: -.01em; font-weight: 650; margin: 0; }
.eeg-about-logos { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: center; gap: 28px; }
.eeg-about-logos--industry { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 700px; gap: 40px; }
.eeg-about-logos img { display: block; width: 100%; height: 74px; object-fit: contain; }
.eeg-about-closing-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 64px; align-items: center; }
.eeg-about-closing-grid p:not(.eeg-trust-eyebrow) { color: #4a5b6d; max-width: 580px; margin-bottom: 0; }
.eeg-about-closing-actions { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 14px; }
@media (max-width: 1000px) {
  .eeg-trust-section { padding-block: 64px; }
  .eeg-about-story-grid { gap: 40px; }
  .eeg-about-work { padding-top: 0; }
  .eeg-about-intro-bottom { align-items: start; flex-direction: column; gap: 24px; }
  .eeg-about-partner-row { grid-template-columns: 170px minmax(0, 1fr); gap: 28px; }
  .eeg-about-logos { gap: 20px; }
}
@media (max-width: 900px) {
  .eeg-trust-about-grid, .eeg-about-story-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .eeg-trust-work-photo img { aspect-ratio: 1.5; max-height: 520px; }
  .eeg-trust-about-copy { max-width: 660px; }
  .eeg-about-story h2 { margin-bottom: 0; }
  .eeg-about-principles { gap: 24px; }
  .eeg-about-partner-row { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}
@media (max-width: 600px) {
  .eeg-trust-width { width: calc(100% - 40px); }
  .eeg-trust-section { padding-block: 48px; }
  .eeg-trust-section h2 { font-size: 33px; line-height: 1.1; margin-bottom: 20px; }
  .eeg-trust-section p { font-size: 17px; line-height: 1.6; }
  .eeg-trust-section .eeg-trust-eyebrow { font-size: 11px; margin-bottom: 16px; }
  .eeg-trust-work-photo img { border-radius: 14px; aspect-ratio: 1.2; }
  .eeg-trust-work-photo figcaption { font-size: 12px; }
  .eeg-trust-company-facts { margin-block: 22px 26px; }
  .eeg-about-intro h1 { font-size: clamp(38px, 10vw, 56px); margin-bottom: 24px; }
  .eeg-about-intro-bottom p { font-size: 18px; }
  .eeg-about-project-photo > img { height: 330px; object-position: 56% center; }
  .eeg-about-project-photo figcaption { padding: 40px 20px 20px; font-size: 14px; }
  .eeg-about-project-photo figcaption a { font-size: 12px; }
  .eeg-about-story-grid { gap: 20px; }
  .eeg-about-work { padding-top: 0; }
  .eeg-about-service-list { margin-top: 24px; }
  .eeg-about-service-list a { font-size: 16px; padding: 18px 0; }
  .eeg-about-principles { grid-template-columns: minmax(0, 1fr); margin-top: 30px; gap: 26px; }
  .eeg-about-principles h3 { font-size: 22px; }
  .eeg-about-logos { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
  .eeg-about-logos--industry { gap: 22px; }
  .eeg-about-logos img { height: 60px; }
  .eeg-about-partners h2 { font-size: 19px; margin: 0; }
  .eeg-about-closing-grid { grid-template-columns: minmax(0, 1fr); gap: 26px; }
  .eeg-about-closing-actions { align-items: start; }
}
@media (prefers-reduced-motion: reduce) { .eeg-trust-section .eeg-trust-button { transition: none; } }

@media (max-width: 1000px) {
  .eeg-home-review-track { grid-auto-columns: calc((100% - 20px) / 2); }
}
@media (max-width: 700px) {
  .eeg-trust-reviews { padding-block: 48px; }
  .eeg-home-reviews-heading { margin-bottom: 22px; }
  .eeg-trust-reviews #eeg-trust-reviews-title { max-width: 310px; font-size: 32px; }
  .eeg-home-review-track { grid-auto-columns: calc(100% - 28px); gap: 16px; }
  .eeg-home-review { min-height: 318px; padding: 24px; border-radius: 14px; }
  .eeg-home-review-author { margin-bottom: 20px; gap: 10px; }
  .eeg-trust-reviews .eeg-home-review-copy p { font-size: 16px; line-height: 1.65; }
  .eeg-home-reviews-footer { flex-direction: column-reverse; align-items: stretch; gap: 12px; margin-top: 10px; }
  .eeg-home-review-navigation { justify-content: space-between; padding-inline: 2px; }
  .eeg-trust-reviews .eeg-home-review-all { justify-content: center; text-align: center; }
}
@media (max-width: 360px) {
  .eeg-home-review { padding: 20px; }
  .eeg-home-review-avatar { flex-basis: 36px; width: 36px; height: 36px; font-size: 15px; }
  .eeg-trust-reviews .eeg-home-review-person h3 { font-size: 14px; }
  .eeg-home-review-google, .eeg-home-review-google svg { width: 18px; height: 18px; flex-basis: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .eeg-home-review-track { scroll-behavior: auto; }
}

/* About page only: background photography, clear hierarchy and compact details. */
.eeg-about-clean { --ac-ink:#102f50; --ac-blue:#1768a8; --ac-muted:#506173; --ac-line:#dce4eb; background:#fff; color:var(--ac-ink); font:400 17px/1.65 "Figtree",Arial,sans-serif; }
.eeg-about-clean *, .eeg-about-clean *::before, .eeg-about-clean *::after { box-sizing:border-box; }
.eeg-about-clean .eeg-ac-width { width:calc(100% - 64px); max-width:1200px; margin-inline:auto; }
.eeg-about-clean :is(h1,h2,h3,p,figure,dl,dd) { margin:0; }
.eeg-about-clean :is(h1,h2,h3) { font-family:"Figtree",Arial,sans-serif; color:var(--ac-ink); text-wrap:balance; }
.eeg-about-clean h2 { font-size:clamp(30px,3vw,40px); font-weight:700; letter-spacing:-.035em; line-height:1.15; }
.eeg-about-clean h3 { font-size:22px; font-weight:650; letter-spacing:-.02em; line-height:1.3; }
.eeg-about-clean p { color:var(--ac-muted); }
.eeg-about-clean a { color:inherit; text-decoration:none; }
.eeg-about-clean a:focus-visible { outline:3px solid #2693ed; outline-offset:5px; }
.eeg-about-clean svg { width:20px; height:20px; flex:0 0 20px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.eeg-about-clean .eeg-ac-eyebrow { color:var(--ac-blue); font-size:11px; line-height:1.5; letter-spacing:.13em; font-weight:750; text-transform:uppercase; margin-bottom:18px; }
.eeg-about-clean .eeg-ac-hero { position:relative; isolation:isolate; overflow:hidden; background:#102f50; color:#fff; }
.eeg-about-clean .eeg-ac-hero > .eeg-ac-width { position:relative; z-index:1; }
.eeg-about-clean .eeg-ac-hero-grid { display:grid; grid-template-columns:minmax(0,1fr); align-items:center; min-height:440px; }
.eeg-about-clean .eeg-ac-hero-copy { max-width:640px; padding-block:64px; }
.eeg-about-clean h1 { font-size:clamp(42px,4.4vw,60px); font-weight:750; line-height:1.06; letter-spacing:-.045em; margin-bottom:24px; }
.eeg-about-clean .eeg-ac-hero h1, .eeg-about-clean .eeg-ac-hero h1 span { color:#fff; }
.eeg-about-clean .eeg-ac-hero .eeg-ac-eyebrow { color:#b5daf5; }
.eeg-about-clean .eeg-ac-hero .eeg-ac-lead { color:#ecf2f7; }
.eeg-about-clean .eeg-ac-hero .eeg-ac-button { background:#fff; border-color:#fff; color:#102f50; }
.eeg-about-clean .eeg-ac-hero .eeg-ac-button:hover { background:#e4eff7; border-color:#e4eff7; }
.eeg-about-clean .eeg-ac-hero .eeg-ac-text-link { color:#fff; }
.eeg-about-clean .eeg-ac-hero a:focus-visible { outline-color:#b5daf5; }
.eeg-about-clean .eeg-ac-lead { max-width:460px; font-size:18px; line-height:1.65; }
.eeg-about-clean .eeg-ac-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; margin-top:28px; }
.eeg-about-clean .eeg-ac-button { display:inline-flex; justify-content:center; align-items:center; gap:24px; min-height:52px; padding:14px 21px; border:1px solid var(--ac-ink); border-radius:8px; background:var(--ac-ink); color:#fff; font-size:15px; line-height:1.4; font-weight:650; transition:background .18s,border-color .18s; }
.eeg-about-clean .eeg-ac-button:hover { background:#1768a8; border-color:#1768a8; color:#fff; }
.eeg-about-clean .eeg-ac-text-link { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:var(--ac-ink); font-size:14px; line-height:1.4; font-weight:650; }
.eeg-about-clean .eeg-ac-text-link:hover { color:var(--ac-blue); text-decoration:underline; text-underline-offset:5px; }
.eeg-about-clean .eeg-ac-hero-photo { position:absolute; inset:0; z-index:0; pointer-events:none; }
.eeg-about-clean .eeg-ac-hero-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,27,45,.91) 0%,rgba(8,27,45,.76) 48%,rgba(8,27,45,.32) 100%),linear-gradient(0deg,rgba(8,27,45,.82),transparent 55%); }
.eeg-about-clean .eeg-ac-hero-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:50% 55%; }
.eeg-about-clean .eeg-ac-facts { display:grid; grid-template-columns:.7fr 1fr 1.5fr; gap:28px; padding:28px 0; border-top:1px solid #ffffff40; }
.eeg-about-clean .eeg-ac-facts > div + div { padding-left:28px; border-left:1px solid #ffffff40; }
.eeg-about-clean .eeg-ac-facts dt { color:#d2dfeb; font-size:12px; line-height:1.5; margin-bottom:4px; }
.eeg-about-clean .eeg-ac-facts dd { font-size:16px; line-height:1.5; font-weight:650; }
.eeg-about-clean .eeg-ac-section { padding-block:76px; }
.eeg-about-clean .eeg-ac-company-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:80px; align-items:start; }
.eeg-about-clean .eeg-ac-story h2 { margin-bottom:24px; }
.eeg-about-clean .eeg-ac-story p + p { margin-top:16px; }
.eeg-about-clean .eeg-ac-services { padding:30px 32px 20px; background:#f5f7f9; border:1px solid #e4eaf0; border-radius:14px; }
.eeg-about-clean .eeg-ac-services .eeg-ac-eyebrow { margin-bottom:10px; }
.eeg-about-clean .eeg-ac-services h3 { font-size:26px; margin-bottom:22px; }
.eeg-about-clean .eeg-ac-services nav { border-top:1px solid var(--ac-line); }
.eeg-about-clean .eeg-ac-services nav a { display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:58px; padding-block:16px; border-bottom:1px solid var(--ac-line); font-size:16px; font-weight:550; line-height:1.4; }
.eeg-about-clean .eeg-ac-services nav a:hover { color:var(--ac-blue); }
.eeg-about-clean .eeg-ac-services > .eeg-ac-text-link { margin-top:14px; color:var(--ac-blue); }
.eeg-about-clean .eeg-ac-team-photos { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; padding-bottom:64px; }
.eeg-about-clean .eeg-ac-team-photos figure { min-width:0; }
.eeg-about-clean .eeg-ac-team-photos img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; object-position:center; border-radius:12px; }
.eeg-about-clean .eeg-ac-team-photos figcaption { margin-top:12px; color:var(--ac-muted); font-size:14px; line-height:1.5; }
.eeg-about-clean .eeg-ac-approach { padding-bottom:64px; }
.eeg-about-clean .eeg-ac-section-heading { padding-top:36px; border-top:1px solid var(--ac-line); }
.eeg-about-clean .eeg-ac-section-heading .eeg-ac-eyebrow { margin-bottom:10px; }
.eeg-about-clean .eeg-ac-section-heading h2 { font-size:32px; }
.eeg-about-clean .eeg-ac-principles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; margin-top:32px; }
.eeg-about-clean .eeg-ac-number { display:block; color:#637d90; font-size:12px; font-weight:650; letter-spacing:.08em; margin-bottom:10px; }
.eeg-about-clean .eeg-ac-principles h3 { font-size:20px; margin-bottom:10px; }
.eeg-about-clean .eeg-ac-principles p { font-size:16px; line-height:1.6; }
.eeg-about-clean .eeg-ac-partners { padding-block:30px; border-block:1px solid #e6ebef; background:#fafbfc; }
.eeg-about-clean .eeg-ac-partner-row { display:grid; grid-template-columns:220px minmax(0,1fr); gap:36px; align-items:center; }
.eeg-about-clean .eeg-ac-partner-row + .eeg-ac-partner-row { margin-top:20px; }
.eeg-about-clean .eeg-ac-partner-row h2 { font-size:15px; font-weight:550; letter-spacing:0; line-height:1.5; color:#506173; }
.eeg-about-clean .eeg-ac-logos { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); align-items:center; gap:28px; }
.eeg-about-clean .eeg-ac-logos-industry { grid-template-columns:repeat(3,minmax(0,1fr)); max-width:520px; }
.eeg-about-clean .eeg-ac-logos img { display:block; width:100%; height:56px; max-width:144px; object-fit:contain; filter:brightness(0); opacity:.66; }
.eeg-about-clean .eeg-ac-closing { padding-block:56px; }
.eeg-about-clean .eeg-ac-closing-panel { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:40px; padding:40px 44px; background:#102f50; border-radius:16px; }
.eeg-about-clean .eeg-ac-closing h2 { color:#fff; font-size:clamp(28px,2.8vw,36px); }
.eeg-about-clean .eeg-ac-closing .eeg-ac-eyebrow { color:#a6cce9; margin-bottom:12px; }
.eeg-about-clean .eeg-ac-closing-actions { display:flex; flex-direction:column; align-items:center; gap:12px; }
.eeg-about-clean .eeg-ac-closing .eeg-ac-button { background:#fff; border-color:#fff; color:#102f50; }
.eeg-about-clean .eeg-ac-closing .eeg-ac-button:hover { background:#e4eff7; border-color:#e4eff7; }
.eeg-about-clean .eeg-ac-phone { display:inline-flex; align-items:center; min-height:44px; color:#d6e6f2; font-size:15px; }
.eeg-about-clean .eeg-ac-phone:hover { text-decoration:underline; text-underline-offset:5px; }
@media(max-width:1023px) {
  .eeg-about-clean .eeg-ac-hero-copy { padding-block:56px; }
  .eeg-about-clean h1 { font-size:clamp(40px,5.1vw,52px); }
  .eeg-about-clean .eeg-ac-actions { gap:10px 20px; }
  .eeg-about-clean .eeg-ac-company-grid { gap:36px; }
  .eeg-about-clean .eeg-ac-services { padding:24px; }
  .eeg-about-clean .eeg-ac-partner-row { grid-template-columns:170px minmax(0,1fr); gap:24px; }
  .eeg-about-clean .eeg-ac-logos { gap:20px; }
  .eeg-about-clean .eeg-ac-closing-panel { padding:32px; }
}
@media(max-width:767px) {
  .eeg-about-clean .eeg-ac-width { width:calc(100% - 40px); }
  .eeg-about-clean .eeg-ac-hero-grid { min-height:0; }
  .eeg-about-clean .eeg-ac-hero-copy { padding-block:48px 36px; }
  .eeg-about-clean .eeg-ac-eyebrow { margin-bottom:14px; font-size:10px; }
  .eeg-about-clean h1 { font-size:clamp(36px,9.4vw,52px); margin-bottom:18px; }
  .eeg-about-clean .eeg-ac-lead { font-size:17px; line-height:1.6; }
  .eeg-about-clean .eeg-ac-actions { margin-top:22px; gap:8px 20px; }
  .eeg-about-clean .eeg-ac-button { min-height:48px; padding:12px 16px; font-size:14px; gap:20px; }
  .eeg-about-clean .eeg-ac-hero-photo img { object-position:58% center; }
  .eeg-about-clean .eeg-ac-hero-photo::after { background:linear-gradient(90deg,rgba(8,27,45,.82),rgba(8,27,45,.62)),linear-gradient(0deg,rgba(8,27,45,.7),transparent 65%); }
  .eeg-about-clean .eeg-ac-facts { grid-template-columns:1fr 1.3fr; gap:16px 22px; padding-block:22px; }
  .eeg-about-clean .eeg-ac-facts > div + div { border:0; padding:0; }
  .eeg-about-clean .eeg-ac-facts > div:last-child { grid-column:1/-1; }
  .eeg-about-clean .eeg-ac-facts dt { font-size:11px; margin-bottom:2px; }
  .eeg-about-clean .eeg-ac-facts dd { font-size:14px; }
  .eeg-about-clean .eeg-ac-section { padding-block:44px; }
  .eeg-about-clean .eeg-ac-company-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  .eeg-about-clean .eeg-ac-story h2 { margin-bottom:18px; }
  .eeg-about-clean .eeg-ac-story p { font-size:16px; line-height:1.65; }
  .eeg-about-clean .eeg-ac-services { padding:22px 20px 14px; }
  .eeg-about-clean .eeg-ac-services h3 { font-size:24px; margin-bottom:18px; }
  .eeg-about-clean .eeg-ac-services nav a { font-size:15px; min-height:56px; padding-block:14px; }
  .eeg-about-clean .eeg-ac-approach { padding-bottom:36px; }
  .eeg-about-clean .eeg-ac-team-photos { grid-template-columns:minmax(0,1fr); gap:24px; padding-bottom:36px; }
  .eeg-about-clean .eeg-ac-team-photos img { aspect-ratio:auto; }
  .eeg-about-clean .eeg-ac-section-heading { padding-top:28px; }
  .eeg-about-clean .eeg-ac-section-heading h2 { font-size:28px; }
  .eeg-about-clean .eeg-ac-principles { grid-template-columns:minmax(0,1fr); gap:0; margin-top:20px; }
  .eeg-about-clean .eeg-ac-principles article { display:grid; grid-template-columns:24px minmax(0,1fr); gap:4px 12px; padding-block:16px; border-bottom:1px solid #e6ebef; }
  .eeg-about-clean .eeg-ac-principles article:last-child { border:0; padding-bottom:0; }
  .eeg-about-clean .eeg-ac-number { grid-row:1/3; padding-top:3px; margin:0; }
  .eeg-about-clean .eeg-ac-principles h3 { font-size:18px; margin:0; }
  .eeg-about-clean .eeg-ac-principles p { font-size:15px; line-height:1.6; }
  .eeg-about-clean .eeg-ac-partners { padding-block:24px; }
  .eeg-about-clean .eeg-ac-partner-row { grid-template-columns:minmax(0,1fr); gap:12px; }
  .eeg-about-clean .eeg-ac-partner-row + .eeg-ac-partner-row { margin-top:22px; }
  .eeg-about-clean .eeg-ac-partner-row h2 { font-size:13px; }
  .eeg-about-clean .eeg-ac-logos { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 20px; }
  .eeg-about-clean .eeg-ac-logos img { height:44px; }
  .eeg-about-clean .eeg-ac-closing { padding-block:32px; }
  .eeg-about-clean .eeg-ac-closing-panel { grid-template-columns:minmax(0,1fr); padding:28px 24px; gap:24px; border-radius:12px; }
  .eeg-about-clean .eeg-ac-closing-actions { align-items:start; gap:4px; }
}
@media(prefers-reduced-motion:reduce) { .eeg-about-clean .eeg-ac-button { transition:none; } }
