/* MOSIS palette exploration. Loaded by the draft theme only. */
body.mosis-design-preview {
 --ast-global-color-0:#151515; --ast-global-color-1:#575757;
 --ast-global-color-2:#111111; --ast-global-color-3:#151515;
 --ast-global-color-4:#eeeeee; --ast-global-color-5:#ededed;
 --ast-global-color-6:#ffffff; --ast-global-color-7:#000000;
 --ast-global-color-8:#d8d8d8;
 --e-global-color-primary:#151515; --e-global-color-secondary:#575757;
 --e-global-color-text:#151515; --e-global-color-accent:#151515;
 --e-global-color-f0df734:#151515; --e-global-color-3865c44:#575757;
 --e-global-color-d210ddd:#111111; --e-global-color-256ef5a:#151515;
 --e-global-color-5b26c79:#eeeeee; --e-global-color-258405d:#e6e6e6;
 --e-global-color-6f67a03:#333333; --e-global-color-30b9eba:#333333;
 --e-global-color-astglobalcolor0:#151515; --e-global-color-astglobalcolor1:#575757;
 --e-global-color-astglobalcolor2:#111111; --e-global-color-astglobalcolor3:#151515;
 --e-global-color-astglobalcolor4:#eeeeee; --e-global-color-astglobalcolor5:#ededed;
 --e-global-color-astglobalcolor6:#ffffff; --e-global-color-astglobalcolor7:#000000;
 --e-global-color-astglobalcolor8:#d8d8d8;
 --alt-green:#eeeeee; --lt-background:#f3f3f3;
 background-color:#ffffff; color:#151515;
}
/* A lighter, compact masthead; existing navigation and URLs are retained. */
body.mosis-design-preview #masthead .ast-primary-header-bar {
 background:#ffffff!important; border-bottom:1px solid #e8e8e8;
 box-shadow:none; padding-top:0; padding-bottom:0;
}
body.mosis-design-preview #masthead .site-primary-header-wrap {
 width:100%; max-width:1440px; margin-inline:auto; padding-inline:40px;
}
body.mosis-design-preview #masthead .site-branding {
 padding:0; margin:0; line-height:0;
}
body.mosis-design-preview #masthead .site-logo-img,
body.mosis-design-preview #masthead .custom-logo-link {
 display:block; padding:0; margin:0; line-height:0;
}
body.mosis-design-preview #masthead .custom-logo-link img {
 filter:brightness(0)!important; width:40px!important; max-width:40px!important;
 height:auto!important; display:block;
}
body.mosis-design-preview #masthead .ast-builder-layout-element {
 margin-inline:0;
}
body.mosis-design-preview #masthead .main-header-menu .menu-link {
 color:#303030!important; font-size:13px; font-weight:500;
 letter-spacing:.035em; line-height:1.3; text-transform:none;
 transition:color 180ms ease;
}
body.mosis-design-preview #masthead .main-header-menu .menu-link:hover,
body.mosis-design-preview #masthead .main-header-menu .current-menu-item > .menu-link {
 color:#000000!important;
}
body.mosis-design-preview #masthead .main-header-menu .menu-link::before {
 height:1px; bottom:5px; background-color:#151515;
}
body.mosis-design-preview #masthead .ast-header-html,
body.mosis-design-preview #masthead .ast-builder-html-element,
body.mosis-design-preview #masthead .ast-header-html .e-con,
body.mosis-design-preview #masthead .ast-header-html .e-con-inner,
body.mosis-design-preview #masthead .ast-header-html .elementor-widget-container {
 padding:0!important; margin:0!important; min-height:0; gap:0;
}
body.mosis-design-preview #masthead .ast-header-html .elementor-button {
 display:inline-flex; align-items:center; justify-content:center;
 min-height:38px; padding:9px 15px!important; border:1px solid #bcbcbc!important;
 border-radius:2px!important; background:transparent!important; color:#202020!important;
 font-size:12px; font-weight:500; letter-spacing:.025em; line-height:1.2;
 box-shadow:none!important; transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease;
}
body.mosis-design-preview #masthead .ast-header-html .elementor-button:hover,
body.mosis-design-preview #masthead .ast-header-html .elementor-button:focus-visible {
 background:#151515!important; color:#ffffff!important; border-color:#151515!important;
}
body.mosis-design-preview #masthead .elementor-button-content-wrapper {
 align-items:center; gap:7px;
}
body.mosis-design-preview #masthead .elementor-button-text {
 margin:0; color:inherit;
}
body.mosis-design-preview #masthead .elementor-button-icon {
 margin:0; font-size:14px!important; line-height:1; color:inherit;
}
body.mosis-design-preview #masthead .elementor-button-icon svg {
 width:14px; height:14px;
}
body.mosis-design-preview #masthead .elementor-button-icon svg path {
 fill:currentColor;
}
body.mosis-design-preview .site-below-footer-wrap { background-color:#111111!important; }
@media(min-width:922px) {
 body.mosis-design-preview #ast-desktop-header .ast-primary-header-bar,
 body.mosis-design-preview #ast-desktop-header .site-primary-header-wrap,
 body.mosis-design-preview #ast-desktop-header .ast-builder-grid-row { min-height:84px; height:84px; }
 body.mosis-design-preview #ast-desktop-header .site-header-section { align-items:center; }
 body.mosis-design-preview #ast-desktop-header .main-header-menu { gap:32px; align-items:center; }
 body.mosis-design-preview #ast-desktop-header .main-header-menu > .menu-item > .menu-link {
  padding:12px 0; margin:0;
 }
 body.mosis-design-preview #ast-desktop-header .ast-builder-menu-1 { padding:0; }
 body.mosis-design-preview #ast-desktop-header .main-header-menu > .menu-item > .menu-link::before {
  width:100%!important; left:0; transform:scale(0,1);
 }
 body.mosis-design-preview #ast-desktop-header .main-header-menu > .menu-item:hover > .menu-link::before,
 body.mosis-design-preview #ast-desktop-header .main-header-menu > .current-menu-item > .menu-link::before {
  transform:scale(1,1);
 }
}
@media(max-width:921px) {
 body.mosis-design-preview #masthead .site-primary-header-wrap { padding-inline:22px; }
 body.mosis-design-preview #ast-mobile-header .ast-primary-header-bar,
 body.mosis-design-preview #ast-mobile-header .ast-builder-grid-row { min-height:72px; }
 body.mosis-design-preview #masthead .custom-logo-link img { width:30px!important; max-width:30px!important; }
 body.mosis-design-preview #masthead .menu-toggle {
  background:transparent!important; color:#151515!important; border:0; padding:10px;
 }
 body.mosis-design-preview #masthead .menu-toggle .ast-mobile-svg { fill:currentColor; }
 body.mosis-design-preview #ast-mobile-header .ast-mobile-header-content { background:#fff; border-bottom:1px solid #e8e8e8; }
 body.mosis-design-preview #masthead .ast-header-html .elementor-button { min-height:36px; padding:8px 11px!important; }
}

body.mosis-design-preview .site-content { background-color:#ffffff; }
body.mosis-design-preview .main-header-menu .current-menu-item > .menu-link::before {
 background-color:#ff0000!important;
}
body.mosis-design-preview a:focus-visible,
body.mosis-design-preview button:focus-visible { outline:2px solid #d50000; outline-offset:4px; }
html.mosis-intro-pending #page { visibility:hidden; }
html.mosis-intro-running { overflow:hidden; }
#mosis-intro[hidden] { display:none!important; }
#mosis-intro {
 position:fixed; inset:0; z-index:2147483000; display:flex;
 align-items:center; justify-content:center; background:#fff;
 opacity:1; transition:opacity 650ms ease; isolation:isolate;
}
#mosis-intro.is-leaving { opacity:0; pointer-events:none; }
#mosis-intro-video {
 display:block; height:84vh; height:84dvh; width:auto;
 max-width:86vw; object-fit:contain; border:0;
}
#mosis-intro-enter {
 position:absolute; right:clamp(20px,4vw,64px); bottom:clamp(22px,4vh,48px);
 border:1px solid rgba(120,120,120,.5); border-radius:0; padding:11px 18px;
 font-family:inherit; font-weight:500; font-size:12px; line-height:1.2; letter-spacing:.12em; text-transform:uppercase;
 background:rgba(255,255,255,.88); color:#111; box-shadow:none; cursor:pointer;
}
#mosis-intro-enter:hover { background:#fff; color:#000; }
.mosis-intro-replay {
 display:block; margin:0; width:100%; border:0; border-radius:0;
 padding:16px 24px; background:#111; color:#bfbfbf; cursor:pointer;
 font-size:11px; line-height:1.4; letter-spacing:.14em; text-transform:uppercase;
}
.mosis-intro-replay:hover { background:#111; color:#fff; }
@media(max-width:600px) { #mosis-intro-video {max-width:88vw;height:auto;max-height:76vh;max-height:76dvh;} }
@media(prefers-reduced-motion:reduce) { #mosis-intro {transition:none;} }
/* Balanced client marks in the unpublished homepage. */
body.mosis-design-preview .elementor-1697 .mosis-client-logos .swiper-slide,
body.mosis-design-preview .elementor-1697 .mosis-client-logos .swiper-slide-inner {
 height:88px; display:flex; align-items:center; justify-content:center;
}
body.mosis-design-preview .elementor-1697 .mosis-client-logos .swiper-slide-inner { margin:0; width:100%; }
body.mosis-design-preview .elementor-1697 .mosis-client-logos .swiper-slide-image {
 display:block; width:auto!important; height:auto!important;
 max-width:140px; max-height:64px; object-fit:contain; margin:auto;
}
@media(max-width:767px) {
 body.mosis-design-preview .elementor-1697 .mosis-client-logos .swiper-slide-image { max-width:120px; max-height:56px; }
}

/* Button and tag interaction system. Draft preview only. */
body.mosis-design-preview {
 --mosis-action-dark:#151515;
 --mosis-action-light:#ffffff;
 --mosis-action-accent:#d50000;
 --mosis-action-gray:#eeeeee;
}
body.mosis-design-preview :is(.elementor-button,.eael-load-more-button,.wp-block-button__link,.facetwp-load-more),
body.mosis-design-preview #content :is(input[type="submit"],button[type="submit"]) {
 background-color:var(--mosis-action-dark)!important;
 background-image:none!important;
 color:var(--mosis-action-light)!important;
 border-color:var(--mosis-action-dark)!important;
 box-shadow:inset 0 0 0 1px var(--mosis-action-dark)!important;
 transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease,box-shadow 180ms ease!important;
}
body.mosis-design-preview :is(.elementor-button,.eael-load-more-button,.wp-block-button__link,.facetwp-load-more):is(:hover,:focus-visible),
body.mosis-design-preview #content :is(input[type="submit"],button[type="submit"]):is(:hover,:focus-visible) {
 background-color:var(--mosis-action-light)!important;
 color:var(--mosis-action-dark)!important;
}
body.mosis-design-preview .elementor-button :is(.elementor-button-text,.elementor-button-icon) {color:inherit!important;}
body.mosis-design-preview .elementor-button svg,
body.mosis-design-preview .elementor-button svg path:not([fill="none"]) {fill:currentColor!important;}
body.mosis-design-preview .elementor-button .elementor-button-icon {transition:transform 180ms ease;}
body.mosis-design-preview .elementor-button:is(:hover,:focus-visible) .elementor-button-icon {transform:translateX(3px);}
body.mosis-design-preview [data-id="ab448d5"] .elementor-button {
 border-color:var(--mosis-action-light)!important;
 box-shadow:inset 0 0 0 1px var(--mosis-action-light)!important;
}
/* Light masthead CTA inverts to black. */
body.mosis-design-preview #masthead .ast-header-html .elementor-button {
 background:var(--mosis-action-light)!important;
 color:var(--mosis-action-dark)!important;
 border-color:#bcbcbc!important;
 box-shadow:none!important;
}
body.mosis-design-preview #masthead .ast-header-html .elementor-button:is(:hover,:focus-visible) {
 background:var(--mosis-action-dark)!important;
 color:var(--mosis-action-light)!important;
 border-color:var(--mosis-action-dark)!important;
}
body.mosis-design-preview #masthead .main-header-menu .menu-link::before {background-color:var(--mosis-action-accent)!important;}
body.mosis-design-preview #masthead #ast-desktop-header .main-header-menu > .menu-item > .menu-link:focus-visible::before {transform:scale(1,1);}
/* Project tags and Work filters use the teal sampled from the approved screenshot. */
body.mosis-design-preview .facetwp-facet-work_categories .facetwp-radio,
body.mosis-design-preview .custom-post-css a.elementor-post-info__terms-list-item {
 --mosis-action-accent:#336160;
 background-image:none!important;
 background-color:var(--mosis-action-gray)!important;
 color:var(--mosis-action-dark)!important;
 border-color:#d8d8d8!important;
 transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease;
 cursor:pointer;
}
body.mosis-design-preview .facetwp-facet-work_categories .facetwp-radio {background-color:var(--mosis-action-light)!important;}
body.mosis-design-preview .facetwp-facet-work_categories .facetwp-radio.checked {
 background-color:var(--mosis-action-dark)!important;
 border-color:var(--mosis-action-dark)!important;
 color:var(--mosis-action-light)!important;
}
body.mosis-design-preview .facetwp-facet-work_categories .facetwp-radio:is(:hover,:focus-visible),
body.mosis-design-preview .custom-post-css a.elementor-post-info__terms-list-item:is(:hover,:focus-visible) {
 background-color:var(--mosis-action-accent)!important;
 border-color:var(--mosis-action-accent)!important;
 color:var(--mosis-action-light)!important;
}
body.mosis-design-preview .facetwp-radio .facetwp-display-value {color:inherit;}
/* Intro film controls follow the same light/dark inversion. */
body.mosis-design-preview #mosis-intro-enter,
body.mosis-design-preview .mosis-intro-replay {
 transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease;
}
body.mosis-design-preview #mosis-intro-enter {background:#fff;color:#151515;border-color:#151515;}
body.mosis-design-preview #mosis-intro-enter:is(:hover,:focus-visible) {background:#151515;color:#fff;}
body.mosis-design-preview .mosis-intro-replay {background:#111;color:#fff;}
body.mosis-design-preview .mosis-intro-replay:is(:hover,:focus-visible) {background:#fff;color:#151515;}
/* Carousel controls gain a visible surface; compact pagination gains red feedback. */
body.mosis-design-preview .elementor-swiper-button {
 border-radius:3px;
 transition:background-color 180ms ease,color 180ms ease;
}
body.mosis-design-preview .elementor-swiper-button:is(:hover,:focus-visible) {background:#fff!important;color:#151515!important;}
body.mosis-design-preview .mosis-testimonials-carousel .elementor-swiper-button:is(:hover,:focus-visible) {background:#151515!important;color:#fff!important;}
body.mosis-design-preview .elementor-swiper-button svg,
body.mosis-design-preview .elementor-swiper-button svg path:not([fill="none"]) {fill:currentColor!important;}
body.mosis-design-preview .mosis-work-slideshow .mosis-slideshow-pause {
 transition:background-color 180ms ease,color 180ms ease;
}
body.mosis-design-preview .mosis-work-slideshow .mosis-slideshow-pause:is(:hover,:focus-visible) {
 background:#fff!important;color:#151515!important;text-shadow:none;
}
body.mosis-design-preview .swiper-pagination-bullet {transition:background-color 180ms ease,opacity 180ms ease;}
body.mosis-design-preview .swiper-pagination-bullet:is(:hover,:focus-visible) {background:var(--mosis-action-accent)!important;opacity:1;}
/* Keep the play glyph and its circular hover fill on the same square. */
body.mosis-design-preview .elementor-custom-embed-play {
 display:inline-flex;align-items:center;justify-content:center;
 line-height:0;background:transparent!important;color:#fff;
 border-radius:50%;isolation:isolate;
 transition:color 180ms ease;
}
body.mosis-design-preview .elementor-custom-embed-play::before {
 content:"";position:absolute;inset:2.5%;border-radius:50%;
 background:#fff;opacity:0;z-index:-1;pointer-events:none;
 transition:opacity 180ms ease;
}
body.mosis-design-preview .elementor-custom-embed-play svg {
 display:block;fill:currentColor!important;filter:none!important;opacity:1!important;
 transition:fill 180ms ease;
}
body.mosis-design-preview .elementor-custom-embed-play i {
 display:block;line-height:1;color:inherit!important;text-shadow:none!important;opacity:1!important;
}
body.mosis-design-preview a:is(:hover,:focus-visible) .elementor-custom-embed-play,
body.mosis-design-preview .elementor-custom-embed-play:is(:hover,:focus-visible) {color:#151515;}
body.mosis-design-preview a:is(:hover,:focus-visible) .elementor-custom-embed-play::before,
body.mosis-design-preview .elementor-custom-embed-play:is(:hover,:focus-visible)::before {opacity:1;}
@media(prefers-reduced-motion:reduce) {
 body.mosis-design-preview .elementor-custom-embed-play::before,
 body.mosis-design-preview .elementor-custom-embed-play svg {transition:none!important;}
}
/* Services retain their original header colors, icon animation, and expansion behavior. */
/* Text actions retain their lighter treatment. */
body.mosis-design-preview .work-read-more a {transition:color 180ms ease;text-underline-offset:5px;}
body.mosis-design-preview .work-read-more a:is(:hover,:focus-visible) {color:#fff;text-decoration:underline;text-decoration-color:var(--mosis-action-accent);text-decoration-thickness:2px;}
body.mosis-design-preview.single-work #content .elementor-widget-icon-list a:is(:hover,:focus-visible),
body.mosis-design-preview .get-in-touch a:is(:hover,:focus-visible) {color:var(--mosis-action-accent)!important;}
body.mosis-design-preview.single-work #content .elementor-widget-icon-list a:is(:hover,:focus-visible) :is(.elementor-icon-list-text,.elementor-icon-list-icon),
body.mosis-design-preview .get-in-touch a:is(:hover,:focus-visible) :is(.elementor-icon-list-text,.elementor-icon-list-text div) {color:inherit!important;}
body.mosis-design-preview :is(.elementor-button,.eael-load-more-button,.facetwp-radio,.elementor-post-info__terms-list-item,.elementor-swiper-button,.swiper-pagination-bullet,.plus-accordion-header):focus-visible {
 outline:2px solid var(--mosis-action-accent);outline-offset:4px;
}
@media(prefers-reduced-motion:reduce) {
 body.mosis-design-preview :is(.elementor-button,.elementor-button-icon,.eael-load-more-button,.wp-block-button__link,.facetwp-load-more,.facetwp-radio,.elementor-post-info__terms-list-item,.elementor-swiper-button,.swiper-pagination-bullet,.mosis-slideshow-pause,.mosis-intro-replay,#mosis-intro-enter,.plus-accordion-header,.elementor-custom-embed-play) {transition:none!important;}
 body.mosis-design-preview .elementor-button:is(:hover,:focus-visible) .elementor-button-icon {transform:none;}
}

/* The compact mobile menu follows the same light-to-dark feedback. */
body.mosis-design-preview #masthead .menu-toggle:is(:hover,:focus-visible) {background:#151515!important;color:#fff!important;}

/* Typography pairing: Oxanium for display and controls; Barlow for reading. */
body.mosis-design-preview {
 --mosis-type-display:"Oxanium",sans-serif;
 --mosis-type-body:"Barlow",sans-serif;
 --e-global-typography-text-font-family:"Barlow";
 --e-global-typography-primary-font-family:"Oxanium";
 --e-global-typography-secondary-font-family:"Oxanium";
 --e-global-typography-accent-font-family:"Oxanium";
 font-family:var(--mosis-type-body)!important;
}
body.mosis-design-preview :is(p,blockquote,figcaption,textarea,select,label),
body.mosis-design-preview input:not([type="submit"]):not([type="button"]):not([type="reset"]),
body.mosis-design-preview .elementor-widget-text-editor,
body.mosis-design-preview .elementor-widget-text-editor :is(div,p,span,li,strong,em,a),
body.mosis-design-preview :is(.elementor-testimonial__text,.elementor-testimonial__name,.elementor-testimonial__title,.elementor-slide-description,.elementor-post__excerpt,.work-company) {
 font-family:var(--mosis-type-body)!important;
}
body.mosis-design-preview :is(h1,h2,h3,h4,h5,h6,.elementor-heading-title,.elementor-slide-heading,.work-title),
body.mosis-design-preview :is(h1,h2,h3,h4,h5,h6,.elementor-heading-title) :is(span,strong,em,a),
body.mosis-design-preview :is(button,.elementor-button,.elementor-button-text,.wp-block-button__link,.eael-load-more-button,.facetwp-load-more,.menu-link,.facetwp-radio,.facetwp-display-value,.elementor-post-info__terms-list-item,.work-read-more a),
body.mosis-design-preview input:is([type="submit"],[type="button"],[type="reset"]) {
 font-family:var(--mosis-type-display)!important;
}
/* The shared Work template uses heading widgets for descriptions and metadata. */
body.mosis-design-preview.single-work :is([data-id="4e2947fa"],[data-id="7c30b218"],[data-id="1e869579"],[data-id="65200912"]) .elementor-heading-title,
body.mosis-design-preview.single-work :is([data-id="4e2947fa"],[data-id="7c30b218"],[data-id="1e869579"],[data-id="65200912"]) .elementor-heading-title :is(span,strong,em,a) {
 font-family:var(--mosis-type-body)!important;
}

