@font-face {
    font-family : 'XfinityStandard-Regular';
    src         : url("https://cdn.flashtalking.com/93411/fonts/XfinityStandard-Regular.woff2") format("woff2"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityStandard-Regular.woff") format("woff"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityStandard-Regular.ttf") format("truetype");
    font-weight : 700;
    font-style  : normal;
}

@font-face {
    font-family : 'XfinityBrownWeb-Regular';
    src         : url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-Regular.woff2") format("woff2"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-Regular.woff") format("woff"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-Regular.ttf") format("truetype");
    font-weight : 700;
    font-style  : normal;
}

@font-face {
    font-family : 'XfinityBrownWeb-Bold';
    src         : url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-Bold.woff2") format("woff2"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-Bold.woff") format("woff"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-Bol.ttf") format("truetype");
    font-weight : 700;
    font-style  : normal;
}
/*
@font-face {
    font-family : 'XfinityBrownWeb-Light';
    src         : url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-Light.woff2") format("woff2"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-Light.woff") format("woff"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-Light.ttf") format("truetype");
    font-weight : 700;
    font-style  : normal;
}

@font-face {
    font-family : 'XfinityBrownWeb-BoldItalic';
    src         : url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-BoldItalic.woff2") format("woff2"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-BoldItalic.woff") format("woff"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-BoldItalic.ttf") format("truetype");
    font-weight : 700;
    font-style  : normal;
}

@font-face {
    font-family : 'XfinityBrownWeb-LightItalic';
    src         : url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-LightItalic.woff2") format("woff2"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-LightItalic.woff") format("woff"),
    url("https://cdn.flashtalking.com/93411/fonts/XfinityBrownWeb-LightItalic.ttf") format("truetype");
    font-weight : 700;
    font-style  : normal;
}
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; 
}

body {
  margin:0px;
  text-rendering:optimizeLegibility; 
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  -webkit-text-size-adjust: none;
  font-kerning: none;
  -webkit-text-rendering: optimizeSpeed;
  text-rendering: optimizeSpeed;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

@media screen and (min-width:0) and (min-resolution:+72dpi) { /* IE fix */
  body { text-rendering:optimzeSpeed; }
}

div { position:absolute; display:block; } 

img { position:absolute; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }
  q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none; }

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

*, :before, :after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.abs-pos, #wrapper {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 300px;
  height: 250px;
  overflow: hidden; }

#wrapper {
  overflow:hidden;
  -moz-user-select: -moz-none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color:#008558;
  color:#FFF;
  position: relative;
  visibility: hidden;
  -webkit-font-smoothing: none;
  -webkit-font-smoothing: antialiased;
  border: 1px solid #AAA;
  cursor:pointer;
}

#wrapper.show {
    visibility: visible; 
}

.button {
  outline:none;
  background-color: rgba(0,0,0,0);
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  user-select:none;
  cursor:pointer;
}

#clickthru { 
  width:300px; 
  height:250px; 
  z-index:98; 
  cursor:pointer; 
  background-color:rgba(0, 0, 0, 0);
}

/*frames*/
.frame { 
  width:100%; 
  height:100%; 
  left: 0px;
  top: 0px;
  display:block; 
}

#frame1, #frame2, #frame3, #frame4, #endframe { 
  width:100%; 
  height:100%; 
  left: 0px;
  top: 0px;
  opacity: 0;
}

/*logo*/
#xlogo_w, #xlogo_b {
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  opacity: 0;
}

/*bgs*/
.bgs {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity: 0;
}

#bg1_glow, #bg2, #bg3 {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity: 0;
}

/*xlogo_anim*/
#xlogo_anim {
  width:460px;
  height:156px;
  left: 0px;
  top: 0px;
  overflow:hidden;
  opacity: 0;
}

#xlogo_anim_x {
  width:100%;
  height:100%;
  left: 1px;
  top: 40px;
  opacity:0;
  position: absolute;
}

#xlogo_anim_mask {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity:0;
  position: absolute;
}

#xlogo_anim_finity_mask {
  width:100%;
  height:100%;
  left: 84px;
  top: 0px;
  opacity:0;
  overflow:hidden;
  position: absolute;
}

#xlogo_anim_finity {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity:0;
  position: absolute;
}

#whiteglow {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity: 0;
}

/*lightrays*/
.lightrays_rings {
  width:100%;
  height:100%;
  opacity: 1;
}

#lightrays_gray_rings {
  width:100%;
  height:100%;
  opacity: 0;
}

/*objects*/
.objects, #device_pad, #device_phone, #device_controller {
  width:100%;
  height:100%;
  opacity: 1;
}

/*router*/
#router {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity: 0;
}

#pad, #pad_mask {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity: 0;
}

#pad_gleam {
  left: 50px;
  top: 0px;
  width:40px;
  height:250px;
  background-color:rgba(255, 255, 255, 0.15);
  -ms-transform: skewX(-15deg); /* IE 9 */
  transform: skewX(-15deg);
  position: absolute;
  opacity: 0;
}

#phone, #phone_mask {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity: 0;
}

#phone_gleam {
  left: 50px;
  top: 0px;
  width:40px;
  height:250px;
  background-color:rgba(255, 255, 255, 0.15);
  -ms-transform: skewX(-15deg); /* IE 9 */
  transform: skewX(-15deg);
  position: absolute;
  opacity: 0;
}

#controller, #controller_mask {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity: 0;
}

#controller_gleam {
  left: 50px;
  top: 0px;
  width:40px;
  height:250px;
  background-color:rgba(255, 255, 255, 0.2);
  -ms-transform: skewX(-15deg); /* IE 9 */
  transform: skewX(-15deg);
  position: absolute;
  opacity: 0;
}

#offer_bolton_badge, #no_offer_bolton_badge {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity: 0;
}

#offer_bolton_router, #no_offer_bolton_router {
  width:100%;
  height:100%;
  left: 0px;
  top: 0px;
  opacity: 0;
}

/*copy*/
.fontstyle1 {
  font-family:'XfinityBrownWeb-Bold';
  text-align:left;
  color: #008558;
}

.fontstyle2 {
  font-family:'XfinityBrownWeb-Regular';
  text-align:left;
  color: #008558;
}

.fontstyle3 {
  font-family:'XfinityStandard-Regular';
  text-align:left;
  color: #008558;
}

.bold {
  font-family:'XfinityBrownWeb-Bold';
}

.sup {
    font-size: 70%;
    vertical-align: super;
    line-height:0px;
}

.mask {
  width:100%; 
  height:100%; 
  overflow:hidden;
}

#fr1_headline {
  font-size:40px;
  line-height:44px;
  letter-spacing:-1.5px;
  text-align:left;
  color: #FFF;
  opacity: 0;
}

#fr2_headline {
  font-size:20px;
  line-height:22px;
  letter-spacing:-0.7px;
  text-align:left;
  opacity: 0;
}

#fr2_disclaimer {
  width: 280px;
  font-size:9px;
  line-height:9px;
  letter-spacing:-0.13px;
  text-align:right;
  color: #8B8B97;
  opacity: 0;
}

#fr3_headline {
  font-size:20px;
  line-height:22px;
  letter-spacing:-0.7px;
  text-align:left;
  opacity: 0;
}

#fr3_disclaimer {
  width: 280px;
  font-size:9px;
  line-height:9px;
  letter-spacing:-0.13px;
  text-align:right;
  color: #8B8B97;
  opacity: 0;
}

#fr4_headline {
  font-size:20px;
  line-height:22px;
  letter-spacing:-0.7px;
  text-align:left;
  opacity: 0;
}

#fr4_disclaimer {
  width: 280px;
  font-size:9px;
  line-height:9px;
  letter-spacing:-0.13px;
  text-align:right;
  color: #8B8B97;
  opacity: 0;
}

/*offer*/
#offer, #no_offer, #offer_bolton, #no_offer_bolton {
  width: 300px;
  height: 100%;
  left: 0px;
  top: 0px;
  position: absolute;
  opacity: 1;
}

#ef_offer_headline {
  font-size:20px;
  line-height:22px;
  letter-spacing:-0.65px;
  text-align:left;
  left: 0px;
  top: 0px;
  opacity: 0;
}

#offer_title {
  font-size:12px;
  line-height:13px;
  letter-spacing:-0.2px;
  text-align:left;
  color: #0D0D0F;
  opacity: 0;
}

#offer_dollarSign {
  font-size:20px;
  line-height:16px;
  letter-spacing:-0.3px;
  text-align:left;
  opacity: 0;
}

#offer_price {
  font-size:48px;
  line-height:36px;
  letter-spacing:-2.2px;
  text-align:left;
  opacity: 0;
}

#offer_cents {
  font-size:20px;
  line-height:16px;
  letter-spacing:-0.3px;
  text-align:left;
  opacity: 0;
}

#offer_terms {
  font-size:9px;
  line-height:9px;
  letter-spacing:-0.15px;
  text-align:left;
  opacity: 0;
}

#offer_agree {
  font-size:9px;
  line-height:11px;
  letter-spacing:0.1px;
  text-align:left;
  color: #8B8B97;
  opacity: 0;
}

#offer_sideBar {
  width:1px;
  height:90px;
  left: 145px;
  top: 70px;
  background-color:#8B8B97;
  text-align:center;
  opacity: 0;
}

#offer_bolton_copy {
  font-size:12px;
  line-height:15px;
  letter-spacing:-0.1px;
  text-align:left;
  opacity: 0;
}

#offer_disclaimer {
  width: 300px;
  font-size:9px;
  line-height:10px;
  letter-spacing:-0.13px;
  text-align:left;
  color: #8B8B97;
  opacity: 0;
}

#ef_no_offer_headline {
  font-size:20px;
  line-height:22px;
  letter-spacing:-0.7px;
  text-align:left;
  left: 0px;
  top: 0px;
  opacity: 0;
}

#no_offer_bolton_copy {
  font-size:12px;
  line-height:15px;
  letter-spacing:-0.1px;
  text-align:left;
  opacity: 0;
}

/*CTA*/
#offer_cta_container, #no_offer_cta_container {
    width: auto;
    height:auto;
    position: absolute;
    margin:auto;
    overflow:hidden;
}

#offer_ctaCopy, #no_offer_ctaCopy {
    position: static !important;
    /*display: inline-block;*/
    background: #008558;
    border-radius: 6px;
    font-family: 'XfinityBrownWeb-Bold';
    font-size: 14px;
    line-height:14px;
    letter-spacing:-0.2px;
    font-weight: normal;
    font-style: normal;
    padding: 8px 0px;
    margin: auto;
    letter-spacing:0px;
    text-align:center;
    width:104px;
    height:30px;
    color:#FFF;
    border: 1px solid #008558;
    position: absolute;
    opacity: 0;
}

#offer_gleam, #no_offer_gleam {
  left: -100px;
  width:20px;
  height:50px;
  background-color:rgba(255, 255, 255, 0.2);
  -ms-transform: skewX(-15deg); /* IE 9 */
  transform: skewX(-15deg);
  position: absolute;
}