.hp_header        { display:block; padding: 90px 0 60px 0; background-color: #f0f5f7; background-position: top right; background-repeat:repeat-x; }
.hp_header p.top  { font-size: 14px; line-height: 20px; margin: 0; padding: 0 0 8px 0; text-align: left; color:#111; font-weight:700; font-family: 'Roboto', sans-serif; letter-spacing: 0.02em; text-transform: uppercase;  }
.hp_header p.top:after { display: inline-block; width:60px; height:1px; margin: 0 0 0 24px; background-color: #111; content:' '; vertical-align: middle; }
.hp_header h1     { font-size: 40px; line-height: 40px; margin: 0; padding: 0; text-align: left; color:#111; font-weight:500; font-family: 'Roboto', sans-serif; letter-spacing: normal; text-transform: none; }
.hp_header h1 i   { font-style: normal; }
.hp_header p.sm		{ font-size:15px; line-height: 21px; color:#111; font-weight:400; font-family: 'Roboto', sans-serif; padding: 18px 0 0 0; text-align: left; width:70%; display:block; margin: 0; }
.hp_header svg    { display: block; position: absolute; bottom:-69px; left:50%; margin-left: -85px; }

.featuredblocks           { font-size: 0; padding:50px 0 0 0; margin: 0 -8px; }
.featuredblocks a         { width: 33.3333%; display:inline-block; padding: 0 8px; font-size:12px; position: relative; font-family: 'Roboto', sans-serif; vertical-align: top; overflow: hidden; }
.featuredblocks a i       { display:block; background-repeat: no-repeat; background-size: cover; background-position: center center; transition: all .2s ease-in-out; position: relative; top:0; left:0; font-style: normal; }
.featuredblocks a span    { position: absolute; bottom:0; left:0; display:block; font-style: normal; width:auto; height:auto; padding: 9px 30px; line-height: 15px; text-align: center; color:#fff; font-size: 12px; font-weight: 500; text-transform:uppercase; }
.featuredblocks a span.f  { background-color: #111; }
.featuredblocks a span.n  { background-color: #111; }
.featuredblocks a span.p  { background-color: #111; }
.featuredblocks a span.o  { background-color: #8b5cb7; }
.featuredblocks a span.t  { background-color: #8b5cb7; }
.featuredblocks a span.v  { background-color: #ed5f58; }
.featuredblocks a img     { display:block; width:100%; height:auto; }
.featuredblocks a p 		  { font-size: 16px; padding: 26px; margin: 0; color:#111; background-color: #fff; min-height:100px; box-sizing: border-box; text-overflow: ellipsis; }


.hp_tax-tools-and-tips                  { display:block; padding: 30px 0 0 0; }
.hp_tax-tools-and-tips .header          { padding: 0 0 30px 0; }
.hp_tax-tools-and-tips .header:after    { content: ""; display: table; clear: both; }
.hp_tax-tools-and-tips .header h2       { display:inline-block; font-size:24px; line-height: 35px; color:#111; font-weight: 500; margin: 0; padding: 0; }
.hp_tax-tools-and-tips .header h2:after { display: inline-block; width:100px; height:1px; margin: 0 0 0 24px; background-color: #111; content:' '; vertical-align: middle; }
.hp_tax-tools-and-tips .header span     { float:right; }
.hp_tax-tools-and-tips .header a                { padding: 13px 30px; margin-left: 0; font-size: 14px; }
.hp_tax-tools-and-tips .header a:last-of-type   { margin-left: 18px; }
.hp_tax-tools-and-tips .icons           { font-size:0; }
.hp_tax-tools-and-tips .icons a         { display: inline-block; width: 12.5%; text-align: center; }
.hp_tax-tools-and-tips .icons a:hover p, .hp_tax-tools-and-tips .icons a:active p, .hp_tax-tools-and-tips .icons a:focus p     { text-decoration: underline; }
.hp_tax-tools-and-tips .icons i         { display:block; width: 40px; height:40px; background-position: center center; background-size:auto; background-repeat: no-repeat; margin: 0 auto; transition: all .2s ease-in-out; }
.hp_tax-tools-and-tips .icons a:hover i, .hp_tax-tools-and-tips .icons a:active i, .hp_tax-tools-and-tips .icons a:focus i     { transform: scale(1.1); }
.hp_tax-tools-and-tips .icons p         { font-size:15px; line-height: 19px; padding: 10px 0 0 0; font-weight:500; color:#111; vertical-align: top; font-family: 'Roboto', sans-serif; }
.hp_tax-tools-and-tips .links-mobile    { display:none; padding: 30px 0 0 0; text-align: center; font-size:0; }
.hp_tax-tools-and-tips .links-mobile a  { margin: 0 5px 0 0; padding: 17px 30px; }
.hp_tax-tools-and-tips .links-mobile a:last-of-type { margin: 0 0 0 5px; }

.hp_newsroom     { display: block; padding: 90px 0; height: 500px; background-position: -100px center; background-repeat: no-repeat; 
  background-image:url("../img/backgrounds/bg-phone-newsroom-homepage.png");
}
.hp_newsroom .content       { display: block; float: right; width: 50%; padding: 60px 0 0 0; }
.hp_newsroom .content:after { display: table; content: ''; clear: both; }
.hp_newsroom img            { display:none; }
.hp_newsroom h2             { font-size: 30px; line-height: 36px; text-align: left; color:#111; font-weight: 500; }
.hp_newsroom p:before       { content:" "; display:block; height:1px; width:100px; background-color: #111; margin: 0 0 20px 0; }
.hp_newsroom p              { display:block; font-size:15px; line-height: 21px; color:#333; text-align: left; max-width: 700px; margin:0; padding: 0 0 12px 0; font-family: 'Roboto', sans-serif; }
.hp_newsroom a              { font-size:14px; }

.hp_taxguides 				 		{ padding: 60px 0; border-top:none !important; }
.hp_taxguides h2 			 		{ font-size: 30px; line-height: 36px; text-align: left; color:#111; font-weight: 500; }
.hp_taxguides p 					{ display:block; font-size:15px; line-height: 21px; color:#333; text-align: left; }
.hp_taxguides--content 		{ max-width: 560px; padding: 0 0 30px 0; }
.hp_taxguides--all-posts 	{ font-size:0; }

.recents-blocks.hp a.brand-button-tri        { float:right; padding: 13px 50px; margin-left: 5px; font-size:14px; font-family: 'Roboto', sans-serif; }
.recents-blocks.hp .header:after { content:' '; height:0; clear:both; }
.recents-blocks.hp .header h3:after { display: inline-block; width:100px; height:1px; margin: 0 0 0 24px; background-color: #111; content:' '; vertical-align: middle; }

.tr-bottom-cta              { display:block; background-color: #111; padding: 165px 0 30px 0; font-size:14px; color:#fff; position: relative; overflow: visible; height: 360px; background-image:url("../img/headers/bg-taxform-2018-dec-mid.jpg"); background-position: center center; background-repeat: no-repeat; background-size: cover; font-family: 'Roboto', sans-serif; }
.tr-bottom-cta .inner       { position: relative; }
.tr-bottom-cta .c1          { float: left; width: 60%; padding-top: 6px; }
.tr-bottom-cta h2           { font-size: 30px; text-align: left; color:#ffffff; font-weight: 500; }
.tr-bottom-cta .c2          { float: right; text-align: right; width: 40%; }
.tr-bottom-cta .cta         { display:inline-block; margin:0;  }
.tr-bottom-cta .cta.brand-button   { display:inline-block; margin:0 12px 0 0; padding: 17px 40px; }
.tr-bottom-cta .brand-button-alt   { display:inline-block; padding: 17px 40px; }


@media only screen and (max-width: 767px) {
  
  .hp_header      { padding: 30px 0; }
  .hp_header p.top:after { width:55px; margin: 0 0 0 20px; }
  .hp_header h1   { font-size: 24px; line-height: 30px; padding: 5px 0 0 0; }
  .hp_header h1 i { display: block; }
  .hp_header h2   { font-size: 14px; line-height: 24px; padding: 0 0 16px 0; }
	.hp_header p.sm { width:100%; font-size:14px; line-height: 21px; }
  
  .featuredblocks           { padding: 30px 0; }
  .featuredblocks a         { display:block; width:100%; max-width: 480px; margin: 20px auto 0 auto; padding: 0; }
  .featuredblocks a p       { font-size: 14px; height:auto; min-height: auto; }
  .featuredblocks a:first-of-type         { margin: 0 auto; }
  .featuredblocks a.most-popular-article  { display:none; }
  
  .hp_tax-tools-and-tips                  { display:block; padding: 30px 0 30px 0; }
  .hp_tax-tools-and-tips .header          { padding: 0 0 20px 0; }
  .hp_tax-tools-and-tips .header h2       { width:100%; text-align: left; padding: 0; clear:both; }
  .hp_tax-tools-and-tips .header h2:after { display:none; }
  .hp_tax-tools-and-tips .header a        { display:block; width:130px; float:right; margin:0 10px 0 0; }
  .hp_tax-tools-and-tips .header a:first-of-type { margin:0; float:right; }
  .hp_tax-tools-and-tips .header span     { display:none; }
  
  .hp_tax-tools-and-tips .icons a       { display: inline-block; width: 33.33%; text-align: center; vertical-align: top; }
  
  .hp_tax-tools-and-tips .links-mobile  	{ display:block; margin-bottom: -86px; position: relative; }
	.hp_tax-tools-and-tips .links-mobile a 	{ font-size: 16px; }
  
	.hp_taxguides 				{ padding: 90px 0 60px 0 !important;  }
	.hp_taxguides	h2      { font-size: 24px; line-height: 30px; }
	
  .hp_newsroom          { padding: 90px 0 60px 0; background-image:none; height: auto; }
  .hp_newsroom .content { float: none; width: 100%; padding:0; }
  .hp_newsroom h2       { font-size: 24px; line-height: 30px; }
  .hp_newsroom img      { display:block; margin: 0 auto; width: 100%; padding: 0 0 30px 0;}

  .recents-blocks.hp .header h3:after     { display: none; }
  .recents-blocks.hp a.brand-button-tri   { float:right; padding: 13px 20px; margin-left: 0; }
  
  .tr-bottom-cta              { background-position: left center; text-align: center; padding: 120px 0; height: auto; }
  .tr-bottom-cta h2           { text-align: center; }
  .tr-bottom-cta .c1          { float: none; width: 100%; padding-top: 0; }
  .tr-bottom-cta .c2          { float: none; text-align: center; width: 100%; }
  .tr-bottom-cta .cta.brand-button   { position:relative; right: unset; bottom: unset; margin: 0 10px 0 0; padding: 17px 12px;  }
  .tr-bottom-cta .brand-button-alt   { padding: 17px 12px;  }
}
/* tablet vertical */
@media only screen and (min-width: 768px) and (max-width: 989px) {
  .hp_header    { padding: 60px 0; }
  .hp_header h1 { font-size: 21px; line-height: 20px; padding: 16px 0 0 0; }
  .hp_header h2 { font-size: 24px; line-height: 30px; padding: 0 0 16px 0;  }
  
  .featuredblocks     { padding: 50px 0 30px 0; }
  .featuredblocks a   { width: 48%; display:inline-block; padding: 0; }
  .featuredblocks a p { font-size: 16px; height:auto; }
  
  .featuredblocks a:nth-of-type(2)        { margin: 0 0 0 4%; }
  .featuredblocks a.most-popular-article  { display:none; }
  
  .hp_tax-tools-and-tips             { display:block; padding: 60px 0; }
  .hp_tax-tools-and-tips .header     { padding: 0 0 35px 0; }
  
  .hp_tax-tools-and-tips .icons a    { display: inline-block; width: 25%; text-align: center; }
	
	.hp_taxguides	h2      { font-size: 24px; line-height: 30px; }
	.recents-blocks .hp_taxguides--all-posts a.rp {
		width: 30%;
    margin: 0 5% 0 0;
	}
	.recents-blocks .hp_taxguides--all-posts a.rp:nth-child(3n){
		width: 30%;
		margin: 0 0 0 0;
	}
	

  .hp_newsroom          { background-position: -290px center; }
  .hp_newsroom .content { padding: 60px 0 0 0; }
  .hp_newsroom h2       { font-size: 24px; line-height: 30px; }

  .tr-bottom-cta        { background-position: left center; text-align: center; padding: 120px 0; height: auto; }
  .tr-bottom-cta h2     { text-align: center; }
  .tr-bottom-cta .c1    { float: none; width: 100%; padding-top: 0; }
  .tr-bottom-cta .c2    { float: none; text-align: center; width: 100%; }
  .tr-bottom-cta .cta   { display:block; position:relative; right: unset; bottom: unset; max-width: 320px; margin: 0 auto;  }
   
}
/* desktop 1024 */
@media only screen and (min-width: 990px) and (max-width: 1279px) {
  .featuredblocks a                     { padding: 0 20px; }
  .featuredblocks .most-popular-article { display:inline-block; }
  
  .hp_newsroom            { background-position: -150px center; }
  .hp_newsroom .content   { padding: 60px 0 0 0; }

  .tr-bottom-cta .c1      { width: 50%; padding-top: 0; }
  .tr-bottom-cta .c2      { width: 50%; }
  
}

@media only screen and (min-width: 1500px) {
  .hp_newsroom          { display: block; padding: 90px 0; height: 500px; background-position: 10% center; background-repeat: no-repeat; max-width: 1600px; margin:0 auto; }
  .hp_newsroom .content { padding: 90px 0 0 0; }
}
