:root{
--shadow:0 2px 18px -1px rgba(32,32,37,0.15);	
--blue:#0c4a6e;
--dblue:#005991;
--lblue:#d0e5ff;
--tblue:#002e60;
--cta:#0ebe2d;
	--red:#d01b34;
}
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,ins,kbd,q,s,samp,small,strike,strong,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;vertical-align:baseline;background:transparent}img{margin:0;padding:0;border:0;outline:0;background:transparent}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}:focus{outline:0}a:focus{outline:0;text-decoration:none}ins{text-decoration:none}del{text-decoration:line-through}table{border-collapse:collapse;border-spacing:0}a{text-decoration:none;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;transition:all .5s ease}a:hover{text-decoration:none}::-webkit-input-placeholder{opacity:1}:-moz-placeholder{opacity:1}::-moz-placeholder{opacity:1}:-ms-input-placeholder{opacity:1}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}
b,strong{font-weight: 700}
body {
	font-family: 'Roboto', "Segoe UI", sans-serif;
	font-weight: 400;
	font-size: 16px;
    line-height: 1.428571429;
    color: #000;
    background-color: #fff;
	min-width: 320px; overflow-x: hidden;
	-webkit-transition: all 0.3s ease;                  
	-moz-transition: all 0.3s ease;                 
	-o-transition: all 0.3s ease;   
	-ms-transition: all 0.3s ease;          
	transition: all 0.3s ease;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
h1, h2, h3, h4, h5, h6 {line-height: 1.3;margin: 0 0 15px;}
p {margin: 0 0 15px;}
main {min-height:100vh; position: relative;
  background: linear-gradient(90deg, rgb(232, 0, 0) 0px, rgb(173, 1, 1) 50%, rgb(173, 1, 1) 100%) 50% 50% / auto padding-box border-box; }
main:before{content: ""; width: 100%; height: 100%; position: absolute; background-image: url("../img/map.png"); background-size: cover; background-repeat: no-repeat; opacity: 0.3}
/* Dark overlay to restore the original (darker) look that Bootstrap's backdrop gave */
main:after{content: ""; position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 1; pointer-events: none;}


header{ background:none ; max-width: 100%; padding:0; z-index: 99999; position: relative;  box-shadow: -1px 3px 20px 0px #0000003d !important;  position: relative ;   -webkit-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; }
header .navbar ,
header nav{ max-width: 1200px !important}
header nav img {max-height: 50px;}
.agent p{margin: 0; line-height: 1.2}
.agent .num p {font-weight: 900!important; font-size: 1.25rem; font-family: "Mulish", serif; color: var(--blue) }

.banner {text-align: center}
.banner p {font-size: 1.256rem}
form{margin-bottom: 2rem}

fieldset h3 {   
	font-family: "Mulish", serif;
	font-weight: 800;
    font-size: 2rem;

    text-align: center !important;
    position: relative;
    margin-bottom: 30px !important;

}



.container{max-width:800px}

.modal-dialog{
  display: flex;
  align-items: center;
  min-height:100vh;
	width: 100%;
	max-width: 700px;
}

.modal-content{background: none; border: none}
.modal {	background: rgba(52, 58, 65, 0); backdrop-filter: blur(1px); -webkit-backdrop-filter: blur(15px);}
.modal {	background: rgba(52, 58, 65, 0); backdrop-filter: blur(1px); -webkit-backdrop-filter: blur(15px);}

.modal-title {text-align: center; font-weight: 700; font-size: 2.25rem; display: block; width: 100%; color:#fff!important; padding: 0; line-height: 1.2;   
  animation: flash 1s infinite alternate;   }
.modal-header{border: none; padding: 0; margin-bottom: 2rem}
.modal .agent{    box-shadow: 0 0 5px rgba(0,0,0,.14); margin-bottom: 2rem}
.modal-body{padding-left: 1.5rem; padding-right: 1.5rem; background: #fff; border-radius: 10px; max-width: 600px; margin-left: auto; margin-right: auto}

.btn{  animation: hb 1.5s ease-in-out infinite both, pulsing 2s ease-in-out infinite;  background-color: var(--blue); font-weight: 700; font-size:1.5rem;position:relative; -webkit-transition:all .15s linear; -o-transition:all .15s linear; transition:all .15s linear; border: none;  color: #fff;border-radius: 3px;     padding: 0 20px;width: 100%;  line-height: 70px;}
.btn:hover,form .btn:active,form .btn:focus{ transform: scale(1.05); z-index: 99; color: #fff;}

.tip {margin-top: 2rem; margin-left: auto; margin-right: auto; font-weight: 400}

.ol span{background: #ef0808; color: #fff; padding:5px 15px 5px 10px;display: block}
.ol p{background: #fff;position: relative;padding-left:30px; margin: 0; text-transform: uppercase; display: block; font-weight: 700; letter-spacing: 2px; border-radius: 20px;overflow: hidden}
.ol p:before {
    content: "";
    border-radius: 50%;
    width: 16px;
    height: 16px;
    display: block;
    transform: scale(1);
    animation: bot 2s infinite;
    background: #ef0808;
    transition: transform 0.24s;
    position: absolute;
    left: 0; margin-left: 8px;
    top: 50%; margin-top: -8px;
}


.headline {text-align: center; }
.headline h3{font-weight: 700; margin-bottom: .5rem; color: var(--red); font-size:1.5rem}
.headline p {font-weight: 300; font-size: 1.125rem}


footer {
  position: absolute;
  bottom: 0;
  width: 100%;
	z-index: 9999;
}
footer .container{background: #fff; max-width: 1200px; overflow: hidden}

.time {text-transform: uppercase; background: #000; color: #fff; padding: 10px; }
        .news {
            width: 100%;
            overflow: hidden;
        }

        .newsTicker {
            white-space: nowrap; 
        }

        .newsTicker p {
            display: inline-block; margin-bottom: 0;
            margin-right: 20px;
        }

@media (min-width: 577px) { 
.modal-open .modal{overflow-y: hidden!important}
}

@media (max-width: 576px) { 
	.navbar{padding-left: 10px; padding-right: 10px;}
	.navbar-brand img {max-height: 40px !important}
	.modal-dialog {padding: 1rem!important; margin: 0!important}
	.headline{max-width: 100%!important}
	.headline h3 {font-size: 1rem}
	.headline p {font-size: 1rem}
	.modal-title{font-size: 1.375rem}
	.ol p {font-size: 1rem; letter-spacing: 1px}
	fieldset h3 {font-size: 1.5rem}
	.btn{line-height: 60px;}
}


@keyframes flash {
  0% {text-shadow: 0 0 5px #ff0000; }
  50% { text-shadow: 0 0 25px #ff0000; }
  100% { text-shadow: 0 0 5px #ff0000; }
}

@keyframes bot {
    0% {
        -webkit-transform: scale(.85);
        transform: scale(.85);
        -webkit-box-shadow: 0 0 0 0 rgba(239,8,8,1);
        box-shadow: 0 0 0 0 rgba(239,8,8,1)
    }

    70% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-box-shadow: 0 0 0 10px rgba(239,8,8,0);
        box-shadow: 0 0 0 10px rgba(239,8,8,0)
    }
}

@keyframes pulsing {
    0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(0,123,255, 0.5);
    }

    70% {
        transform: scale(1.034);
        box-shadow: 0 0 0 10px transparent
    }

    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 transparent
    }
}
@keyframes hb {
  from {
    transform: scale(1);
    transform-origin: center center;
    animation-timing-function: ease-out;
  }
  10% {
    transform: scale(1.03);
    animation-timing-function: ease-in;
  }
  17% {
    transform: scale(1.04);
    animation-timing-function: ease-out;
  }
  33% {
    transform: scale(1.01);
    animation-timing-function: ease-in;
  }
  45% {
    transform: scale(1);
    animation-timing-function: ease-out;
  }
}



/*3 Steps CSS*/

.progress-val{ text-align:center;}
form fieldset:not(:first-of-type){ display: none;}
.btn-cta{ margin-bottom:15px;}
.cta-btn {
	font-size: 32px;
	color: #FFF !important;
	padding: 20px;
	background-color: #10b118;
	border-radius:6px;
	border: none;
	margin-bottom:20px;
	font-weight: 700;
	width:100%;
	font-weight:500;
	cursor:pointer;
	transition: font-size 0.3s ease-out;
	box-shadow: 1px 7px 5px 0px rgba(0,0,0,0.14);
-webkit-box-shadow: 1px 7px 5px 0px rgba(0,0,0,0.14);
-moz-box-shadow: 1px 7px 5px 0px rgba(0,0,0,0.14);
}
.svg-loader{display:block; margin:0 auto;}
.result{ text-align:center;}

/* Consent (TCPA) text under the buttons */
.consent-text{ margin-top: 1rem; margin-bottom: 0.5rem; text-align: center;}
.consent-text p{ font-size: 0.66rem; line-height: 1.45; color: #6b7280; margin-bottom: 0.6rem;}
.consent-text a{ color: var(--dblue); text-decoration: underline; font-weight: 600;}

/* Brand lockup in header */
.navbar-brand{ display: inline-flex; align-items: center; gap: 10px;}
.navbar-brand .brand-icon{ max-height: 46px; width: auto;}
.brand-text{ font-family: "Mulish", sans-serif; font-weight: 800; font-size: 1.35rem; line-height: 1; color: #fff; white-space: nowrap;}

/* --- Layout fix: put the page in normal flow so the tall legal footer
   sits BELOW the card instead of overlapping the modal-body --- */
.modal.show{
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  overflow: visible !important;
  background: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
.modal-backdrop{ display: none !important; }
.modal-open{ overflow: auto !important; padding-right: 0 !important; }
.modal-dialog{ min-height: auto !important; margin: 2rem auto !important; }
footer{ position: relative !important; }

/* Footer legal block */
.footer-legal{ padding: 12px 16px 14px; text-align: center; color: #4b5563; font-size: 0.55rem;}
.footer-legal p{ margin-bottom: 0.5rem;}
.footer-legal a{ color: var(--dblue); text-decoration: none;}
.footer-legal a:hover{ text-decoration: underline;}
.footer-links{ font-weight: 700; font-size: 0.7rem; color: var(--blue);}
.footer-copy{ font-weight: 700; font-size: 0.62rem; color: #111;}
.footer-address{ font-size: 0.56rem;}
.footer-note{ font-size: 0.55rem; color: #6b7280;}
.footer-disclaimer{ font-size: 0.48rem; line-height: 1.45; color: #9ca3af; text-align: left; margin-bottom: 0;}

@media (max-width: 576px){
  .brand-text{ font-size: 1.05rem;}
  .navbar-brand .brand-icon{ max-height: 38px;}
}