/*
*/
/*****************************************************************************/

@font-face{font-family:'Lato';font-style:normal;font-weight:100;font-display:swap;src:url(Lato-Thin.ttf) format('truetype')}
@font-face{font-family:'Lato';font-style:normal;font-weight:300;font-display:swap;src:url(Lato-Light.ttf) format('truetype')}
@font-face{font-family:'Lato';font-style:normal;font-weight:400;font-display:swap;src:url(Lato-Regular.ttf) format('truetype')}
@font-face{font-family:'Lato';font-style:normal;font-weight:700;font-display:swap;src:url(Lato-Bold.ttf) format('truetype')}
@font-face{font-family:'Lato';font-style:normal;font-weight:900;font-display:swap;src:url(Lato-Black.ttf) format('truetype')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100;font-display:swap;src:url(Montserrat-Thin.ttf) format('truetype')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:200;font-display:swap;src:url(Montserrat-ExtraLight.ttf) format('truetype')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:300;font-display:swap;src:url(Montserrat-Light.ttf) format('truetype')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url(Montserrat-Regular.ttf) format('truetype')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;src:url(Montserrat-Medium.ttf) format('truetype')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url(Montserrat-Bold.ttf) format('truetype')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url(Montserrat-SemiBold.ttf) format('truetype')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:800;font-display:swap;src:url(Montserrat-ExtraBold.ttf) format('truetype')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:900;font-display:swap;src:url(Montserrat-Black.ttf) format('truetype')}

html,select,input,textarea {
   font-family:Lato,source-sans-pro,Helvetica,Arial,sans-serif !important;
}
html {
   background:none !important;
}
body {
   background-color:white !important;
}

header { 
   /*overflow:auto;*/
}
html.customer footer {
   overflow:auto;
   background-color:white;
}

html.customer h1 {
   /*font-family:Montserrat;
   font-weight:400;*/
   font-weight:600;
   font-size:20px;
   margin-bottom:20px;
}
html.customer h2 {
   font-size:18px;
   font-weight:600;
   margin-top:-10px;
   margin-bottom:15px;
}
html.customer h2.P3 {
   margin-top:15px;
}
html.customer h4 {
   font-size:15px;
   font-weight:600;
   margin-top:5px;
   margin-bottom:5px;
}
html.customer div h4:first-child {
   margin-top:0;
}
html.customer div h4:last-child {
   margin-bottom:0;
}

html.customer #Popup {
   font-size:14px;
   font-weight:300;
   line-height:1.2em;
}   
html.customer #Popup h3 {
   font-size:15px;
   font-weight:600;
   margin-top:10px;
   margin-bottom:5px;
   letter-spacing:initial;
   padding:0;
   font-variant:initial;
}
html.customer #Popup h3:first-child {
   margin-top:0;
}
html.customer #Popup h4 {
   color:#555555;
   font-weight:normal;
   margin-top:10px;
   margin-bottom:5px;
}

html.customer p {
   font-size:14px;
   font-weight:400;
   line-height:18px;
}
html.customer ol {
   font-size:14px;
   font-weight:400;
   line-height:18px;
   padding:20px 0 20px 25px;
   list-style-type:decimal;
   list-style-position:outside;
}
html.customer li {
   padding-left:0.4em;
}
html.customer b { 
   font-weight:600;
}

/*****************************************************************************/

#right {
   box-sizing:border-box;
   position:relative;
   right:max(630px,min(50%,calc(100% - 620px)));
   text-align:right;
   height:60vh !important;
   /*width:min(50%,calc(100% - 620px));*/
   overflow:hidden;
   border-right:30px solid #e10a1a;
}
#right img {
   margin-left:-450px;
   min-height:400px;
   height:100%;
}

#container,
#right {
   background-color:transparent !important;
}
#container {
   clear:initial !important;
   /*float:left;*/
   /*overflow:auto;*/
   width:initial !important;
}

#header_section { 
   background-color:white !important;
}
#header {
   width:100% !important;
   /*max-width:1000px !important;*/
   margin:initial !important;
   height:auto !important;
   background-color:inherit !important;
   /*background:url(c_header_background.jpg) center no-repeat;*/
   background-size:100% !important;
}
#footer_section {
   color:white;
   background-color:black !important;
   height:initial !important;
   font-weight:400;
}

#header img {
   display:block;
   float:left;
   width:max(280px,min(26vw,350px));
   height:auto;
   margin-right:max(25px,min(8vw,100px));
   margin-top:5px;
   margin-bottom:10px;
}

#c_header_line {
   background-color:#e10a1a;
   height:36px;
   margin-bottom:10px;
}
#c_header_line2 {
   clear:both;
   background-color:#e10a1a;
   height:3px;
   /*margin-bottom:10px;*/
}
#c_header_text {
   font-family:Montserrat,source-sans-pro,Helvetica,Arial,sans-serif;
   font-weight:400;
   font-size:max(35px,min(4vw,52px));
   /*width:80vw;*/
}

html.customer #content {
   /*float:right !important;*/
}
#content {
   position:relative !important;
   left:max(0px,min(calc(50% + 10px),calc(100% - 620px)));
   background-color:white !important;
}
@media only screen and (min-width:600px) { 
   #content {
      margin-top:20px;
      margin-bottom:20px;
   }
}

#footer { 
   width:100% !important;
   height:auto !important;
   text-align:center;
   background-color:white !important;
}
#footer div:not(#Popup) {
   float:left;
   padding:15px;
}
#footer table {
   width:100%;
}
#footer td {
   background-color:black;
   /*padding:15px 10px 15px 10px;*/
}
#footer a {
   text-decoration:none;
   font-size:inherit;
   color:white;
}
#footer a:hover {
   color:#dddddd;
}

/*****************************************************************************/

table.pg {
   width:100%;
   background-color:#525252;
}
table.pg td {
   padding:10px 25px 10px 25px;
}
div.progress_bar {
   box-sizing:border-box;
   /*clear:both;*/
   /*margin:auto;*/
   font-size:15px;
   font-weight:700;
   /*padding:10px 25px 10px 25px;*/
}
div.progress_bar div {
   box-sizing:border-box;
   float:left;
   padding:10px 15px 10px 15px;
}
div.progress_bar div.pg {
   /*color:white;*/
   /*background-color:#8b9291;*/
   color:black;
   background-color:white;
}
div.progress_bar div.pg.active {
   color:white;
   background-color:#e10a1a;
}
div.progress_bar div.pg_start,
div.progress_bar div.pg_end {
   background-repeat:no-repeat;
   background-size:contain;
   background-origin:border-box;
   padding-right:0;
}
div.progress_bar div.pg_start {
   margin-left:-12px;
   background-image:url('pgbar_start.png');
}
div.progress_bar div.pg_end {
   background-image:url('pgbar_end.png');
}
div.progress_bar div.pg_start.active {
   background-image:url('pgbar_active_start.png');
}
div.progress_bar div.pg_end.active {
   background-image:url('pgbar_active_end.png');
}

@media screen and (min-width:1131px) and (max-width:1230px) { 
   div.progress_bar div {
      padding:8px 13px 8px 13px;
      font-weight:600;
      font-size:14px;
   }
   div.progress_bar div.pg_start,
   div.progress_bar div.pg_end {
      max-width:15px;
   }
   div.progress_bar div.pg_start {
      margin-left:-10px;
   }
}
@media screen and (min-width:1011px) and (max-width:1130px) { 
   table.pg td {
      padding:10px 15px 10px 15px;
   }
   div.progress_bar div {
      padding:6px 11px 6px 11px;
      font-weight:600;
      font-size:13px;
   }
   div.progress_bar div.pg_start,
   div.progress_bar div.pg_end {
      max-width:13px;
   }
   div.progress_bar div.pg_start {
      margin-left:-8px;
   }
}
@media screen and (min-width:896px) and (max-width:1010px) { 
   table.pg td {
      padding:10px 8px 10px 8px;
   }
   div.progress_bar div {
      padding:5px 9px 5px 9px;
      font-weight:500;
      font-size:12px;
   }
   div.progress_bar div.pg_start,
   div.progress_bar div.pg_end {
      max-width:11px;
   }
   div.progress_bar div.pg_start {
      margin-left:-6px;
   }
}
@media screen and (max-width:895px) { 
   table.pg,
   div.progress_bar {
      display:none;
   }
}
@media screen and (max-width:645px) { 
   #right {
      display:none;
   }
}

div.link_list {
   float:right !important;
   /*width:100% !important;*/
   /*margin:20px auto 5px auto !important;*/
   /*font-size:12px;*/
}

img.map {
   float:right;
   padding-left:10px;
   padding-bottom:20px;
}
@media only screen and (max-width:500px) { 
   img.map {
      display:none;
   }
}

html.customer input[type="button"]:not(.CTA) {
   min-height:35px;
   padding-top:5px;
   padding-bottom:5px;
   padding-left:10px;
   padding-right:10px;
}

#lr_choose { 
   display:none;
   width:100%;
   max-width:400px;
   font-size:12px;
   line-height:1.2em;
   margin-top:5px;
   margin-bottom:5px;
}

input:disabled.unavailable { 
   background-color:#cccccc !important;
}

html.customer #pdown {
   background-image:url('arrow-l-double3_32.png');
}
html.customer #pup {
   background-image:url('arrow-r-double3_32.png');
}

html.customer div.warning {
   font-size:15px !important;
   color:#e10a1a !important;
   border-color:#e10a1a !important;
   border-radius:2px;
}
html.customer input:invalid,
html.customer input:required:invalid {
   border-color:#e03f4a
 !important;
}

#c_message {
   width:100%;
   box-sizing:border-box;
   -webkit-box-sizing:border-box;
   margin-top:30px;
   background-color:#e0a8ac
;
   border-radius:5px;
}

.small,
.small:active { 
   font-size: 14px !important;
   min-height:28px !important;
   vertical-align:initial !important;
   padding-left:10px !important;
   padding-right:10px !important;
}

html.customer div.f_group {
   margin-bottom:15px;
}
html.customer #ap_form div.f_line {
   box-sizing:border-box;
   -webkit-box-sizing:border-box;
   padding-left:0;
   padding-right:0;
}

html.customer div.message + table.bgroup { 
   margin-top:30px;
}

html.customer div.message {
   color:black;
   background-color:#d7d7d7;
   /*background-color:#e0a8ac
;*/
   /*background-color:transparent;*/
   border:2px solid #e10a1a;
   font-size:14px;
   line-height:1.3em;
}

html.customer table.AppointmentData td {
   font-size:14px;
   font-weight:300;
   line-height:140%;
   padding-right:7px;
}
html.customer table.AppointmentData td:last-child {
   font-weight:600;
}

div.chosen-container {
   /*font-family:source-sans-pro,Helvetica,Arial,sans-serif;*/
}

@media only screen and (max-width:599px) {
   html.customer div.c_serviceselect label {
      width:200px !important;
   }
}

div.c_serviceselect {
   float:left;  
   width:295px;
   padding-top:5px;
}
div.c_image div.c_serviceselect {
   float:none;
   width:290px;
}
div.c_image > img {
   margin-left:55px;
   width:180px;
   height:150px;
}

div.c_serviceselect label {
   /* IE */
   /*float:initial !important;*/
   float:none !important;
   font-size:15px !important;
   font-weight:normal !important;
   padding-left:5px;
   padding-bottom:2px;
}
div.c_image {
   float:left;
   margin-left:2px;
   margin-right:4px;
   margin-bottom:25px;
}
div.c_image:nth-of-type(even) {
   margin-right:0px;
}
div.c_image label {
   width:250px !important;
   line-height:1.2em;
}
div.c_image a {
   font-weight:bold;
   color:#e10a1a;
}

img.c_clock {
   vertical-align:middle;
   margin-top:4px;
   margin-right:4px;
   margin-bottom:5px;
}

#apZipCode {
   float:left;
   width:50px;
   margin-right:6px;
}

div.f_notlast ~ div.fullwidth {
   display:inline-block;
   border-right:56px solid transparent;
   box-sizing:border-box;
   -webkit-box-sizing:border-box;
}

/*****************************************************************************/

#c_calendar td input.CTA,
#c_calendar td input.CTA:focus {
   color:black;
   background-color:#b0d735;
}

#c_calendar td input.CTA:hover {
	background-color:#bdd669
;
   background-image:-webkit-linear-gradient(top,#bdd669
,#9cbd2f
);
   background-image:linear-gradient(to bottom,#bdd669
,#9cbd2f
);
}

#c_calendar td input.CTA:active {
	background-color:#87a329
;
   background-image:-webkit-linear-gradient(top,#9cbd2f
,#87a329
);
   background-image:linear-gradient(to bottom,#9cbd2f
,#87a329
);
}

/*****************************************************************************/
