/* Middletown HVAC — global stylesheet (shell). Page sections carry their own scoped CSS in /assets/css/pages/. */

/* ---- Fonts: Inter, self-hosted (was fonts-cdn.edit.site) ---- */
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/inter-400.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/inter-500.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/inter-700.woff2) format('woff2')}

/* ---- Base ---- */
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:#061522;color:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.5;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
main{display:block}
.mt-skip{position:absolute;left:-999px;top:8px;z-index:1000;padding:10px 14px;background:#ffd740;color:#0b1d2b;font-weight:800;border-radius:8px}
.mt-skip:focus{left:8px}

/* ---- Global header (lifted verbatim from the live homepage embed, Oct 2026) ---- */
#mtown-unified-header,#mtown-unified-header *{box-sizing:border-box}#mtown-unified-header{position:relative;z-index:50;width:100%;background:#0b1d2b!important;color:#fff!important;border-bottom:3px solid #d5b86c;font:600 14px/1.4 Arial,Helvetica,sans-serif!important}#mtown-unified-header .mhu-inner{max-width:1360px;margin:auto;min-height:88px;padding:12px 22px;display:flex;align-items:center;gap:20px}#mtown-unified-header .mhu-brand{flex:0 0 290px}#mtown-unified-header .mhu-brand svg{display:block;width:290px;height:auto}#mtown-unified-header a{color:#fff!important;text-decoration:none!important;letter-spacing:normal!important;font:600 14px/1.4 Arial,Helvetica,sans-serif!important}#mtown-unified-header .mhu-desktop{display:flex;align-items:center;gap:18px;flex:1}#mtown-unified-header details{position:relative}#mtown-unified-header summary{cursor:pointer;list-style:none;white-space:nowrap;color:#fff!important;font:600 14px/1.4 Arial,Helvetica,sans-serif!important}#mtown-unified-header summary::-webkit-details-marker{display:none}#mtown-unified-header .mhu-dropdown{position:absolute;top:calc(100% + 16px);left:0;min-width:265px;max-height:65vh;overflow:auto;display:grid;gap:3px;padding:12px;background:#0b1d2b;border:1px solid #d5b86c;border-radius:10px;box-shadow:0 12px 28px #0005;z-index:60}#mtown-unified-header .mhu-dropdown a{display:block;padding:10px 12px;border-radius:6px}#mtown-unified-header .mhu-dropdown a:hover,#mtown-unified-header .mhu-dropdown a:focus-visible{background:#24435a}#mtown-unified-header .mhu-actions{display:flex;align-items:center;gap:10px;margin-left:auto}#mtown-unified-header .mhu-book{display:inline-block;white-space:nowrap;border-radius:30px;padding:12px 18px;background:#ffd740;color:#0b1d2b!important;font-weight:800!important}#mtown-unified-header .mhu-call{padding:10px 12px;border:1px solid #537184;border-radius:25px;white-space:nowrap}#mtown-unified-header .mhu-mobile{display:none}#mtown-unified-header a:focus-visible,#mtown-unified-header summary:focus-visible{outline:3px solid #65d9ff;outline-offset:4px}@media(max-width:1250px){#mtown-unified-header .mhu-desktop{display:none}#mtown-unified-header .mhu-mobile{display:block}#mtown-unified-header .mhu-mobile>summary{padding:10px 13px;border:1px solid #537184;border-radius:8px;font-size:22px!important}#mtown-unified-header .mhu-mobile-panel{position:absolute;right:0;top:calc(100% + 16px);width:min(360px,calc(100vw - 28px));max-height:75vh;overflow:auto;display:grid;gap:8px;padding:16px;background:#0b1d2b;border:1px solid #d5b86c;border-radius:10px;box-shadow:0 12px 28px #0005}#mtown-unified-header .mhu-mobile-panel>a,#mtown-unified-header .mhu-mobile-panel>details>summary{display:block;padding:12px}#mtown-unified-header .mhu-mobile-panel .mhu-dropdown{position:static;margin-top:8px;min-width:0;box-shadow:none}}@media(max-width:600px){#mtown-unified-header .mhu-inner{min-height:82px;padding:10px 12px;gap:8px}#mtown-unified-header .mhu-brand{flex:1;min-width:0}#mtown-unified-header .mhu-brand svg{width:min(100%,230px)}#mtown-unified-header .mhu-call{display:none}#mtown-unified-header .mhu-book{padding:11px 13px;font-size:12px!important}#mtown-unified-header .mhu-actions{gap:7px}}#mtown-unified-header .mhu-services .mhu-dropdown a{border-left:3px solid #bba777;background:#ffffff06}#mtown-unified-header .mhu-services .mhu-dropdown a[href*="/cooling/"],#mtown-unified-header .mhu-services .mhu-dropdown a[href*="/ductless/"]{color:#afd9ed!important;border-left-color:#afd9ed;background:#afd9ed0c}#mtown-unified-header .mhu-services .mhu-dropdown a[href*="/warmair/"],#mtown-unified-header .mhu-services .mhu-dropdown a[href*="/boilers/"],#mtown-unified-header .mhu-services .mhu-dropdown a[href*="/heatpumps/"],#mtown-unified-header .mhu-services .mhu-dropdown a[href*="/conversion/"]{color:#ffc18c!important;border-left-color:#e99a59;background:#e99a590c}#mtown-unified-header .mhu-services .mhu-dropdown a:nth-child(even):not([href*="/cooling/"]):not([href*="/ductless/"]):not([href*="/warmair/"]):not([href*="/boilers/"]):not([href*="/heatpumps/"]):not([href*="/conversion/"]){color:#e3d6b1!important;background:#e3d6b10a}
/* Middletown service menu 2026-10-17: short groups, Mini Splits first. */
#mtown-unified-header .mhu-services>.mhu-dropdown{width:660px;min-width:0;max-width:calc(100vw - 32px);grid-template-columns:1.1fr .95fr 1fr;gap:14px;padding:18px;max-height:min(70vh,680px);overscroll-behavior:contain}
#mtown-unified-header .mhu-service-group{min-width:0}
#mtown-unified-header .mhu-service-group-label{margin:0 0 9px;color:#e3d6b1;font:700 12px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.025em}
#mtown-unified-header .mhu-service-group a{display:flex;align-items:center;min-height:44px;margin-bottom:5px;padding:9px 10px;white-space:normal}
#mtown-unified-header .mhu-services .mhu-all-services{grid-column:1/-1;margin-top:3px;padding:11px 12px;min-height:44px;border:1px solid #d5b86c;color:#fff!important;background:#ffffff08;text-align:center}
#mtown-unified-header .mhu-mobile-panel .mhu-services>.mhu-dropdown{width:100%;max-width:100%;grid-template-columns:1fr;gap:15px;max-height:none;overflow:visible;padding:12px}
@media(max-height:500px){#mtown-unified-header .mhu-mobile-panel{max-height:calc(100vh - 110px)}}


/* ---- Mobile quick-action bar (lifted from site-wide injected script mtown-shared-actions-v3) ---- */

#mtown-mobile-actions{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed!important;inset:auto auto 18px 50%!important;transform:translateX(-50%);width:min(820px,calc(100% - 32px));gap:10px;padding:12px!important;box-sizing:border-box;background:#061522f5!important;border:1px solid #d7b66b!important;border-radius:18px;box-shadow:0 12px 36px #0005;z-index:900;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}

#mtown-mobile-actions a{display:flex;align-items:center;justify-content:center;min-height:64px!important;min-width:0;padding:10px 8px;border:2px solid transparent;border-radius:12px!important;box-sizing:border-box;font-size:20px!important;font-weight:900!important;line-height:1.12!important;letter-spacing:.025em;text-align:center;text-decoration:none!important;transition:box-shadow .2s,border-color .2s}

#mtown-mobile-actions .mtown-call{background:linear-gradient(145deg,#ffe799,#ffc62f)!important;color:#091b2b!important;border-color:#ffe8a3;animation:mtown-gold-glow 3s ease-in-out infinite}

#mtown-mobile-actions .mtown-text{background:linear-gradient(145deg,#a1f0ff,#31cfff)!important;color:#061b2b!important;border-color:#a6f2ff;animation:mtown-blue-glow 3s ease-in-out infinite;animation-delay:1.5s}

#mtown-mobile-actions .mtown-book{background:#fff8e7!important;color:#102334!important;border-color:#dec583}

#mtown-mobile-actions .mtown-estimate{background:#173b53!important;color:#fff4d7!important;border-color:#d7b66b}

#mtown-mobile-actions a:hover,#mtown-mobile-actions a:focus-visible{outline:3px solid #fff;outline-offset:3px;filter:brightness(1.06)}

@media(max-width:767px){#mtown-mobile-actions{inset:auto 8px calc(8px + env(safe-area-inset-bottom,0px))!important;transform:none;width:calc(100% - 16px);gap:6px;padding:8px!important;border-radius:14px}#mtown-mobile-actions a{min-height:60px!important;font-size:14px!important;padding:8px 3px;border-radius:9px!important}#mtown-mobile-actions .mtown-estimate{font-size:12px!important}body{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))!important}}

@media(max-height:450px){#mtown-mobile-actions{bottom:5px!important;padding:6px!important}#mtown-mobile-actions a{min-height:44px!important;font-size:13px!important}body{padding-bottom:76px!important}}

@media(prefers-reduced-motion:reduce){#mtown-mobile-actions a{animation:none!important;transition:none!important}.mtown-call,.mtown-text{box-shadow:0 0 10px #8bdfff33!important}}
@media(min-width:768px){#mtown-mobile-actions{display:none!important}}
#mtown-mobile-actions a{animation:none!important}
body:has(#mtown-consent:not([hidden])) #mtown-mobile-actions,body:has(#mtown-consent:not([hidden])) #mtown-chat{visibility:hidden!important}
@media(max-width:767px){#mtown-mobile-actions a{min-height:48px!important;font-size:12px!important}#mtown-mobile-actions{box-shadow:none!important}}
/* ---- Consent banner (replaces the Web.com cookie notice; sets mtown-analytics-consent-v1) ---- */
#mtown-consent{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:950;width:min(960px,calc(100% - 24px));box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;padding:14px 18px;background:#0b1d2b;color:#fff;border:1px solid #d5b86c;border-radius:14px;box-shadow:0 12px 36px #0006;font:500 14px/1.5 Inter,system-ui,sans-serif}
#mtown-consent[hidden]{display:none}
#mtown-consent p{margin:0;flex:1 1 320px}
#mtown-consent a{color:#8bdfff}
#mtown-consent .mtc-actions{display:flex;gap:8px;flex:0 0 auto}
#mtown-consent button{min-height:44px;padding:10px 16px;border-radius:10px;border:1px solid #d5b86c;background:transparent;color:#fff;font:700 13px/1 Inter,system-ui,sans-serif;letter-spacing:.04em;cursor:pointer}
#mtown-consent button.mtc-accept{background:#ffd740;color:#0b1d2b;border-color:#ffd740}
#mtown-consent button:focus-visible{outline:3px solid #65d9ff;outline-offset:3px}
@media(max-width:600px){#mtown-consent{bottom:8px;padding:12px}#mtown-consent .mtc-actions{width:100%}#mtown-consent button{flex:1}}

/* ---- Global site footer (added 2026-11-01): NAP on every page + internal links to services and service-area pages ---- */
#mtown-site-footer{background:#0b1d2b;color:#dce7ef;border-top:3px solid #d5b86c;font:400 15px/1.6 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
#mtown-site-footer *{box-sizing:border-box}
#mtown-site-footer .mtf-inner{max-width:1360px;margin:auto;padding:46px 22px 34px;display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:32px}
#mtown-site-footer .mtf-name{margin:0;color:#fff;font-size:20px;font-weight:800;letter-spacing:.01em}
#mtown-site-footer .mtf-tag{margin:4px 0 16px;color:#e3d6b1;font-size:14px;font-style:italic}
#mtown-site-footer .mtf-nap{margin:0 0 14px;font-style:normal;line-height:1.85}
#mtown-site-footer .mtf-note{margin:14px 0 0;color:#9fb4c4;font-size:13px;line-height:1.55}
#mtown-site-footer .mtf-social{margin:16px 0 0;display:flex;gap:14px}
#mtown-site-footer .mtf-h{margin:0 0 12px;color:#fff;font-size:15px;font-weight:800;letter-spacing:.02em}
#mtown-site-footer ul{margin:0;padding:0;list-style:none;display:grid;gap:2px}
#mtown-site-footer a{color:#dce7ef;text-decoration:none;display:inline-block;padding:5px 0;min-height:30px}
#mtown-site-footer .mtf-nap a{color:#ffd740;font-weight:700}
#mtown-site-footer a:hover,#mtown-site-footer a:focus-visible{color:#ffd740;text-decoration:underline}
#mtown-site-footer a:focus-visible{outline:3px solid #65d9ff;outline-offset:3px;border-radius:4px}
#mtown-site-footer .mtf-bar{max-width:1360px;margin:auto;padding:16px 22px 26px;border-top:1px solid #1d3448;display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;align-items:center;color:#9fb4c4;font-size:13px}
#mtown-site-footer .mtf-bar p{margin:0}
@media(max-width:980px){#mtown-site-footer .mtf-inner{grid-template-columns:1fr 1fr;gap:28px}}
@media(max-width:600px){#mtown-site-footer .mtf-inner{grid-template-columns:1fr;gap:26px;padding:34px 16px 26px}#mtown-site-footer a{padding:8px 0;min-height:40px}#mtown-site-footer ul{grid-template-columns:1fr 1fr;gap:2px 16px}#mtown-site-footer .mtf-bar{padding:14px 16px 22px}}
