/**
 * Index.css
 *
 * Styling for the index pages (index.php and userIndex.php)
 *
 * Table of Contents:
 * 1. Tabs                          - The tabs at the top of the index page
 * 2. Individual Tab                - The tab for individuals / couples to sign up
 * 3. Advisors Tab                  - The tab targeting advisors to use our site
 * 4. Organizations Tab             - The tab for organizations trying to contact us
 * 5. User Index                    - The index page for individual / couple users
 * 6. Is This Needed?               - Things that may be irrelevant after the NewAdvisorTab update
 * 7. Phone CSS                     - Phone screen CSS
 *
 * @author Sarah Stensland
 * @version 2/6/22
 *
*/


/* -----------------------------------------------------SECTION 1: TABS----------------------------------------------------- */

#tabs {
    width: 100%;
    height: fit-content;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    margin-top: -1rem;
    padding-top: 55px;
}


/* The text in the tabs */

#tabs p {
    padding: 5px 15px;
    margin-bottom: 0;
    border-top: black solid 1px;
    border-left: black solid 1px;
    border-right: black solid 1px;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    width: 100%;
    text-align: center;
    font-size: 16pt;
    background-color: white;
}


/* Keep the bottom border on the other tabs */

#tabs p:not(#selected) {
    border-bottom: 1px solid black;
}


/* The current tab */

#selected {
    font-weight: bold;
}


/* The rest of the div containing the tabs */

#tabs div {
    border-bottom: 1px solid black;
    width: 100%;
}


/* Sets up the grid in all tab contents */

.indexTab {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-around;
    margin: 0 12%;
    font-size: 18px;
}


/* standard width for content */

.indexTab img,
.indexTab div,
.indexTab form {
    width: 450px;
}


/* Standard text practices */

.tabContent h1,
.tabContent label {
    color: white;
    text-transform: capitalize;
    text-align: left;
    padding-left: 0;
}


/* -----------------------------------------------------SECTION 2: INDIVIDUAL TAB----------------------------------------------------- */


/* Styling for the individual tab content */

#individual {
    background-image: url('./../images/NewIndex/coupleBackground.svg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position-y: bottom;
    padding-top: 30px;
}


/* The sign up form on the individual page */

#individual form {
    background-image: linear-gradient(to bottom, #3B4673, #8B0368);
    padding: 35px;
    border-radius: 20px;
}


/* The inputs for the signup form */

#individual form input {
    width: -webkit-fill-available;
    width: -moz-available;
    margin: 0 auto;
    height: 40px;
}


/* Adjusting the submit button */

#individual form input[type=submit] {
    color: #801F67;
    background-color: white;
    font-weight: normal;
    border-radius: 6px;
    height: 45px;
    margin-top: 20px;
    cursor: pointer;
}

#individual form small {
    font-size: 7pt;
    color: #939394;
    margin-left: 5%;
}


/* Margin corrections for individual pages */

#individual>div>div {
    margin: 5% 0;
}


/* -----------------------------------------------------SECTION 3: ADVISOR TAB----------------------------------------------------- */


/* General */

#team {
    padding-top: 35px;
}

.indAdvFlex {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
}

.indAdvFlex#indFirst p,
.indAdvFlex#indSecond p,
.indAdvFlex#indThird p {
    color: #59595B;
}

.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%2359595B' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E") !important;
}

.carousel-control-next-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%2359595B' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E") !important;
}


/* First Div */

.indAdvFlex#indFirst {
    background-color: white
}

.indAdvFlex#indSecond {
    background-color: #246A7D10;
}

#indFirst h1 {
    color: #59595B;
    width: 66%;
    text-align: center;
    margin-bottom: 50px;
    font-weight: bold;
}

.indAdvFlex .indexTab {
    margin: 0 auto;
    padding: unset;
}

#indFirst .indexTab .indAdvFlex {
    width: 50%;
}

.indAdvReqBtn {
    margin-bottom: 50px;
    background-color: #EC4270;
    color: white;
    border: solid #801F67 1px;
    width: 375px;
    height: 50px;
    border-radius: 4px;
    box-shadow: 1px 2px 6px #00000029;
    font-size: 21px;
}

.indAdvReqBtn img {
    max-width: max-content;
    width: 17px;
    margin-left: 10px;
}

.indAdvCreateBtn {
    margin-bottom: 50px;
    background-color: #03A696;
    color: white;
    border: solid #268178 1px;
    width: 375px;
    height: 50px;
    border-radius: 4px;
    box-shadow: 1px 2px 6px #00000029;
    font-size: 21px;
}


/* Second Div */

#indSecond h1 {
    color: #59595B;
    text-transform: uppercase;
    font-weight: bold;
    width: 100%;
    text-align: center;
    margin: 35px 0;
}

#indSecond .getStartSteps p {
    text-align: center;
}

.getStartSteps {
    display: flex;
    flex-direction: column;
    justify-content: start;
    width: 21% !important;
    min-height: 350px;
    align-items: center;
}

.getStartSteps img {
    width: 100px;
    margin-bottom: 35px;
}

.getStartSteps h4 {
    margin-bottom: 25px;
    color: #59595B;
    font-weight: bold;
    text-align: center;
}


/* Third Div */

#indThird {
    background: transparent linear-gradient(180deg, #2fac9f1a -100%, #246a7d 50%, #182258 700%) 0% 0% no-repeat;
}

#indThird h1 {
    width: 100%;
    text-align: center;
    margin: 35px 0 55px;
}

#indThird .indexTab {
    align-items: center;
}

.indAdvPriceBox {
    width: 275px !important;
    background-color: #FFFFFFCC;
    box-shadow: 3px 2px 6px #00000029;
    border: 1px solid #3b4673;
    padding-top: 20px;
}

.indAdvBlueStrip {
    width: 275px !important;
    background-color: #3b4673;
    text-align: center;
    padding: 10px;
}

.indAdvBlueStrip p {
    color: white !important;
    font-weight: bold;
    text-align: center;
    margin: 0 auto;
}

.indAdvPriceBox h4 {
    font-weight: bold;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 25px;
}


/* Fourth div */

#indFourth,
#indSixth {
    width: 100%;
    height: 550px;
}

#indFourth .carousel-item,
#indSixth .carousel-item {
    transition: transform .6s ease, -webkit-transform .6s ease;
}

#indFourth .carousel-item img,
#indSixth .carousel-item img {
    max-height: 450px;
}

#indFourth .carousel-indicators,
#indSixth .carousel-indicators {
    bottom: -50px;
}

#indFourth .carousel-indicators li:hover,
#indSixth .carousel-indicators li:hover {
    cursor: pointer;
}

#indFourth .carousel-indicators li,
#indSixth .carousel-indicators li {
    background-color: white;
    border: 1px solid #59595B;
    border-radius: 100%;
    width: 15px;
    height: 15px;
}

#indFourth .carousel-indicators li.active,
#indSixth .carousel-indicators li.active {
    background-color: #59595B;
}

#indFourth .carousel-outer-flex,
#indSixth .carousel-outer-flex {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
}

#indFourth .carousel-inner-flex,
#indSixth .carousel-inner-flex {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 30%;
}

#indFourth .carousel-inner-flex h4,
#indSixth .carousel-inner-flex h4 {
    text-align: center;
    font-weight: bold;
    padding-bottom: 20px;
    color: #59595B;
}

#indFourth .carousel-inner-flex p,
#indSixth .carousel-inner-flex p {
    color: #59595b;
}


/* Fifth Div */

#indFifth {
    background: transparent linear-gradient(180deg, #2FAC9F1A -100%, #246A7D -30%, #182258 100%) 0% 0% no-repeat padding-box;
    width: 100%;
    margin: unset;
    justify-content: space-evenly;
}


/* -----------------------------------------------------SECTION 4: ORGANIZATIONS TAB----------------------------------------------------- */


/* Background image and spacing for organization's tab */

#organization {
    background-image: url('./../images/NewIndex/organizationBackground.svg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
    padding-top: 30px;
}


/* Formatting the contact field */

#organization #contact {
    width: 60%;
    margin: auto;
    margin-top: 80px;
    background-color: #FFFFFFE6;
    border: #3B4673 solid 1px;
    padding: 50px;
    border-radius: 20px;
}


/* Contact field title */

#contact p {
    color: #182258;
}


/* Contact Title */

#contact h1 {
    text-align: left;
    color: #182258;
    width: 100%;
}


/* Contact labels (input descriptions) */

#contactForm label {
    color: #182258;
}


/* General styling for the inputs */

#contactForm input {
    width: 85%;
    height: 35px;
    margin-bottom: 15px;
}


/* Grid setup for the form */

#contactForm div {
    display: grid;
    grid-template-columns: 50% 50%;
    grid-column-gap: 50px;
    grid-row-gap: 5px;
}


/* The message field */

#contactForm textarea {
    width: 100%;
    height: 100px;
}


/* Contact us submit form */

#contactForm input[type=submit] {
    background-color: #182258;
    color: white;
    border-radius: 25px;
    box-shadow: 6px 6px 6px #00000033;
    border: 2px solid #182258;
    width: 25%;
    cursor: pointer;
    margin-top: 15px;
}


/* TODO 1/20/22 -- SEE IF THESE ARE NEEDED AFTER THE NEW-ADVISOR-TAB UPDATE */


/* -----------------------------------------------------SECTION 5: USER INDEX----------------------------------------------------- */

.howItWorks {
    font-weight: bold;
    color: #182258;
}

.indexItemText {
    color: gray;
    width: 90%;
    align-self: center;
}

.indexItemImage {
    width: 175px;
    align-self: center;
    margin-bottom: -25px;
}

.indexContainer.onlyBox {
    margin: auto;
}

.indexContainer {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    flex-wrap: wrap;
}

.indexBox {
    display: flex;
    flex-direction: column;
    padding: 2%;
    height: auto;
    text-align: center;
    margin: 15px 50px;
    background: #FBFBFB 0% 0% no-repeat padding-box;
    box-shadow: 0px 3px 6px #00000029;
    justify-content: space-between;
    width: 350px;
}

.indexItemBtn .btn {
    width: 90%;
    align-self: center;
    background-color: #182258;
    border: #182258;
    margin-top: 5%;
    height: auto;
}

.indexItemBtn .btn:hover {
    background-color: #182258;
    opacity: .75;
}

.indexItemBtn .btn:active {
    background-color: inherit;
    border: #182258;
    color: inherit;
}

.onlyBox .indexItemBtn .btn {
    background-color: #8b0368;
}

.onlyBox .indexItemBtn .btn:disabled {
    opacity: .2;
}

.welcome {
    height: auto;
    text-align: left;
    font: 24px/29px Helvetica;
    letter-spacing: 0px;
    color: #303033;
    opacity: .9;
}


/* -----------------------------------------------------SECTION 6: IS THIS NEEDED?----------------------------------------------------- */


/* Advisor Signup top/progress section */

#darkTeal {
    background-color: #9adbd4;
    width: 100%;
    height: 100px;
    margin-top: -1rem;
    display: flex;
    justify-content: center;
    flex-direction: row;
    align-items: center;
}


/* The circle for the current page */

#darkTeal #currentStep {
    background-color: #2FAC9F;
}


/* The circles for the other pages */

#darkTeal div {
    background-color: #E7E8EE;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    margin: 40px;
}


/* The circle names */

#darkTeal div p {
    font-weight: bold;
    color: black;
    text-align: center;
    white-space: nowrap;
    width: fit-content;
    transform: translate(-50%, -50%);
    margin-top: 50%;
    margin-left: 50%;
}


/* The main content of the pages */

#mainDiv {
    display: flex;
    flex-direction: row;
    justify-content: center;
}


/* The choose plan white boxes with the plans */

.selectionBox {
    background-color: white;
    height: fit-content;
    width: 300px;
    padding: 25px;
    border: #3B4673 1px solid;
    border-radius: 10px;
    margin: 50px 30px 0;
}


/* Title of the selection box */

.selectionBox>h6 {
    font-size: 24px;
    margin-bottom: 30px;
    width: 100%;
    position: relative;
}


/* The number of codes/month */

.selectionBox div h6 {
    font-weight: lighter;
    font-size: 18px;
}


/* The bold section of the number of codes/month (numbers) */

.numCodeTitle {
    font-weight: bold;
    font-size: 20px;
}


/* The little "best value" tag on the annual prices */

#bestValue {
    text-align: left;
    font-size: 14px;
    background-color: #801F67;
    color: white;
    padding: 7px 15px 8px 10px;
    position: absolute;
    right: -26px;
    top: -10px;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}


/* The sign up form for advisors */

#advisorSignupForm {
    background-image: linear-gradient(to bottom, #3B4673, #268178);
    height: fit-content;
    border-radius: 20px;
    padding: 25px;
    color: white;
    margin-top: 25px;
    width: 500px;
    margin: 55px auto;
}


/* General input styling */

#advisorSignupForm input {
    width: 95%;
    height: 35px;
    margin-bottom: 15px;
    margin-left: 50%;
    transform: translateX(-50%);
}


/* Submit button for advisor sign up */

#advisorSignupForm input[type=submit] {
    background-color: white;
    color: #03A696;
    box-shadow: 6px 6px 6px #00000033;
    border: 2px solid #268178;
    border-radius: inherit;
    width: 50%;
    font-size: 16px;
    cursor: pointer;
}


/* -----------------------------------------------------SECTION 7: PHONE SCREEN CSS----------------------------------------------------- */

@media screen and (max-width: 750px) {
    /* GET FEEDBACK ON THIS IDEA */
    #indFourth,
    #indFifth,
    #indSixth,
    #indSeventh {
        display: none;
    }
    /* GET FEEDBACK ON THIS IDEA */
    /* 1. Tabs */
    .indexTab {
        flex-direction: column;
    }
    .indexBox {
        padding-top: 4%;
        padding-bottom: 4%;
    }
    .indexTab div,
    .indexTab img,
    .indexTab form {
        width: 100%;
    }
    /* 3. Advisor Tab */
    #indFirst .indexTab .indAdvFlex {
        width: 75%;
        margin: 0 auto;
    }
    #indFirst .indexTab img {
        padding-bottom: 15px;
    }
    .indAdvCreateBtn,
    .indAdvReqBtn {
        width: 100%;
    }
    #indSecond .indexTab.flex-nowrap {
        flex-direction: column;
    }
    .getStartSteps {
        width: 75% !important;
        margin: 15px auto;
        min-height: unset;
    }
    .getStartSteps img {
        width: 37%;
    }
    .indAdvPriceBox {
        margin: 0 auto 15px;
    }
    #priceDiv {
        grid-template-columns: 100% !important;
        grid-template-rows: 33% 33% 33%;
        grid-row-gap: 15px;
    }
    #team .priceBox {
        margin: 15px 10%;
    }
    /* 4. Organizations Tab */
    #organization #contact {
        width: 95%;
    }
    #contactForm div {
        grid-column-gap: 25px;
    }
    #contactForm input[type=submit] {
        width: 100%;
    }
    /* 6. Is This Needed? */
    #mainDiv {
        flex-direction: column;
    }
    #advisorSignupForm,
    .selectionBox {
        width: 90%;
        margin: auto;
        margin-top: 30px;
    }
    .selectionBox img {
        position: relative !important;
    }
    #advisorSignupForm input[type=submit] {
        width: 100%;
    }
}

@media screen and (max-width: 1100px) {
    #indThird .indexTab.flex-nowrap {
        flex-direction: column;
    }
}