.elementor-kit-5{--e-global-color-primary:#23272A;--e-global-color-text:#555555;--e-global-color-accent:#5888C0;--e-global-color-secondary:#3C6390;--e-global-color-f0da0fc:#FDFDFD;--e-global-color-92f521c:#E7EBEF;--e-global-color-878d741:#3F6897;--e-global-color-1bf5c4b:#1F344B;--e-global-color-36b9270:#D3DAE2;--e-global-color-637710d:#152838;--e-global-color-99e91c5:#0F1720;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-size:1rem;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:180%;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-size:1rem;--e-global-typography-accent-font-weight:500;background-color:#FDFDFD;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 e-page-transition{background-color:var( --e-global-color-878d741 );}.elementor-kit-5 p{margin-block-end:0px;}.elementor-kit-5 a{color:#FF0000;}.elementor-kit-5 a:hover{color:#C40000;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{color:var( --e-global-color-92f521c );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1160px;}.e-con{--container-max-width:1160px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1366px){.elementor-kit-5{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 p{margin-block-end:0px;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:85%;}.e-con{--container-max-width:85%;}}@media(max-width:1024px){.elementor-kit-5{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 p{margin-block-end:0px;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:20px;--container-default-padding-bottom:0px;--container-default-padding-left:20px;}}@media(max-width:767px){.elementor-kit-5{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 p{margin-block-end:0px;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}@media(min-width:2400px){.elementor-kit-5{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 p{margin-block-end:0px;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}/* Start custom CSS */:root{
  --c-heading:#23272A; --c-body:#555555;
  --c-accent:#5888C0; --c-accent-2:#3F6897; --c-accent-dark:#3C6390;
  --c-navy:#1F344B; --c-navy-deep:#152838; --c-stage:#0F1720;
  --c-light:#FDFDFD; --c-light-2:#E7EBEF; --c-line:#D3DAE2;
  --on-dark:#EAF1F8; --muted:#6E747A;
  --wrap:1160px; --space-section:clamp(64px,9vw,104px);
  --radius:18px; --btn-radius:3px;
  --glass-bg:rgba(14,22,31,.55); --glass-blur:24px; --glass-border:rgba(255,255,255,.16);
}

/* ---- CONTAINER classes: apply to a Container (the class IS the element) ---- */
.glass-card{ background:var(--glass-bg);
  -webkit-backdrop-filter:blur(var(--glass-blur)) saturate(120%);
  backdrop-filter:blur(var(--glass-blur)) saturate(120%);
  border:1px solid var(--glass-border); border-radius:var(--radius);
  box-shadow:0 24px 60px rgba(0,0,0,.42); }
.stage{ display:flex; align-items:center; min-height:clamp(560px,72vh,760px); padding-block:clamp(56px,8vh,104px); }
.stage.contact{ min-height:clamp(520px,66vh,720px); }
.svc-rule{ display:block; width:34px; height:2px; background:var(--c-accent-2); margin-bottom:18px; }
/* Services grid: one 1px hairline between & around cells (no doubling), equal-height cells */
.svc-grid{ background:var(--c-line); padding:1px; }
.svc-grid .elementor-grid, .svc-grid .elementor-loop-container{ gap:1px !important; }
.svc-cell{ background:var(--c-light); padding:34px 30px 38px; }
.c-rows{ border-top:1px solid rgba(255,255,255,.18); margin-top:8px; }
.c-row{ display:flex !important; flex-direction:row !important; justify-content:space-between !important;
  align-items:baseline !important; gap:20px; padding:24px 2px; border-bottom:1px solid rgba(255,255,255,.18); flex-wrap:wrap; }
.c-row a{ font-size:1.35rem !important; font-weight:400 !important; color:#fff !important; text-decoration:none; word-break:break-word; }
.c-row a:hover{ color:#9FB8D8 !important; }
.foot a{ color:#C4D2DF !important; text-decoration:none; }
.foot a:hover{ color:#fff !important; }

/* ---- WIDGET classes: apply to a Heading / Text / Button widget.
        Each rule targets the widget's INNER element so it actually wins. ---- */

/* Eyebrow  -> Heading widget */
.eyebrow .elementor-heading-title{ display:inline-flex; align-items:center; gap:.6em;
  font-size:.72rem !important; font-weight:400 !important; letter-spacing:.2em; text-transform:uppercase;
  color:var(--muted) !important; }
.eyebrow .elementor-heading-title::before{ content:""; width:14px; height:1px; background:var(--c-accent-2); }
.eyebrow.on-dark .elementor-heading-title{ color:var(--on-dark) !important; }

/* Hero H1  -> Heading widget */
.h-hero .elementor-heading-title{ font-size:clamp(2.1rem,4vw,3.15rem) !important; color:#fff !important; }

/* Section H2  -> Heading widget */
.h-section .elementor-heading-title{ font-size:clamp(1.8rem,3.4vw,2.55rem) !important; }
.h-section.on-dark .elementor-heading-title{ color:#fff !important; }

/* Lead / subhead  -> Text Editor widget */
.lead .elementor-widget-container{ font-size:1.18rem !important; line-height:1.6 !important; color:#3A3D40 !important; }
.lead.on-dark .elementor-widget-container{ color:var(--on-dark) !important; }

/* Contact firm name on one line  -> Heading widget */
.name-oneline .elementor-heading-title{ white-space:nowrap; font-size:min(2.8rem,6.4vw) !important; color:#fff !important; }

/* Contact row label  -> Heading or Text widget */
.k .elementor-heading-title, .k .elementor-widget-container{ font-size:.72rem !important;
  letter-spacing:.18em; text-transform:uppercase; color:#C7D2DE !important; }

/* Footer heading  -> Heading widget */
.foot-h4 .elementor-heading-title{ font-size:.68rem !important; letter-spacing:.2em; text-transform:uppercase;
  color:#7D91A4 !important; font-weight:500 !important; }
/* Footer muted text  -> Text widget */
.foot-muted .elementor-widget-container{ color:#8FA1B2 !important; }

/* Primary button  -> Button widget (set Hover Animation = None on the widget) */
.btn .elementor-button{ display:inline-flex; align-items:center; gap:10px;
  font-size:.95rem !important; font-weight:500 !important; letter-spacing:.01em;
  color:#fff !important; background:var(--c-accent-2) !important;
  padding:13px 24px !important; border-radius:var(--btn-radius) !important;
  transition:background-color .2s ease; transform:none !important; }
.btn .elementor-button:hover{ background:var(--c-navy) !important; color:#fff !important; transform:none !important; }

/* Team bio pull-quote / side-note: in the WYSIWYG, select the line and click the Blockquote button */
.member-bio blockquote{ border-left:2px solid var(--c-accent-2) !important; padding-left:22px !important;
  margin:34px 0 !important; max-width:30ch; font-size:1.5rem !important; line-height:1.4 !important;
  color:var(--c-navy) !important; font-style:normal !important; }
.member-bio blockquote p{ margin:0 !important; }

/* Sticky Principal sidebar: apply "principal-side" to the LEFT column of the Principal loop item */
.principal-side{ position:sticky; top:96px; align-self:flex-start; }
@media (max-width:767px){ .principal-side{ position:static; } }

/* ---- HEADER ---- */
.site-header{ border-bottom:1px solid var(--c-line); }
.nav-cta a{ background:var(--c-accent-2); color:#fff !important; padding:10px 22px !important;
  border-radius:var(--btn-radius); transition:background-color .2s ease; transform:none !important; }
.nav-cta a:hover{ background:var(--c-navy); color:#fff !important; }
.nav-cta a::before, .nav-cta a::after{ display:none !important; }
@media (max-width:767px){ .nav-cta{ margin:10px 0; text-align:center; } }

/* Language switcher visibility, driven by the ACF "Enable Language Translation" toggle.
   Requires the body-class PHP snippet (adds .translation-on / .translation-off to <body>). */
body.translation-off .lang-switch,
body.translation-off .gtranslate_wrapper,
body.translation-off .gt_float_switcher,
body.translation-off a.gt-current-lang{ display:none !important; }

/* ---- Sticky-header anchor offset ---- */
#services{ scroll-margin-top:96px; }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://mpsandassociates.com/wp-content/uploads/Roboto-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://mpsandassociates.com/wp-content/uploads/Roboto-Bold.ttf') format('truetype');
}
@font-face {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://mpsandassociates.com/wp-content/uploads/Roboto-SemiBold.ttf') format('truetype');
}
@font-face {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://mpsandassociates.com/wp-content/uploads/Roboto-Medium.ttf') format('truetype');
}
/* End Custom Fonts CSS */