/* MARTCON BUILDERS global stylesheet. Palette: navy #081145, navy-2 #16264B, grey #F4F6F8, arch-grey #687386, accent #C66B3D */
:root{--mc-navy:#081145;--mc-navy2:#16264B;--mc-grey:#F4F6F8;--mc-arch:#687386;--mc-accent:#C66B3D;--mc-line:#E3E7EE;--mc-head:'Manrope',system-ui,sans-serif;--mc-body:'Inter',system-ui,sans-serif}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{font-family:var(--mc-body);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6,.elementor-heading-title{font-family:var(--mc-head)}
img{max-width:100%;height:auto}
:focus-visible{outline:3px solid var(--mc-accent);outline-offset:2px}

/* Sticky header (HFE wraps header in #masthead) */

.mc-header{box-shadow:0 1px 0 var(--mc-line)}
.mc-header .hfe-nav-menu .menu-item a.hfe-menu-item{font-family:var(--mc-head);font-weight:700;font-size:15px;color:var(--mc-navy);padding:10px 14px;letter-spacing:.01em}
.mc-header .hfe-nav-menu .menu-item a.hfe-menu-item:hover,.mc-header .hfe-nav-menu .current-menu-item>a.hfe-menu-item{color:var(--mc-accent)}
.mc-header .hfe-nav-menu .sub-menu{border-top:3px solid var(--mc-accent);box-shadow:0 12px 30px rgba(8,17,69,.12);min-width:260px}
.mc-header .hfe-nav-menu .sub-menu a.hfe-sub-menu-item{font-family:var(--mc-body);font-weight:500;font-size:14px;color:var(--mc-navy);padding:12px 18px}
.mc-header .hfe-nav-menu .sub-menu a.hfe-sub-menu-item:hover{background:var(--mc-grey);color:var(--mc-accent)}

/* Buttons */
.elementor-button{font-family:var(--mc-head);font-weight:700;letter-spacing:.01em;transition:background-color .2s,color .2s,border-color .2s,transform .2s}
.mc-btn-accent .elementor-button{background:var(--mc-accent);color:#fff}
.mc-btn-accent .elementor-button:hover{background:#ad5a2f;color:#fff}
.mc-btn-light .elementor-button{background:#fff;color:var(--mc-navy)}
.mc-btn-light .elementor-button:hover{background:var(--mc-grey);color:var(--mc-navy)}
.mc-btn-ghost .elementor-button{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.75)}
.mc-btn-ghost .elementor-button:hover{background:#fff;color:var(--mc-navy);border-color:#fff}
.mc-btn-outline .elementor-button{background:transparent;color:var(--mc-navy);border:2px solid var(--mc-navy)}
.mc-btn-outline .elementor-button:hover{background:var(--mc-navy);color:#fff}

/* Type helpers */
.mc-eyebrow .elementor-heading-title{font-family:var(--mc-body);font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mc-accent);line-height:1.4}
.mc-eyebrow-light .elementor-heading-title{color:#E7A383}
.mc-lead,.mc-lead p{font-size:18px;line-height:1.7;color:var(--mc-arch)}
.mc-on-dark,.mc-on-dark p,.mc-on-dark .elementor-heading-title{color:#fff}
.mc-on-dark-muted,.mc-on-dark-muted p{color:rgba(255,255,255,.78)}

/* Cards and images */
.mc-card{background:#fff;border:1px solid var(--mc-line);transition:box-shadow .25s,transform .25s}
.mc-card:hover{box-shadow:0 14px 36px rgba(8,17,69,.10);transform:translateY(-3px)}
.mc-ratio-43 img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.mc-ratio-169 img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.mc-ratio-45 img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.mc-underline-link .elementor-heading-title a,.mc-link a{color:var(--mc-navy);font-weight:600;border-bottom:2px solid var(--mc-accent);padding-bottom:1px;text-decoration:none}
.mc-link a:hover{color:var(--mc-accent)}

/* Hero */
.mc-hero{position:relative;isolation:isolate}
.mc-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(8,17,69,.92) 0%,rgba(8,17,69,.78) 45%,rgba(8,17,69,.35) 100%)}
.mc-blueprint{background-color:var(--mc-navy);background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:48px 48px}

/* Process steps */
.mc-step-num .elementor-heading-title{font-family:var(--mc-head);font-weight:800;font-size:56px;line-height:1;color:var(--mc-accent);opacity:.9}
.mc-step{border-top:3px solid var(--mc-navy);padding-top:22px}

/* FAQ accordion */
.elementor-accordion .elementor-accordion-item{border:1px solid var(--mc-line);margin-bottom:10px;background:#fff}
.elementor-accordion .elementor-tab-title{padding:18px 22px;font-family:var(--mc-head);font-weight:700;color:var(--mc-navy)}
.elementor-accordion .elementor-tab-title.elementor-active{color:var(--mc-accent)}
.elementor-accordion .elementor-tab-content{padding:0 22px 20px;color:#2B3345;border-top:0}

/* Footer */
.mc-footer a{color:rgba(255,255,255,.82);text-decoration:none;transition:color .2s}
.mc-footer a:hover{color:#fff}
.mc-footer .hfe-nav-menu a.hfe-menu-item{color:rgba(255,255,255,.82);padding:6px 0;font-size:15px}
.mc-footer .hfe-nav-menu a.hfe-menu-item:hover{color:#fff}
.mc-footer-title .elementor-heading-title{font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:#fff}
.mc-footer-rule{border-top:1px solid rgba(255,255,255,.14)}

/* Mobile quick-contact bar */
.mc-mobile-bar{display:none}
@media (max-width:767px){
  .mc-mobile-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:998;box-shadow:0 -4px 18px rgba(8,17,69,.18)}
  .mc-mobile-bar a{flex:1;text-align:center;padding:14px 8px;font:700 15px/1 var(--mc-head);text-decoration:none;color:#fff}
  .mc-mobile-bar__call{background:var(--mc-navy)}
  .mc-mobile-bar__wa{background:#1E8E4E}
  body{padding-bottom:48px}
  html{scroll-padding-top:76px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* ---- Layout grids (applied to Elementor containers via CSS class) ---- */
.e-con.mc-grid{display:grid!important;gap:24px;--gap:24px;align-items:stretch}
.e-con.mc-g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.e-con.mc-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.e-con.mc-g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.e-con.mc-g23{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:64px;align-items:center}
.e-con.mc-grid>.e-con,.e-con.mc-grid>.elementor-element{width:100%;max-width:100%}
@media (max-width:1024px){
  .e-con.mc-g3,.e-con.mc-g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .e-con.mc-g23{grid-template-columns:1fr;gap:36px}
}
@media (max-width:767px){
  .e-con.mc-grid{gap:16px}
  .e-con.mc-g2,.e-con.mc-g3,.e-con.mc-g4{grid-template-columns:1fr}
}
/* Icon boxes used as value / service tiles */
.mc-tile .elementor-icon-box-icon .elementor-icon{color:var(--mc-accent);font-size:34px}
.mc-tile .elementor-icon-box-title{font-family:var(--mc-head);font-weight:800;color:var(--mc-navy);font-size:20px;margin-bottom:8px}
.mc-tile .elementor-icon-box-description{color:#4a5568;font-size:15.5px;line-height:1.65}
.mc-tile-dark .elementor-icon-box-title{color:#fff}
.mc-tile-dark .elementor-icon-box-description{color:rgba(255,255,255,.78)}
.mc-check .elementor-icon-list-icon i{color:var(--mc-accent)}
.mc-check-light .elementor-icon-list-text{color:#fff}
/* Auto catalogue / project cards (from martcon-core shortcodes) */
.mc-cards{display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}
.mc-cards .mc-cardx{background:#fff;border:1px solid var(--mc-line);display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s}
.mc-cards .mc-cardx:hover{box-shadow:0 14px 36px rgba(8,17,69,.10);transform:translateY(-3px)}
.mc-cards .mc-cardx img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.mc-cards .mc-cardx__body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.mc-cards .mc-cardx h3{font-size:20px;margin:0}
.mc-cards .mc-cardx h3 a{color:var(--mc-navy);text-decoration:none}
.mc-cards .mc-meta{display:flex;flex-wrap:wrap;gap:6px 14px;color:var(--mc-arch);font-size:14px}
.mc-cards .mc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:8px}
.mc-pill{display:inline-block;padding:11px 18px;font:700 14px/1 var(--mc-head);text-decoration:none;border:2px solid var(--mc-navy);color:var(--mc-navy);transition:.2s}
.mc-pill:hover{background:var(--mc-navy);color:#fff}
.mc-pill--solid{background:var(--mc-navy);color:#fff}
.mc-pill--solid:hover{background:var(--mc-accent);border-color:var(--mc-accent)}
.mc-tag{display:inline-block;font:600 12px/1 var(--mc-body);letter-spacing:.1em;text-transform:uppercase;color:var(--mc-accent)}
.mc-note{background:var(--mc-grey);border-left:4px solid var(--mc-accent);padding:18px 22px;color:#2B3345}
@media (max-width:1024px){.mc-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.mc-cards{grid-template-columns:1fr}}
/* ---- Catalogue, tiles, single entries ---- */
.mc-ph{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;background-color:var(--mc-navy);background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:32px 32px;color:rgba(255,255,255,.7);font:600 13px/1 var(--mc-body);letter-spacing:.12em;text-transform:uppercase}
.mc-price{font:800 18px/1.2 var(--mc-head);color:var(--mc-navy)}
.mc-price--lg{font-size:26px;margin:6px 0 4px}
.mc-typetiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:28px}
.mc-typetile{display:flex;flex-direction:column;gap:8px;padding:26px 24px;background:#fff;border:1px solid var(--mc-line);border-top:3px solid var(--mc-navy);text-decoration:none;transition:box-shadow .25s,transform .25s,border-color .25s}
.mc-typetile strong{font:800 20px/1.25 var(--mc-head);color:var(--mc-navy)}
.mc-typetile__go{font:700 14px/1 var(--mc-head);color:var(--mc-navy);margin-top:6px}
.mc-typetile:hover{box-shadow:0 14px 36px rgba(8,17,69,.10);transform:translateY(-3px);border-top-color:var(--mc-accent)}
.mc-filter{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;background:var(--mc-grey);padding:20px 22px;margin-bottom:28px}
.mc-filter__f{display:flex;flex-direction:column;gap:6px;font:600 13px/1 var(--mc-body);color:var(--mc-navy)}
.mc-filter__f input,.mc-filter__f select{min-width:170px;padding:11px 12px;border:1px solid #cfd5df;background:#fff;font:400 15px/1.2 var(--mc-body);border-radius:3px}
.mc-filter__search{flex:1 1 240px}.mc-filter__search input{width:100%}
.mc-filter__reset{font:600 14px/1 var(--mc-body);color:var(--mc-arch);padding:12px 4px}
.mc-pager{display:flex;gap:14px;align-items:center;justify-content:center;margin-top:34px}
.mc-projfilter{margin-bottom:26px}
button.mc-pill{cursor:pointer;background:var(--mc-navy);color:#fff}
.mc-single{max-width:1240px;margin:0 auto;padding:36px 24px 72px}
.mc-crumbs{font:500 14px/1.4 var(--mc-body);color:var(--mc-arch);margin-bottom:22px}.mc-crumbs a{color:var(--mc-arch)}
.mc-single__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;align-items:start}
.mc-single__media{margin:0}.mc-single__media img,.mc-single__media .mc-ph{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.mc-caption{font:400 13px/1.4 var(--mc-body);color:var(--mc-arch);margin-top:8px}
.mc-single__side h1{font-size:clamp(28px,3.4vw,42px);margin:6px 0 8px}
.mc-facts{margin:18px 0 22px;border-top:1px solid var(--mc-line)}
.mc-facts>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--mc-line)}
.mc-facts dt{color:var(--mc-arch);font-size:15px}.mc-facts dd{margin:0;font-weight:600;color:var(--mc-navy);text-align:right}
.mc-single__body{margin-top:56px;max-width:860px}.mc-single__body h2{font-size:26px;margin:34px 0 12px}
.mc-checklist{list-style:none;padding:0;margin:0}.mc-checklist li{padding:8px 0 8px 28px;position:relative;border-bottom:1px solid var(--mc-line)}
.mc-checklist li::before{content:"";position:absolute;left:4px;top:15px;width:9px;height:9px;background:var(--mc-accent)}
@media (max-width:1024px){.mc-typetiles{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-single__grid{grid-template-columns:1fr;gap:28px}}
@media (max-width:767px){.mc-typetiles{grid-template-columns:1fr}.mc-filter__f input,.mc-filter__f select{min-width:0;width:100%}.mc-filter__f{width:100%}.mc-single{padding:24px 16px 56px}}
.mc-hero--plain::before{background:linear-gradient(100deg,rgba(8,17,69,.55) 0%,rgba(8,17,69,0) 70%)}
.mc-herolist a{color:#fff;text-decoration:none}.mc-herolist a:hover{color:#E7A383}

.mc-prose h2{font-size:24px;margin:34px 0 10px}.mc-prose p,.mc-prose li{font-size:16.5px}.mc-prose a{color:var(--mc-navy);text-decoration:underline}
.mc-quote-form .ff-btn-submit{background:var(--mc-navy)!important;color:#fff!important;font-family:var(--mc-head);font-weight:700;padding:15px 34px;border-radius:4px;border:0}.mc-quote-form .ff-btn-submit:hover{background:var(--mc-accent)!important}
.mc-quote-form .ff-el-form-control{border:1px solid #cfd5df;border-radius:3px;padding:12px 14px;font-size:16px}

/* ---- v2 fixes ---- */
html,body{max-width:100%;overflow-x:clip}
.e-con,.e-con>.e-con-inner,.elementor-widget,.elementor-widget-container{min-width:0;max-width:100%}
#masthead{position:fixed;top:0;left:0;right:0;width:100%;z-index:9999;background:#fff;box-shadow:0 1px 0 var(--mc-line)}
body{padding-top:84px}
.admin-bar #masthead{top:32px}
.mc-header{min-height:84px}
.mc-hicon .elementor-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center}
.mc-header .hfe-nav-menu__toggle{margin:0}
.mc-header .hfe-nav-menu-icon{color:var(--mc-navy);padding:6px}
.mc-header .hfe-nav-menu-icon svg{width:26px;height:26px;fill:var(--mc-navy)}
.mc-header nav.hfe-dropdown,.mc-header .hfe-nav-menu__layout-horizontal.hfe-dropdown{max-width:100vw;max-height:calc(100vh - 70px);overflow-y:auto}
.mc-mobile-bar{display:none!important}
@media (max-width:1024px){.e-con.mc-g3,.e-con.mc-g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:782px){.admin-bar #masthead{top:46px}}
@media (max-width:767px){
  body{padding-top:62px;padding-bottom:0}
  .mc-header{min-height:62px}
  .e-con.mc-g2,.e-con.mc-g3,.e-con.mc-g4,.e-con.mc-g23{grid-template-columns:minmax(0,1fr)}
  .elementor-button{white-space:normal;text-align:center}
  .e-con.mc-hero{min-height:0}
  h1,h2,h3{overflow-wrap:break-word}
  html{scroll-padding-top:72px}
}
.mc-single__form{margin-top:56px;max-width:760px;padding:32px;background:var(--mc-grey)}.mc-single__form h2{font-size:26px;margin:0 0 18px}

/* ---- v3: layout, rounding, hover states, motion ---- */
:root{--mc-r:14px;--mc-r-sm:9px}
/* full-bleed page: remove Astra container padding around Elementor pages */
.site-content>.ast-container,.ast-page-builder-template .site-content>.ast-container,.ast-container{max-width:100%!important;padding-left:0!important;padding-right:0!important}
.site-content .ast-container{display:block}
#primary,.ast-page-builder-template #primary{margin:0!important;padding:0!important;width:100%!important;max-width:100%!important}
.ast-page-builder-template .entry-content,.entry-content{margin:0}
.mc-single .mc-prose{max-width:none}

/* header: always one row, compact */
.mc-header.e-con,.mc-header>.e-con-inner{flex-wrap:nowrap!important;align-items:center!important}
.mc-header .e-con{flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important}
.mc-hicons.e-con{gap:8px!important}
.mc-header .elementor-widget{width:auto;margin:0!important}
.mc-header .elementor-widget-image img{display:block;height:auto}
@media (max-width:767px){.mc-header .elementor-widget-image{width:74px!important}.mc-header{min-height:60px}}
.mc-header nav.hfe-dropdown,.mc-header .hfe-dropdown{background:#fff!important;border-top:3px solid var(--mc-accent);box-shadow:0 18px 40px rgba(8,17,69,.16)}
.mc-header .hfe-dropdown a.hfe-menu-item,.mc-header .hfe-dropdown a.hfe-sub-menu-item{color:var(--mc-navy)!important;background:transparent!important}
.mc-header .hfe-dropdown a:hover,.mc-header .hfe-dropdown .current-menu-item>a{color:var(--mc-accent)!important;background:var(--mc-grey)!important}

/* rounded corners */
.elementor-button,.mc-pill,.mc-quote-form .ff-btn-submit,.mc-btn-accent .elementor-button{border-radius:var(--mc-r-sm)!important}
.mc-card,.mc-cards .mc-cardx,.mc-typetile,.mc-note,.mc-filter,.mc-single__form,.mc-formcard,.elementor-accordion .elementor-accordion-item,.e-con.mc-g23>.e-con.mc-blueprint,.mc-video-placeholder{border-radius:var(--mc-r)!important;overflow:hidden}
.mc-cardx img,.mc-cardx .mc-ph,.mc-single__media img,.mc-single__media .mc-ph,.elementor-widget-image img{border-radius:var(--mc-r-sm)}
.mc-cardx img,.mc-cardx .mc-ph{border-radius:0}
.mc-quote-form .ff-el-form-control,.mc-filter__f input,.mc-filter__f select{border-radius:var(--mc-r-sm)!important}
.e-con.mc-hero{border-radius:0 0 28px 28px;overflow:hidden}

/* buttons: explicit readable states */
.elementor-button .elementor-button-text{color:inherit}
.mc-btn-accent .elementor-button{background:#C66B3D!important;color:#fff!important;border:2px solid #C66B3D!important}
.mc-btn-accent .elementor-button:hover,.mc-btn-accent .elementor-button:focus{background:#A9562C!important;border-color:#A9562C!important;color:#fff!important}
.mc-btn-ghost .elementor-button{background:transparent!important;color:#fff!important;border:2px solid rgba(255,255,255,.85)!important}
.mc-btn-ghost .elementor-button:hover,.mc-btn-ghost .elementor-button:focus{background:#fff!important;border-color:#fff!important;color:#081145!important}
.mc-btn-outline .elementor-button{background:transparent!important;color:#081145!important;border:2px solid #081145!important}
.mc-btn-outline .elementor-button:hover,.mc-btn-outline .elementor-button:focus{background:#081145!important;color:#fff!important}
.mc-btn-light .elementor-button{background:#fff!important;color:#081145!important;border:2px solid #fff!important}
.mc-btn-light .elementor-button:hover{background:#F4F6F8!important;color:#081145!important}
.elementor-button:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(8,17,69,.18)}
.mc-pill:hover,.mc-pill--solid:hover{color:#fff!important}
.mc-pill{border-radius:var(--mc-r-sm)}
.mc-underline-link .elementor-heading-title a{color:var(--mc-navy)!important}.mc-underline-link .elementor-heading-title a:hover{color:var(--mc-accent)!important}
.mc-prose a:hover,.mc-link a:hover{color:var(--mc-accent)}

/* footer: readable on navy, in every state */
.mc-footer,.mc-footer p,.mc-footer li{color:rgba(255,255,255,.82)}
.mc-footer .hfe-nav-menu,.mc-footer .hfe-nav-menu ul,.mc-footer .hfe-nav-menu li{background:transparent!important;margin:0!important}
.mc-footer .hfe-nav-menu a.hfe-menu-item,.mc-footer .hfe-nav-menu .menu-item a{color:rgba(255,255,255,.85)!important;background:transparent!important;padding:7px 0!important;font:500 15px/1.4 var(--mc-body)!important;transition:color .2s,transform .2s}
.mc-footer .hfe-nav-menu a.hfe-menu-item:hover,.mc-footer .hfe-nav-menu .menu-item a:hover,.mc-footer .hfe-nav-menu .current-menu-item>a{color:#fff!important;transform:translateX(4px)}
.mc-footer .elementor-widget-navigation-menu{margin:0!important}
.mc-footer a{color:rgba(255,255,255,.88)}.mc-footer a:hover{color:#fff;text-decoration:underline}
.mc-footer .mc-footer-title .elementor-heading-title{color:#fff!important;position:relative;padding-bottom:12px}
.mc-footer .mc-footer-title .elementor-heading-title::after{content:'';position:absolute;left:0;bottom:0;width:34px;height:3px;background:var(--mc-accent);border-radius:2px}
.mc-footer .elementor-button{color:#fff!important}
.mc-on-dark a,.mc-on-dark-muted a{color:#fff}
.mc-blueprint .elementor-heading-title{color:#fff}

/* small touches that make it feel designed, not templated */
.mc-eyebrow .elementor-heading-title{display:inline-flex;align-items:center;gap:10px}
.mc-eyebrow .elementor-heading-title::before{content:'';width:30px;height:2px;background:currentColor;border-radius:2px}
.mc-card{border-top:3px solid transparent}
.mc-card:hover{border-top-color:var(--mc-accent)}
.mc-tile .elementor-icon-box-icon .elementor-icon{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:14px;background:rgba(198,107,61,.12);font-size:26px;transition:transform .3s,background .3s}
.mc-card:hover .elementor-icon-box-icon .elementor-icon{transform:translateY(-3px) rotate(-5deg);background:rgba(198,107,61,.2)}
.mc-tile-dark .elementor-icon-box-icon .elementor-icon{background:rgba(255,255,255,.1)}
.mc-step{border-radius:0;transition:border-color .3s}.mc-step:hover{border-top-color:var(--mc-accent)}
.mc-cardx img{transition:transform .6s ease}.mc-cardx:hover img{transform:scale(1.05)}.mc-cardx>a{display:block;overflow:hidden}
.mc-typetile{position:relative}.mc-typetile__go::after{content:' \2192';transition:margin .25s}.mc-typetile:hover .mc-typetile__go::after{margin-left:6px}
.mc-hero-art{width:100%;max-width:560px;margin-left:auto;display:block}
.mc-hero-art text{font-family:var(--mc-head)}

/* motion (respects reduced-motion) */
@keyframes mcUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes mcDraw{to{stroke-dashoffset:0}}
@keyframes mcFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media (prefers-reduced-motion:no-preference){
  .mc-hero .e-con>.elementor-widget,.mc-hero .e-con>.e-con{animation:mcUp .85s cubic-bezier(.2,.7,.2,1) both}
  .mc-hero .e-con>*:nth-child(2){animation-delay:.12s}.mc-hero .e-con>*:nth-child(3){animation-delay:.24s}.mc-hero .e-con>*:nth-child(4){animation-delay:.36s}.mc-hero .e-con>*:nth-child(5){animation-delay:.48s}
  .mc-hero-art *{stroke-dasharray:1;stroke-dashoffset:1;animation:mcDraw 2.4s ease forwards}
  .mc-hero-art :nth-child(n+8) {animation-delay:.5s}.mc-hero-art :nth-child(n+16){animation-delay:1s}
  .mc-hero-art text{stroke-dasharray:none;stroke-dashoffset:0;animation:none}
  html.mc-js .mc-reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
  html.mc-js .mc-reveal.mc-in{opacity:1;transform:none}
}
/* ---- v4: custom header, mobile spacing, dark tiles ---- */
.mc-hdr-wrap,.mc-hdr-wrap .elementor-widget,.mc-hdr-wrap .elementor-shortcode{margin:0!important;padding:0!important;min-height:0!important}
#masthead{position:fixed;top:0;left:0;right:0;width:100%;z-index:9999;background:#fff;box-shadow:0 1px 0 var(--mc-line)}
body{padding-top:84px!important}
.mc-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;height:84px;padding:0 40px;box-sizing:border-box;background:#fff;position:relative;width:100%}
.mc-nav__logo{display:block;flex:none;line-height:0}.mc-nav__logo img{height:66px;width:auto;display:block}
.mc-nav__menu{margin-left:auto}
.mc-menu,.mc-menu ul{list-style:none;margin:0;padding:0}
.mc-menu{display:flex;align-items:center;gap:4px}
.mc-menu>li{position:relative}
.mc-menu a{display:block;padding:10px 14px;font:700 15px/1.2 var(--mc-head);color:var(--mc-navy);text-decoration:none;border-radius:8px;transition:color .2s,background .2s}
.mc-menu a:hover,.mc-menu .current-menu-item>a,.mc-menu li:focus-within>a{color:var(--mc-accent);background:var(--mc-grey)}
.mc-menu .menu-item-has-children>a::after{content:'';display:inline-block;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-left:8px;position:relative;top:-2px}
.mc-menu .sub-menu{position:absolute;top:100%;left:0;min-width:270px;background:#fff;border-radius:12px;box-shadow:0 18px 40px rgba(8,17,69,.16);padding:8px;border-top:3px solid var(--mc-accent);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s}
.mc-menu li:hover>.sub-menu,.mc-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.mc-menu .sub-menu a{font:500 14.5px/1.3 var(--mc-body);padding:11px 14px}
.mc-nav__quote{flex:none;background:var(--mc-accent);color:#fff!important;font:700 15px/1 var(--mc-head);padding:14px 22px;border-radius:var(--mc-r-sm);text-decoration:none;transition:background .2s,transform .2s}
.mc-nav__quote:hover{background:#A9562C;color:#fff;transform:translateY(-2px)}
.mc-nav__toggle{display:none}
@media (max-width:1024px){
  body{padding-top:68px!important}
  .mc-nav{height:68px;padding:0 18px}.mc-nav__logo img{height:50px}
  .mc-nav__quote{margin-left:auto}.mc-nav__menu{margin:0}
  .mc-nav__toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:46px;height:46px;border:0;background:var(--mc-grey);border-radius:12px;cursor:pointer;padding:0 12px;flex:none}
  .mc-nav__toggle span{display:block;height:3px;background:var(--mc-navy);border-radius:2px;transition:transform .25s,opacity .2s}
  .mc-nav.is-open .mc-nav__toggle span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  .mc-nav.is-open .mc-nav__toggle span:nth-child(2){opacity:0}
  .mc-nav.is-open .mc-nav__toggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .mc-nav__menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:6px 18px 20px;max-height:calc(100vh - 68px);overflow-y:auto;box-shadow:0 18px 30px rgba(8,17,69,.16);border-top:1px solid var(--mc-line)}
  .mc-nav.is-open .mc-nav__menu{display:block}
  .mc-menu{flex-direction:column;align-items:stretch;gap:0}
  .mc-menu a{padding:14px 8px;border-radius:0;border-bottom:1px solid var(--mc-line);background:transparent}
  .mc-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-radius:0;padding:0 0 0 14px;min-width:0;background:transparent}
  .mc-menu .menu-item-has-children>a::after{display:none}
}
@media (max-width:767px){
  body{padding-top:64px!important}
  .mc-nav{height:64px}.mc-nav__logo img{height:46px}.mc-nav__quote{display:none}.mc-nav__toggle{margin-left:auto}
  .mc-nav__menu{max-height:calc(100vh - 64px)}
  /* roomy, full-width buttons on phones */
  .e-con{row-gap:16px!important}
  .elementor-widget-button,.elementor-widget-button .elementor-button{width:100%}
  .elementor-widget-button .elementor-button{padding:16px 20px}
  .mc-actions{flex-direction:column;gap:12px}.mc-actions .mc-pill{text-align:center;width:100%;box-sizing:border-box}
  .mc-footer .elementor-widget-button{width:auto}
}
/* dark tiles: readable in every state */
.mc-tile-dark{padding:26px 24px;border-radius:var(--mc-r);border:1px solid rgba(255,255,255,.14);transition:background .3s,border-color .3s,transform .3s}
.mc-tile-dark:hover{background:rgba(255,255,255,.07);border-color:rgba(231,163,131,.6);transform:translateY(-3px)}
.mc-tile-dark .elementor-icon-box-title,.mc-tile-dark .elementor-icon-box-title *,.mc-tile-dark:hover .elementor-icon-box-title{color:#fff!important}
.mc-tile-dark .elementor-icon-box-description,.mc-tile-dark:hover .elementor-icon-box-description{color:rgba(255,255,255,.86)!important}
.mc-tile-dark .elementor-icon-box-icon .elementor-icon{color:#E7A383!important}
.mc-card:hover .elementor-icon-box-title{color:#081145!important}.mc-card:hover .elementor-icon-box-description{color:#4a5568!important}
/* ---- v5: photo-style sections ---- */
.e-con.mc-hero{background-size:cover;background-position:center right}
.mc-photo{position:relative;isolation:isolate;overflow:hidden}
.mc-photo::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,17,69,.15) 0%,rgba(8,17,69,.9) 100%)}
.mc-svcimg{margin:0!important;overflow:hidden}.mc-svcimg img{transition:transform .6s ease;border-radius:0!important}.mc-card:hover .mc-svcimg img{transform:scale(1.05)}
.mc-card{overflow:hidden}
/* ---- v6: header pinned without a gap, menu button, button groups ---- */
body{padding-top:0!important}
#masthead{position:sticky!important;top:0!important;left:auto!important;right:auto!important;width:100%;z-index:9999;background:#fff}
.admin-bar #masthead{top:32px!important}
@media (max-width:782px){.admin-bar #masthead{top:46px!important}}
html{scroll-padding-top:92px}
.mc-nav button.mc-nav__toggle{display:none;-webkit-appearance:none;appearance:none;background:#F4F6F8!important;border:0!important;box-shadow:none!important;border-radius:12px!important;width:46px;height:46px;padding:0!important;margin:0;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:inherit;flex:none}
.mc-nav button.mc-nav__toggle:hover,.mc-nav button.mc-nav__toggle:focus{background:#E6EAF0!important;transform:none;box-shadow:none}
.mc-nav button.mc-nav__toggle span{display:block;width:22px;height:3px;background:#081145!important;border-radius:2px;margin:0;padding:0}
@media (max-width:1024px){.mc-nav button.mc-nav__toggle{display:flex!important}}
.mc-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.mc-note{border-left:0!important;box-shadow:inset 5px 0 0 var(--mc-accent)}
.mc-note p{margin:0 0 16px}
/* photo banners on inner pages */
.mc-pagehero-photo{position:relative;isolation:isolate;overflow:hidden;background-size:cover;background-position:center}
.mc-pagehero-photo::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,17,69,.93) 0%,rgba(8,17,69,.72) 55%,rgba(8,17,69,.4) 100%)}
.mc-sideimg{margin:0!important}.mc-sideimg img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--mc-r);display:block}
.mc-sidecol{display:flex;flex-direction:column;gap:24px}