/* Shared navigation and button system for every public page. */
.h4-header{position:sticky;top:0;z-index:50;background:#10151b;border-bottom:1px solid #ffffff14;isolation:isolate}
.h4-header-inner{width:100%;max-width:1536px;min-height:108px;margin:0 auto;padding:14px 36px;display:flex;align-items:center;justify-content:space-between;gap:36px;box-sizing:border-box}
.h4-brand{display:block;flex:0 0 auto;line-height:0;text-decoration:none}
.h4-brand img{display:block;width:370px;max-width:100%;height:auto;max-height:80px;object-fit:contain;filter:none;transform:none}
.h4-header .h4-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap;margin:0;padding:0;min-width:0}
.h4-header .h4-nav-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 15px;border:1px solid transparent;border-radius:10px;font:600 14px/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;text-decoration:none;white-space:nowrap;background:transparent;color:#d6dde5;box-shadow:none;transition:background .18s ease,color .18s ease,border-color .18s ease;box-sizing:border-box}
.h4-header .h4-nav-link:hover{color:white;background:#ffffff0b}
.h4-header .h4-nav-link[aria-current="page"]{background:#ffffff0e;border-color:#ffffff12;color:white}
.h4-header .h4-primary{margin-left:16px;padding-left:22px;padding-right:22px;color:#fff;background:#176897;border-color:#3684b0;box-shadow:0 3px 10px #0002}
.h4-header .h4-primary:hover,.h4-header .h4-primary[aria-current="page"]{background:#105478;border-color:#438fb9;color:#fff}
.h4-header .h4-nav-link:focus-visible,.h4-brand:focus-visible{outline:3px solid #87c9ef;outline-offset:4px}
body .button,body .button.blue,body .cta-primary,body .fun-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 22px;border:1px solid #3684b0;border-radius:10px;background:#176897;color:#fff;font:600 14px/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;text-decoration:none;box-shadow:0 3px 10px #0002;cursor:pointer;transition:background .18s ease,border-color .18s ease}
body .button:hover,body .button.blue:hover,body .cta-primary:hover,body .fun-submit:hover{background:#105478;border-color:#438fb9;transform:none}
body .button.dark{background:#ffffff08;border-color:#ffffff30;color:#eef4f9}
body .button.dark:hover{background:#ffffff12;border-color:#ffffff50}
body .button:focus-visible,body .cta-primary:focus-visible,body .fun-submit:focus-visible{outline:3px solid #87c9ef;outline-offset:4px}
body .estimate-input-row button,body .estimate-continue{border-radius:10px;font-weight:600}
body .help-strip>a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;border:1px solid #b6cedd;border-radius:10px;color:#176897;background:white;font:600 14px/1.4 Arial,Helvetica,sans-serif;text-decoration:none}
body .help-strip>a:hover{background:#edf5fa;border-color:#176897}
@media(max-width:1150px){.h4-header-inner{padding:14px 24px;gap:20px}.h4-brand img{width:300px}.h4-header .h4-nav-link{padding:11px 10px}.h4-header .h4-primary{margin-left:8px;padding:11px 16px}}
@media(max-width:1050px){.h4-header-inner{flex-direction:column;gap:12px;padding:16px 20px}.h4-brand img{width:300px}.h4-header .h4-nav{justify-content:center;flex-wrap:wrap;gap:6px}.h4-header .h4-primary{margin-left:8px}}
@media(max-width:540px){.h4-header{position:relative}.h4-header-inner{padding:18px 16px 16px;gap:14px}.h4-brand img{width:250px}.h4-header .h4-nav{width:100%;gap:4px}.h4-header .h4-nav-link{min-height:44px;padding:10px 12px;font-size:13px}.h4-header .h4-primary{margin:6px 0 0;flex-basis:100%;max-width:220px}}
@media(prefers-reduced-motion:reduce){.h4-header .h4-nav-link,body .button,body .cta-primary,body .fun-submit{transition:none}}

/* Tactile navigation: a little motion, a clear destination, and a racing-stripe accent. */
.h4-header .h4-nav{gap:10px}
.h4-header .h4-nav-link{position:relative;gap:9px;padding:12px 15px;min-height:48px;border:1px solid #ffffff24;border-radius:13px;background:linear-gradient(180deg,#26313d,#19222c);color:#e8eef5;box-shadow:0 3px 0 #070d14,0 5px 12px #0002,inset 0 1px 0 #ffffff0a;transition:transform .22s cubic-bezier(.2,.8,.2,1),background .22s ease,box-shadow .22s ease,border-color .22s ease;color-scheme:dark;-webkit-tap-highlight-color:transparent}
.h4-nav-icon{flex-shrink:0;color:#9bcfee;transition:transform .25s ease,color .2s ease}
.h4-header .h4-nav-link::after{content:"";position:absolute;bottom:-1px;left:20%;right:20%;height:3px;border-radius:3px;background:linear-gradient(90deg,#e7505b 0 33%,#f3f7fb 33% 66%,#66bbef 66%);opacity:0;transform:scaleX(.4);transition:opacity .2s ease,transform .25s ease}
.h4-header .h4-nav-link[aria-current="page"]{border-color:#72bbdf85;background:linear-gradient(180deg,#24465e,#1a3245);color:white;box-shadow:0 3px 0 #08131e,0 0 20px #48acdf10,inset 0 1px 0 #ffffff12}
.h4-header .h4-nav-link[aria-current="page"]::after{opacity:1;transform:scaleX(1)}
.h4-header .h4-primary{margin-left:10px;padding:12px 19px;border-color:#71c6f2a6;background:linear-gradient(135deg,#1e81b7,#15618f);color:white;box-shadow:0 3px 0 #08344e,0 5px 20px #278ac128,inset 0 1px 0 #ffffff25}
.h4-header .h4-primary .h4-nav-icon{color:#d5f0ff}
.h4-nav-arrow{margin-left:1px;font-size:18px;line-height:1;color:#d5f0ff;transition:transform .22s ease}
@media(hover:hover) and (pointer:fine){
.h4-header .h4-nav-link:hover{background:linear-gradient(180deg,#314556,#223544);border-color:#7dc9f7a0;color:white;transform:translateY(-3px);box-shadow:0 5px 0 #070d14,0 9px 22px #0003,0 0 18px #6cc4fb12}
.h4-header .h4-nav-link:hover .h4-nav-icon{color:#d4f0ff;transform:translateY(-1px) rotate(-8deg)}
.h4-header .h4-nav-link:hover::after{opacity:1;transform:scaleX(1)}
.h4-header .h4-primary:hover{background:linear-gradient(135deg,#279ace,#1976a8);border-color:#aae4ff;box-shadow:0 5px 0 #08344e,0 9px 26px #278ac13d}
.h4-primary:hover .h4-nav-arrow{transform:translate(2px,-2px)}
.h4-primary:hover .h4-nav-icon{transform:rotate(45deg)}
}
.h4-header .h4-nav-link:active{transform:translateY(2px);box-shadow:0 1px 0 #070d14;border-color:#b5e6ff;transition-duration:.08s}
.h4-header .h4-nav-link:focus-visible{outline:3px solid #b6e7ff;outline-offset:5px}
@media(max-width:1150px){.h4-header .h4-nav{gap:8px}.h4-header .h4-nav-link{padding:11px 12px;gap:7px;font-size:13px}.h4-header .h4-primary{margin-left:4px;padding:11px 14px}}
@media(max-width:1050px){.h4-header-inner{gap:18px}.h4-header .h4-nav{gap:10px}}
@media(max-width:540px){.h4-header .h4-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:370px}.h4-header .h4-nav-link{min-height:46px;font-size:13px;padding:10px 12px}.h4-header .h4-primary{grid-column:1/-1;max-width:none;margin:2px 0 0;min-height:48px}.h4-header-inner{padding-bottom:20px}.h4-nav-icon{width:17px;height:17px}}
@media(prefers-reduced-motion:reduce){.h4-header .h4-nav-link,.h4-header .h4-nav-link::after,.h4-nav-icon,.h4-nav-arrow{transition:none}.h4-header .h4-nav-link:hover,.h4-header .h4-nav-link:active,.h4-header .h4-nav-link:hover .h4-nav-icon,.h4-primary:hover .h4-nav-arrow{transform:none}}

/* Full patriotic treatment for the selected destination. */
.h4-header .h4-nav-link::after{display:none}
.h4-header .h4-nav-link[aria-current="page"],.h4-header .h4-nav-link[aria-current="page"]:hover{
  isolation:isolate;overflow:hidden;
  background:linear-gradient(115deg,#b62d47 0%,#a33e5f 24%,#e8edf5 49%,#4580b3 70%,#15528c 100%);
  border-color:#c1dcf1;
  box-shadow:0 3px 0 #132b44,-5px 0 20px #ed476c35,5px 0 22px #46b8ff40,inset 0 1px 0 #ffffff75;
  color:white;
}
.h4-header .h4-nav-link[aria-current="page"]::before{
  content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22160%22%20height%3D%2252%22%20viewBox%3D%220%200%20160%2052%22%20preserveAspectRatio%3D%22none%22%3E%3Cg%20fill%3D%22white%22%20opacity%3D%22.85%22%3E%3Cpolygon%20points%3D%2210.00%2C3.90%2010.79%2C5.91%2012.95%2C6.04%2011.28%2C7.42%2011.82%2C9.51%2010.00%2C8.35%208.18%2C9.51%208.72%2C7.42%207.05%2C6.04%209.21%2C5.91%22%2F%3E%3Cpolygon%20points%3D%2233.33%2C3.90%2034.13%2C5.91%2036.28%2C6.04%2034.62%2C7.42%2035.16%2C9.51%2033.33%2C8.35%2031.51%2C9.51%2032.05%2C7.42%2030.39%2C6.04%2032.54%2C5.91%22%2F%3E%3Cpolygon%20points%3D%2256.67%2C3.90%2057.46%2C5.91%2059.61%2C6.04%2057.95%2C7.42%2058.49%2C9.51%2056.67%2C8.35%2054.84%2C9.51%2055.38%2C7.42%2053.72%2C6.04%2055.87%2C5.91%22%2F%3E%3Cpolygon%20points%3D%2280.00%2C3.90%2080.79%2C5.91%2082.95%2C6.04%2081.28%2C7.42%2081.82%2C9.51%2080.00%2C8.35%2078.18%2C9.51%2078.72%2C7.42%2077.05%2C6.04%2079.21%2C5.91%22%2F%3E%3Cpolygon%20points%3D%22103.33%2C3.90%20104.13%2C5.91%20106.28%2C6.04%20104.62%2C7.42%20105.16%2C9.51%20103.33%2C8.35%20101.51%2C9.51%20102.05%2C7.42%20100.38%2C6.04%20102.54%2C5.91%22%2F%3E%3Cpolygon%20points%3D%22126.67%2C3.90%20127.46%2C5.91%20129.61%2C6.04%20127.95%2C7.42%20128.49%2C9.51%20126.67%2C8.35%20124.84%2C9.51%20125.38%2C7.42%20123.72%2C6.04%20125.87%2C5.91%22%2F%3E%3Cpolygon%20points%3D%22150.00%2C3.90%20150.79%2C5.91%20152.95%2C6.04%20151.28%2C7.42%20151.82%2C9.51%20150.00%2C8.35%20148.18%2C9.51%20148.72%2C7.42%20147.05%2C6.04%20149.21%2C5.91%22%2F%3E%3Cpolygon%20points%3D%2217.00%2C41.90%2017.79%2C43.91%2019.95%2C44.04%2018.28%2C45.42%2018.82%2C47.51%2017.00%2C46.35%2015.18%2C47.51%2015.72%2C45.42%2014.05%2C44.04%2016.21%2C43.91%22%2F%3E%3Cpolygon%20points%3D%2242.20%2C41.90%2042.99%2C43.91%2045.15%2C44.04%2043.48%2C45.42%2044.02%2C47.51%2042.20%2C46.35%2040.38%2C47.51%2040.92%2C45.42%2039.25%2C44.04%2041.41%2C43.91%22%2F%3E%3Cpolygon%20points%3D%2267.40%2C41.90%2068.19%2C43.91%2070.35%2C44.04%2068.68%2C45.42%2069.22%2C47.51%2067.40%2C46.35%2065.58%2C47.51%2066.12%2C45.42%2064.45%2C44.04%2066.61%2C43.91%22%2F%3E%3Cpolygon%20points%3D%2292.60%2C41.90%2093.39%2C43.91%2095.55%2C44.04%2093.88%2C45.42%2094.42%2C47.51%2092.60%2C46.35%2090.78%2C47.51%2091.32%2C45.42%2089.65%2C44.04%2091.81%2C43.91%22%2F%3E%3Cpolygon%20points%3D%22117.80%2C41.90%20118.59%2C43.91%20120.75%2C44.04%20119.08%2C45.42%20119.62%2C47.51%20117.80%2C46.35%20115.98%2C47.51%20116.52%2C45.42%20114.85%2C44.04%20117.01%2C43.91%22%2F%3E%3Cpolygon%20points%3D%22143.00%2C41.90%20143.79%2C43.91%20145.95%2C44.04%20144.28%2C45.42%20144.82%2C47.51%20143.00%2C46.35%20141.18%2C47.51%20141.72%2C45.42%20140.05%2C44.04%20142.21%2C43.91%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"),linear-gradient(180deg,#0b192526,#09162799 45%,#0916278c 70%,#09162726);
  background-size:100% 100%,100% 100%;background-position:center;background-repeat:no-repeat,no-repeat;
}
.h4-header .h4-nav-link[aria-current="page"]>span,.h4-header .h4-nav-link[aria-current="page"]>.h4-nav-icon{color:#fff;text-shadow:0 1px 3px #071421,0 0 5px #07142180}

.h4-contact{width:min(460px,calc(100vw - 32px));max-height:85vh;overflow:auto;box-sizing:border-box;margin:auto;padding:32px;border:1px solid #c7d8e5;border-radius:18px;background:#f9fbfd;color:#172b3b;box-shadow:0 22px 90px #0006;font:15px/1.6 Arial,Helvetica,sans-serif;text-align:left}
.h4-contact::backdrop{background:#06111dbb;backdrop-filter:blur(4px)}
.h4-contact h2{font:700 30px/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.8px;margin:0 0 12px;color:#172b3b}
.h4-contact p{font:400 15px/1.6 Arial,Helvetica,sans-serif;color:#536473;margin:0 0 22px}
.h4-contact label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
.h4-contact input{box-sizing:border-box;width:100%;padding:13px 12px;border:1px solid #b7cbd9;border-radius:9px;background:white;color:#172b3b;font:16px/1.4 Arial,Helvetica,sans-serif}
.h4-contact-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px}
.h4-contact-actions button,.h4-contact-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;box-sizing:border-box;padding:11px 16px;border:1px solid #176897;border-radius:10px;background:#176897;color:white;font:600 14px/1.4 Arial,Helvetica,sans-serif;text-decoration:none;cursor:pointer}
.h4-contact-actions a{color:#176897;background:white;border-color:#b7cbd9}
.h4-contact-actions button:hover{background:#105478}.h4-contact-actions a:hover{background:#eaf4fb}
.h4-contact .h4-contact-close{position:absolute;top:10px;right:10px;width:40px;height:40px;padding:0;border:0;background:transparent;color:#536473;font:28px/1 Arial,Helvetica,sans-serif;cursor:pointer}
.h4-contact .h4-contact-status{font-size:13px;margin:16px 0 0;min-height:20px}
.h4-contact :focus-visible{outline:3px solid #278bc5;outline-offset:3px}
@media(max-width:480px){.h4-contact{padding:28px 22px}.h4-contact-actions>*{flex:1;white-space:nowrap}}
