@font-face {
  font-family: 'HighwayGothic';
  font-style: normal;
  font-weight: 300;
  src: local('HighwayGothic'),
       url('../webfonts/HWYGOTH.woff') format('woff'), /* Modern Browsers */
       url('../webfonts/HWYGOTH.ttf') format('truetype') /* Safari, Android, iOS */
}

@media screen and (max-width: 1200px) {
  @-ms-viewport { width: 320px; }
}
 
html {
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  font-size:22px;
  scroll-behavior: smooth;
}

html {
  text-decoraton:none;
}

body {
  width:100%;
  margin:0px auto;
  xbackground-image: url('../images/homepage-bg.png');
  font-family:"HelveticaLTStd-Light", "aria";
  height:100%;
  float:left;
  xfont-size:40%;
}

.lvx-blue{
  background-color:#0093d0;
}

.lvx-gold{
  background-color:#ffd204;
}

.red{
  color:#f00;
}

.white{
  color:#fff;
}

h1{
  float:left;

  line-height:1.0em;
}

h2{
  font-size:2.4em;
  font-weight:1;
  margin:0.5em 0 .4em 0;
  padding:0;

  line-height:1.0em;
}

#home-page-body h2{
  margin-top:1.5em;
}
  
h3{
  width:100%;
  text-align:center;
  font-size:1.7em;
  font-weight:5;
  margin:1.2em 0 .4em 0;
  padding:0;
  
  line-height:1.0em;
}

h3 .light-head{
  xfont-size:.7em;
  font-size:.85em;
  font-weight:1;
}

h4{
  xwidth:100%;
  xtext-align:center;
  font-size:1.2em;
  font-weight:1;
  margin:1.6em 0 2em 0;
  padding:0;
  font-family:"HelveticaLT",arial;
}

h6{
  position:absolute;
  font-style: italic; 

  line-height:1.0em;
}

.font1 {
  font-family:"HelveticaLTStd-Light",arial;
}

.font1-heavy {
  font-family:"Helvetica","HelveticaLT",arial;
}

.font2 {
  font-family: 'EB Garamond', serif;
}

.bold{
  font-weight:bold;
}

a {
  outline: none;
  text-decoration:none;
}

img {
  border: 0;
}

.large{
  font-size:1.35em;
}

.half{
  float:left;
  width:49%;
}

.flt-l{
  float:left;
}

.flt-r{
  float:right;
}

#top-btn {
  display: none; 
  position: fixed; 
  bottom: .3em; 
  right: .3em;
  z-index: 99; 
  border: none; 
  outline: none; 
  background-color:#548235; 
  color: white; 
  cursor: pointer; 
  padding: .3em .8em; 
  border-radius: .4em;
  font-size:1em; 
}

#top-btn:hover {
  background-color: #649245; 
}

i {
  border: solid #fff;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 3px;
}
.up {
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

.heading-container{
  position:relative;
  overflow:hidden;
  width:90%;
  max-width:1000px;
  xmargin:0em auto 2em auto;
  xpadding-top:2em;
  margin:0em auto 1em auto;
  padding-top:1em;
}

.logo-container{
  float:left;                                                                                                                                                       
  margin:0 0 0 0;
}

.logo-container .logo-img{
  border-left:3px solid transparent;
}

#education-page-body .logo-container .logo-img:hover, #contact-page-body .logo-container .logo-img:hover{
  cursor: pointer;
  border-left:3px solid #ffd204;
}

#home-page-body{
  overflow:hidden;
}

#home-page-body .button-desc{
  top:-1em;
  font-size:.85em;
  left:3.3em;
}

#home-page-body .heading-container{
  padding-top:6em;
}  

.page-section{
  position:relative;
  height:100%;
  overflow:hidden;
  border:1px solid #ddd;
  min-height:800px;
}

.service-container{
  font-size:2.34em;
  float:left;
  margin:.44em 0 0 .07em;
}

.service-container:after{
  display:block;
  content:"";
  clear:both;
}

#whois-page {
  font-size: .97em;
}

#whois-section p{
  margin-top: .8em;
  line-height: 1.2em;
  font-size: 1.05em;
}

#whois-section h2{
  margin: 0.5em 0 .2em 0;
}

#education-page-body .button-section{
  clear:left;
  float:left;
  margin: 0 0 1em 0;
}

#education-page-body .button{
  clear:left;
  float:left; 
  xwidth:66%;
  width:12em;
  xmax-width:200px;
  margin: 0 .6em 0 0;
  padding:.3em 0em;
  xbackground-color:#000;
  xcolor:#eee;
  xtext-align:center;
  font-size:1.1em;
  xfont-weight:bold;
  xfont-family:"HelveticaLT",arial;
  letter-spacing:.02em;
  xborder:.15em solid #fff;
}

#education-page-body .button-desc{
  float:left;
  margin:.2em 0 0 0;
  text-align:inherit;
}


.logo-img{
  width:5.5em;
}

.main-blue-bar{
  float:left;
  width:98%;
  height:.7em;
  margin:.0 1% .5em 1%; 
}

.main-gold-bar{
  float:left;
  width:98%;
  height:.7em;
  margin:.0 1% .5em 1%; 
}

.content-wrapper{
  position:relative;
  top:0;
  overflow:hidden;
  width:90%;
  max-width:1000px;
  height:100%;
  margin:0 auto;
  xborder:1px solid #ddd;
}

.content-wrapper p{
  clear:left;
  float:left;
  margin:.7em 0 0 0;
  font-size:.9em;
}



/* ========================= */
#main-bg{
  position:absolute;
  z-index:-1;
  width:100%;
  max-width:1400px;
  left: 50%; 
  transform: translate(-50%,0);
  height:100%;
  xbackground: url(../images/bg.jpg) no-repeat center 1em fixed; 
  background: url(../images/bg.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  xbackground-size: cover;
}

#contact-page-body{
  xfont-size:16px;
  xbackground-color: #a9c7df;
  background-color: #222;
}

#contact-page-body .content-wrapper{
  left:-5em;
  width:100%;
  max-width:100%;
}

#contact-page-body .heading-container{
  z-index:1;
  position:absolute;
  xwidth:auto;
  width:18em;
  xtop:2em;
  top:.7em;
  xright:1.5em;
  margin:0;
  xleft:77%;
  left: 55%;
  margin-left: 14%;  
}

#contact-page-body .service-container{
  margin:.6em 0 0 0;
  font-family:"Helvetica","HelveticaLT",arial;
  font-weight:bold;
}

#contact-page-body .page-no{
  position:absolute;
  xbottom:2em;
  bottom:.1em;
  xright:0em;
  right: 50%;
  margin-right: -36em;  
}

#contact-page-body .foot{
  position:absolute;
  bottom:.2em;
  xleft:1em;
  left:52%;
  margin-left:-25em;
}

#contact-page-body .foot-caption{
  z-index:-1;
  position:absolute;
  xbottom:7em;
  xtop:36em;
  top:33.8em;
  xleft:6%;
  xright: -29%;
  
  left:0;
  xwidth:93%;
  xwidth:84%;
  width:100%;
  overflow:visible;
}

#contact-page-body .foot-caption .big.gray{
  xfloat:left;
  display:inline-block;
  font-size:4em;
  xcolor:#76849e;
  color:rgb(175,196,233);
  font-family:"HelveticaLT",arial;
  
  position:absolute;
  top:0em;
  left:50%;
  margin-left:-6em;
  
}

#contact-page-body .foot-caption .white.spread{
  xfloat:left;
  display:inline-block;
  margin-top:1.1em;
  xmargin-left:4.5em;
  font-size:1.2em;
  color:#eee;
  xletter-spacing:2em;
  letter-spacing:1.6em;
  font-family:"HelveticaLT",arial;
  
  position:absolute;
  top:.2em;
  left:50%;
  margin-left:10em;
}

.green-dlg{
  background-color:#548235;
}

.blue-dlg{
  background-color:#0070c0;
}


#contact-page-body .heading-container{
  padding-top:0em;
}

.contact-dlgs{
  position:relative;
}


.contact-dlg-container{
  xposition:relative;
  position:absolute;
  
  left:50%;
  overflow:auto;
  width:20.5em;
  padding:.4em;
  border-radius:1.2em;
  color:#eee;
  
  min-height:9em;
}

.contact-dlg{
  position:relative;
  overflow:auto;
  width:20em;
  xmin-height:5em;
  padding: .5em 0em .5em 0em;
  border:.25em solid #eee;
  border-radius:.9em;
  font-family:"HighwayGothic", courier;
  font-size:1.0em;

}

.contact-dlg-text{
  xfont-family:"HelveticaLT",arial;
  font-weight:100;
  xfont-size:1.4em;
  font-size:1.7em;
  text-align:center;
  letter-spacing:.07em;
  line-height:1.1em;
}

.contact-dlg-footer{
  padding:.6em 0;
}

#contact-dlg-top{
  top:2em;
  margin-left:-11em;
}

#contact-dlg-2-1{
  top:15em;
  xmargin-left:-24.5em;
  margin-left:-22.8em;
  padding-bottom:.7em;
}

#contact-dlg-2-2{
  top:15em;
  margin-left:2em;
  padding-bottom:.7em;
}

#contact-dlg-submit{
  display:none;
  top:28em;
  margin-left:-10em;
}

.contact-arrow-container{
  width:14.5em;
  margin:0 auto;
  overflow:auto;
}

.contact-dlg-arrow{
  float:left;
  width:1.8em;
  margin:.8em 1.6em 0 1.6em;
}

.contact-dlg-submit-btn{
  margin:0em auto;
  width:6em;
  padding:.5em 2em;
  background-color:#0093d0;
  border:.15em solid #884444;
  border-radius:.4em;
}

.contact-dlg-submit-btn:hover{
  cursor:pointer;
  border-color:red;
}


.arrow-1.contact-dlg-arrow{
  xmargin-left:2.1em;
}

.arrow-3.contact-dlg-arrow{
  margin-right:0em;
}

.contact-dlg-arrow img{
  height:2.2em;
}

.contact-dlg-text input{
  float:left;
  margin:0 0 .2em 1.15em;
  xfont-size:1.0em;
  font-size:0.82em;
  background-color:#2680c0;
  xborder:none;
  border:.1em solid #4d90c0;
  color:#fff;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #6aa8d4;
  opacity: 1; /* Firefox */
  font:normal 1em arial;
  font-style: italic; 
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #66a2cc;
  font:normal 1em arial;
  font-style: italic; 
}

::-ms-input-placeholder { /* Microsoft Edge */
  color: #66a2cc;
  font:normal 1em arial;
  font-style: italic; 
}

#whatis-page{
  height:auto;
  xbackground-color:#000;
}

#whatis-page h2{
  font-size:2.3em;
  font-weight:bold;
  font-family:"HelveticaLT",arial;
}

#whatis-page h1{
  margin: .2em 0;
  font-size:4em;
  font-weight:bold;
  font-family:"HelveticaLT",arial;
  color:#882222;
}

#whatis-page h3{
  font-size:1.4em;
  font-weight:bold;
  font-family:"HelveticaLT",arial;
  text-align:left;
}

#whatis-page h6{
  position:relative;
  float: right;
  clear: right;
  text-align:right;
}

#whatis-page p{
  float:right;
  font-family:"HelveticaLT",arial;
  font-size:1.1em;
  text-align:right;
}

#sun-bg{
  position: absolute;
  bottom: -12%;
  right: 0px;
  z-index: -1;
  width: 100%;
  height: 112%;
  background: url(../images/sun-bg.jpg) no-repeat 0;
  /* background: url(../images/sun-bg.jpg); */
  /* -webkit-background-size: cover; */
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

#xsun-fullpage-bg{
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  max-width: 1200px;
  height: 100%;
  /* background: url(../images/sun.jpg) center center/cover no-repeat fixed #000; */
  background-image: url(../images/sun.jpg);
  background-repeat: no-repeat;
  /* background-attachment: fixed; */
  background-position: center top;
  /* background: url(../images/sun-bg.jpg); */
  /* -webkit-background-size: cover; */
  x-moz-background-size: cover;
  x-o-background-size: cover;
  background-size: cover;
  margin-left: -25%;
  background-color: #000;
}

#sun-fullpage{
  width: 100%;
  background-color: #000;
  overflow:auto;
}

#sun-fullpage img{
  display:block;
  width: 100%;
  max-width: 1200px;
  margin:0 auto;
}


#brochure-section{
  font-size:1.2em;
}

#brochure-section {
  font-size:1.2em;
}

#brochure-section ul li {
  margin: .3em 0 0 0;
}

#brochure-section .half {
  width:68%;
}

#savings-section h3{
  float:left;
  font-size:1.5em;
  margin-top:0.4em;
  margin-bottom:0.0em;
}

#savings-section p {
  font-size: .75em;
  margin: .3em 0 .3em 0;
}

#lamps-img-container{
  float:right;
}

#summary-section h2{
  float: left;
  margin: .4em 0 0 2.4em;
  padding: 0 0 0 0;
  font-size: 2.1em;
}

#summary-section .heading-container{
  xposition:absolute;
  xtop:-6.5em;
  xfloat:right;
  xright:1em;
  width:auto;
  height:4em;
  margin:0 0 0 0;
  padding: .4em 0 .5em 0;
}

#summary-section img{
  width:auto;
  height:4em;
}

#summary-section p{
  font-size:.78em;
  line-height:1.2em;
}

#summary-section .service-container{
  font-size: 1.8em;
}

#summary-page .page-no{
  clear:right;
  margin-top:1em;
  margin-right:0em;
}

#whitepaper-page{
  height:420%;

}

#whitepaper-section h7{
  display:block;
  float:left;
  margin-top:1.2em;
  margin-bottom:.1em;
  padding:0;
  width:100%;
  font-size:1em;
  font-weight:bold;
  font-family:"HelveticaLT",arial;
  text-align:center;
}

#whitepaper-section p{
  margin-top:.1em;
  margin-bottom:.4em;
}


/*
.contact-dlg-text span{
  display:inline-block;
  float:left;
}

#contact-dlg-2-2 input.contact-name{
  width:10em;
}

#contact-dlg-2-2 input.contact-phone{
  width:7.6em;
}
*/

#splash-page-dlg{
  position:relative;
}

#splash-page-body{
  xbackground-color:#0a0a0a;
  xxbackground-color:#708dad;
  background-color:#304d6d;
}

#splash-img-container{
  xdisplay:none;
  xposition:absolute;
  top:-135em;
  xleft:50%;
  xmargin:0 -40% 0 0;

  position:relative;
  xtop:2em;
  width:80%;
  max-width:1200px;
  margin:0 auto;
}

#splash-img{
  width:100%;
  border:.25em solid #304d6d;
}

#splash-page-dlg .button{
  position:absolute;
  bottom:.3em;
  right:.5em;
  width:11em;
  font-size:1em;
}

#home-page-body .content-wrapper{
  padding-left:.7em;
}

.page-no{
  float:right;
  color:red;
  font-family:"HelveticaLT",arial;
  margin:3em 2em 0 0;
}

.two-button-container{
  width:90%;
  max-width:900px;
  margin:3em auto 0 auto;
  overflow:hidden;
}

.button-container{
  float:left;
  width:50%;
  xmax-width:300px;
  xmargin:1em auto 0 auto;
  xpadding:.5em 1em;
}

.button{
  width:66%;
  xmax-width:200px;
  margin:1em auto .7em auto;
  padding:.3em 0em;
  background-color:#000;
  color:#eee;
  text-align:center;
  font-size:1.8em;
  font-weight:bold;
  font-family:"HelveticaLT",arial;
  letter-spacing:.03em;
  border:.15em solid #fff;
}

.button:hover{
  cursor:pointer;
  background-color:#333;
  border:.15em solid #ffd204;
  color:#fff;
}

.button-desc{
/*
  line-height:1.2em;
  text-align:center;
  font-size:1.1em;
*/
  line-height: 1.2em;
  font-size: 1.1em;
  width: 20em;
  margin: 0 auto 0 auto;
  position: relative;
  left: 1em;
}


/* ========================== */

#faqs-page{
  height:auto;
  min-height:44em;
}

#faq-container{
  float:left;
  width:100%;
  xheight:40%;
  font-size:1.6em;
  margin-top:6%;
  xoverflow-y:scroll;
}

.faq-cat{
  cursor:pointer;
}

.faq-cat .hdr:hover{
  color:#000 ;
}

.faq-cat .hdr{
  padding-bottom: 10px;
}

.faq-cat-2{
  xdisplay:none;
  xheight:0px;
  overflow:hidden;
  color: #348CCB;
  font-size:.8em;
  margin-left:3%;
  padding: 3px;
}

.faq-cat-3{
  xheight:0px;
  width:97%;
  overflow:hidden;
  color: #9c9c9c;
  font-size:.85em;
  margin:1% 0 1% 3%;
}

/* ============================== */

@media only screen and (max-width: 1500px) {

  #main-bg{
    max-width:none;
    width:107%;
    transform: translate(-47%, -1%);
    height:107%;
  }

}

@media only screen and (max-width: 1200px) {

  html {
    font-size:16px;
  }
  
  #main-bg{
    width:115%;
    transform: translate(-47%,0);
    height:111%;
  }
  
  #contact-page-body .contact-dlgs{
    xtop:6em;
  }

  #contact-page-body .heading-container{
    left:70%;
  }
  
  .content-wrapper {
    overflow:visible;
  }  

}

@media only screen and (max-height: 900px) {

  html {
    font-size:20px;
  }

  #contact-page-body .contact-dlgs{
    xtop:6em;
  }

  .content-dlg-container{
    xtop: 4em;
  }

  #contact-page-body .heading-container{
    left:70%;
  }

}


@media only screen and (max-width: 890px) {

  html {
    font-size:16px;
  }

  #contact-page-body .contact-dlgs{
    xtop:8em;
  }

  #contact-page-body .heading-container{
    left:70%;
  }

}
@media only screen and (max-height: 890px) {
  html {
    font-size:18px;
  }
  #contact-page-body .contact-dlgs{
    xtop:8em;
  }
  #contact-page-body .heading-container{
    left:70%;
  }
}


@media only screen and (max-width: 770px) {
  html {
    font-size:13px;
  }
  .content-dlg-container{
    xtop: 4em;
  }
  
  #contact-page-body .content-wrapper{
    left:-2em;
  }

}

@media only screen and (max-height: 660px) {
  html {
    font-size:16px;
  }

  
}

@media only screen and (max-width: 430px) {

  html {
    font-size:7.5px;
  }

/*
  #contact-dlg-2-1{
    margin-left:-11em;
  }
  
  #contact-dlg-2-2{
    top:28em;
    margin-left:-11em;
    padding-bottom:.7em;
  }
  
  #contact-dlg-submit{
    display:none;
    top:41.5em;
    margin-left:-11em;
  }
*/
}

@media only screen and (max-height: 430px) {

  html {
    font-size:7.5px;
  }
}

@media only screen and (max-width: 330px) {

  html {
    font-size:9px;
  }

}

