/* General CSS for all HZs*/
.trm-hz-disclaimer {font-size: 12px; line-height: 12px; margin-top: 15px}
.trm-border-bars { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc;  }
.trm-border-box { border: 1px solid #cccccc; }

/* HZ 1 & 2 */
.trm-hz-responsive { width: 100% !important; height: 100% !important; max-width: 1280px; color: #404040; margin: 20px auto; content: ""; display: table; clear: both; position: relative; }
.trm-hz-split { width: 50%; float: left; }
.trm-hz-responsive img { width: 100%; display: block; }
.trm-hz-responsive-copy { margin: 0; position: absolute;  top: 50%;   left: 50%; transform: translate(0, -50%) }
.trm-hz-responsive h2 { font-size: 21px; line-height: 23px;  margin: 0; color: #404040; font-weight: bold; }
.trm-hz-responsive p { font-size: 14px; line-height: 16px; margin-top: 5px; margin-bottom: 1em;}
.trm-hz-responsive-cta { margin: 15px 0 0 0; }
.trm-hz-responsive sup {
    position: relative;
    vertical-align: top !important;
    font-size: 0.7em;
    line-height: 0;
    top: 0.3em !important;
}
.trm-hz-responsive h2 sup ,.trm-hz-responsive h1 sup {
    position: relative;
    vertical-align: super !important;
    font-size: 0.6em !important;
    line-height: 0  !important;
    top: 0 !important;
}
/* Search Return */
/*.trm-search-copy { margin: 0; position: absolute;  top: 50%;  left: 20px; transform: translate(0, -50%) }*/
.trm-search-copy { padding: 20px 0 0 20px; }
.trm-search-copy h2 { font-size: 24px; line-height: 26px; }
.trm-search-split { width: 50%; float: right; }

/* Sub-Hero */
.trm-sub-copy { padding: 20px 0 0 20px; }
.trm-sub-copy h2 { font-size: 24px; line-height: 26px; }
.trm-sub-cta { margin: 20px 0 20px 0; }
.trm-sub-copy .trm-hz-disclaimer { position: absolute; bottom: 20px}

/* CTA caret */
a.caret-black { background: transparent url(../img/caret-hz-black.png) no-repeat scroll right;
		font-weight: 600; padding: 0 14px 0 0; color: #000000; text-decoration: none; font-size: 14px;  background-size: 10px 15px;}
a.caret-black:visited { color: #000000; text-decoration: none; }
a.caret-black:hover { background: transparent url(../img/caret-hz-red.png) no-repeat scroll right;
		color: #cc0000; text-decoration: none; background-size: 10px 15px; padding: 0 14px 0 0; }

a.caret-white { background: transparent url(../img/caret-hz-white.png) no-repeat scroll right;
		font-weight: 600; padding: 0 14px 0 0; color: #ffffff; text-decoration: none; font-size: 14px;  background-size: 10px 15px;}
a.caret-white:visited { color: #ffffff; text-decoration: none; }
a.caret-white:hover { background: transparent url(../img/caret-hz-white.png) no-repeat scroll right;
		color: #ffffff; text-decoration: none; background-size: 10px 15px; padding: 0 14px 0 0; }

a.caret-red { background: transparent url(../img/caret-hz-red.png) no-repeat scroll right;
		font-weight: 600; padding: 0 14px 0 0; color: #cc0000; text-decoration: none; font-size: 14px;  background-size: 10px 15px;}
a.caret-red:visited { color: #cc0000; text-decoration: none; }
a.caret-red:hover { background: transparent url(../img/caret-hz-red.png) no-repeat scroll right;
		color: #EB0000; text-decoration: none; background-size: 10px 15px; padding: 0 14px 0 0; }


.trm-hz-responsive .trm-hz-responsive-copy.banner-cont sup{left: 0px;}


/*3 up mods*/
.trm-bz-3{display:flex;flex-direction:column;justify-content:space-between;height:100%;background:#F2F2F2;background-position:bottom center;background-size:200px auto;background-repeat:no-repeat}
.trm-bz-3 .trm-hz-copy{max-width: 450px; padding: 12px 12px 0;z-index:1;}
.trm-bz-3 .trm-bz-img{text-align: right;}
.trm-bz-3 h2{margin:0 0 12px;font-family:Helvetica,Arial,sans-serif;font-weight:700;font-size:28px;color:#000;line-height:30px}
.trm-bz-3 p{margin:0px 0px 10px;padding:0;font-family:Helvetica,Arial,sans-serif;font-size:16px;color:#000;line-height:20px}
.trm-bz-3 img{display:inline-block;max-width:100%;vertical-align: bottom;}
.trm-bz-3 a.trm-cta{display:inline-block;width:auto!important}
.trm-bz-3-border{border: 1px solid #ccc;background-color:#fff;}

section.trm-banner-zones
{
  clear: both;
  float: none;
}

section.trm-banner-zones .trm-body-wrap
{
  float: none;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}

/* 2 or 3 up mods*/
.trm-bz-multi{display:flex;flex-direction:column;justify-content:space-between;height:100%;background:transparent;background-position:bottom center;background-size:200px auto;background-repeat:no-repeat}
.trm-bz-multi .trm-hz-copy{max-width: 450px; padding: 12px 12px 0;z-index:1;}
.trm-bz-multi .trm-bz-img{text-align: right;}
.trm-bz-multi h2{margin:0 0 12px;font-family:Helvetica,Arial,sans-serif;font-weight:700;font-size:28px;color:#000;line-height:30px}
.trm-bz-multi p{margin:0px 0px 10px;padding:0;font-family:Helvetica,Arial,sans-serif;font-size:16px;color:#000;line-height:20px}
.trm-bz-multi img{display:inline-block;flex: 0 0 auto;vertical-align: bottom;width:100%;max-width:411px;}
.trm-bz-multi .trm-hz-responsive-cta { margin: 15px 0 0 0; }
.trm-bz-multi a.trm-cta{display:inline-block;overflow:hidden;text-overflow:ellipsis;}
.trm-bz-multi-border{border: 1px solid #ccc;background-color:#fff;}
.trm-bz-multi > a {display:flex;flex-direction:column;justify-content:space-between;height:100%;height:calc(100% - 100px);} /* link wrap */

cvs-rich-content-zone .trm-border-bars,
div[data-is="gb-rich-content-zone"] .trm-border-bars
{
	max-width: 1280px;
	border-color: #ccc!important;
	margin-left: auto;
	margin-right:	auto;
}

/* Fix for Endeca template where category links aren't clickable - JH - 2017 08 16 */
.html-cartridge
{
	clear:both;
}

.trm-bz-3 .trm-bz-body,
.trm-bz-multi .trm-bz-body
{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
/*	height: 100%;
*/
  flex-grow: 1;
	background: #F2F2F2;
	background-position: bottom center;
	background-size: 200px auto;
	background-repeat: no-repeat;
}

.trm-bz-3 .trm-hz-copy,
.trm-bz-multi .trm-hz-copy
{
	padding: 24px 24px 0px;
  z-index: 1;
}

.trm-bz-3 h2,
.trm-bz-multi h2
{
	margin: 0px 0px 12px;
	padding: 0;
}
.trm-bz-3 p,
.trm-bz-multi p
{
	margin: 12px 0px;
	padding: 0;
}
.trm-bz-container .trm-hz-disclaimer
{
	margin: 0;
	padding: 12px 24px;
	background-color: #fff;
	min-height: 100px;
  max-width: 450px;
	font-size: 12px;
	line-height: 16px;
	color: #767676;
}
.trm-bz-container .trm-hz-disclaimer a
{
  font-weight: normal;
  font-size: 1em!important;
  vertical-align: baseline;
}

.trm-bz-3up-section,
.trm-bz-multi-section
{
	margin: 0 -12px;
	display: flex;
  flex-direction: row;
	flex-wrap: nowrap;
  align-items: stretch;
}

.trm-bz-3up-section:after,
.trm-bz-multi-section:after
{
	content: "";
	display: table;
	clear: both;
}

.trm-bz-3up-section .trm-bz-3,
.trm-bz-multi-section .trm-bz-3
{
	margin: 0!important;
}

.trm-bz-3up-section > .trm-bz-container,
.trm-bz-multi-section > .trm-bz-container
{
	padding: 0 12px;
/*float: left;
  width: 33.33333333%;
  min-height: 1px;
*/
  flex-basis: 0;
  flex-grow: 1;
  flex-shrink: 1;
	box-sizing: border-box;
	display: block;
}

.trm-bz-3 .trm-cta-outline,
.trm-bz-multi .trm-cta-black-out,
.trm-bz-multi .trm-cta-red-out,
.trm-bz-multi .trm-cta-white-out
{
  margin: 12px 0 0 0;
  display: inline-block;
  padding: 12px 32px;
  background: none;
  border: 2px solid #000;
  color: #000 !important;
}

.trm-bz-3 .trm-cta-outline-black,
.trm-bz-multi .trm-cta-black-out
{
  border: 2px solid #000;
  color: #000 !important;
}

.trm-bz-3 .trm-cta-outline-black:hover,
.trm-bz-multi .trm-cta-black-out:hover
{
  border-color: #333!important;
  color: #333!important;
}

.trm-bz-3 .trm-cta-outline-red,
.trm-bz-multi .trm-cta-red-out
{
  border: 2px solid #c00;
  color: #c00 !important;
}

.trm-bz-3 .trm-cta-outline-red:hover,
.trm-bz-multi .trm-cta-red-out:hover
{
  border-color: #EB0000!important;
  color: #EB0000!important;
}

.trm-bz-3 .trm-cta-outline-white,
.trm-bz-multi .trm-cta-white-out
{
  border: 2px solid #fff;
  color: #fff !important;
}

.trm-bz-3 .trm-cta-outline-white:hover,
.trm-bz-multi .trm-cta-white-out:hover
{
  border-color: #ccc;
  color: #ccc !important;
}

.trm-bz-multi .trm-cta-black-out.trm-cta-nohover:hover{ color: #000!important; border-color: #000!important; }
.trm-bz-multi .trm-cta-red-out.trm-cta-nohover:hover{ color: #c00!important; border-color: #c00!important; }
.trm-bz-multi .trm-cta-white-out.trm-cta-nohover:hover{ color: #fff!important; border-color: #fff!important; }


a.trm-cta .offscreen
{
  position:absolute;
  left:-10000px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}

@media all and (max-width: 767px)
{
  .trm-bz-3{display:block;margin:12px 0;height: auto;}
  .trm-bz-section > .trm-row > div{margin:12px 0}
  .trm-bz-3 h2{font-size: 28px; line-height: 30px;}
  .trm-bz-3 p{font-size:16px;line-height:20px}
  .trm-bz-3 .trm-bz-img{margin:12px 0px 0px}
  .trm-bz-3 img{vertical-align:bottom;display:inline-block;}
  .trm-bz-3 .trm-bz-img.center{text-align:center;}

  .trm-bz-multi-section{ display: block; margin-top:40px; margin-bottom:40px;}
  .trm-bz-multi{display:block;margin:12px 0;height: auto;}
  .trm-bz-section > .trm-row > div{margin:12px 0}
  .trm-bz-multi h2{font-size: 28px; line-height: 30px;}
  .trm-bz-multi p{font-size:16px;line-height:20px}
/*
  .trm-bz-multi .trm-bz-img{margin:12px 0px 0px}
*/
  .trm-bz-multi img{vertical-align:bottom;display:inline-block;max-width:400px;}
  .trm-bz-multi .trm-bz-img.center{text-align:center;}

  .trm-bz-3up-section > .trm-bz-container,
  .trm-bz-multi-section > .trm-bz-container
	{
		float: none;
		width: 100%;
	}

  .trm-bz-3up-section .trm-bz-3,
  .trm-bz-multi-section .trm-bz-3
	{
	}

  .trm-bz-3up-section .trm-hz-responsive-cta,
  .trm-bz-multi-section .trm-hz-responsive-cta
	{
		margin-bottom: 0;
	}


	.trm-bz-container .trm-hz-disclaimer
	{
		min-height: auto!important;
		height: auto!important;
		padding-bottom: 0;
		margin-bottom: 24px;
	}
	.trm-bz-container .trm-hz-disclaimer:empty
	{
		padding: 0;
	}

  .trm-bz-single .trm-bz-img
  {
    background-image: none!important;
  }
}

@media (max-width: 680px) {
    /* General CSS for all HZs*/
    /*.trm-hz-disclaimer {font-size: 14px; line-height: 15px; }*/

	/* HZ 1 & 2 */
    .trm-hz-responsive { text-align: left; position: static; }
    .trm-hz-split { width: 100%; float: none; }
    .trm-hz-responsive img { padding: 0; }
    .trm-hz-responsive-copy { margin: 0px; padding:  30px 30px 10px 30px; position: static; transform: translate(0, 0%) }
    /*.trm-hz-responsive h2 { font-size: 30px; line-height: 32px; color: #404040; font-weight: bold; }
    .trm-hz-responsive p { font-size: 24px; line-height: 26px;}*/
    /*.trm-hz-responsive-cta a { font-size: 24px; line-height: 24px; }*/
    .trm-hz-responsive-cta { margin: 15px 0 15px 0; }


    /* Search Return */
    /*.trm-search-copy { margin: 0px; padding:  30px 30px 10px 30px; position: static; transform: translate(0, 0%) }*/
    .trm-search-copy { margin: 0px; padding:  30px 30px 10px 30px;  }
    /*.trm-search-copy h2 { font-size: 36px; line-height: 38px; }*/
    .trm-search-split { width: 100%; float: none; }

    /* Sub-Hero */
    .trm-sub-copy { margin: 0px; padding:  30px 30px 10px 30px; }
    /*.trm-sub-copy h2 { font-size: 36px; line-height: 38px; }*/
    /*.trm-sub-cta a { font-size: 24px; line-height: 24px; }*/
    .trm-sub-copy .trm-hz-disclaimer { position: static;}
}
@media (max-width: 450px)
{
    .trm-bz-container .trm-cta{ width: 100%; text-align: center; }
}

@media all and (min-width: 768px)
{
  .trm-bz-single .trm-bz-multi
  {
    height: auto;
    display: block;
  }

  .trm-bz-single .trm-bz-body
  {
    position: relative;
    display: flex;
    max-height: 300px;
    overflow: hidden;
		flex-direction: row;
		align-items: center;
  }

  .trm-bz-single .trm-hz-copy
  {
    width: 50%;
    display: flex;
    position: static;
    top: 50%;
    max-width: 100%;
    transform: none;
    padding: 24px 24px 24px 36px;
    flex-direction: column;
    justify-content: center;
  }

  .trm-bz-single .trm-hz-copy > *
	{
		border-collapse: collapse;
	}

  .trm-bz-single .trm-hz-copy > p
	{
		margin-top: 0;
	}
	.trm-bz-single .trm-hz-copy .trm-hz-responsive-cta
	{
		margin-top: 3px;
	}

  .trm-bz-single .trm-bz-img
  {
    display: inline-block;
    width: 50%;
    height: 100%;
    max-height: 300px;
    float: right;
    position: relative;

    background-size:100%;
    background-position: center 100%;
/*
    background-size: cover;
    background-position: center 75%;
*/
    background-repeat: no-repeat;
  }

  .trm-bz-single .trm-bz-img > img
  {
    opacity: 0;
    max-width: 100%;
  }

  .trm-bz-single .trm-hz-disclaimer
  {
    background: transparent;
    height: auto;
    min-height: auto!important;
    max-width: 100%;
  }
}
@media all and (min-width: 1024px)
{
  .trm-bz-single .trm-hz-copy
  {
    padding-left: 48px;
  }
  .trm-bz-single h2
  {
    font-size: 36px;
    line-height: 36px;
  }

  .trm-bz-single .trm-bz-img { background-size:80%; background-position: center 100%; }
}


/* IE11 fixes */
@media screen and (-ms-high-contrast: active) and (min-width: 768px), screen and (-ms-high-contrast: none) and (min-width: 768px) {

  .trm-bz-3up-section, .trm-bz-multi-section
  {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
  .trm-bz-3up-section *, .trm-bz-multi-section *
  {
    text-align: left;
  }

  .trm-bz-3up-section > .trm-bz-container, .trm-bz-multi-section > .trm-bz-container
  {
    display: block;
    float: left;
    width: 33.3333%;
  }

}
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none), screen and (max-width: 767px;) {
}

/* account for disclaimer text below product grid */
section.trm-banner-zones{ margin-bottom: 24px; }
#promodisclaimers p{ margin: 10px 0px!important; }
.trm-bz-multi > a{ height: 100%; }
.trm-bz-container .trm-hz-disclaimer
{
    display: none;
    min-height: 0;
}

.txt-white {
  color: #fff!important;
}

.txt-black {
  color: #000!important;
}
