/*@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,400,400italic,600,700);*/

@font-face 
{
  font-family: "Roboto";
  src: url(../fonts/Roboto/Regular/Roboto-Regular.ttf) format('truetype'), url(../fonts/Roboto/Regular/Roboto-Regular.woff) format('woff'), url(../fonts/Roboto/Regular/Roboto-Regular.woff2) format('woff2');
  font-weight: 500;
  line-height: 1;
}
@font-face 
{
  font-family: "Roboto Medium";
  src: url(../fonts/Roboto/Medium/Roboto-Medium.ttf) format('truetype'), url(../fonts/Roboto/Medium/Roboto-Medium.woff) format('woff'), url(../fonts/Roboto/Medium/Roboto-Medium.woff2) format('woff2');
  line-height: 1;
}
@font-face 
{
  font-family: "Roboto Bold";
  src: url(../fonts/Roboto/Bold/Roboto-Bold.ttf) format('truetype'), url(../fonts/Roboto/Bold/Roboto-Bold.woff) format('woff'), url(../fonts/Roboto/Bold/Roboto-Bold.woff2) format('woff2');
  font-weight: 500;
  line-height: 1;
}
@font-face 
{
  font-family: "Roboto Light";
  src: url(../fonts/Roboto/Light/Roboto-Light.ttf) format('truetype'), url(../fonts/Roboto/Light/Roboto-Light.woff) format('woff'), url(../fonts/Roboto/Light/Roboto-Light.woff2) format('woff2');
  line-height: 1;
}

body
{
  background: #f2f5f7;
  font-family: Roboto, arial, sans-serif;
  font-size: 14px;
  color: #555;
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
}
a
{
  color: #2f76bc;
  -webkit-transition: color 0.5s; /* For Safari 3.1 to 6.0 */
  transition: color 0.5s;      
}
a:hover
{
  color:#333;
}

/***** MAIN CONTAINERS: 2 TYPES 1024 & 1280 *****/
#Container1024
{
  max-width: 1024px;
  margin: 0 auto;
  padding: 1rem 2rem;
  font-size: .95rem;
}
#Container1280
{
  max-width: 1280px;
  margin: 0 auto;
  padding: 1rem 2rem;
  font-size: .95rem;
}
/***** END MAIN CONTAINERS *****/


/***** CONTENT CONTAINER *****/
.ContentContainer
{
  margin: 0;
  padding: 2rem;
  background: #ffffff;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.1);
}

.ContentContainer .PageTitle
{
  padding: 0 1rem 1rem;
  font-size: 1.35rem;
  display: none;
  color: #556f87;
}
.Content
{
  
}
.Content p
{
  margin: 0 0 1rem;
}
.Content ul
{
  list-style-type: square;
  margin: 1rem 0 2rem;
}
.Content ol
{
  margin: 0 0 2rem;
}
.Content .QuestionText
{
  font-weight: 600;
  margin: 0;
}
.Content .SectionTitle
{
  font-size: 1.3rem;
  margin: 0 0 1rem;
  border-top: 1px solid #ddd;
  padding: 1rem 0 0;
}
.Content .SectionSubTitle
{
  margin: 1.5rem 0 .75rem;
  font-size: 1.25rem;
  font-weight: normal;
}
.Content .SectionTitleBar
{
  margin: 1.5rem 0 0.75rem;
  font-size: 1.1rem;
  background: #555;
  color: #fff;
  padding: 0.5rem 1rem;
  font-weight: normal;
}
/***** END CONTENT CONTAINER *****/

/***** SECTION CONTAINER *****/
.SectionContent
{
  margin: 0 0 3rem;
  flex-basis: calc(50% - 15px);
}
.SectionContent p
{
  margin: 1rem 1rem 0;
}
.SectionContent ul
{
  list-style: none;
  margin: 0;
}
.SectionContent ol
{
  margin: 0.5rem 0 0;
}
.SectionContent ol li:before
{
  display: none;
}
.SectionContent li
{
  line-height: 2rem;
}
.SectionContent li:before
{
  content: "\002023";
  color: #556f87;
  font-size: 2.8rem;
  position: relative;
  top: .5rem;
  margin: 0 0.6rem 0 -1.6rem;
}
.SectionContent li ul li:before
{
  content: "\002023";
  color: #8696a4;
  font-size: 2.8rem;
  position: relative;
  top: .5rem;
  margin: 0 0.6rem 0 -1.6rem;
}
.SectionTitleBarLight
{
  font-size: 1.1rem;
  background: #eef0f2;
  color: #555;
  padding: 0.5rem 1rem;
}
.SectionContent.Downloads a
{
}
.SectionContent.Downloads .BrowserLogo
{
  max-width: 45px;
  width: 100%;
  margin: 1rem 1rem 0;
}
.SectionContentContainer .SectionContent li
{
  line-height: 1.5rem;
}
.SectionContentContainer .SectionContent li a
{
  color: #2f76bc;
  text-decoration: none;
}
.BoldText
{
  font-weight: 600;
}
/***** END SECTION CONTAINER *****/


/***** GRID CONTAINER *****/
#GridContainer
{
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
}
#GridContainer a
{
  text-decoration: none;
  color: #333;
}
#GridContainer a:hover
{
  color: #2f76bc;
}
/***** END GRID CONTAINER *****/


/***** QUESTION CONTAINER *****/
.Content .QuestionContainer ul
{
  list-style: none;
  margin: 0 0 1.5rem;
}
.Content .QuestionContainer ul li
{
  line-height: 1.5rem;
}
.Content .QuestionContainer ul li:before
{
  content: "\002023";
  color: #556f87;
  font-size: 2.8rem;
  position: relative;
  top: .5rem;
  margin: 0 0.6rem 0 -1.6rem;
}
.Content .QuestionContainer ol li
{
  line-height: 1.5rem;
}

.Content .SectionQuestion
{
  margin: 0 0 0.25rem;
  font-size: 1.1rem;
  font-weight: normal;
  color: #556f87;
}
.Content .SectionAnswer
{
  margin: 0 0 2rem;
}
.Content .ContentImg
{
  max-width: 600px;
  width: 100%;
}
.Content .ContentImg img
{
  width: 100%;
}
/***** END QUESTION CONTAINER *****/


/***** TITLE CONTAINER / TAB NAVIGATION *****/
.TitleContainerText
{
  font-size: 1.5rem;
  margin: 1rem 0;
  font-weight: normal;
}
.TabsContainer
{
  font-size: .857rem;
}
.TabsContainer .Tab
{
  color: #869195;
  text-decoration: none;
  padding: 0.5rem 0.5rem;
  margin: 0 0.5rem 0 0;
  display: inline-block;
  text-transform: uppercase;
  position: relative;
}
.TabsContainer .Tab:hover
{
  color:#535d60;
  cursor: pointer;
}
.TabsContainer .Tab:after 
{
  content: "";
  display: block;
  width: 0;
  height: 0;
  background-color: #3baef0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transition: width ease .25s, height ease .25s;
}
.Tab.Selected
{
 color: #3baef0;
}
.Tab.Selected:hover
{
 cursor: default;
 color: #3baef0;
}
.Tab.Selected:after
{
  content: "";
  display: block;
  width: 100%;
  height: 4px;
  background-color: #3baef0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
/***** END TAB NAVIGATION *****/


/***** MOBILE NAV *****/
.MobileNavIcon
{
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  margin: 1.5rem 0.5rem 0 0;
  cursor: pointer;
  width: 35px;
  height: 17px;
}
.MobileNavIcon .Line
{
  height: 3px;
  background: #556f87;
  position: absolute;
  width: 25px;
  transform-origin: center center;
}
.MobileNavIcon .Top
{
  top: 0;
  animation: menu-collapse-top ease 1s;
  transform-origin: center center;
}
.MobileNavIcon .Mid
{
  top: 7px;
  animation: menu-collapse-middle ease 1s;
  transform-origin: center center;
}
.MobileNavIcon .Bottom
{
  bottom: 0;
  animation: menu-collapse-bottom ease 1s;
  transform-origin: center center;
}
.MobileNavIcon.On .Top
{
  transform-origin: center center;
  animation:menu-expand-top ease 1s forwards;
}

.MobileNavIcon.On .Mid
{
  transform-origin: center center;
  animation:menu-expand-middle ease 1s forwards;
}
.MobileNavIcon.On .Bottom
{
  transform-origin: center center;
  animation:menu-expand-bottom ease 1s forwards;
}

@keyframes menu-expand-top
{
  0%
  {
    transform: translate(0px, 0px) rotate(0deg) scaleX(1);
    transform-origin: center center;
  }
  
  50%
  {
    transform: translate(0px, 7px) rotate(0deg) scaleX(1);
    transform-origin: center center;
  }
  
  75%
  {
    transform: translate(0px, 7px) rotate(-45deg) scaleX(1);
    transform-origin: center center;
  }
  
  100%
  {
    transform: translate(0px, 7px) rotate(-45deg) scaleX(1);
    transform-origin: center center;
  }

}

@keyframes menu-expand-bottom
{
  0%
  {
    transform: translate(0px, 0px) rotate(0deg) scaleX(1);
    transform-origin: center center;
  }
  50%
  {
    transform: translate(0px, -7px) rotate(0deg) scaleX(1);
    transform-origin: center center;
  }
  75%
  {
    transform: translate(0px, -7px) rotate(45deg) scaleX(1);
    transform-origin: center center;
  }
  100%
  {
    transform: translate(0px, -7px) rotate(45deg) scaleX(1);
    transform-origin: center center;
  }
}

@keyframes menu-expand-middle
{
  0%
  {
    transform:rotate(0deg);
    transform-origin: center center;
  }
  50%
  {
  transform:rotate(0deg);
  transform-origin:center center;
  }
  75%
  {
    transform:rotate(90deg);
    transform-origin: center center;
    opacity:0;
  }
  100%
  {
    -webkit-transform:rotate(90deg);
    transform-origin: center center;
    opacity:0;
  }
}

@keyframes menu-collapse-top
{
  0%
  {
    transform: translate(0px, 7px) rotate(-45deg) scaleX(1);
    transform-origin: center center;
  }
  50%
  {
    transform: translate(0px, 7px) rotate(-45deg) scaleX(1);
    transform-origin: center center;
  }
  75%
  {
    transform: translate(0px, 7px) rotate(0deg) scaleX(1);
    transform-origin: center center;
  }
  100%
  {
    transform: translate(0px, 0px) rotate(0deg) scaleX(1);
    transform-origin: center center;
  }
}

@keyframes menu-collapse-bottom
{
  0%
  {
    transform: translate(0px, -7px) rotate(45deg) scaleX(1);
    transform-origin: center center;
  }
  50%
  {
    transform: translate(0px, -7px) rotate(45deg) scaleX(1);
    transform-origin: center center;
  }
  75%
  {
    transform: translate(0px, -7px) rotate(0deg) scaleX(1);
    transform-origin: center center;
  }
  100%
  {
    transform: translate(0px, 0px) rotate(0deg) scaleX(1);
    transform-origin: center center;
  }
}

@keyframes menu-collapse-middle
{
  0%
  {
    transform:rotate(90deg);
    transform-origin: center center;
    opacity:0;
  }
  50%
  {
    transform:rotate(90deg);
    transform-origin: center center;
    opacity:0;
  }
  75%
  {
    transform:rotate(0deg);
    transform-origin:center center;
    opacity:0;
  }
  100%
  {
    transform:rotate(0deg);
    transform-origin: center center;
    opacity:1;
  }
}
/***** END MOBILE NAV *****/


/***** TABLE *****/
table
{
  border-collapse:collapse;
  margin: 1.5rem 0rem;
  font-size: .85rem;
  word-break: break-word;
  word-wrap: break-word;
  width: 100%;
  /*max-width: 1280px;*/
  border: none;
}
td
{
  padding: 1rem;
  border-bottom: 1px solid #eee;
}
.TableColumnHeaderSection
{
  padding: 0;
  text-align: center;
}
.TableColumnHeader
{
  background: #333;
  color: #fff;
  font-size: 1rem;
  padding: 0.5rem 1rem;
  word-break: normal;
  border-right: 1px solid #fff;
}
.ColumnTitles
{
  display: none;
}
/***** END TABLE *****/


/***** LOGOS *****/
.OSLogo
{
  margin: 0 0.5rem 0 0;
}
.MobileAppLogos
{
  width: 100%;
  max-width: 150px;
}
.MobileDeviceLogos
{
  width: 100%;
  max-width: 35px;
}
.BrowserLogo
{
  width: 100%;
  padding: 0.5rem 0;
  max-width: 45px;
}
.MailLogo
{
  max-width: 115px;
  width: 100%;
}
/***** END LOGOS *****/


/***** ACCORDION MENU *****/
#AccordionMenu
{
  margin: 0 0 2rem;
}
.AccordionContainer
{
  margin: 0 0 1px;
  position: relative;
}
.AccordionTitle
{
  cursor: pointer;
  border-bottom: 1px solid #f0f0f0;
  padding: 1rem 0.5rem;
  color: #556f87;
  font-size:1.1rem;    
}
.AccordionTitle:after
{
  content: "+";
  color: #556f87;
  font-size: 1.25rem;
  position: absolute;
  padding: 0 .5rem;
  right: 0;
  top: 1.8rem;
}
.AccordionTitle.Active:after
{
  content: "-";
  color: #556f87;
  font-size: 2rem;
  position: absolute;
  padding: 0 .5rem;
  right: 0;
  top: 1.3rem;
}
.AccordionSubTitle
{
  font-size: 0.9rem;
  color: #666;
  max-width: 90%;
}
.AccordionContent
{
  display: none;
  background: #f0f0f0;
  padding: 1rem;  
}
.AccordionContent ol.CodeDisplay
{
  font-size: .75rem;
  color: #0b3c49;
  /*color: #287285;*/
}
.AccordionContent  ol.CodeDisplay li
{
  line-height: 0;
}
.AccordionContent ol.CodeDisplay li pre
{
  white-space: pre-wrap;
  word-wrap: break-word;
  line-height: 1rem;
  margin: 0 0 0.3rem;
}
.AccordionContent ol.CodeDisplay li.LineHeight pre
{
  line-height: 1rem;
  margin: 0.5rem 0 0.5rem;
}
.AccordionContent p
{
  margin: 0;
}
.AccordionContent ol
{
  margin: 0;
  padding: 0 1.5rem;
}
.AccordionContent li
{
  line-height: 2rem;
}
.AccordionContent .ItalicNote
{
  margin: 1rem 0 .5rem;
}
/***** END ACCORDION MENU *****/

.SectionDivider
{
  width: 100%;
  background-color: #ddd;
  height: 1px;
}
.ItalicNote
{
  font-style: italic;
  font-size: 0.9rem;
  color: #777;
  margin: 0.75rem 0 2.5rem;
}
.UpdatedText
{
  color: #aa5252;
  font-size: 0.9rem;
}


/***** FOOTER CONTAINER *****/
.Footer
{
  color:#999;
}
.FooterTxt
{
  font-size: 0.8rem;
  padding: 1rem 0 0.5rem; 
}

.Footer .UpdateDateText
{
  text-align: left;
}
.UpdateDateText
{
  font-size: .8rem;
  font-style: italic;
  text-align: right;
  color: #aaa;
  margin: 0 0 0.5rem;
}
.UpdatedIndicator
{
  color: #086e9a;
}
/***** END FOOTER CONTAINER *****/



/***** MEDIA QUERIES *****/
@media screen and (max-width: 700px) 
{
  .SectionContent
  {
    flex-basis: 100%;
  }
}

@media screen and (max-width: 640px) 
{
  #Container1024, #Container1280
  {
    padding: 1rem;
  }  
  .ContentContainer
  {
    padding: 1.5rem;
  }
  .ContentContainer, table
  {
    font-size: 1rem;
    margin: 0;
  }
  a
  {
    word-break: break-word;
    word-wrap: break-word;
  } 
  td
  {
    display: flex;
    width: auto;
    padding: 0.4rem 0rem;
    flex-flow: row wrap;
  }
  /***** EMPTY CELLS ARE EMPTY TDS *****/
  .TableColumnHeader, .EmptyCell
  {
    display:none;
  } 
  .MobileViewHeader
  {
    display: block !important;
    font-weight: bold;
    padding: 1.5rem 0 0;
    border-bottom: 2px solid;
  }
  .ColumnTitles
  {
    display: block;
    border: none;
    font-size: .8rem;
    color: #999;
    padding: 0.4rem 0 0;
  }
  /***** MOBILE SPACER ONLY DISPLAYS ON MOBILE VIEW *****/
  .MobileSpacer
  {
    display: block !important;
    border: 0;
    height: 0.25rem;
  }
  .MobileDisplayColumnTitle
  {
    display: block !important;
    border-bottom: 0;
    font-weight: bold;
  }  
  .MobileDisplayBrowserLogo
  {
    display: inline-block !important;
    width: 8%;
    margin: 0 0.5rem 0 1rem;
  }

  /***** MOBILE NAV *****/  
  .ContentContainer .PageTitle
  {
    display: block;
  }
  .MobileNavIcon
  {
    display: block;
  }
  .TabsContainer.MobileDisplay[data-state="0"]
  {
    opacity: 0;
  }
  .TabsContainer.MobileDisplay[data-state="1"]
  {
    opacity: 1;
    z-index: 100;
  }
  .TabsContainer.MobileDisplay
  {
    background: #556f87;
    color: #fff;
    font-size: 1rem;
    position: absolute;
    right: 1.1rem;
    top: 55px;
    padding: 0;
    max-width: 225px;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.25);
    width: 100%;
    opacity: 1;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  } 
  .TabsContainer.MobileDisplay .Tab
  {
    background: transparent;
    color: #fff;
    text-decoration: none;
    padding: 1rem;
    margin: 0;    
    -webkit-transition: background 0.5s;
    transition: background 0.5s;
    display: flex;
  }
  .TabsContainer.MobileDisplay .Tab:after
  {
    content:"";
    height: 0px;
  }
  .TabsContainer.MobileDisplay .Tab:hover
  {
    color: #fff;
    background: #6e8aa3;
  }  
  .TabsContainer.MobileDisplay .Tab.Selected
  {
    color: #fff;
    background: #6e8aa3;
  }
  .TabsContainer.MobileDisplay .Tab.Selected:hover
  {
    color:#fff;
  }  
}
/***** END MEDIA QUERIES *****/