html,
body {
    width: 100%;
    height: 100%;
    margin: 0;
}

#main{
    position: absolute;
    left: 0px;
    top: 0px;
    width: 158px;
    height: 598px;
    border: 1px solid #000;
    overflow: hidden;
    z-index: 1;
    opacity: 0;
    box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

@font-face {
    font-family: "gotham-bold";
    src: url("../fonts/Gotham-Bold.woff") format("woff");
}

@font-face {
    font-family: "gotham-book";
    src: url("../fonts/Gotham-Book.woff") format("woff");
}

#cover {
    width: 100%;
    left: 0;
    height: 260px;
    --coverColor: #008ee3;
    background-color: var(--coverColor);
    position: absolute;
    bottom: 0px;
}


#cover:before {
    width: 0;
    content: "";
    height: 0;
    bottom: 260px;
    right: 0;
    position: absolute;
    border-bottom: 80px solid var(--coverColor);
    border-left: 158px solid transparent;
}

#lenovoLogo {
    position: absolute;
    top: 21px;
    right: 0px;
    max-width: 22px;
    height: 64px;
    max-height: 64px;
}

svg {
    -webkit-transition:
    fill .5s ease-out;
    -o-transition:
    fill .5s ease-out;
    -moz-transition:
    fill .5s ease-out;
    transition:
    fill .5s ease-out;
    -ms-transition:
    fill .5s ease-out;
}

#background_vid {
    position: absolute;
    top: -1px;
    left: -1px;
    width: 160px;
    height: 600px;
}

#bumper_vid {
    position: absolute;
    display: none;
    top: -1px;
    left: -1px;
    width: 160px;
    height: 600px;
}

#bgImage {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}

#bgExit {
    position: absolute;
    display: block;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    cursor: pointer;
    background-color: transparent
}

#bumperExit {
    position: absolute;
    display: none;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    cursor: pointer;
    background-color: transparent
}

#headlineIntros {
    font-family: gotham-bold, sans-serif;
    font-size: 20px;
    text-shadow: 0px 0px 5px rgba(0,0,0,.5);
    /* line-height: 1; */
    color: white;
    display: inline-block;
    width: 115px;
    left: 0px;
    text-align: left;
    top: 0px;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;

}

#introText{
    position: absolute;
    top: 65px;
    left: 15px;
    width: 115px;
    display: block;
}

.subHeadIntro{
    font-family: gotham-book, sans-serif;
    font-size: 8px;
    line-height: 12px;
    display: inline-block;
    color: white;
    width:116px;
    top: 0;
    left: 0px;
    text-align: left;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}


.fakeDiv {
    font-family: gotham-book, sans-serif;
    /* font-size: 20px; */
    font-size: 20px;
    text-shadow: 0px 0px 5px rgba(0,0,0,.5);
    /* line-height: 1; */
    color: white;
    display: block;
    /* width: 115px; */
    left: 0px;
    opacity: 0;
    text-align: left;
    top: 0px;
    position: absolute;
    -webkit-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}


#efLegal{
    font-family: gotham-book, sans-serif;
    top:511px;
    left:14px;
    color:white;
    font-size:10px;
    width: 115px;
    line-height:12px;
    display:none;
    position:absolute;
    display:block;
    -webkit-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}


#endFrameHeadlines {
  top: 68px;
  left: 14px;
  position: absolute;
}

#endFrameProductCopy {
opacity: 0;
  top: 600px;
  left: 14px;
  display: none;
  position: absolute;
}

#productPromo {
    font-family: gotham-bold, sans-serif;
    font-size: 20px;
    line-height: 22px;
    color: white;
    width: 100%;
    text-align: left;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}

#productName {
    font-family: gotham-book, sans-serif;
    font-size: 9px;
    line-height: 12px;
    color: white;
    width: 100%;
    text-align: left;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}

#productPrice {
    font-family: gotham-bold, sans-serif;
    font-size: 20px;
    line-height: 20px;
    color: white;
    width: 150px;
    text-align: left;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}

#productSalePrice {
    font-family: gotham-book, sans-serif;
    font-size: 9px;
    text-decoration: line-through;
    line-height: 10px;
    color: white;
    width: 150px;
    text-align: left;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}



#cta_holder{
  font-family: gotham-bold, sans-serif;
  padding: 0px 30px;
  border-radius:12px;
  left: 12px;
  position: absolute;
  overflow: hidden;
  background-color: transparent;
  border:  1px solid white;
  color: white;
  top: 543px;
  opacity: 0;

}

#cta_text{
  font-family: gotham-bold, sans-serif;
  font-size: 9px;
  left:0px;
  letter-spacing: .05em;
  position: relative;
  line-height: 22px;
  color: white;
  top: 0px;

}

#productHeadline {
    font-family: gotham-bold, sans-serif;
    font-size: 20px;
    line-height: 22px;
    color: white;
    width: 125px;
    left: 0px;
    text-align: left;
    top: 0px;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}

.headline-text-sm {
    font-size: 16px;
    line-height:  18px;
}

.headline-text-lower-sm {
    font-size: 9px;
    line-height:  10px;
}

.main-headline-promo {
    top:66px !important;
}

#productSubHeadline {
    font-family: gotham-bold, sans-serif;
    font-size: 9px;
    line-height: 10px;
    padding-top: 8px;
    color: white;
    width: 138px;
    left: 0px;
    text-align: left;
    top: 0px;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}

#productPromo, #productName, #productPrice, #productSalePrice{
    top: 0;
    left: 0;
    position: relative;
}

.headline-text{
    opacity: 0;
    -webkit-transform: matrix(1, 0, 0, 1, 0, 100) rotate(0.01deg);
    -ms-transform: matrix(1, 0, 0, 1, 0, 100) rotate(0.01deg);
    -moz-transform: matrix(1, 0, 0, 1, 0, 100) rotate(0.01deg);
    -o-transform: matrix(1, 0, 0, 1, 0, 100) rotate(0.01deg);
    transform: matrix(1, 0, 0, 1, 0, 100) rotate(0.01deg);

    -webkit-transition:
    text-shadow .25s ease-out ,
    font-style .25s ease-out ,
    color .25s ease-out ,
    opacity .5s ease-out ;
    -o-transition:
    text-shadow .25s ease-out ,
    font-style .25s ease-out ,
    color .25s ease-out ,
    opacity .5s ease-out ;
    -moz-transition:
    text-shadow .25s ease-out ,
    font-style .25s ease-out ,
    color .25s ease-out ,
    opacity .5s ease-out ;
    transition:
    text-shadow .25s ease-out ,
    font-style .25s ease-out ,
    color .25s ease-out ,
    opacity .5s ease-out ;
    -ms-transition:
    text-shadow .25s ease-out ,
    font-style .25s ease-out ,
    color .25s ease-out ,
    opacity .5s ease-out ;
    color: transparent;
    text-shadow: 0 0 5px rgba(255,255,255);
}

.headline-text-lower{
    opacity: 0;
    -webkit-transform: matrix(1, 0, 0, 1, 0, 100) rotate(0.01deg);
    -ms-transform: matrix(1, 0, 0, 1, 0, 100) rotate(0.01deg);
    -moz-transform: matrix(1, 0, 0, 1, 0, 100) rotate(0.01deg);
    -o-transform: matrix(1, 0, 0, 1, 0, 100) rotate(0.01deg);
    transform: matrix(1, 0, 0, 1, 0, 100) rotate(0.01deg);

    -webkit-transition:
    text-shadow .25s ease-out ,
    font-style .25s ease-out ,
    color .25s ease-out ,
    opacity .5s ease-out ;
    -o-transition:
    text-shadow .25s ease-out ,
    font-style .25s ease-out ,
    color .25s ease-out ,
    opacity .5s ease-out ;
    -moz-transition:
    text-shadow .25s ease-out ,
    font-style .25s ease-out ,
    color .25s ease-out ,
    opacity .5s ease-out ;
    transition:
    text-shadow .25s ease-out ,
    font-style .25s ease-out ,
    color .25s ease-out ,
    opacity .5s ease-out ;
    -ms-transition:
    text-shadow .25s ease-out ,
    font-style .25s ease-out ,
    color .25s ease-out ,
    opacity .5s ease-out ;
    color: transparent;
    text-shadow: 0 0 5px rgba(255,255,255);
}

.shine {
    background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
    position: absolute;
    height: 300%;
    width: 30%;
    z-index: 1;
    left: 35%;
    top: -100%;

    -webkit-transition: transform 1s ease;
    -o-transition: transform 1s ease;
    transition: transform 1s ease;

    -webkit-transform: translateX(-300%) translateY(-50%) rotate(45deg);
    -ms-transform: translateX(-300%) translateY(-50%) rotate(45deg);
    transform: translateX(-300%) translateY(-50%) rotate(45deg);
}

.shine.show {
    -webkit-transform: translateX(300%) translateY(50%) rotate(45deg);
    -ms-transform: translateX(300%) translateY(50%) rotate(45deg);
    transform: translateX(300%) translateY(50%) rotate(45deg);
}

#imageHolder{
    top:0;
    left:0;
    position:absolute;
    width:160px;
    height:600px;
    display:none;
    /*opacity:0;*/
}

#productImage{
  top: 291px;
  left: 158px;
  max-height: 168px;
  width: auto;
  position: absolute;
  display: block;
  opacity: 0;

}

#carouselImage_cont{
    position: absolute;
    left: 160px;
    top: 0px;
    width: 160px;
    height: 600px;
    display: block;
}

.carouselImages{
    max-width: 100%;
    max-height: 100%;
    vertical-align:middle;
    opacity:0;
}

.hide {
    opacity: 0;
}

.show {
    opacity: 1;
}

#bumperImage{
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.lenovored{
    color:#E1140A
}
.lenovoorange{
    color:#FF6A00
}
.lenovoyellow{
    color:#FEE600
}
.lenovogreen{
    color:#6AC346
}
.lenovocyan{
    color:#46C8E1
}
.lenovoblue{
    color:#3E8DDD
}
.lenovopink{
    color:#F04187
}
.lenovopurple{
    color:#8246AF
}
.lenovodarkgray{
    color:#333F48
}
.lenovomediumgray{
    color:#6F7170
}
.lenovolightgray{
    color:#C4BEB6
}
.lenovoblack{
    color:#000000
}
