html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fff;color:#111827}body.admin-bar .mec-header{top:32px}.mec-header{position:sticky;top:0;z-index:50;background:white;border-bottom:1px solid #e5e7eb}.mec-header-inner{max-width:1344px;height:80px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 24px;gap:22px}.mec-logo{display:block;flex-shrink:0;width:194px}.mec-logo-image{width:194px;height:72px;object-fit:contain}.mec-logo strong{color:#233e86;font-size:34px}.mec-logo small{font-size:12px;display:block}.mec-primary-nav{display:flex;align-items:center;justify-content:space-between;flex:1;gap:22px}.mec-menu{display:flex;align-items:center;gap:22px;margin:0;padding:0;list-style:none}.mec-menu>li{position:relative;display:flex;align-items:center;padding:24px 0}.mec-menu>li>a{white-space:nowrap;font-size:15px;font-weight:700;color:#374151;overflow-wrap:normal}.mec-menu a:hover,.mec-menu a:focus-visible{color:#1d4ed8}.mec-submenu-toggle{display:none}.mec-menu .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:320px;max-width:560px;max-height:70vh;overflow:auto;list-style:none;margin:0;padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:4px;box-shadow:0 12px 28px #11182726;color:#111827}.mec-menu>li:nth-last-child(-n+3) .sub-menu{left:auto;right:0}.mec-menu .sub-menu li a{display:block;padding:10px 14px;border-radius:4px;font-size:14px;font-weight:600;line-height:1.4;white-space:normal}.mec-menu .sub-menu li a:hover{background:#eff6ff}.mec-menu>li:hover>.sub-menu,.mec-menu>li:focus-within>.sub-menu,.mec-menu>li.mec-open>.sub-menu{display:block}.mec-header-contact,.mec-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#dc2626;color:white;font-weight:700;padding:14px 28px;border-radius:3px;line-height:1.3;text-decoration:none;transition:background .2s}.mec-header-contact{padding:11px 24px;white-space:nowrap;font-size:15px}.mec-header-contact:hover,.mec-button:hover{background:#b91c1c;color:#fff}.mec-button-outline{border:2px solid white;background:transparent}.mec-button-outline:hover{background:white;color:#1e3a8a}.mec-menu-toggle{display:none}.mec-skip-link{position:fixed;top:-80px;left:12px;padding:12px;background:white;color:#1e3a8a;z-index:100001}.mec-skip-link:focus{top:8px}:focus-visible{outline:3px solid #2563eb;outline-offset:4px}.mec-faq>summary{cursor:pointer;list-style:none;gap:24px}.mec-faq>summary::-webkit-details-marker{display:none}.mec-faq>summary:after{content:'⌄';color:#2563eb;flex-shrink:0}.mec-faq[open]>summary:after{transform:rotate(180deg)}.mec-faq p:last-child{margin-bottom:0}.mec-city-copy p{margin-bottom:1.25em;line-height:1.8}.mec-city-copy h2,.mec-city-copy h3{font-weight:700;margin:1.5em 0 .6em}.mec-city-copy h2{font-size:2rem}.mec-city-copy h3{font-size:1.5rem}.mec-city-copy ul,.mec-city-copy ol{padding-left:1.5rem;margin-bottom:1.5rem;list-style:disc}.mec-city-copy a{color:#1d4ed8;text-decoration:underline}.mec-directory-controls{display:grid;grid-template-columns:1fr 2fr;gap:24px;margin-bottom:24px}.mec-directory label{font-weight:700;color:#374151}.mec-directory select,.mec-directory input{display:block;width:100%;padding:12px 14px;margin-top:8px;border:2px solid #d1d5db;border-radius:4px;background:white;font-weight:400}.mec-state-group{margin:36px 0 54px}.mec-directory-count{font-size:14px;color:#4b5563}.mec-directory [hidden]{display:none!important}.mec-form{scroll-margin-top:110px}.mec-form .wpforms-container{margin:0!important}.mec-form .wpforms-field input,.mec-form .wpforms-field select,.mec-form .wpforms-field textarea{font-family:Montserrat,sans-serif!important;width:100%!important;max-width:100%!important;border:2px solid #d1d5db!important;border-radius:4px!important;color:#111827!important;background:#fff!important;padding:12px 14px!important;min-height:50px!important}.mec-form .wpforms-field label{font-family:Montserrat,sans-serif!important;color:#374151;font-weight:600!important}.mec-form .wpforms-submit{font-family:Montserrat,sans-serif!important;font-weight:700!important;background:#dc2626!important;color:#fff!important;border:0!important;border-radius:4px!important;padding:16px 28px!important;min-height:52px!important;height:auto!important}.mec-form .wpforms-submit:hover{background:#b91c1c!important}.mec-form .wpforms-field{padding:10px 0!important}.mec-form .wpforms-confirmation-container-full{border:1px solid #86efac!important;background:#f0fdf4!important;color:#166534!important;border-radius:6px!important}.mec-gallery-dialog{position:fixed;inset:0;max-width:min(1100px,94vw);max-height:94vh;margin:auto;padding:24px;border:0;border-radius:8px;background:#111827;color:white}.mec-gallery-dialog::backdrop{background:#000c}.mec-gallery-dialog img{max-height:70vh;max-width:100%;object-fit:contain;margin:16px auto}.mec-gallery-dialog h2{font-size:24px;padding-right:50px}.mec-gallery-close{position:absolute;right:16px;top:12px;font-size:30px;padding:4px 12px}.mec-gallery-controls{display:flex;justify-content:space-between;align-items:center;gap:16px}.mec-gallery-controls button{padding:10px 20px;border:1px solid #9ca3af;border-radius:3px}.mec-gallery-controls[hidden]{display:none}.mec-site #mec-main>p:empty{display:none}.mec-site img{max-width:100%}.mec-site iframe{max-width:100%}.mec-site .wp-block-mec-container{margin:0}
@media(max-width:1279px){.mec-header-inner{gap:18px}.mec-menu{gap:14px}.mec-menu>li>a{font-size:13px}.mec-logo,.mec-logo-image{width:170px}.mec-header-contact{padding:11px 16px;font-size:13px}.mec-primary-nav{gap:14px}}
@media(max-width:1100px){.mec-header-inner{height:80px}.mec-logo,.mec-logo-image{width:184px}.mec-menu-toggle{display:flex;gap:8px;align-items:center;padding:10px 14px;border:1px solid #d1d5db;border-radius:4px;font-weight:700}.mec-primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;border-top:1px solid #e5e7eb;padding:12px 20px 24px;max-height:calc(100dvh - 120px);overflow:auto}.mec-primary-nav.mec-nav-open{display:block}.mec-menu{display:block}.mec-menu>li{display:flex;flex-wrap:wrap;padding:0;border-bottom:1px solid #f3f4f6}.mec-menu>li>a{font-size:16px;padding:16px 0;flex:1}.mec-submenu-toggle{display:block;padding:10px 20px;font-size:22px}.mec-menu .sub-menu{position:static!important;flex-basis:100%;width:100%;min-width:0;max-width:none;max-height:none;box-shadow:none;border:0;background:#f9fafb;margin-bottom:12px}.mec-menu>li:hover>.sub-menu,.mec-menu>li:focus-within>.sub-menu{display:none}.mec-menu>li.mec-open>.sub-menu{display:block}.mec-header-contact{display:inline-flex;margin-top:18px;font-size:16px}.mec-directory-controls{grid-template-columns:1fr}.mec-gallery-dialog{padding:16px}}
@media(max-width:782px){body.admin-bar .mec-header{top:46px}}
@media(max-width:600px){body.admin-bar .mec-header{top:0}.mec-header-inner{padding:0 16px}.mec-directory-controls{gap:16px}.mec-gallery-dialog img{max-height:65vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Original two-column mega menus, kept editable through Appearance > Menus. */
.mec-menu{gap:16px}.mec-menu>li{padding:25px 0;gap:3px}.mec-menu>li>a{font-size:14px}.mec-submenu-toggle{display:block;padding:0 2px;color:#64748b;font-size:16px;line-height:28px;cursor:pointer}.mec-submenu-toggle[aria-expanded=true] span{display:block;transform:rotate(180deg)}
.mec-menu .sub-menu{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;position:absolute;top:100%;left:50%;right:auto;transform:translateX(-50%);width:min(672px,calc(100vw - 32px));min-width:0;max-width:none;max-height:calc(100dvh - 150px);padding:8px;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 18px 34px #0f172a24;overflow:auto}
.mec-menu>li:first-child .sub-menu{left:0;right:auto;transform:none}.mec-menu>li:nth-last-child(-n+3) .sub-menu{left:auto;right:0;transform:none}
.mec-menu>li:hover>.sub-menu,.mec-menu>li:focus-within>.sub-menu{display:none}.mec-menu>li.mec-open>.sub-menu{display:grid}
.mec-mega-heading{grid-column:1/-1;display:flex;align-items:center;gap:8px;margin:-8px -8px 4px;padding:15px 16px;border-bottom:1px solid #f1f5f9;color:#1d4ed8;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;line-height:1.4}
.mec-nav-icon{display:inline-block;width:16px;height:16px;flex:0 0 16px;color:#1d4ed8;vertical-align:middle}
.mec-menu .sub-menu li a{display:flex;align-items:center;gap:12px;min-height:44px;padding:10px 12px;font-size:14px;font-weight:400;border-radius:6px;line-height:1.5}.mec-menu .sub-menu li a span{min-width:0;overflow-wrap:normal;word-break:normal}.mec-menu .sub-menu li a:hover,.mec-menu .sub-menu li a:focus-visible{background:#eff6ff;color:#1d4ed8}
.mec-directory{box-sizing:border-box;max-width:1280px;margin:0 auto;padding:0 32px}.mec-coverage-heading{font-size:36px;font-weight:700;text-align:center;margin-bottom:24px;line-height:1.2}.mec-coverage-heading span{color:#1d4ed8}.mec-coverage-intro{max-width:672px;margin:0 auto 48px;text-align:center;line-height:1.6;color:#4b5563}.mec-coverage-map{height:384px;margin-bottom:64px;border-radius:8px;overflow:hidden;background:#e5e7eb;box-shadow:0 10px 15px #0f172a1a}.mec-coverage-map iframe{width:100%;height:100%;border:0}.mec-state-tabs{display:flex;flex-wrap:wrap;gap:16px;border-bottom:2px solid #e5e7eb;margin-bottom:28px}.mec-state-tabs button{padding:12px 24px;border-bottom:4px solid transparent;color:#4b5563;font-weight:700;cursor:pointer}.mec-state-tabs button[aria-pressed=true]{border-color:#2563eb;color:#1d4ed8}.mec-directory-controls{display:block}.mec-state-select{display:none}.mec-city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.mec-city-card{display:flex;align-items:flex-start;gap:12px;background:#f9fafb;padding:24px;border:2px solid #e5e7eb;border-radius:8px;transition:box-shadow .15s,border-color .15s}.mec-city-card>.mec-nav-icon{width:24px;height:24px;flex-basis:24px;margin-top:4px}.mec-city-card:hover{border-color:#60a5fa;box-shadow:0 10px 15px #0f172a1a}.mec-city-card h4{font-size:18px;font-weight:700;color:#111827;line-height:1.5;margin:0}.mec-city-state{font-size:14px;color:#4b5563}.mec-no-results{padding:48px 16px;text-align:center;color:#4b5563}
@media(max-width:1240px){.mec-header-inner{height:80px}.mec-logo,.mec-logo-image{width:184px}.mec-menu-toggle{display:flex;gap:8px;align-items:center;padding:10px 14px;border:1px solid #d1d5db;border-radius:4px;font-weight:700}.mec-primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #e5e7eb;padding:12px 20px 24px;max-height:calc(100dvh - 120px);overflow:auto}.mec-primary-nav.mec-nav-open{display:block}.mec-menu{display:block}.mec-menu>li{display:flex;flex-wrap:wrap;padding:0;border-bottom:1px solid #f3f4f6}.mec-menu>li>a{font-size:16px;padding:16px 0;flex:1}.mec-submenu-toggle{display:block;padding:10px 20px;font-size:22px}.mec-menu .sub-menu{position:static!important;transform:none!important;flex-basis:100%;width:100%;min-width:0;max-width:none;max-height:none;box-shadow:none;border:0;background:#f9fafb;margin-bottom:12px;grid-template-columns:1fr}.mec-menu>li.mec-open>.sub-menu{display:grid}.mec-mega-heading{display:none}.mec-header-contact{display:inline-flex;margin-top:18px;font-size:16px}}
@media(max-width:1023px){.mec-directory{padding:0 24px}.mec-city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mec-state-tabs{gap:8px}.mec-state-tabs button{padding:12px 16px}}
@media(max-width:767px){.mec-directory{padding:0 16px}.mec-city-grid{grid-template-columns:1fr}.mec-state-tabs{display:none}.mec-state-select{display:block;margin-bottom:20px}.mec-coverage-heading{font-size:30px}.mec-coverage-map{height:300px;margin-bottom:36px}.mec-city-card{padding:20px}.mec-state-group{margin-top:28px}}
.mec-project-section,.mec-testimonials-section,.mec-google-reviews-section{max-width:1280px;margin:0 auto;padding:64px 24px}
.mec-project-section h2,.mec-testimonials-section h2,.mec-google-reviews-section h2{font-family:Oswald,sans-serif;font-size:clamp(28px,3vw,40px);line-height:1.2;color:#111827;margin:0 0 16px}
.mec-gallery-intro{color:#4b5563;line-height:1.7;max-width:850px;margin-bottom:28px}
.mec-project-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.mec-project-filters button{border:1px solid #cbd5e1;border-radius:5px;background:white;color:#334155;padding:9px 14px;font-size:14px;font-weight:600;cursor:pointer}
.mec-project-filters button[aria-pressed="true"]{background:#dc2626;border-color:#dc2626;color:white}
.mec-project-filters button:focus-visible,.mec-project-photo a:focus-visible{outline:3px solid #1d4ed8;outline-offset:4px}
.mec-project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.mec-project-gallery .mec-project-photo{margin:0!important;overflow:hidden;border:1px solid #e5e7eb;border-radius:8px;background:#fff;box-shadow:0 2px 6px #00000008}
.mec-project-photo[hidden]{display:none!important}
.mec-project-photo a{display:block;overflow:hidden}
.mec-project-gallery .mec-project-photo img{display:block;width:100%;height:245px;object-fit:cover;margin:0;transition:transform .25s ease}
.mec-project-photo a:hover img{transform:scale(1.035)}
.mec-project-gallery .mec-project-photo figcaption{margin:0;padding:16px 18px;font-size:15px;font-weight:600;line-height:1.5;text-align:left;color:#1f2937;background:#fff}
.mec-testimonials-section{border-top:1px solid #e5e7eb}
.mec-testimonials-grid{columns:3;column-gap:24px}
.mec-testimonial-card{break-inside:avoid;margin:0 0 24px;padding:26px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;box-shadow:0 2px 6px #00000008}
.mec-review-stars{color:#b45309;font-size:23px;letter-spacing:3px;margin:0 0 14px}
.mec-testimonial-card blockquote{border:0;padding:0;margin:0;color:#374151;font-size:15px;line-height:1.75}
.mec-testimonial-card blockquote p{margin:0 0 14px}
.mec-review-name{font-weight:700;font-size:15px;color:#111827;margin:20px 0 0}
.mec-google-reviews-section{padding-bottom:48px}
@media(max-width:900px){.mec-project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.mec-testimonials-grid{columns:2}.mec-project-gallery .mec-project-photo img{height:220px}}
@media(max-width:600px){.mec-project-section,.mec-testimonials-section,.mec-google-reviews-section{padding:40px 20px}.mec-project-gallery{grid-template-columns:1fr;gap:20px}.mec-testimonials-grid{columns:1}.mec-project-gallery .mec-project-photo img{height:240px}.mec-project-filters{gap:7px}.mec-project-filters button{font-size:13px;padding:8px 11px}}
@media(prefers-reduced-motion:reduce){.mec-project-photo img{transition:none!important}}
