/* Styles for web engine page.

   developer:   rmiske
   requires:    /common/framework/css/framework.en.css
   ========================================================================== */

/* ==========================================================================
   setup the environment
   ========================================================================== */
:root {
    --wrapper-h-pad: 3.125rem;
}


/*sections*/
.page-width {
    margin: 0 auto;
    max-width: 1100px;
    padding: 2rem var(--wrapper-h-pad);
    width: 100%;
}


/*altered sections*/


/*content grids*/
.gridular {
    display: grid;
    grid-gap: 2rem;
    grid-template-columns: 1fr 1fr;
}


/*text*/
#hero, main {
    color: #404040;
    font-family: 'Source Sans Pro', Arial, sans-serif;
}

main h2 {
    border-top: 1px solid #bdbdbd;
    font-size: 2.25rem;
    padding-top: 3rem;
}
main h3 {
    font-size: 1.125rem;
    font-weight: 600;
    padding-top: 2rem;
}

main p {
    padding-top: 0.75rem;
}

#hero-img img, main img {
    height: auto;
    max-width: 100%;
}

main ul {  }
main ul li {
    padding: 0.75rem 0 0.25rem 0.75rem;
    position: relative;
}
main ul li:before {
    color: #888;
    content: '\25AA';
    margin-left: -0.75rem;
    position: absolute;
}


/*altered text*/


/*links*/
main a {
    color: #dd0000;
}
main a:hover {
    color: #ff6600;
}
main a.button {
    border-radius: 0.25rem; 
    display: inline-block;
    color: #fff;
    font-weight: 400;
    padding: 0.75rem 1rem;
}



/* ==========================================================================
   hero
   ========================================================================== */
#hero { 
    text-align: center;
    padding-bottom: 4rem;
    padding-top: 4rem;
}
#hero h1 {
    color: #333333;
    font-size: 3.375rem;
    font-weight: 400;
    text-align: center;
    text-transform: uppercase;
}
#hero h1 span { color: #dd1100; }
#hero p {
    color: #535353;
    font-size: 1.8rem;
    font-weight: 300;
}

#hero-img {
    text-align: center;
    background: #336d9e;
    font-size: 0;
}
#hero-img .page-width {
    padding: 1rem var(--wrapper-h-pad) 0;
}


/* ==========================================================================
   sections
   ========================================================================== */
#intro {
    padding-top: 3rem;
}
#intro p:first-of-type {
    color: #e06e04;
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1.5;
    padding-bottom: 2rem;
}


#key-features h2 + p,
#get-started h2 + p {
    font-size: 1.25rem;
    color: #404040;
    padding-top: 2rem;
}
#key-features p, 
#q-and-a p, 
#q-and-a li { 
    color: #6d6d6d; 
}
#key-features .gridular img { 
    border: 1px solid #bdbdbd; 
    margin: 2.5rem 0 -1rem;
}


table.desktop { 
    margin-top: 0.75rem;
    width: 100%; 
}
table.desktop th { 
    background: #3479a8; 
    border: 1px solid #fff; 
    color: #fff; 
    padding: 0.375rem 0.5rem; 
}
table.desktop th.wwe {
    background: #3995c6; 
}
table.desktop td { 
    border: 1px solid #e8e8e8; 
    padding: 0.5rem 1rem; 
}
table.desktop tr:nth-child(odd) td {
    background: #f9f9f9;
}
table.desktop td:not(:first-child) {
    text-align: center;
}
.mobile-tr {
    border: 1px solid #e9e9e9;
    display: none;
    grid-template-columns: 1fr;
    margin-bottom: 1.5rem;
}
.mobile-tr hr {
    background: #e8e8e8;
    border: none;
    height: 1px;
}
.mobile-th {
    background: #3479a8; 
    border: none;
    color: #fff; 
    padding: 0.25rem 0.5rem; 
    text-align: center;
}
.mobile-th.wwe {
    background: #3995c6; 
}
.mobile-ugliness {
    align-items: center;
    display: grid;
    gap: 1rem;
    grid-template-columns: .6fr .4fr;
    margin: 0 auto;
    max-width: 500px;
    width: 100%;
}
.mobile-ugliness > div {
    padding: 0.5rem 0.75rem;
}
.mobile-ugliness > div:nth-child(even) { 
    text-align: center; 
}

table.desktop th a,
.mobile-th a {
    color: #fff;
}
/*table.desktop th a:hover,
.mobile-th a:hover {
    color: yellow;
}*/



/*#get-started h2 {
    border-top: none;
    padding-top: 0;
}*/
#get-started p:last-child {
    display: grid;
    align-items: center;
    grid-template-columns: auto 1fr;
    width: 28.75rem;
    max-width: 100%;
}
#get-started a.btn {
    background: #dd1100;
    border-radius: 0.25rem; 
    display: inline-block;
    color: #fff;
    padding: 0.5rem 1.5rem;
    margin: 0 1.5rem 0 0;
}
#get-started a.btn:hover {
    background: #ff6600;
}
#get-started a:last-child {
    border-left: 1px solid #bdbdbd;
    color: #6d6d6d;
    padding: 0.25rem 0 0.25rem 1.5rem;
    line-height: 1.1;
}
#get-started a:last-child:hover {
    color: #ff6600;
}


#q-and-a {
    padding-bottom: 4rem;
}
#q-and-a h3 + .gridular {
    padding-bottom: 1rem;
    padding-top: 1rem;
}
.why-icon { width: 20%; }
.why-icon img { width: 100%; }
.why-content { padding-left: 1.5rem; }
.why-content h5 { 
    font-weight: 500;
    text-transform: uppercase;
}
.why-content p { 
    padding-top: 0.25rem;
}



/* ==========================================================================
   responsive
   ========================================================================== */
@media (max-width: 900px) {
    /*setup*/
    :root {
        --wrapper-h-pad: 2rem;
    }
    .gridular {
        grid-gap: 0;
        grid-template-columns: 1fr;
    }

    /*table*/
    table.desktop {
        display: none;
    }
    .mobile-tr {
        display: grid;
        margin-top: 0.75rem;
    }
}


@media (max-width: 600px) {
    /*setup*/
    :root {
        --wrapper-h-pad: 1rem;
    }
}
