/* general styles */
body{
  font-size: 11px;
}
div.centerContent{
  width: 100%;
}

div.note.leftBottomNote{
  width: 240px;
  bottom: 250px;
}

/*      HEADER      */
header div.border{
  left: 20px;
  right: 20px;
  top: 20px;
  bottom: 20px;
  border: solid 2px #FFF;
}
div.content.home header div.border{
  bottom: 40px;
}
div.searchHolder{
  display: none;
}

header div.logoHolder{
  width: 33%;
  left: 20px;
}
header img.agent{
  width: 45%;
  left: 23%;
}
a.headerLink{
  display: none;
}
div.menuHolder nav.open div.centerContent{
  padding: 20px;
}
div.menuHolder nav.open div.menuTable{
  border: solid 2px #FFF;
}
div.menuHolder nav ul li{
  font-size: 2em;
  line-height: 30px;
  height: 40px;
}
div.menuHolder nav ul li a span{
  line-height: 40px;
}
div.menuHolder nav ul li:nth-child(2){
  padding-top: 120px;
  height: 160px;
}
div.menuHolder nav ul li.menuButton{
  border: solid 2px #FFF;
  width: 30px;
  height: 30px;
  right: 30px;
  top: 30px;
  line-height: 26px;
  border-radius: 15px;
  font-size: 20px;
}
div.menuHolder nav ul li.menuButton span{
  line-height: 26px;
  font-size: 20px;
}

div.menuSearchHolder{
  left: 50%;
  top: 30px;
  width: 200px;
}
div.menuSearchHolder input{
  width: 160px;
  border: solid 2px #FFF;
  border-right: none;
  height: 30px;
  line-height: 26px;
}
div.menuSearchHolder button{
  width: 30px;
  border: solid 2px #FFF;
  border-left: none;
  height: 30px;
  line-height: 26px;
  border-top-right-radius: 15px;
  border-bottom-right-radius: 15px;
}
img.menuLogo{
  top: 70px;
  width: 140px;
}
div.iconHolder{
  right: 35px;
}
div.iconHolder div.iconTable div.iconCell a{
  font-size: 2em;
  margin-top: 15px;
  margin-bottom: 15px;
}

header h3.headerBottomRight{
  position: absolute;
  right: 25px;
  bottom: 25px;
  font-size: 2em;
}


/*      CONTENT      */
article h1{
  font-size: 2em;
  margin-bottom: 20px;
}
article h2{
  color: #29376d;
  font-size: 1.2em;
}

article p a, article ul a, article ol a, aside a{
  color: #f07d1a;
}
article ol, article ul, section ol, section ul{
  margin-left: 15px;
}
div.crumblePath{
  font-size: 0.7em;
  padding-top: 5px;
  padding-bottom: 4px;
  border-bottom-width: 1px;
  padding-left: 20px;  
  margin-bottom: 20px;
}
div.block{
  margin-bottom: 20px;
}
div.block.withBg{
  height: auto;
  padding-top: 0px !important;
  padding: 20px !important;
}

div.block div.blockContent{
  padding-left: 20px;
  padding-right: 40px;
}
div.block.withBg div.blockContent{
  position: relative;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  border: solid 2px #FFF;
  padding: 20px;
  padding-right: 30%;
}
div.blockText{
  float: none;
  width: 100%;
  margin-bottom: 20px;
}

div.block:nth-child(even) div.blockText{
  float: none;
}
div.block.withBg div.blockText{
  margin-top: 0px;
}

.blockContent {
  /* TTC custom css */
        display: flex;
        flex-flow: column;
}

.sideImage + .blockText {
    /* TTC custom css */
   order: -1; 
}

div.blockText h1,
div.blockText div.textHolder{
  margin-left: 20px;
}

h2.smallTitle{
  padding-left: 20px;
  margin-bottom: 5px;
  margin-top: 10px;
}
h2.smallTitle span{
  top: 4px;
  width: 13px;
  height: 3px;
}
a.ctaLink{
  margin-top: 10px;
  border: solid 2px #29376d;
  height: 30px;
  line-height: 26px;
  border-radius: 15px;
  padding-left: 10px;
  padding-right: 10px;
}


div.block img.sideImage{
  float: none;
  width: 100%;
  padding-left: 20px;
  box-sizing: border-box;
}
div.block:nth-child(even) img.sideImage{
  float: none;
}

div.block.footerBlock{
  margin-left: 20px;
  margin-right: 20px;
  margin-top: 20px;
}
div.content.ttc div.block.footerBlock{
  margin-top: 20px;
}

div.scoreHolder{
  margin-top: 0px;
  width: 100%;
  float: none;
}
div.scoreContent{
  border: solid 3px #FFF;
  padding: 20px;
  padding-top: 0px;
  padding-bottom: 50px;
}
div.scoreContent p.score{
  font-size: 8em;
  margin-bottom: 20px;
}
div.scoreContent h3{
  margin-bottom: 10px;
}
div.callbackHolder{
  padding-left: 0px;
  padding-top: 0px;
  margin-top: 20px;
}
div.callback{
  max-width: 100%;
}
div.callbackForm{
  padding: 20px;
}



/*      HOME     */
div.buttonHolder{
  margin-top: 0px;
  margin-left: 20px;
  margin-right: 20px;
}
div.buttonHolder a{
  display: block;
  float: left;
  width: 33%;
}
div.buttonHolder a:first-child{
  margin-top: -25px;
}
div.buttonHolder a:nth-child(3){
  margin-top: -50px;
  width: 34%;
}
div.buttonHolder a span{
  padding-left: 10px;
  height: 30px;
  line-height: 30px;
}
div.content.home div.block:nth-child(1) div.textHolder{
  margin-top: 0px;
}

div.content.home article{
  padding-top: 20px;
}

div.content.home div.block:nth-child(1) div.blockContent{
  padding-right: 20px;
}
div.content.home div.block:nth-child(1) div.titleHolder{
  float: none;
  width: 100%;
}
div.content.home div.block:nth-child(1) div.textHolder{
  float: none;
  width: 100%;
}

div.overviewHolder a.titleHolder,
div.overviewHolder span.titleHolder{
  height: auto;
  min-height: 62px;
  box-sizing: border-box;
  line-height: 1.2em;
  padding: 10px;
}
div.overviewHolder a.titleHolder span,
div.overviewHolder span.titleHolder span{
  float: none;
  display: block;
}
div.overviewHolder a.titleHolder span.city,
div.overviewHolder span.titleHolder span.city{
  float: none;
  display: block;
}

div.agentHolder div:first-child{
  margin-top: 0px;
}
div.content.home div.agentHolder div:nth-child(3n),
div.content.home div.agentHolder div:nth-child(4n){
  display: none;
}


div.content.home div.block:nth-child(3){
  margin-top: 0px;
  margin-bottom: 0px;
}
div.content.home div.block:nth-child(3) div.blockContent{
  top: auto;
  bottom: auto;
}

div.content.home div.block:nth-child(4) a{
  margin-top: 0px;
  width: 100%;
  float: none;
}
div.content.home div.block:nth-child(4) a span{
  padding-left: 10px;
  height: 30px;
  line-height: 30px;
}
div.content.home div.block.withBg:nth-child(5){
  padding-bottom: 0px !important;
}
div.content.home div.block.withBg:nth-child(5) div.blockContent{
  padding-right: 20px;
  padding-left: 0px;
  padding-top: 0px;
  padding-bottom: 200px;
}
div.content.home div.block:nth-child(5) div.titleHolder,
div.content.ttc div.block:last-child div.titleHolder{
  float: none;
  width: 100%;
}
div.content.home div.block:nth-child(5) div.titleHolder h1,
div.content.ttc div.block:last-child div.titleHolder h1{
  margin-bottom: 10px;
}
div.content.home div.block:nth-child(5) div.textHolder,
div.content.ttc div.block:last-child div.textHolder{
  float: none;
  width: 100%;
  margin-top: 0px;
}

div.content.home div.block:nth-child(4) a.home-offer {
  margin-top: 0px;
  width: 100%;
  display: block;
  float: none;
}

/*      STORIES     */
/*
a.shareButton{
  width: 30px;
  height: 30px;
  border-radius: 15px;
  line-height: 30px;
  font-size: 1.3em;
  color: #FFF;
  background-color: #0cbee8;
  margin-top: 10px;
  margin-right: 5px;
}
a.shareButton:hover{
  background-color: #f07d1a;
}
*/
div.scoreBar{
  padding: 8px;
  padding-left: 20px;
  padding-right: 20px;
}
div.scoreBar span{
  line-height: 1.2em;
  height: auto;
}
div.scoreBar span:first-child{
  font-size: 2em;
  line-height: 0.5em;
  margin-top: -3px;
}

div.overviewHolder{
  padding-left: 20px;
  padding-right: 20px;
}
div.content.storyOverview div.overviewHolder{  
  margin-right: 0px;
  margin-left: 0px;      
}
div.overviewHolder div.overviewItem{
  width: 100%;
  float: none;
  margin-right: 0px;  
  margin-bottom: 10px;  
}
div.content.storyOverview div.overviewHolder a{
  display: block;
  width: 100%;
  float: none;
  margin-right: 0px;
  margin-left: 0px;
  margin-bottom: 10px;
}
div.content.storyOverview div.overviewHolder a span.titleHolder,
div.content.offers div.overviewHolder a span.titleHolder{
  min-height: 0px;
}
div.content.offers div.overviewHolder a span.titleHolder{
  padding-top: 10px;
}

div.content.storyOverview div.overviewHolder a:nth-child(2n){
  margin-right: 0px;
}
div.overviewHolder span.imageHolder span.score{
  left: 5px;
  top: 5px;
}
div.content.story div.block div.blockContent,
div.content.agent div.block div.blockContent,
div.content.offer div.block div.blockContent,
div.content.offerdetail div.block div.blockContent{
  padding-right: 20px;
}
div.content.story div.block.intro div.titleHolder,
div.content.agent div.block.intro div.titleHolder,
div.content.offer div.block.intro div.titleHolder,
div.content.offerdetail div.block.intro div.titleHolder{
  float: none;
  width: 100%;
}


div.content.story div.block.intro div.textHolder,
div.content.agent div.block.intro div.textHolder,
div.content.offer div.block.intro div.textHolder,
div.content.offerdetail div.block.intro div.textHolder{
  float: none;
  width: 100%;
  margin-top: 20px;  
  padding-right: 0px;
}
div.content.story div.buttonHolder,
div.content.agent div.buttonHolder{
  margin-top: 50px;
  margin-bottom: 20px;
}
div.content.story div.buttonHolder a:first-child,
div.content.agent div.buttonHolder a:first-child{
  margin-top: -20px;
}
div.content.story div.buttonHolder a:nth-child(3),
div.content.agent div.buttonHolder a:nth-child(3){
  margin-top: -30px;
}
div.content.agent div.buttonHolder a:first-child,
div.content.agent div.buttonHolder a:nth-child(3){
  margin-top: 0px;
}

div.content.story div.block.intro{
  padding-right: 0px;
}
div.content.story div.block{
  margin-bottom: 20px;
  padding-right: 20px;
}
div.content.story div.block img.sideImage{
  margin-top: 10px;
}
div.content.story div.block:nth-child(even) img.sideImage{
  margin-left: 0px;
  margin-bottom: 20px  
}

h2.smallTitle.otherStories{
  margin-left: 20px;
}
div.content.story div.buttonHolder.otherStories,
div.content.agent div.buttonHolder.otherStories{
  margin-top: 30px;
}
div.content.agent div.buttonHolder.otherStories{
  margin-top: 5px;
}
div.buttonHolder.otherStories a{
  width: 100%;
  margin-bottom: 10px;
}
div.content.story div.buttonHolder.otherStories a:nth-child(3){
  margin-top: 0px;
}


/*      AGENTS      */

img.mapButton{
  width: 80%;
}

div.googleMaps{
  margin-left: 0px;
  margin-right: 0px;
  margin-top: 0px;
  padding-top: 100%;
}
h1.mapsTitle{
  line-height: 14px;
  font-size: 1.2em;
}
p.mapsText{
  font-size: 1em;
  height: 100px;
}
p.mapsText a.moreInfoAgent{
  line-height: 24px;
  height: 24px;
  background-size: 7px auto;
  padding-left: 10px;
  margin-top: 5px;  
}
div.mapClose{
  margin-bottom: 15px;
}


div.agentSearchHolder{
  margin-bottom: 20px;
  padding-top: 10px;
  padding-left: 20px;
  padding-right: 20px;
}
div.agentSearchHolder h1{
  margin-bottom: 10px;
  font-size: 1.5em;
}
div.agentSearchHolder p{
  font-size: 1.2em;
  margin-bottom: 10px;
}
div.agentSearch{
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
div.agentSearch input{
  width: 90%;
  border: solid 2px #29376d;
  height: 30px;
  line-height: 26px;
  border-top-left-radius: 15px;
  border-bottom-left-radius: 15px;
}
div.agentSearch button{
  width: 10%;
  border: solid 2px #29376d;
  height: 30px;
  line-height: 26px;
  border-top-right-radius: 15px;
  border-bottom-right-radius: 15px;
  font-size: 1.2em;
}



div.content.agent div.overviewHolder div.overviewItem{
  width: 49%;
  margin-right: 2%;
  float: left;
}
div.content.agent div.overviewHolder div.overviewItem:nth-child(3n){
  margin-right: 2%;
}
div.content.agent div.overviewHolder div.overviewItem:nth-child(2n){
  margin-right: 0px;
}
div.content.agent div.overviewHolder div.overviewItem:nth-child(3n+1){
  clear: none;
}
div.content.agent div.overviewHolder div.overviewItem:nth-child(2n+1){
  clear: both;
}
div.overviewHolder.agentHolder{
  padding-left: 20px;
  padding-right: 20px;
}
div.overviewHolder.agentHolder div.overviewItem{
  width: 49%;
  margin-right: 2%;
  clear: none;
  float: left;
}
div.overviewHolder.agentHolder div.overviewItem:nth-child(2n){
  margin-right: 0px;
}

div.content.agent div.overviewHolder div.overviewItem span.imageHolder img.icon,
div.content.agent div.overviewHolder div.overviewItem span.imageHolder img.myAgentIcon,
div.agentHolder div.overviewItem span.imageHolder img.icon,
div.agentHolder div.overviewItem span.imageHolder img.myAgentIcon{
  right: 5px;
  top: 5px;
  width: 20px;
}
div.content.agent div.overviewHolder div.overviewItem span.imageHolder span.myAgentButton,
div.content.agent div.overviewHolder div.overviewItem span.imageHolder span.myAgentLabel,
div.agentHolder div.overviewItem span.imageHolder span.myAgentButton,
div.agentHolder div.overviewItem span.imageHolder span.myAgentLabel{
  bottom: 10px;
  line-height: 30px;
  height: 30px;
  padding-left: 10px;
  border-top-left-radius: 15px;
  border-bottom-left-radius: 15px;
}
div.content.agent div.overviewHolder div.overviewItem span.imageHolder span.myAgentLabel,
div.agentHolder div.overviewItem span.imageHolder span.myAgentLabel{
  padding-right: 20px;
  background-size: 20px 20px;
  background-position: right 0px center;
}


div.content.agent div.block.intro div.titleHolder div.textHolder{
  float: none;
  width: 100%;
  margin-top: 0px;
}
div.content.agent div.block.intro div.textHolder{
  padding-right: 20px;
  box-sizing: border-box;
}
div.content.agent div.iconHolder{
  right: 10px;
}

div.content.agent h2.smallTitle.otherStories{
  margin-top: 20px;
  padding-right: 20px;
}


/*      OFFERS      */
div.content.offers div.overviewHolder{
  width: 100%;
  box-sizing: border-box;
}

div.content.offers div.overviewHolder a{
  width: 100%;
  margin-right: 0px;
}
/*
div.offerHolder{
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 55px;
}
div.content.offer article div.offerOverview{
  padding-left: 20px;
  padding-right: 20px;
}
div.content.offer div.offerHolder{
  float: none;
  width: 100%;
  margin-right: 0px;
  padding-bottom: 20px;
}
div.offerHolder a span.offerHead{
  padding: 20px;
}
div.content.offer div.offerHolder a span.offerHead{
  padding: 20px;
  padding-top: 10px;
  padding-bottom: 10px;
}
div.offerHolder a span.offerLeft{
  width: 100%;
  float: none;
  padding: 20px;
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 1.2em;
  text-align: center;
}
div.content.offer div.offerHolder a span.offerLeft{
  font-size: 1.3em;
  line-height: 1.2em;
  padding: 20px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-top: 15px;
}
div.offerHolder a span.offerRight{
  line-height: 1.2em;
  padding: 20px;
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
}
*/
div.content.offer div.contactForm{
  margin-top: 40px;
}

div.archiveBar{
  padding: 10px;
  margin-left: 20px;
  margin-right: 20px;
  margin-bottom: 10px;
}


/*      TTC     */
div.content.ttc div.contactForm{
  margin-top: -80px;
  margin-left: 20px;
  margin-right: 20px;
  margin-bottom: 40px;
}
div.content.ttc div.contactForm img.ttcPic{
  width: 118px;
  top: -115px;
  right: 50px;
}
div.content.ttc div.contactForm h1{
  height: 40px;
}
div.content.ttc div.contactForm h2{
  margin-bottom: 8px;
  height: 32px;
  line-height: 1.2em;
  font-size: 1em;
  margin-top: 15px;
}
div.content.ttc div.contactForm p{
  font-size: 0.8em;
}
div.content.ttc div.contactForm a.phoneButton{
  height: 30px;
  line-height: 26px;
  padding-left: 15px;
  padding-right: 15px;
  border: solid 2px #FFF;
  border-radius: 15px;
  font-size: 0.9em;
  -margin-top: 10px;
}
div.content.ttc div.contactForm div.formCol{
  width: 50%;
  float: left;
}
div.content.ttc div.contactForm div.formCol.last{
  width: 48%;
  margin-left: 2%;
}
div.content.ttc div.contactForm input.submitButton{
  float: none;
} 

div.content.ttc div.block.withBg:last-child div.blockContent{
  padding-right: 20px;
  padding-left: 20px;
  padding-top: 0px;
  padding-bottom: 200px;
}

/*      SEARCH      */
div.content.search article{
  width: 100%;
}
a.search{
  margin-bottom: 10px;
  padding: 20px;
  min-height: 0px;
}
a.search span.imageHolder{
  width: 100%;
  height: 0px;
  padding-top: 100%;
  float: none;
  margin-bottom: 5px;
}
a.search span.title{
  padding-left: 0px; 
}
a.search span.text{
  padding-left: 0px;
}


/*      CONTACT     */
div.contactForm{
  padding: 20px;
}
div.contactForm p{
  font-size: 1.4em;
  margin-bottom: 10px;
}
div.formHolder{
  width: 100%;
}
div.formCol{
  width: 100%;
  float: none;
}
div.formCol.last{
  margin-left: 0px;
}

input.inputText, select.inputSelect{
  height: 30px;
  line-height: 26px;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 6px;
  border-radius: 15px;
}
select.inputSelect{
  padding-top: 5px;
  padding-bottom: 5px;
}
input.inputText:nth-child(2n){
  margin-right: 0px;
}
/*
input.inputText.inputGPS{
  display: inline-block;
  height: 20px;
  line-height: 20px;
  padding: 0px;
  width: 90px;
  margin-left: 5px;
  margin-right: 5px;
  margin-bottom: 0px;
  border-radius: 5px;
  text-align: center;
}
*/
div.areaHolder{
  padding: 10px;
  padding-left: 10px;
  padding-right: 10px;
  border-radius: 15px;
  margin-bottom: 6px;
}
input.submitButton, label.submitButton{
  height: 30px;
  line-height: 26px;
  padding-left: 15px;
  padding-right: 15px;
  border: solid 2px #FFF;
  border-radius: 15px;
}


/*      FOOTER      */
a.agentSphere{
  right: 10px;
  bottom: 10px;
}
a.agentSphere div{
  border-radius: 40px;
  width: 80px;
  height: 80px;
}
a.agentSphere span{
  font-size: 1.2em;
}

footer nav{
  padding-top: 20px;
  padding-bottom: 20px;
  font-size: 0.7em;
}
footer nav a,
footer nav img{
  padding-left: 2px;
  padding-right: 0px;
}
footer nav img{
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-top: 10px;
  width: 100px;
  padding-left: 0px;
}
footer nav a span.fa{
  padding-right: 4px;
  font-size: 2px;
}


/*    COOKIEBAR   */
div.cookieBar{
  padding: 20px;
  box-sizing: border-box;
  text-align: center;
}
div.cookieBar p{
  margin-bottom: 10px;
}
div.cookieBar div.agreeCookies,
div.cookieBar a{
  display: inline-block;
  position: relative;
  right: auto;
  top: auto;
  height: 30px;
  line-height: 30px;
  min-width: 120px;
  clear: both;
}
div.cookieBar a{
  display: block;
}


div.storySearchHolder{
  margin-bottom: 20px;
  margin-left: 20px;
  margin-right: 20px;
  padding-top: 10px;
  padding-left: 20px;
  padding-right: 20px;
}
div.storySearchHolder p{
  font-size: 1.4em;
}
div.storySearch{
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 10px;
}
div.storySearch input{
  width: 100%;
  height: 30px;
  line-height: 26px;
}
.tti-wdgt-hldr {
display: none;
}