﻿header.PageHeader
{
    width: calc(100% - 20px);
    margin: 0 auto;
    padding: 20px 0 0 0;
    max-width: 1000px;
    color: #004650;
}

article.HomeContent
{
    width: 100%;
    max-width: 800px;
    margin: 10px auto;
    padding: 0;
    text-align: center;
    color: #004650;
}

.SlantedBarContainer
{
    width: 100%;
    margin: 0 0 20px 0;
    padding: 0;
}

.SlantedBar
{
    width: calc(100% - 20px);
    padding: 0 10px;
    margin: 0;
    background: #106776;
    color: #fff;
}

.SlantedBarTop, .SlantedBarBottom
{
    width: 100%;
    margin: 0;
    padding: 0;
    height: 70px;
    position: relative;
    background: #fff;
    overflow: hidden;
}

.SlantedBarTop::after, .SlantedBarBottom::after, .SlantedBarTop::before
{
    display: block;
    content: " ";
    position: absolute;
    width: 120%;
    height: 100%;
    top: 0;
    left: -10%;
    z-index: 20;
}

.SlantedBarTop::before
{
    z-index: 10;
    background-image: linear-gradient(to right top, #f7f6f2 0%, #f7f6f2 48%, transparent 50%);
}

.SlantedBarTop::after
{
    background-image: linear-gradient(to left top, #106776 0%, #106776 48%, transparent 50%);
}

.SlantedBarBottom::after
{
    background-image: linear-gradient(to right bottom, #106776 0%, #106776 48%, transparent 50%);
}

.SlantedBarContent
{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    padding: 0;
}

.SlantedBarContent::after
{
    display: block;
    clear: both;
    content: " ";
}

.SlantedBar .ImageContent
{
    width: 150px;
    padding: 10px 0 0 0;
    margin: 0;
    float: left;
}

.SlantedBar .TextContent
{
    width: calc(100% - 200px);
    text-align: left;
    padding: 0;
    margin: 20px 0 0 0;
    float: right;
    color: #fff;
    line-height: 150%;
    font-family: Courier New, Courier, Kalam, monospace;
}

.SlantedBar .TextContent p
{
    margin-top: 0;
}

.SlantedBar .Attribution
{
    font-size: 14px;
    padding-left: 20px;
    line-height: 130%;
    display: block;
}

.FreeTrialBar
{
    width: 100%;
    margin: 0;
    padding: 0;
    background: url(images/crossedlegslaptop.jpg) no-repeat scroll center center / cover;
}

.FreeTrialBarInner
{
    width: calc(100% - 40px);
    padding: 20px 20px 60px 20px;
    margin: 0 auto;
    max-width: 500px;
    color: #fff;
    text-align: center;
    font-size: 26px;
    font-weight: bold;
    line-height: 140%;
}

.FreeTrialBarInner h2
{
    font-weight: normal
}

.FreeTrialBar .Button
{
    display: inline-block;
    font-size: 15px;
    text-decoration: none;
    padding: 5px 35px;
    background: #fff;
    border: 1px solid #00beb4;
    color: #106776;
}

.FreeTrialBar .Button:hover
{
    border: 1px solid #000;
}

.ThreeTestimonialsContainer
{
    width: 100%;
    max-width: 900px;
    padding: 30px 0 0 0;
    margin: 0 auto;
    display: flex;
}

.ThreeTestimonialsContainer .Testimonial
{
    flex-grow: 1;
}

.ThreeTestimonialsContainer .TestimonialContent
{
    width: calc(100% - 20px);
    max-width: 210px;
    margin: 0 auto;
    padding: 0 0 40px 0;
    color: #106776;
    font-size: 14px;
    line-height: 175%;
}

.ThreeTestimonialsContainer img
{
    display: block;
    width: calc(100% - 10px);
    border-radius: 50%;
    margin: 0 0 30px 0;
    border: 5px solid #106776;
}

.ThreeTestimonialsContainer .Attribution
{
    color: #00beb4;
}

.MoreReviews
{
    width: calc(100% - 20px);
    margin: 0 auto;
    padding: 0;
    text-align: center;
}

.MoreReviewsLink, .AllFeaturesLink
{
    display: inline-block;
    padding: 2px 0 0 28px;
    height: 18px;
    line-height: 18px;
    margin: 0;
    font-size: 14px;
    color: #106776;
    text-decoration: none;
    position: relative;
}

.AllFeaturesLink
{
    color: #fff;
}

.MoreReviewsLink::before, .AllFeaturesLink::before
{
    display: block;
    content: " ";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #717273 url(images/search.png) no-repeat scroll center center;
}

.MoreReviewsLink:hover, .AllFeaturesLink:hover
{
    text-decoration: underline;
}

.MoreReviewsLink:hover::before, .AllFeaturesLink:hover::before
{
    background-color: #00beb4;
}

.ViewDemo
{
    width: 100%;
    margin: 0;
    padding: 0;
	text-align: center;
}

.ViewDemoButton
{
    all: unset;
    display: inline-block;
    padding: 1px 0 0 28px;
    height: 18px;
    line-height: 18px;
    margin: 0;
    font-size: 18px;
    color: #106776;
    text-decoration: none;
    position: relative;
    cursor: pointer;
}

.ViewDemoButton::before
{
    display: block;
    content: " ";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 19px;
    height: 19px;
    border-radius: 50%;
    background: #00beb4 url(images/play.png) no-repeat scroll 6px 4px;
}

.ViewDemoButton:hover
{
    text-decoration: underline;
}

.ViewDemoButton:hover::before
{
    background-color: #106776;
}

.CloseDemoButton
{
    all: unset;
    display: inline;
    padding: 0;
    margin: 0 5px 0 0;
    font-size: 12px;
    color: #00beb4;
    text-decoration: none;
    cursor: pointer;
}

.CloseDemoButton:hover
{
    color: #106776;
}

.DemoContainer
{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 999999;
    background: rgba(0,0,0,0.5);
}

.DemoInnerContainer
{
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.DemoPopup
{
    margin: 0;
    padding: 4px;
    border: 1px solid #ddd;
    background: #fff;
    max-width: calc(100vw - 50px);
    max-height: calc(100vh - 50px);
    
    box-shadow: 5px 5px 15px #000;
    text-align: right;
}

.DemoContent
{
    width: calc(100vw - 50px);
    max-width: 800px;
    background: #000;
    margin: 2px auto 0 auto;
}

.DemoVideo
{
    width: 100%;
    position: relative;
    max-height: calc(100vh - 65px);
}

.DemoVideo::after
{
    content: " ";
    display: block;
    padding-bottom: 56.25%
}

.DemoVideo iframe, .DemoVideo object, .DemoVideo embed
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-height: 100%;
}

.SplashImage.HomeSplash
{
    background: #106776 url(images/home-splash.jpg) no-repeat scroll center center;
    min-height: 400px;
    max-height: 400px;
}

.HomeSplash .SplashImageInner
{
    max-width: 1120px;
    height: 100%;
}

.HomeSplash .SplashImageInner::after
{
    clear: both;
    content: " ";
    display: block;
}

.HomeSplash .SplashImageCaptionContainer
{
    width: 40%;
    padding: 0;
    margin: 0;
    float: left;
    max-width: 430px;
    height: 100%;
}

.HomeSplash .SplashCaption
{
    width: calc(100% - 110px);
    height: calc(100% - 130px);
    padding: 40px;
    margin: 20px auto;
    background: #fff;
    border: 5px solid #f7f6f2;
    text-align: left;
    font-size: 16px;
    color: #004650;
    position: relative;
}

.HomeSplash .H1
{
    font-family: 'Black Han Sans', sans-serif;
    font-size: 30px;
    line-height: 150%;
    font-weight: normal;
    margin: 0 auto;
}

.HomeSplash .Button
{
    display: block;
    font-size: 16px;
    text-decoration: none;
    padding: 12px 0;
    background: #106776;
    border: 1px solid #106776;
    color: #fff;
    text-align: center;
    margin: 0;
    position: absolute;
    bottom: 40px;
    width: calc(100% - 80px);
}

.HomeSplash .Button:hover
{
    border: 1px solid #000;
}


ul.BulletList
{
    margin: 15px 0;
    
}

ul.BulletList li
{
    line-height: 140%;
}

.KeyFeaturesContainer
{
    width: 100%;
    margin: 22px auto 30px auto;
    padding: 0;
    background: #f6f6f6;
}

.KeyFeatures
{
    width: 100%;
    max-width: 1200px;
    padding: 0;
    margin: 0 auto;
    display: flex;
    background: #106776;
    color: #fff;
    text-align: left;
}

.KeyFeaturesMenuContainer
{
    flex-basis: 30%;
}

.KeyFeaturesItems
{
    flex-basis: 70%;
    min-height: 600px;
    position: relative;
    overflow: hidden;
    background: #106776;
}

#kf_1 .Image
{
    background: #fff url(images/keyfeatures/1.jpg) no-repeat scroll center center;
}

#kf_2 .Image
{
    background: #fff url(images/keyfeatures/2.jpg) no-repeat scroll center center;
}

#kf_3 .Image
{
    background: #fff url(images/keyfeatures/3.jpg) no-repeat scroll center center;
}

#kf_4 .Image
{
    background: #fff url(images/keyfeatures/4.jpg) no-repeat scroll center center;
}

#kf_5 .Image
{
    background: #fff url(images/keyfeatures/5.jpg) no-repeat scroll center center;
}

#kf_6 .Image
{
    background: #fff url(images/keyfeatures/6.jpg) no-repeat scroll center center;
}
#kf_7 .Image
{
    background: #fff url(images/keyfeatures/7.jpg) no-repeat scroll center center;
}

.KeyFeatureItem
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #00beb4;
    border-right: 1px solid #106776;
    box-shadow: 0 0 15px #106776;
    z-index: 80;
    background-size: cover;
    opacity: 0;
}

.KeyFeatureItem .Image
{
    position: absolute;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    top: 0;
    left: 0;
}

.KeyFeatureItem.Selected
{
    z-index: 100;
    opacity: 1;
}

.KeyFeatureItem.Last
{
    z-index: 90;
    opacity: 1;
}

.KeyFeaturesHeader
{
    width: calc(100% - 40px);
    padding: 0 20px;
    height: 80px;
    line-height: 80px;
    font-size: 16px;
}

.KeyFeaturesHeader h2
{
    text-align: left;
    font-size: 36px;
    height: 80px;
    line-height: 80px;
}

.KeyFeaturesFooter
{
    width: calc(100% - 40px);
    height: 40px;
    margin: 0;
    padding: 0 20px;
}

.KeyFeaturesMenu, .KeyFeatureMenuItem
{
    list-style-type: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

.KeyFeaturesMenu
{
    height: calc(100% - 120px);
}

.KeyFeatureMenuItem
{
    width: calc(100% - 40px);
    padding: 10px 20px;
    position: relative;
}

.KeyFeatureMenuItem::after
{
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    cursor: pointer;
    z-index: 100;
    top: 0;
    left: 0;
}

.KeyFeatureMenuItem.Selected
{
    background: #fff;
    color: #106776; 
}

.KeyFeatureMenuItem.Selected::after
{
    cursor: default;
}

.KeyFeatureContent
{
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    position: relative;
}

.KeyFeatureCaption
{
    width: calc(100% - 60px);
    padding: 10px 20px;
    background: #fff;
    position: absolute;
    bottom: 10px;
    left: 10px;
    margin: 0;
    text-align: left;
    color: rgb(0, 70, 80);
	display: none;
}












