@charset "UTF-8";
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0px;
  padding: 0px;
  border: 0px;
  outline: 0px;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}


@font-face {
  font-family: 'VerizonNHGeDSRegular';
  src: url('../fonts/VerizonNHGeDS-Regular.woff2') format('woff2');
  font-weight: normal;
}

@font-face {
  font-family: 'VerizonNHGeDSBold';
  src: url('../fonts/VerizonNHGeDS-Bold.woff2') format('woff2');
  font-weight: normal;
}

* {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin: 0;
  padding: 0;
  background-repeat: no-repeat;
  -webkit-backface-visibility: hidden;
  /* Safari */
  backface-visibility: hidden;
}

html,
body {
  position: absolute;
  border: 0 none;
  outline: 0;
  padding: 0;
  margin: 0;
  background: #FFFFFF;
  width: 100%;
  height: 100%;
  font-family: 'VerizonNHGeDSRegular';
  /* below improves consistancey of font rendering across browsers */
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;

  /* below stops FireFox rendering copy too heavily */
  -moz-osx-font-smoothing: grayscale;
}
:root {
  --ad-width: 0;
  --ad-height: 0;
}
/* ------------ Generic ----------- */
.frame {
  position: absolute;
  display: flex;
  width: 100%;
  height: 100%;
  will-change: transform;
  perspective: 1000px;
}

.heading-container {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
  padding: 5% 5% 22%;
}

.cta-container {
  position: relative;
  display: flex;
}

/*COLORS*/
.red,
red {
  color: #EE001E;
}
.vzn_red_svg {
  fill: #EE001E;
}
.coral,
coral {
  color: #FF281E;
}
.yellow,
yellow {
  color: #F8FF3C;
}
.stone,
stone {
  color: #F6F0E2;
}
.white,
white {
  color: #FFFFFF;
}
.black,
black {
  color: #000000;
}

#main {
  position: absolute;
  left: 0px;
  top: 0px;
  width: var(--ad-width);
  height: var(--ad-height);
  background-color: #EE001E;
  overflow: hidden;
  visibility: hidden;
}

/* ------------ DOM ----------- */
#frame1 {
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

#headingContainer {
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

#devicesFrame {
  align-items: center;
  justify-content: center;
}

#footer {
  align-items: flex-end;
  justify-content: space-between;
  flex-direction: row;
  padding: 5% 5%;
}

#ctaContainer {
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: 0.4em;
  overflow: visible;
  bottom: 41.5px;
  right: 15px;
}

.arrow-fill {
  fill: #fff;
}

#ctaArrow {
  opacity: 1;
  top: 1.8px;
  position: relative;
}

#ctaArrowOnly {
  overflow: hidden;
  display: block;
  width: 33px;
  margin-bottom: -3px;
  visibility: hidden;
  opacity: 1;
  transform: translateX(-35px);
}

#heading1,
#heading2,
#heading3,
#heading4,
#heading5,
#heading6,
#heading7,
#heading8,
#heading9 {
  align-items: start;
  justify-content: center;
  flex-direction: column;
  gap: 1em;
}

/* ------------ Images ----------- */
.img-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.img-device {
  position: relative;
  display: flex;
  width: 100%;
  height: auto;
}

.verizon-logo {
  position: relative;
  width: 32vh;
  height: auto;
}

.carret {
  position: relative;
  display: block;
  width: 7px;
  height: auto;
  fill: #000;
}

/* ----------- SUB BRAND LOGO - START ----------- */
#businessLogo {
  position: relative;
}

#logoMask,
#businessMask {
  position: absolute;
  left: 29px;
  top: 18px;
  height: 0px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
}

#businessLogo {
  width: 108px;
  height: 46px;
  overflow: hidden;
  left: 15px;
  top: 0px;
}

#LogoMask1A {
  display: flex;
  width: 100%;
  bottom: -2px;
}

#LogoMask2A {
  position: relative;
  right: -1px;
  width: 66.5%;
}

#LogoMask1A,
#LogoMask1B {
  width: inherit;
  height: 25px;
  overflow: hidden;
}

#LogoMask1A {
  opacity: 1;
  position: relative;
  right: 0;
  visibility: hidden;
  transform: translateX(108px);
}

#LogoMask2A,
#LogoMask2B {
  width: inherit;
  height: 16px;
  overflow: hidden;
  bottom: 4px;
  position: absolute;
  left: 37px;
}

#BottomLogoA {
  /* bottom: 3.5px; */
  position: relative;
  height: 0;
  overflow: hidden;
}
/* ----------- SUB BRAND LOGO - END ----------- */

/* ------------ Text fields ----------- */
.verizon-bold {
  font-family: VerizonNHGeDSBold;
}
.verizon-regular {
  font-family: VerizonNHGeDSRegular;
}
smallFont {
  font-size: 20px;
  line-height: 0.9em;
}
#frame1 .heading-container {
  justify-content: start;
  padding: 20.1% 5% 22%;
}
#frame1 .eyebrow {
  position: relative;
  color: #000;
  font-size: 16px;
  text-align: center;
  line-height: 0.9em;
  white-space: pre;
}

#frame1 .heading {
  position: relative;
  color: #fff;
  font-size: 40px;
  line-height: 1em;
  text-align: left;
  white-space: nowrap;
}

#frame1 .sub-heading {
  position: relative;
  color: #000;
  font-size: 12px;
  text-align: center;
  line-height: 0.9em;
  white-space: pre;
}

#frame1 .sub-legal {
  position: relative;
  color: #000000;
  font-size: 8px;
  text-align: center;
  line-height: 0.9em;
}

#frame2 .heading-container {
  justify-content: end;
  padding: 5% 7% 37.5%;
}
#f3Heading .splitted-container {
  will-change: transform;
  perspective: 1000px;
  text-rendering: auto;
}
#frame3 .heading-container {
  align-items: center;
  padding: 5% 5% 5%;
}
#frame2 .heading {
  position: relative;
  color: #fff;
  font-size: 40px;
  line-height: 1em;
  text-align: left;
  white-space: nowrap;
}

#frame3 .eyebrow {
  position: relative;
  color: #fff;
  font-size: 16px;
  text-align: center;
  line-height: 0.9em;
  white-space: pre;
}

#frame3 .heading {
  position: relative;
  color: #F8FF3C;
  font-size: 60px;
  line-height: 0.9em;
  text-align: center;
  white-space: nowrap;
  font-family: VerizonNHGeDSBold;
  margin-top: -4px;
}

#frame3 .sub-heading {
  position: relative;
  color: #fff;
  font-size: 12px;
  text-align: center;
  line-height: 0.9em;
  white-space: pre;
}

#frame3 .sub-legal {
  position: relative;
  color: #fff;
  font-size: 8px;
  text-align: center;
  line-height: 0.9em;
}

#frame4 .heading-container {
  padding: 4.2% 7% 5% 5%;
}
#frame4 .eyebrow {
  position: relative;
  color: #fff;
  font-size: 16px;
  text-align: center;
  line-height: 0.9em;
  white-space: pre;
}

#frame4 .heading {
  position: relative;
  color: #fff;
  font-size: 40px;
  line-height: 1em;
  text-align: left;
  white-space: nowrap;
}

#frame4 .sub-heading {
  position: relative;
  color: #fff;
  font-size: 15px;
  text-align: center;
  line-height: 0.9em;
  white-space: pre;
  top: -8px;
}

#frame4 .sub-legal {
  position: absolute;
  bottom: 15px;
  margin-left: -6px;
  color: #fff;
  font-size: 8px;
  text-align: left;
  line-height: 1em;
}

#frame5 .heading-container {
  padding: 0% 10% 84%;
}
#frame5 .eyebrow {
  position: relative;
  color: #fff;
  font-size: 16px;
  text-align: center;
  line-height: 0.9em;
  white-space: pre;
}

#frame5 .heading {
  position: relative;
  color: #fff;
  font-size: 40px;
  line-height: 1em;
  text-align: left;
  white-space: nowrap;
}

#frame5 .sub-heading {
  position: relative;
  color: #fff;
  font-size: 14px;
  text-align: center;
  line-height: 0.9em;
  white-space: pre;
  top: -10px;
}

#frame5 .sub-legal {
  position: absolute;
  bottom: 14px;
  margin-left: 0px;
  color: #F8F3E9;
  font-size: 8px;
  text-align: left;
  line-height: 1.1em;
}

.cta-text {
  position: relative;
  font-family: VerizonNHGeDSBold;
  color: #000;
  font-size: 16px;
  text-align: center;
  line-height: 0.9em;
}

.exit-click {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.banner-exit {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid #D8DADA;
  background-color: transparent;
  cursor: pointer;
}

/* Tooltip Properties */
.hotspot {
  position: absolute;
  background: transparent;
  /* Red semi-transparent background for visibility */
  cursor: pointer;
  z-index: 2;
}

.arrowTip-container {
  position: absolute;
  opacity: 0;
  visibility: hidden;
}

.tooltip-arrow {
  position: absolute;
  top: 0;
  left: 0;
  width: 8px;
  height: 5px;
  z-index: 3;
}
.tooltip-container {
  position: absolute;
  width: 146px;
  height: 79px;
  border: solid 0.5px #000;
  background: white;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  padding: 12px 25px 10px 14px;
  z-index: 1;
}

.disclaimer {
  font-family: VerizonNHGeDSRegular;
  font-size: 8px;
  line-height: 1.125em;
  height: 100%;
  overflow-y: scroll;
  scrollbar-width: none;
  box-sizing: content-box;
}

.disclaimer::-webkit-scrollbar {
  display: none;
}

.scrollbar {
  position: absolute;
  top: 0;
  right: 0;
  width: 4px;
  height: 44px;
  top: 23px;
  right: 11px;
  background: rgb(246, 246, 246);
}

.close-btn {
  position: absolute;
  width: 6px;
  height: 6px;
  top: 9px;
  right: 10px;
  cursor: pointer;
}

.xclose {
  position: absolute;
  width: 100%;
  height: 100%;
}

.scroll-thumb {
  position: relative;
  width: 100%;
  background: rgb(218, 216, 216);
  cursor: pointer;
}

hero {
  font-family: VerizonNHGeDSBold;
}

#rule {
  background-color: #F8FF3C;
  width: 6px;
  height: 109px;
  top: 12%;
  position: absolute;
}

#f3Heading .splitted-container {
  backface-visibility: hidden;
  transform: translateZ(0);
  -webkit-font-smoothing: antialiased;
}

body {
  width: 300px;
  height: 600px;
}
