/* @import url('http://example.com/example_style.css'); */

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/*****************************************/
/* Start your style declarations here    */
/*****************************************/
/* THEME COLORS for centralization */
 /* accessible red with white color */




















.fancyfont { 
  font-family: Georgia, 'georgiaRegular', 'georgiaRegular Fallback', serif;
}

/* shortcut classnames using the theme colors */
.lava_red       { color:#E63946; }
.charcoal_gray  { color:#333333; }
.dark_orange    { color:#F77F00; }
.soft_beige     { color:#F6E8C3; }
.lava_black     { color:#1A1A1D; }
.white          { color:#FFFFFF; }
.slate_blue     { color:#6C757D; }
.vivid_blue     { color:#008CFF; } 

.bg_lava_red       { background-color:#E63946; }
.bg_charcoal_gray  { background-color:#333333; }
.bg_dark_orange    { background-color:#F77F00; }
.bg_soft_beige     { background-color:#F6E8C3; }
.bg_lava_black     { background-color:#1A1A1D; }
.bg_white          { background-color:#FFFFFF; }
.bg_slate_blue     { background-color:#6C757D; }
.bg_vivid_blue     { background-color:#008CFF; }


html { 
  font-family:Helvetica, Arial, verdana; /* roboto, -apple-system, BlinkMacSystemFont,  */
  line-height:normal;
  scroll-behavior: smooth; 
  scroll-padding-top: 80px; /* height of any sticky header */
  /* New change default base font size from (unset - default 16px) to 18px; */
  font-weight:normal;
  font-size:18px;
  /* outline:2px solid red; */
  background-color: #1A1A1D;
}

body { 
  margin:0;
  background-color: #FFFFFF;
  color: #1A1A1D;
  min-width: 360px; 
  --hr-line-offset: 25%;
  --hr-color: #F77F00;
}


:root hr {
    border-image-slice: 1;
    border-image-source: linear-gradient(
        to right,
        transparent,
        var(--hr-color) calc(50% - var(--hr-line-offset)),
        var(--hr-color) calc(50% + var(--hr-line-offset)),
        transparent
    );
}


/* HUBSPOT SPROCKET OVERLAY position - move it to the bottom-left. */
body .hs-tools-menu { left:10px !important; right:initial !important; bottom:10px !important; top:initial !important; }

header { background-color: #f2f1ed; position:sticky; top:0; z-index:5; border-bottom:2px solid #E63946; }

.header-logo { margin-right:1.5rem; }
.header-logo #header_logo_img { display:inline-block; height:28px; }
.header-logo a { display:inline-block; padding:0; overflow:hidden; }

main { 
  background-color:#FFFFFF; min-height:15rem; 
  /*margin-top: 50px;*/ 
  line-height:1.5rem;
} /* margin is because header is sticky. */



.container {
  width: 100%;
  /*
  width: calc(100% - 30px);  
  padding-right: 15px;
  padding-left: 15px;
  */
  margin-right: auto;
  margin-left: auto;
  max-width: 1140px; /* GH added here instead of within media size queries. */
  position:relative; 
}

.container-fluid {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction:column; /* NEWLY ADDED - testing for problems. */
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-left:1rem; padding-right:1rem;
  /*justify-content: center;  */
  /* align-items: center; */
}

.row.directionrow, .directionrow { flex-direction:row; }
.row.directioncol, .directioncol { flex-direction:column; }

.container .row { padding-left:0; padding-right:0; }


.row.center { justify-content: center; }

/* Allow any .row classed el;ement to have an default BGcolor and text-color. */
.row.light         { background-color:#FFFFFF;         color: #333333; }
.row.dark          { background-color:#333333; color: #FFFFFF; }
.row.lava_red      { 
  color: #FFFFFF; 
  background-color:#E63946;
  background: linear-gradient(180deg, rgba(130,7,20,1) 0%, rgba(230,57,70,1) 15%);
}
.row.dark_orange   { background-color:#F77F00;   color: #1A1A1D; }
.row.charcoal_gray { background-color:#333333; color: #FFFFFF; }
.row.lava_black    { background-color:#1A1A1D;    color: #FFFFFF; }
.row.soft_beige    { background-color:#F6E8C3;    color: #1A1A1D; }
.row.white         { background-color:#1A1A1D;    color: #FFFFFF; }







.homepagemain .introcontainer .title_richtext { margin-bottom:1rem; }

.homepagemain .articlemontage_box { margin-top:1rem; }


.homepagemain .assurances .title * { font-family: Georgia, 'georgiaRegular', 'georgiaRegular Fallback', serif; font-size:2rem; margin-bottom:2rem; text-align:center; text-shadow: 0 0 25px #FFFFFF; }
.homepagemain .assurances .content_richtext {  margin: 0 3rem; display:flex; flex-direction:row; font-size: 1.2rem; line-height:2rem; }
.homepagemain .assurances .inline_image_box { margin: 0.5rem 1.5rem 0.5rem 0; width:28rem; Xheight:7rem; } /*  for a lazy-loaded backgroundimage used inline with richtext. */
.homepagemain .assurances .inline_image_box .inline_image { width:100%; height:100%; 
  display:block; background-size: cover;
  background-position: center center; 
  background-repeat: no-repeat;
  background-color:#333333; 
  position:relative;
  /*box-shadow:0px 0px 15px #333333;*/
  border-radius: 0.5rem;
} 






.hs-search-results ul {
  list-style-type: disclosure-closed;
}

.searchresults_box .hs-search-results__pagination {
  /*display:flex;  flex-direction:row; */
  text-align:center;
  margin-top:2rem; 
  margin-bottom:3rem; 
  padding-top:2rem;;
  border-top: 3px double #333333;
}

#bigsearch_box { margin-bottom:1rem; }
#bigsearchfield { padding:0.2rem 0.5rem; font-size:1.4rem; border-radius:0.5rem; width:12rem; }
#bigsearchbutton { font-size:1.2rem; }

.searchresults_box .results-description { 
  font-size:1.4rem;
  background-color: #333333;
  color: #FFFFFF;
  text-align:center;
  padding-top:1rem;
  margin-bottom:0rem; 
  padding-bottom:1rem;
  border-top: 1px solid ; 
  border-bottom: 1x double #333333;
}

.searchresults_box .hs-search-results__pagination a {
  display:inline-block;
  padding: 0.5rem 0.75rem;
  border:1px solid #333333;
  border-radius:0.5rem;
  text-decoration:none;
}







footer {
    /*margin-top: 5rem;*/
    /*background-clip: border-box;*/
    background-color: #1A1A1D; 
    color: #FFFFFF;
    padding: 1.5rem;
  /*
  position: absolute;
    bottom: 0;
    left:0;
    width: 100%;
  */
}

footer div, footer span, footer a, footer li { font-size:0.9rem; }

footer ul li {
    list-style: none;
}


/*
footer a:active,
footer a:focus,
footer a:hover {
  color: #1A1A1D;
  text-decoration: none;  
  background-color: transparent;
  border-radius:0.2rem;
}
*/


/*
footer a {
    -webkit-transition: all .25s;
    -moz-transition: all .25s;
    -ms-transition: all .25s;
    -o-transition: all .25s;
    transition: all .25s
}
*/

/* Footer menus as flex */
footer .footer-menus ul { display:flex; flex-direction:row; }

footer .footer-menus ul li a { font-size: 0.8rem; }

footer .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a:active,
footer .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a:focus,
footer .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a:hover {
  background-color:#333333;
  color: #FFFFFF;
  text-decoration: underline;
}

footer .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a:focus {
    outline: 1px solid #fff;
}

footer .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a {
    color: #fff;
    cursor: pointer;
    /*font-size: 1rem;*/
    font-weight: 500;
    line-height: normal;
    margin: 0 5px -7px;
    max-width: 100%;
    padding: 3px 9px;
    width: auto;
}

footer .footer-links a {
    color: #fff;
    /*font-size: 1rem;*/
    font-weight: 500;
    line-height: normal;
    padding: 3px 9px;
    text-decoration: none
}

footer .footer-links a:active,
footer .footer-links a:focus,
footer .footer-links a:hover {
    color: #fff;
    text-decoration: underline
}

.copyrighttext,
.footer-copy-text {
  margin-top:2rem; margin-bottom:1rem; font-size:0.6rem; text-align:center;
}

footer .footer-menus .hs-menu-wrapper.hs-menu-flow-horizontal>ul { margin-left:-13px; font-size:0.8rem; display:flex; flex-direction:row; }

footer .footer-social-links { 
  position:absolute;
  right: 0.5rem;
  bottom: -0.5rem; 
}

footer .footer-social-links ul li {
  padding: 0px 4px;
}

footer .footer-social-links ul li:first-child { padding-left:0; }
/*footer .footer-social-links ul li a:first-child { padding-left:0; }*/

footer .footer-social-links ul li a {
    display:inline-block;
}

footer .footer-contents { position:relative; } /* contains social links when absolute */

.footer-social-links ul{
  margin: 0;
  padding: 0;
  display: flex;
}
.footer-social-links ul li{
  padding-left: 20px;
  display:inline-block;
}
.footer-social-links ul li:first-child{
  padding-left: 0px;
}
.footer-social-links a{
  color: #fff;
  cursor: pointer;
}

/*
footer .footer-social-links ul li a:focus,
footer .footer-social-links ul li a:hover { 
  outline:2px solid #FFFFFF; 
  border-radius: 0.25rem;
  max-height:25px; 
}
*/


.footer-social-links a:hover, 
.footer-social-links a:active, 
.footer-social-links a:focus {
  color: #fff;
  background-color:brown;
  outline:2px solid #FFFFFF; 
  border-radius: 0.15rem;
  max-height:25px; 
}

.footer-social-links a img {
 max-height:25px; 
}

.footer-section h2{
  margin-bottom: 20px;
  font-size: 30px;
  font-weight: 700;
  line-height: 36px;
}
.footer-top-section .row-fluid-wrapper>.row-fluid{
  display: flex;
  justify-content: space-between;
}
.footer-social-links-container{
  max-width: 135px;
  margin-left: 20px !important;
}








/* 
 * HAMBURGER MENU 
 * */
.hamburger_icon { cursor:pointer; width:32px; height:32px;
  text-align:center;
  vertical-align:center;
  color:#FFFFFF;
  background-color:#1A1A1D;
  display:none;
  border:1px solid #1A1A1D;
  padding: 0px;
} /* initially hidden hamburger icon. */

.hamburger_icon:hover,
.hamburger_icon:focus-visible { background-color:#F77F00; border-color:#1A1A1D; }



/* Horiz lines (spans) */
.hamburger_icon span {  
  display: block;
  width:80%;
  height:4px;
  margin:5px auto 5px auto;
  position:relative;
  background: #FFFFFF;
  border-radius:3px;
  z-index:10;
  
  transform-origin: 4px 0px; /* 0px 0px; /*4px 0px*/
  
  transition: transform 0.25s cubic-bezier(0.77,0.2,0.05,1.0),
              background 0.25s cubic-bezier(0.77,0.2,0.05,1.0),
              opacity 0.25s ease;
}

.hamburger_icon span:first-child
{
  transform-origin: 100% 0%;
}

.hamburger_icon span:nth-last-child(3)
{
  transform-origin: 0% 100%;
}

/* 
 * Transform all the slices of hamburger
 * into a crossmark.
 */

.hamburger_icon input:checked ~ span
{
  opacity: 1;
  transform: rotate(-45deg) translate(0px, 0px);
  /*outline:1px solid lime;*/
  /*background: #232323;*/
}


/*
 * But let's hide the middle one.
 */
.hamburger_icon input:checked ~ span:nth-last-child(2)
{
  opacity: 0;
  transform: rotate(0deg); /*scale(0.2, 0.2)*/
}

/*
 * Ohyeah and the last one should go the other direction
 */
.hamburger_icon input:checked ~ span:nth-last-child(3)
{
  transform: rotate(45deg) translate(2px, 0px); 
}



.hero_form_box { border:2px solid #333333; border-radius:0.25rem; padding:0rem; margin: 1rem 0; }
.hero_content.column_reverse .hero_form_box { margin: 0 0 1rem 0; } /* flipt top.bottom margins now its on top. */
.hero_form_box h3 { margin-bottom:0.1rem; background-color:#333333; color:#FFFFFF; padding:0.1rem 0.5rem; text-align:center; border:none; }
.hero_form_box form { padding:1rem 2rem; }





/* form-field styles */

ul.no-list, ol.no-list {
 list-style-type:none;
 padding:0.2rem;
 margin:0.2rem 0;
}
ul.no-list li,
ol.no-list li { margin-bottom:auto !important; }

form .hs-form-required {
    color: #F77F00; /* #E63946 */
    font-weight: bold;
    display: inline-block;
    margin-left: .25em;
}

form .hs-form-field legend { display:none; }
form .hs-form-field { margin-bottom:1rem; }
form .hs-form-field label { font-size:1rem; font-weight:400; }
form .hs-fieldtype-textarea {
  padding:0.4rem 0.5rem; border-radius:0.2rem; 
  font-size: 1.0rem;
  /*color:#333333;*/
  /*margin-right:1rem;*/
}


form .hs-form-field .hs-input { width:95%; font-family:Helvetica, Arial, verdana; font-size:1.0rem; padding:0.4rem 0.3rem; border-radius:0.15rem; border-width:1px; color: }
form .hs-form-field .hs_email .hs-input  { width:95%; font-family:Helvetica, Arial, verdana; font-size:1.0rem; padding:0.2rem 0.25rem; border-radius:0.15rem; border-width:1px; }
form .hs-form-field.hs-message.hs-fieldtype-textarea { padding:0; }
form .hs-form-field .hs-fieldtype-textarea { width:95%; font-family:Helvetica, Arial, verdana;  min-height: 7rem; padding:0.2rem 0.25rem; border-radius:0.25rem; }



/* form errors and error messages */
form .hs-form-field .hs-input.invalid
{
  border-color:#E63946; 
}

form .hs-form-field .hs-error-msgs { background-color:#E63946; color:#FFFFFF; font-size:1rem; max-width:90%; font-size:0.8rem; }
form .hs-form-field .hs-error-msgs li { margin-bottom:0rem; }
form .hs-form-field .hs-error-msgs label { font-weight:normal; font-size:0.8rem; }
form .hs_error_rollup { background-color:#F77F00; color:black; border:0.5rem solid #E63946; font-size:1.2rem; text-align:center; }

form .actions .hs-button { margin-left:unset; font-size:1.2rem; min-width:10rem; }

/* Thank you inline form messages */
.submitted-message { 
  margin:1rem;
  background-color:#FFFFFF;
  color:#333333;
  padding:0.5rem;
  border-radius:0.25rem;
  text-align:center;
  box-shadow: 0 0 10px #E63946; }








.featured_pages_box { display:flex; flex-direction:column; align-items:flex-start; justify-content:space-around; margin-bottom:2rem; }
.featured_pages_box .article_image { margin:0.25rem; box-shadow:none; }
.featured_pages_box .featured_page {}
.featured_pages_box .featured_page .featuredpage_title { padding-bottom:0.1rem; border-bottom:1px solid #3c4146;
  background-color:#333333; color: #FFFFFF; padding:0.2rem 1.5rem; border-radius: 0.5rem 0 0 0.5rem;
}
.featured_pages_box .featured_page .featuredpage_tagline {}
.featured_pages_box .featured_page .featuredpage_body { display:flex; flex-direction:row; }
    .featured_pages_box .featured_page .featuredpage_body.reverse_row { display:flex; flex-direction:row-reverse; }

.featured_pages_box .featured_page .featuredpage_body .article_image_box { margin:1rem; max-width:calc(100% - 1rem); margin-right:1rem; outline:1px solid gray; }
.featured_pages_box .featured_page .featuredpage_body.reverse_row .article_image_box { margin-left:1rem; margin-right:0; }
.featured_pages_box .featured_page .featuredpage_body .article_image_box .article_image { margin:0;  }
.featured_pages_box .featured_page .featuredpage_body .featuredpage_content { padding:1rem; color: #3c4146; font-size:0.9rem; }
.featured_pages_box .featured_page .featuredpage_body .featuredpage_content h2, 
.featured_pages_box .featured_page .featuredpage_body .featuredpage_content h3, 
.featured_pages_box .featured_page .featuredpage_body .featuredpage_content h4,
.featured_pages_box .featured_page .featuredpage_body .featuredpage_content h5 {
  margin-top:0; 
}









.feature_box_columns_row { padding-bottom:1rem; }
.feature_box_columns_row .heading_text {
  text-align:center;
  /*border-bottom:1px solid #333333;*/
  margin-top: 1rem;
  /*margin-bottom: 1rem;*/
}

.feature_box_columns_row .intro_text  {
  text-align:center;
}

.feature_box_columns_row .heading_text h2,
.feature_box_columns_row .heading_text h3,
.feature_box_columns_row .heading_text h4,
.feature_box_columns_row .heading_text h5 {
  margin:0.2rem 0 0.1rem 0;
  /*font-size:1.5rem;*/
  /*color:#333333;  */
}

.feature_box_columns_row .heading_text.light { color: #FFFFFF; }
.feature_box_columns_row .heading_text.dark  { color: #333333; }

.feature_box_columns_row .intro_text.light { color: #FFFFFF; }
.feature_box_columns_row .intro_text.dark  { color: #333333; }

.feature_box_columns { 
  width:100%;
  
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  justify-content: space-evenly; /* space-around */
  align-items:flex-start;
  padding:0;
  /*outline:1px solid purple;*/
}

.feature_box_columns .featurebox {
  align-self:stretch;
  align-items:self; /* New:tbc... */
  border:1px solid #1A1A1D;
  border-radius: 0.5rem;
  /*outline:3px double orange;*/
  box-shadow: 0 0 10px #333333;
  margin:1rem 0rem;
  width:calc(33% - 2rem);
}

.feature_box_columns .featurebox_title_box {
   border:1px solid #333333;
   border-radius: 0.5rem 0.5rem 0 0;
   padding:0.5rem 1rem;
   display:flex;
   align-items:center;
   flex-direction:row;
   justify-content: space-between;
   /*outline:1px solid lime;*/
   /*height:1.5rem;   */
   background-color: #1A1A1D;
   color:#FFFFFF;
}

.feature_box_columns .featurebox_title_box .featurebox_title h2,
.feature_box_columns .featurebox_title_box .featurebox_title h3,
.feature_box_columns .featurebox_title_box .featurebox_title h4,
.feature_box_columns .featurebox_title_box .featurebox_title h5 {
 margin:0; 
}
/* slightly smaller headings for these boxes as they have limited size. */
.feature_box_columns .featurebox_title_box .featurebox_title h3 { font-size:1.4rem; }
.feature_box_columns .featurebox_title_box .featurebox_title h4 { font-size:1.3rem; }
.feature_box_columns .featurebox_title_box .featurebox_title h5 { font-size:1.2rem; }


.feature_box_columns .featurebox_title_box .featurebox_icon_box {
    display:inline-block;
    height:1.5rem;
}
.feature_box_columns .featurebox_title_box .featurebox_icon_box img {
   max-height: 100%; 
}

.feature_box_columns .featurebox_content {
   text-align:left;
   background-color:#FFFFFF;
   /*border:1px solid #1A1A1D;*/
   border-radius: 0 0 0.5rem 0.5rem;
   color: #333333;
   /*outline:1px solid pink; */
   padding:1rem;
  }


.feature_box_columns .featurebox_content .button,
.feature_box_columns .featurebox_content .buttonblue,
.feature_box_columns .featurebox_content .buttonblack,
.feature_box_columns .featurebox_content .buttonwhite,
.feature_box_columns .featurebox_content .buttonred {
   margin:1rem 0 0 0;
    
}


/* DARK VERSION */
.feature_box_columns.dark_boxes {
}

.feature_box_columns.dark_boxes .featurebox_content {
  background-color: #333333;
  color: #FFFFFF;
}




.testimonials_box {  }

.testimony_row { 
  flex-direction: row;
  margin-bottom:2rem; 
  justify-content: space-between;
  align-items:flex-end;
}
.testimony_logo {  }
.testimony_logo img { max-height:60px; max-width:100%; padding:0.25rem; border:1px solid silver; border-radius:5px; }
.testimony_companyname { font-weight:600; padding: 0.5rem 0.5rem 0.5rem 0; }
.testimony_content {
  margin:0; color: #333333; 
  font-size:1.2rem; font-style:italic;
  width:100%;
  padding:1rem;
  border:1px solid #333333;
  border-radius: 0 0 0.5rem 0.5rem;
}
.testimony_author  { padding-left:1rem; margin-top:1rem; }
.testimony_author cite { font-size:1rem; font-style:italic; }





/* general reusable classes for light or dark Main line or tagline content within hero sections. */
.hero_top { padding:1rem; border-bottom:2px solid #333333; background-position: 50%; } /* border-top:2px solid #333333;  */

/* adhero - for landing pages. */
.adhero { padding:1rem 1rem 1rem 1rem; 
  border-bottom:2px solid #333333;
} /* border-top:2px solid #333333;  */

.adhero.bg_white, .adhero.bg_light { 
  border-bottom-color:transparent;
}

/* hero_visuals: default styles: this is a white-bg rounded-border shadow-box.
 *    - override via extra classname such as '.hero_visuals_1', '.hero_visuals_2'  */
.hero_visuals { display:flex;
                flex-wrap: wrap;
                flex-direction:row;
                align-items:normal;
                /*padding:2rem;*/ /* adding padding here messes up the flexbox dimensions calculations. */
                border-radius:1rem;
                justify-content: space-around;                 
                margin-top:1rem; }



/* hero_visuals_1: this is a no-box version */
.hero_visuals_nobox { background-color:transparent; box-shadow:none; }

/* white bg */
.hero_visuals_whiteshadowbox { background-color:#FFFFFF;  box-shadow:0 0 20px #333333; color: #333333; }
.hero_visuals_whitebox       { background-color:#FFFFFF; border:1px solid #333333; box-shadow:none; }

/* softbeige bg */
.hero_visuals_beigeshadowbox { background-color:#F6E8C3;  box-shadow:0 0 20px #333333; color: #333333; }
.hero_visuals_beigebox       {  background-color:#F6E8C3;  box-shadow:none; }

/* black bg */
.hero_visuals_blackglowbox { background-color:#333333; color:#FFFFFF; box-shadow:0 0 20px #E63946; }
.hero_visuals_blackbox     { background-color:#333333; color:#FFFFFF; box-shadow:none; }


.hero_visuals h3,
.hero_visuals h4,
.hero_visuals h5 { margin-top:auto; margin-bottom:auto; }
.hero_visuals h3 { padding:0.5rem; }



.column_reverse { flex-direction:column-reverse !important; }
.row_reverse    { flex-direction:row-reverse  !important; }

.adhero .hero_image {  padding:1rem; }
.adhero .hero_image img { max-width:100%; }

.adhero .hero_content { max-width:calc(55% - 2rem); display:flex; flex-direction:column;  padding:1rem; align-self:flex-start; /*font-size:1.2rem;*/ }

.adhero .hero_content ul li,
.adhero .hero_content ol li {
 margin-bottom:1rem;
}

.adhero .hero_content > ol,
.adhero .hero_content > ul {
  list-style-type: square;
  padding-left:1rem; 
}




.hero_mainline,
h1.hero_mainline { 
    text-align:center;
    padding:0rem 0.5rem 0.5rem 0.5rem; margin:0.1rem auto; 
    max-width:60rem;
    /*text-shadow: 0 0 1px #1A1A1D;*/
    /*font-size:2rem; font-weight:bold;*/
}
.hero_mainline_dark   { color: #1A1A1D; }
h1.hero_mainline_dark { text-shadow: 0 0 1px #FFFFFF;}
.hero_mainline_light  { color: #FFFFFF; }

.hero_tagline,
  h2.hero_tagline {
    text-align:center; padding:0.5rem; margin:0.1rem;
    text-shadow: 0 0 1px #1A1A1D;
    line-height:2rem;
    /* font-size:1.6rem; */
}
.hero_tagline_dark   { color: #1A1A1D;  }
  h2.hero_tagline_dark { text-shadow: 0 0 1px #FFFFFF; }
.hero_tagline_light  { color: #FFFFFF; }
/* end: general reusable classes... */


/* BuiltIn CTAs */
.hero_top .hero_top_cta_box { display:block; width:50%; text-align:center; margin: auto auto; } 

/* Rich text and button callouts */
.hero_top .hero_top_callout_box { display:block; width:50%; text-align:center; margin: auto auto; } 





.title_richtext { margin-bottom:2rem; }


.title_richtext_form { margin-bottom:2rem; }

.title_richtext_form .hero_form_box { display:inline-block; min-width:50%; text-align:left; }

.title_richtext_form .hero_form_box h3,
.title_richtext_form .hero_form_box h4,
.title_richtext_form .hero_form_box h5 { 
  text-align:center;
  color: #FFFFFF;
  background-color: #1A1A1D;
  margin-top:auto; margin-bottom:auto; padding:0.5rem;
}





/* SEARCH */

#search_button { margin:0; padding:0.4rem 0.8rem; }

.search_box { display:flex; align-items:center; }

.search_box .search_icon { 
  position:absolute;
  right:1rem;
  height:1.5rem; width:1.75rem;
  text-align:center; padding:0.1rem 0.1rem;
  background-color:transparent; #transparent;
  border-radius:0.1rem; border:1px solid transparent;
}

.search_box .search_icon img { height:1.3rem; }
.search_box .search_icon:hover,
.search_box .search_icon:focus { 
  cursor:pointer;
  box-shadow: 0 0 3px #1A1A1D;
  /*background-color:#F6E8C3;*/
  /*border-color:#333333; */
}

#search_field_box {
  border:2px solid #E63946;
  border-top-color: transparent;
  background-color:#f2f1ed; 
  border-radius: 0 0 0.2rem 0.2rem;
  color:#FFFFFF;
  padding:0.5rem 1rem;
  text-align:left;
  /*min-width: 60%;*/
  position:absolute;
  top:calc(3rem - 2.5px);
  right:1rem;
}


#search_field_box label { color:yellow; font-size:0.8rem; }
#search_term { padding:0.4rem 0.5rem; border-radius:0.2rem; width:8rem; }

/* end: SEARCH */





/* MAIN links */
main a,
main a:link,
main a:visited {
  color: #E63946;
  transition: all 0.15s;
  padding: 0rem 0.1rem;
  text-decoration:underline;
}

main a:active,
main a:focus,
main a:hover {
  color: #1A1A1D;
  text-decoration: none;  
  background-color: #F6E8C3;
  border-radius:0.2rem;
}
/* end: MAIN links */

/* MAIN links on dark background */

main .dark a,
main .dark a:link,
main .dark a:visited {
  color: #E63946;
  transition: all 0.15s;
  padding: 0rem 0.1rem;
  text-decoration:underline;
}
main .dark a:active,
main .dark a:focus,
main .dark a:hover {
  background-color:transparent;
  color: #F77F00;
  text-decoration: none;  
  /*background-color: #F6E8C3;*/
  border-radius:0.2rem;
}
/* emd: MAIN links on dark background */


main .breadcrumb { 
  display:block; margin:0.4rem 0; 
  opacity:0.85;
  /*outline:1px solid lime; */
}

main .breadcrumb ul { margin:0; padding:0; list-style-type:none; }
main .breadcrumb ul li { display:inline-block; margin:0;  padding:0; }
 


main .breadcrumb a { display:inline-block; }

main .breadcrumb img { height:15px; }

main .breadcrumb .separator { margin:0 0.25rem; }
main .breadcrumb .separator img { height:10px; opacity:0.5; }

main .breadcrumb a.homelink { padding:0.2rem 0.2rem 0.2rem 0.2rem; }
main .breadcrumb a.homelink:active,
main .breadcrumb a.homelink:hover,
main .breadcrumb a.homelink:focus {
 #border-radius:0;
 outline:1px solid white;
}


main .breadcrumb a,
main .breadcrumb a:link,
main .breadcrumb a:visited {
  font-size:0.8rem;
  display:inline-block;
  text-decoration:underline;
  line-height:normal;
  color:white;
  text-decoration:none;
  font-weight:400;
}



main .breadcrumb a:active,
main .breadcrumb a:hover,
main .breadcrumb a:focus { 
 text-decoration:underline; 
}

/* For accessibility:  displays content OFFSCREEN so its not viewable but is readbale. */
.offscreen, .hideme, .sr-only {
  position:absolute;
  left:-10000px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden; }

p { margin-top:0.5rem; margin-bottom:1rem; }




.borderbottom { border-bottom: 2px solid #333333; }

.block   { display:block; }
.inblock { display:inline-block; }
.inline  { display:inline; }

.center { text-align:center; }
.marg, .marg05 { margin:0.5rem !important; }
.marg1 { margin:1rem !important; }
.marg2  { margin:2rem !important; }
.marg3  { margin:3rem !important; }


.marg0 { margin: 0 !important; }
.margleft, .margleft05 { margin-left:0.5rem !important; }
.margleft1 { margin-left:1rem !important; }
.margleft2  { margin-left:2rem !important; }
.margleft3  { margin-left:3rem !important; }

.margright0 { margin-right: 0 !important; }
.margright, .margright05 { margin-right:0.5rem !important; }
.margright1 { margin-right:1rem !important; }
.margright2  { margin-right:2rem !important; }
.margright3  { margin-right:3rem !important; }

.margtop0 { margin-top: 0 !important; }
.margtop, .margtop05 { margin-top:0.5rem !important; }
.margtop1  { margin-top:1rem !important; }
.margtop2  { margin-top:2rem !important; }
.margtop3  { margin-top:3rem !important; }

.margbottom0 { margin-bottom: 0 !important; }
.margbottom, .margbottom05 { margin-bottom:0.5rem !important; }
.margbottom1 { margin-bottom:1rem !important; }
.margbottom2  { margin-bottom:2rem !important; }
.margbottom3  { margin-bottom:3rem !important; }

.pad, .pad05 { padding:0.5rem!important; }
.pad1 { padding:1rem !important; }
.pad2  { padding:2rem!important; }
.pad3  { padding:3rem!important; }

.padleft, .padleft05 { padding-left:0.5rem; }
.padleft15 { padding-left:1rem!important; }
.padleft2  { padding-left:2rem !important; }
.padleft3  { padding-left:3rem !important; }

.padright, .padright05 { padding-right:0.5rem !important; }
.padright1 { padding-right:1rem !important; }
.padright2  { padding-right:2rem !important; }
.padright3  { padding-right:3rem !important; }

.padtop, .padtop05 { padding-top:0.5rem !important; }
.padtop1 { padding-top:1rem !important; }
.padtop2  { padding-top:2rem !important; }
.padtop3  { padding-top:3rem !important; }

.padbottom, .padbottom05 { padding-bottom:0.5rem !important; }
.padbottom1 { padding-bottom:1rem !important; }
.padbottom2  { padding-bottom:2rem !important; }
.padbottom3  { padding-bottom:3rem !important; }

.borderbottom, .borderbottom1 { border-bottom:1px solid #333333 !important; }
.borderbottom2 { border-bottom:2px solid #333333 !important; }
.borderbottom3 { border-bottom:3px solid #333333 !important; }







h1 { font-family: Georgia, 'georgiaRegular', 'georgiaRegular Fallback', serif; 
     font-size: 3.0rem;
     font-style:italic; font-weight:400; 
     margin-top:1rem;
     line-height:normal;
}

h2 { font-family: Georgia, 'georgiaRegular', 'georgiaRegular Fallback', serif;
     font-size: 1.65rem;
     margin-top:2rem; margin-bottom:0.3rem; 
     font-style:italic; font-weight:400;
     line-height:normal;
}

h3 { font-family: inherit;
       font-size: 1.4rem;   
       margin-top:1.4rem; margin-bottom:0.6rem; font-weight:400;
     line-height:normal;
}

h4 { font-family: inherit;
     font-size: 1.2rem;
     margin-top:1.4rem; margin-bottom:0.3rem; font-weight:400;
     line-height:normal;
}

h5 { font-family: inherit;
     font-size: 1.1rem;
     margin-top:1.4rem; margin-bottom:0.1rem; font-weight:600;
     line-height:normal;
}

h6 { font-family: inherit;
     font-size: 1.0rem;
     margin-top:1.5rem; margin-bottom:0.1rem; font-weight:900; font-style:italic;
     line-height:normal;
}


/* LISTS */
main > ol { padding-left:1rem; }
main > ul { list-style-type: square; padding-left:1rem; }

main ul li,
main ol li {
 margin-bottom:0.7rem;
}

main ul li li { margin-top:0.25rem; margin-bottom:0.5rem; }
/* end: LISTS */



/* BUTTONS
 * ------------------ */

.big { font-size:1.5rem; }
.small { font-size:0.75rem; }

  
.button,
main a.button
{
    display:inline-block;
    text-decoration:none;
    background-color: #E63946;
    border: 2px solid #1A1A1D;
    border-radius: 0.25rem;
    color: black;/* actual black for contrast */
    padding: 0.25rem 0.6rem;
    margin: 0.1rem 0.5rem;
    text-decoration: none;  
    vertical-align:middle;
    box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);
    transition: all 0.15s;
}
.button:hover, .button:focus, .button:active,
main a.button:hover, main a.button:focus, main a.button:active {
  background-color: #1A1A1D;
  color: #FFFFFF;
  border-color: #FFFFFF;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.4), 0 3px 10px 0 rgba(0,0,0,0.38);
}


.buttonblack,
main a.buttonblack,
main .hs-button {
    display:inline-block;
    text-decoration:none;
    background-color: #1A1A1D;
    border: 2px solid #1A1A1D;
    border-radius: 0.25rem;
    color: #FFFFFF;
    padding: 0.25rem 0.6rem;
    margin: 0.1rem 0.5rem;
    text-decoration: none;  
    vertical-align:middle;
    box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);
    transition: all 0.15s;
}
.buttonblack:hover, .buttonblack:focus, .buttonblack:active,
a.buttonblack:hover, a.buttonblack:focus, a.buttonblack:active,
a.buttonblack:hover, a.buttonblack:focus, a.buttonblack:active,
main .hs-button:hover, main .hs-button:focus, main .hs-button:active
 {
  background-color: #FFFFFF;
  color: #1A1A1D;
  border-color: #1A1A1D;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.4), 0 3px 10px 0 rgba(0,0,0,0.38);
}

.buttonblue,
main a.buttonblue {
    display:inline-block;
    text-decoration:none;
    background-color: #008CFF;
    border: 2px solid #FFFFFF;
    border-radius: 0.25rem;
    color: #FFFFFF;
    padding: 0.25rem 0.6rem;
    margin: 0.1rem 0.5rem;
    text-decoration: none;  
    vertical-align:middle;
    box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);
    transition: all 0.15s;
}
.buttonblue:hover, .buttonblue:focus, .buttonblue:active,
a.buttonblue:hover, a.buttonblue:focus, a.buttonblue:active {
  background-color: #F77F00;
  color: #1A1A1D;
  border-color: #FFFFFF;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.4), 0 3px 10px 0 rgba(0,0,0,0.38);
}

.buttonred,
main a.buttonred {
    display:inline-block;
    text-decoration:none;
    background-color: #b32727;
    border: 2px solid #1A1A1D;
    border-radius: 0.25rem;
    color: #FFFFFF; /* actual black for contrast */
    padding: 0.25rem 0.6rem;
    margin: 0.1rem 0.5rem;
    text-decoration: none;  
    vertical-align:middle;
    box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);
    transition: all 0.15s;
}
.buttonred:hover, .buttonred:focus, .buttonred:active,
a.buttonred:hover, a.buttonred:focus, a.buttonred:active {
  background-color: #1A1A1D;
  color: #FFFFFF;
  border-color: #FFFFFF;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.4), 0 3px 10px 0 rgba(0,0,0,0.38);
}



.buttonwhite,
main a.buttonwhite {
    display:inline-block;
    text-decoration:none;
    background-color: #FFFFFF;
    border: 2px solid #1A1A1D;
    border-radius: 0.25rem;
    color: #1A1A1D; /* actual black for contrast */
    padding: 0.25rem 0.6rem;
    margin: 0.1rem 0.5rem;
    text-decoration: none;  
    vertical-align:middle;
    box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);
    transition: all 0.15s;
}
.buttonwhite:hover, .buttonwhite:focus, .buttonwhite:active,
a.buttonwhite:hover, a.buttonwhite:focus, a.buttonwhite:active {
  background-color: #b32727;
  color: white; /* actual white for contrast */
  border-color: #b32727;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.4), 0 3px 10px 0 rgba(0,0,0,0.38);
}


.bigbutton { font-size:1.3rem; }

/* ------------------ 
 * end: BUTTONS */














/* end: HAMBURGER MENU */









.hs-menu-wrapper ul {
    padding: 0
}

.hs-menu-wrapper.hs-menu-flow-horizontal ul {
    list-style: none;
    margin: 0
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul {
    display: inline-block
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul:before {
    content: " ";
    display: table
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul:after {
    clear: both;
    content: " ";
    display: table
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-menu-depth-1 {
    /*float: left*/
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul li a {
    display: block; /* inline-block */
    max-width: 140px;
    overflow: hidden;
    padding: 4px 10px 4px 10px;
    margin: 0px 0;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #1A1A1D;
    text-decoration:none;
  
    width:90px;
    font-weight:400;
    font-size:0.9rem;
    padding-left:5px;
    padding-right:5px;
    text-align:center;
}

.header-topwrap { padding: 10px 0 5px 0; z-index:9; }
.header-topwrap > .row { align-items:center; flex-direction:row; }
.header-topwrap .header-menu .hs-menu-wrapper ul li { margin-bottom:0; }

.header-topwrap .menus_container { z-index:10; background-color:#f2f1ed; 
  /* margin-left: 3rem; */
}

.header-topwrap .menus_container ul { display:flex; flex-direction:row;  }
.header-topwrap .menus_container.hidden { display:block; } /* we will use this 'hidden' classname to 'display:none' ONLY when the width is less than 1200px. */


/*
.header-topwrap a:active,
.header-topwrap a:focus,
.header-topwrap a:hover 
MAIN NAVIGATION MENU (Main nav, topnav)
*/
.header-topwrap .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a:active,
.header-topwrap .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a:focus-visible,
.header-topwrap .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a:hover
{
  text-decoration: none;
  background-color: #F77F00;
  color: #1A1A1D;
  /*text-shadow: -0px -0px 3px #FFFFFF;*/
  /*font-weight:bold;*/ /* this will make the text jump */
  
  transition: background 0.35s; /*all 0.15s*/
  /*text-shadow:0px 0px 1px #1A1A1D;*/
  text-shadow:0px 0px 8px #FFFFFF;
  font-weight:600;
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children {
    position: relative
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    left: 0;
    opacity: 0;
    position: absolute;
    visibility: hidden;
    z-index: 10
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children ul.hs-menu-children-wrapper li a {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 140px
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children ul.hs-menu-children-wrapper li.hs-item-has-children ul.hs-menu-children-wrapper {
    left: 180px;
    top: 0
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children:hover>ul.hs-menu-children-wrapper {
    opacity: 1;
    visibility: visible
}

.row-fluid-wrapper:last-child .hs-menu-wrapper.hs-menu-flow-horizontal>ul {
    margin-bottom: 0
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch {
    margin-bottom: 20px;
    min-height: 7rem;
    position: relative
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch>ul {
    margin-bottom: 0
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch>ul li.hs-item-has-children {
    position: static
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch>ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    display: none
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch>ul li.hs-item-has-children.active-branch>ul.hs-menu-children-wrapper {
    display: block;
    opacity: 1;
    visibility: visible
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch>ul li.hs-item-has-children.active-branch>ul.hs-menu-children-wrapper:before {
    content: " ";
    display: table
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch>ul li.hs-item-has-children.active-branch>ul.hs-menu-children-wrapper:after {
    clear: both;
    content: " ";
    display: table
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch>ul li.hs-item-has-children.active-branch>ul.hs-menu-children-wrapper>li {
    XXXfloat: left
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch>ul li.hs-item-has-children.active-branch>ul.hs-menu-children-wrapper>li a {
    display: inline-block;
    max-width: 140px;
    overflow: hidden;
    padding: 10px 20px;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: auto
}

.hs-menu-wrapper.hs-menu-flow-vertical {
    width: 100%
}

.hs-menu-wrapper.hs-menu-flow-vertical ul {
    list-style: none;
    margin: 0
}

.hs-menu-wrapper.hs-menu-flow-vertical li a {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 140px
}

.hs-menu-wrapper.hs-menu-flow-vertical>ul {
    margin-bottom: 20px
}

.hs-menu-wrapper.hs-menu-flow-vertical>ul li.hs-menu-depth-1>a {
    width: auto
}

.hs-menu-wrapper.hs-menu-flow-vertical>ul li a {
    padding: 10px 20px;
    text-decoration: none
}

.hs-menu-wrapper.hs-menu-flow-vertical>ul li.hs-item-has-children {
    position: relative
}

.hs-menu-wrapper.hs-menu-flow-vertical>ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    left: 180px;
    opacity: 0;
    position: absolute;
    top: 0;
    -webkit-transition: opacity .4s;
    visibility: hidden;
    z-index: 10
}

.hs-menu-wrapper.hs-menu-flow-vertical>ul li.hs-item-has-children:hover>ul.hs-menu-children-wrapper {
    opacity: 1;
    visibility: visible
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch li a {
    min-width: 140px;
    width: auto
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch>ul {
    max-width: 100%;
    overflow: hidden
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch>ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    display: none
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch>ul li.hs-item-has-children.active-branch>ul.hs-menu-children-wrapper,.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch>ul li.hs-item-has-children.active-branch>ul.hs-menu-children-wrapper>li.hs-item-has-children>ul.hs-menu-children-wrapper {
    display: block;
    opacity: 1;
    position: static;
    visibility: visible
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch li.hs-menu-depth-2>a {
    padding-left: 4rem
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch li.hs-menu-depth-3>a {
    padding-left: 6rem
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch li.hs-menu-depth-4>a {
    padding-left: 8rem
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch li.hs-menu-depth-5>a {
    padding-left: 140px
}

.hs-menu-wrapper.hs-menu-not-show-active-branch li.hs-menu-depth-1 ul {
    box-shadow: 0 1px 3px rgba(0,0,0,.18);
    -webkit-box-shadow: 0 1px 3px rgba(0,0,0,.18);
    -moz-box-shadow: 0 1px 3px rgba(0,0,0,.18)
}







/*
@media (min-width: 1199px) {
  .header-topwrap .menus_container { display:block; }
}
*/


@media (max-width: 1200px) {
 .hero_content .hero_form_box fieldset.form-columns-2 .hs-form-field { width:95% !important; float:none !important; }
  h1.hero_mainline { max-width:95%; }
  
  .feature_box_columns .featurebox {
    width:calc(50% - 2rem);
  }
  
}

@media (max-width: 800px) {
  h1.hero_mainline { max-width:100%; }
  .header-topwrap .row { flex-direction:column; align-items:flex-start; } /* Logo, then UL-menu flex. change to columns. */
  
  .header-topwrap .hamburger_icon {
    position: absolute; right:0.5rem; top:0.5rem;
    display:block; 
    /*outline:1px solid lime;*/
  }
  
  
  /* HP override styles */
  .homepagemain .assurances .title * { margin-bottom:1rem; }
  .homepagemain .assurances .content_richtext { flex-direction:column; margin:0; }
  .homepagemain .assurances .content_richtext .inline_image_box { height:10rem; width:100%; margin: 0 auto 1rem auto; }
  /* end: HP override styles */
  
  h1 { font-size: 2.5em;  } /* orig 3rem */
    
  .search_box #search_icon {
    top:0.5rem;
    right:3rem;
    height:32px;
  }
  
  #search_button { box-shadow:none; }
  
  .search_box #search_field_box {
    padding:0.1rem 0.2rem;
    border-radius: 0.25rem;
    border-color:transparent;
    /*outline:1px solid lime;*/
    right:5rem;
    top:0.4rem;
  }

  .adhero .hero_image { max-width:90% !important; }
  .adhero .hero_content { max-width:90%; }
  fieldset.form-columns-2 .hs-form-field { width:95% !important; float:none !important; }
  
  .title_richtext_form .hero_form_box { margin-left:auto; margin-right:auto; max-width:90%; display:block; }
  
  .feature_box_columns .featurebox {
    width:calc(100% - 2rem);
  }
  
  .featured_pages_box .featured_page { margin-bottom:2rem; }
  .featured_pages_box .featured_page .featuredpage_body { flex-direction:column !important; } /* !important so as to not explicitely also set subclassed variabnts such as ".featuredpage_body.reverse_row" */
  .featured_pages_box .featured_page .article_image_box { max-width:100% !important; margin-left:0 !important; margin-right:0  !important; }
  /* move menu container to the far right of screen. */
  .header-topwrap .menus_container.hidden { display:none; }
  .header-topwrap .menus_container {  position: absolute; right:0.5rem; top: calc(3rem - 1px); 
    border:2px solid #E63946;
    border-top-color:transparent;
    /*margin-top:-2px;*/
    border-radius: 0 0 0.2rem 0.2rem;
    /* background-color:#FFFFFF; */
  }
  
  /* menu ul flex: change to columns. */
  .header-topwrap .menus_container ul { flex-direction:column; } 
  .header-topwrap .menus_container { max-width:90%; }
  
  .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a { text-align:left; } /* mobile menu format */
  
}
  



@media (max-width: 600px) {
  /* footer menus, make column instead of row (flex). */ 
  
  
  /* hubspot form fields with two columns */
  
  h1 { font-size: 2.2rem;  } /* orig 3rem */
  
  footer .footer-menus ul li { margin-bottom:0.25rem; }
  footer .footer-menus ul li a { display:inline-block; }
  footer .footer-menus .hs-menu-wrapper.hs-menu-flow-horizontal>ul { flex-direction:column; }
  footer .footer-menus .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a { display:inline-block; }



}



@media (max-width: 500px) {

}
  
  
