:root{
    --mainBg: #D7E7B6;
    --whiteBg: white;
    --navHover: #d7e7b670;
    --greenAccent:#133630;
    --greenText: #133630;
    --lightText: #D7E7B6;
    --whiteText: white;
    --blackText: black;
    --smallFont: 16px;
    --normFont: 20px;
    --itemTitleFont: 24px;
    --paragraphFont: 36px;
    --midFont: 24px;
    --secTitleFont: 64px;
    --bigFont: 48px;
    --vBigFont: 124px;
    --heroBg1: #AFD169;
    --heroBg2: #D5C093;
    --heroBg3: #D7C1EF;
    --heroBg4: #F6DCDD;
    --hTextColor1: #133630;
    --hTextColor2: #E66728;
    --hTextColor3: #560CAB;
    --hTextColor4: #8B060A;
    --waves1: #133630;
    --waves2: #582207;
    --waves3: #210440;
    --waves4: #3A0608;
    --heroBtn1: #2A7368; 
    --heroBtn2: #E66728;
    --heroBtn3: #5104A4;
    --heroBtn4: #8B060A;
    --prodBtnBorder: 10px solid #133630;
    --shopCardBorder: 5px solid #133630;
    --inputBorder: 2px #D7E7B6 solid;
    --focusBorder: 2px #133630 solid;
    --placeholder: rgba(19, 54, 48, 0.50);
}

*{
    margin: 0;
    padding: 0;
    text-decoration: none;
}

@font-face {
    font-family: 'neue';
    src: url(Fonts/HelveticaNeueLight.otf);
}

@font-face {
    font-family: 'neueb';
    src: url(Fonts/HelveticaNeueBold.otf);
}

body{
    font-family: 'neue';
    position: relative;
    background: var(--mainBg);
    overflow-x: hidden;
}

html{
    scroll-behavior: smooth;
}

header{
    display: flex;
    align-items: center;
    padding: 50px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    z-index: 99;
}

nav{
    display: flex;
    width: fit-content;
    margin: 0 auto;
    padding: 10px;
    gap: 20px;
    background-color: var(--greenAccent);
    border-radius: 100px;
    position: relative;
    z-index: 2;
}

nav a{
    text-decoration: none;
    color: var(--lightText);
    padding: 20px 50px;
    font-size: var(--normFont);
    font-family: 'neueb';
    transition: all 200ms ease;
}

nav a:hover{
    background-color: var(--navHover);
    border-radius: 100px;
}

model-viewer::part(default-progress-bar) {
    display: none;
}

.viewerButtons a{
    text-decoration: none;
    color: var(--lightText);
    padding: 20px 50px;
    font-size: var(--normFont);
    font-family: 'neueb';
    transition: all 200ms ease;
}

.navSelected{
    color: var(--greenText);
    background-color: var(--mainBg);
    border-radius: 100px;
}

#brgrMenu{
    display: none;
}

#hero{
    width: 100%;
    height: 100vh;
    background-color: var(--heroBg1);
    box-sizing: border-box;
    position: relative;
    transition: all 200ms ease;
    z-index: 9;
}

.heroText{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 230px 130px 0 130px;
    box-sizing: border-box;
}

#heroTag{
    width: 40vw;
    height: 556px;
    font-size: 6.7vw;
    color: var(--heroBtn1);
    font-family: 'neueb';
    text-transform: uppercase;
    transition: all 200ms ease;
    position: relative;
}

.heroDeets{
    display: flex;
    flex-direction: column;
    gap: 30px;
    position: relative;
    z-index: 2;
}

.deetTitle{
    text-transform: uppercase;
    color: var(--whiteText);
    font-size: var(--normFont);
    font-family: 'neueb';
}

.deetText{
    font-size: var(--normFont);
    font-family: 'neue';
    color: var(--whiteText);
    font-weight: 200;
    margin-top: 10px;
}

#bottle3dElement{
    position: absolute;
    width: 230px;
    height: 654px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-sizing: border-box;
}

.viewerButtons{
    width: 100%;
    display: flex;
    justify-content: center;
    margin: auto 0;
    box-sizing: border-box;
    gap: 25px;
    position: relative;
    z-index: 2;
}

#arrowLeft{
    padding: 23px 30px;
    background-color: var(--greenAccent);
    border-radius: 100px;
    border: none;
    cursor: pointer;
}

#arrowRight{
    padding: 23px 30px;
    background-color: var(--heroBtn1);
    border-radius: 100px;
    border: none;
    cursor: pointer;
    transition: all 200ms ease;
}

#heroCta{
    padding: 23px 30px;
    background-color: var(--heroBtn1);
    border-radius: 100px;
    border: none;
    color: var(--whiteText);
    font-family: 'neueb';
    font-size: var(--normFont);
    cursor: pointer;
    display: flex;
    align-items: center;
    transition: all 200ms ease;
}

#wavesTop{
    width: 100vw;
    height: 100vh;
    position: absolute;
    background-color: #133630;
    right: 0vw;
    z-index: 0;
    mask: url(Images/wavesTop.svg) no-repeat right;
    box-sizing: border-box;
    transition: all 200ms;
}

#wavesBottom{
    width: 100vw;
    height: 118vh;
    position: absolute;
    background-color: #133630;
    left: 0vw;
    z-index: 0;
    mask: url(Images/wavesBottom.svg) round no-repeat left;
    box-sizing: border-box;
}

#about{
     padding: 0 120px;
     display: flex;
     justify-content: space-between;
}

.aboutText{
    position: relative;
    width: 50%;
    padding: 60px 0;
}

.aboutYogurts{
    width: 50%;
    height: 646px;
}

#yogurts3d{
    width: 100%;
    height: 646px;
}

.aboutTitle{
    font-size: 96px;
    font-family: 'neueb';
    color: var(--whiteText);
    text-transform: uppercase;
}

.aboutP{
    font-size: 2.15vw;
    font-weight: 700;
    color: var(--whiteText);
    margin-top: 60px;
    width: 70%;
}

#products{
    margin-top: 340px;
    padding: 60px 120px;
}


.secTitle{
    font-size: var(--secTitleFont);
    color: var(--greenText);
    font-family: 'neueb';
    text-transform: uppercase;
    text-align: center;
}


.prodBlock{
    display: flex;
    gap: 60px;
    margin-top: 40px;
    align-items: center;
    justify-content: space-between;
}

.prodBlock2{
    display: flex;
    flex-direction: row-reverse;
    gap: 60px;
    margin-top: 40px;
    align-items: center;
    justify-content: space-between;
}

.blockText{
    display: flex;
    flex-direction: column;
    width: fit-content;
}


.blockTitle{
    font-size: var(--secTitleFont);
    color: var(--greenText);
    font-family: 'neueb';
    text-transform: uppercase;
    width: fit-content;
}

.blockP{
    color: var(--blackText);
    font-size: var(--paragraphFont);
    margin-top: 20px;
    width: 80%;
    font-family: 'neueb';
}

.drinksBlock3d, .yogurtsBlock3d, .cansBlock3d, .applesBlock3d{
    width: 60%;
}


#bottleReveal, #yogurtReveal, #canReveal, #appleReveal{
    height: 579px;
    width: 100%;
}


#prodBtn{
    font-size: var(--normFont);
    color: var(--whiteText);
    text-transform: uppercase;
    font-family: 'neueb';
    padding: 23px;
    background: var(--greenAccent);
    position: relative;
    width: fit-content;
    border-radius: 70px;
    text-decoration: none;
    margin-top: 40px;
}

#prodBtn:hover{
    background: transparent;
    outline: var(--prodBtnBorder);
    color: var(--greenText);
    transition: all 200ms linear;
}


#shop{
    position: relative;
    padding: 160px 120px;
    background: var(--whiteBg);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.shopTop{
    position: absolute;
    left: 0;
    top: -8vw;
    width: 100%;
}



.shopItems{
    display: flex;
    margin-top: 40px;
    gap: 40px;
    flex-wrap: wrap;
    justify-content: center;
}

.shop3d1{
    background-color: var(--heroBg1);
    border: var(--shopCardBorder);
    border-radius: 50px; 
}

.shop3d2{
    background-color: var(--heroBg3);
    border: var(--shopCardBorder);
    border-radius: 50px; 
}

.shop3d3{
    background-color: var(--heroBg4);
    border: var(--shopCardBorder);
    border-radius: 50px; 
}

.shop3d4{
    background-color: var(--heroBg2);
    border: var(--shopCardBorder);
    border-radius: 50px; 
}

#jadeStill, #skyberryStill, #rubyStill, #amberStill{
    height: 380px; 
}

.shopText{
    margin-top: 20px;
    font-family: 'neueb';
    color: var(--greenText);
    text-transform: uppercase;
}

.itemTitle{
    font-size: var(--itemTitleFont);
}

.itemPrice{
    font-size: var(--paragraphFont);
    margin-top: 20px;
    font-weight: 800;
}

#addToCardBtn{
    width: 100%;
    position: relative;
    margin-top: 20px;
}

#overBtn1, #overBtn2, #overBtn3, #overBtn4{
    font-family: 'neueb';
    color: var(--whiteText);
    text-transform: uppercase;
    font-size: var(--normFont);
    padding: 17px 25px;
    background-color: var(--greenAccent);
    text-align: center;
    border-radius: 70px;
    cursor: pointer;
    width: 100%;
    position: absolute;
    box-sizing: border-box;
    transition: all 200ms ease;
}

.cartCounter{
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
}

#decrease{
    padding: 15px 25px;
    font-family: 'neueb';
    color: var(--whiteText);
    font-size: var(--normFont);
    background-color: var(--greenAccent);
    text-align: center;
    border-radius: 70px;
    cursor: pointer;
    border-style: none;
}

#increase{
    padding: 15px 25px;
    font-family: 'neueb';
    color: var(--whiteText);
    font-size: var(--normFont);
    background-color: var(--greenAccent);
    text-align: center;
    border-radius: 70px;
    cursor: pointer;
    border-style: none;
}

#num1, #num2, #num3, #num4{
    font-family: 'neueb';
    color: var(--greenText);
    font-size: var(--paragraphFont);
}

#decrease:active, #increase:active{
    border-style: none;
}

footer{
    background-color: var(--greenAccent);
    padding: 220px 120px;
    position: relative;
    display: flex;
    justify-content: space-between;
}

.footerTop{
    position: absolute;
    left: 0;
    top: -110px;
    width: 100%;
}

.fCol{
    display: flex;
    flex-direction: column;
}

.fColTitle{
    font-family: 'neueb';
    font-size: var(--paragraphFont);
    color: var(--whiteText);
    text-transform: uppercase;
}

.fColContent{
    display: flex;
    flex-direction: column;
    margin-top: 20px;
    gap: 10px;
}

.fColContent a{
    text-decoration: none;
    color: var(--whiteText);
    font-size: var(--itemTitleFont);
    text-transform: uppercase;
}

.socials{
    margin-top: 20px;
    display: flex;
    gap: 30px;
}

.socials img{
    cursor: pointer;
}

#prodHero{
    position: relative;
    padding: 60px 120px;
    display: flex;
    align-items: center;
    height: 100vh;
    box-sizing: border-box;
}

.prodHeroBg{
    position: absolute;
    box-sizing: border-box;
    bottom: 0;
    left: 0;
    width: 100vw;
}

.prodHeroText{
    position: relative;
    z-index: 3;
    padding: 0 40px 130px 40px;
    width: 50%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.prodHeroTag{
    color: var(--whiteText);
    font-size: 6.5vw;
    font-family: 'neueb';
    text-transform: uppercase;
    
}

.prodHero3d{
    width: 50%;
}

#prodBottle{
    width: 100%;
    height: 720px;
}

#prodCta{
    padding: 23px 60px;
    background-color: var(--heroBtn1);
    border-radius: 100px;
    border: none;
    color: var(--whiteText);
    font-family: 'neueb';
    font-size: var(--normFont);
    cursor: pointer;
    display: flex;
    align-items: center;
    transition: all 200ms ease;
    width: fit-content;
    margin-top: 10px;
}

#prodCta:hover{
    background: transparent;
    outline: 10px var(--heroBtn1) solid;
    color: var(--heroBtn1);
}

#shopSects{
    padding: 160px 120px;
}

.prodShop3d{
    background-color: var(--whiteBg);
    border: var(--shopCardBorder);
    border-radius: 50px;
}

#contactReach{
    padding: 190px 120px 60px 120px;
}

.contInfo{
    margin-top: 40px;
    display: flex;
    justify-content: center;
    gap: 30px;
}

.contCard{
    background: var(--whiteBg);
    border-radius: 20px;
    padding: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    border: var(--focusBorder);
}

.contCardTitle{
    font-size: var(--midFont);
    font-family: 'neueb';
    text-transform: uppercase;
    color: var(--greenAccent);
    margin-top: 18px;
}

.contCardContent{
    font-size: var(--normFont);
    text-align: center;
    margin-top: 18px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    color: var(--greenText);
}

.contMain{
    display: flex;
    gap: 30px;
    margin-top: 30px;
}

.contForm{
    background: var(--whiteBg);
    border-radius: 20px;
    padding: 40px;
    display: flex;
    flex-direction: column;
    width: 100%;
    border: var(--focusBorder);
}

.formTitle{
    font-size: var(--paragraphFont);
    font-family: 'neueb';
    color: var(--greenText);
    text-transform: uppercase;
}

.input{
    display: flex;
    flex-direction: column;
    gap: 10px;
}

form{
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    gap: 25px;
}

label{
    font-family: 'neue';
    font-weight: 700;
    font-size: var(font);
    font-size: var(--normFont);
    color: var(--placeholder);
}

input, textarea{
    font-family: 'neue';
    font-size: var(--smallFont);
    padding: 15px;
    border-radius: 12px;
    border: var(--inputBorder);
    font-weight: 800;
    color: var(--placeholder);
}

textarea{
    height: 180px;
}

.sendBtn{
    background: var(--greenAccent);
    color: var(--mainBg);
    outline-style: none;
    font-family: 'neueb';
    padding: 20px;
    margin-top: 30px;
    border-radius: 12px;
    font-size: var(--normFont);
    text-transform: uppercase;
    border: none;
    cursor: pointer;
    transition: all 200ms ease;
}

.sendBtn:hover{
    background: transparent;
    outline: 10px var(--greenAccent) solid;
    color: var(--greenText);
}

#faqs{
    padding: 60px 120px 180px 60px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

#faqs .secTitle{
    margin-bottom: 40px;
}

.faq{
    position: relative;
    cursor: pointer;
}

.question{
    padding: 26px;
    font-size: var(--paragraphFont);
    text-transform: uppercase;
    font-family: 'neueb';
    color: var(--greenText);
    background-color:var(--whiteBg);
    border-radius: 40px;
    border: var(--shopCardBorder);
    position: relative;
    z-index: 3;
}

.answer{
    padding: 120px 26px 26px 26px;
    background-color: var(--greenAccent);
    color: var(--whiteText);
    border-radius: 40px;
    position: absolute;
    width: 100%;
    box-sizing: border-box;
    top: -121px;
    opacity: 0;
    transition: all 200ms ease;
    pointer-events: none;
}

.faq:hover .answer{
    top: 0;
    opacity: 1;
    position: relative;
    top: -80px;
    margin-bottom: -90px;
}

.answerTitle{
    font-family: 'neueb';
    font-size: var(--paragraphFont);
    margin-bottom: 10px;
}

.answerP{
    font-size: var(--midFont);
}

#aboutHero{
    position: relative;
    padding: 60px 120px;
    height: 100vh;
    box-sizing: border-box;
}

.contactWaves{
    width: 100vw;
    height: 115vh;
    top: 0;
    position: absolute;
    background-color: #0F2925;
    right: 0vw;
    z-index: 0;
    mask: url(Images/contactWaves.svg) no-repeat top;
    box-sizing: border-box;
    transition: all 200ms;
}

.heroTitle{
    position: relative;
    color: var(--whiteText);
    z-index: 3;
    text-align: center;
    text-transform: uppercase;
    margin-top: 120px;
    font-size: var(--secTitleFont);
    font-family: 'neueb';
}

.aboutHeroText{
    position: relative;
    z-index: 3;
    width: 50%;
    padding: 80px 0;
}

.aboutHeroTitle{
    font-size: var(--secTitleFont);
    font-family: 'neueb';
    text-transform: uppercase;
    color: var(--whiteText);
    margin-bottom: 10px;
}

.aboutHeroP{
    font-size: var(--paragraphFont);
    color: var(--whiteText);
    font-weight: 700;
    line-height: 140%;
    
}

.star1, .star2, .star3{
    position: absolute;
}

.star1{
    right: 92px;
    top: 314px;
    width: 500px;
}

.star2{
    bottom: -110px;
    left: 730px;
    width: 300px;
}

.star3{
    bottom: -140px;
    right: 520px;
    width: 235px;
}

#process{
    padding: 180px 120px;
}

.processLineMobile{
    display: none;
}

.steps{
    position: relative;
    margin-top: 40px;
}

.processStage1{
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
}

.processStage2{
    position: absolute;
    top: 490px;
    left: 530px;
    display: flex;
    align-items: center;
}

.processStage3{
    position: absolute;
    top: 975px;
    left: 82px;
    display: flex;
    align-items: center;
}

.processStage4{
    position: absolute;
    top: 1500px;
    left: 380px;
    display: flex;
    align-items: center;
}

.stageText{
    margin-left: 30px;
}

.stageTitle{
    font-size: var(--bigFont);
    font-family: 'neueb';
    text-transform: uppercase;
    color: var(--greenText);
}

.stageP{
    width: 790px;
    font-size: var(--itemTitleFont);
    font-family: 'neueb';
    margin-top: 20px;
}

#branches{
    display: flex;
    padding: 60px 120px 180px 120px;
}

.earthModel{
    width: 50%;
}

#earth3d{
    width: 100%;
    height: 80vh;
}

#earth3d button{
    border-radius: 90px;
    font-family: 'neueb';
    font-size: var(--smallFont);
    border-style: none;
    width: 30px;
    height: 30px;
    background-image: url(Images/branch.svg);
    background-color: var(--whiteBg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 70%;
    cursor: pointer;
    transition: all 200ms ease;
}

#earth3d button:hover {
    background-image: none;
    width: auto;
    height: auto;
    padding: 20px 30px;
}

#earth3d button:hover .HotspotAnnotation{
    opacity: 1;
    width: auto;
}

.HotspotAnnotation{
    opacity: 0;
    width: 0;
}

.branchesText{
    width: 50%;
    text-align: start;
}

.branchesText .secTitle{
    text-align: start;
}

.secP{
    font-size: var(--paragraphFont);
    font-family: 'neueb';
    margin-top: 25px;
}

#mission{
    padding: 180px 120px 0 120px;
    margin-bottom: -60px;
    text-align: center;
    background: var(--greenAccent);
    position: relative;
    z-index: 3;
    
}

.visionTitle{
   color: var(--whiteText);
   text-transform: uppercase;
   font-size: var(--bigFont);
   font-family: 'neueb';
}

.visionP{
    color: var(--whiteText);
   font-size: var(--itemTitleFont);
   font-family: 'neueb';
   width: 60%;
   margin: 40px auto;
}

.visionCta{
    margin-top: 100px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.ctaTitle{
    font-size: var(--bigFont);
    color: var(--whiteText);
    font-family: 'neueb';
    text-transform: uppercase;
}

.ctaP{
    font-size: var(--normFont);
    color: var(--heroBg1);
    margin-top: 25px;
}

.visionCtaBtn{
    padding: 20px 30px;
    background-color: var(--whiteBg);
    position: relative;
    width: fit-content;
    margin-top: 50px;
    border-radius: 90px;
    text-decoration: none;
    font-size: var(--midFont);
    font-family: 'neueb';
    color: var(--greenText);
    text-transform: uppercase;
    transition: all 200ms ease;
}

.visionCtaBtn:hover{
    background: transparent;
    outline: 10px white solid;
    color: var(--whiteText);
}

/* ////////////////////////////////Media queries //////////////////////////////////////// */


@media screen and (max-width: 600px) {


    #hero{
        padding: 100px 20px 20px 20px;
    }

    #wavesTop{
        mask: url(Images/wavesTop.svg) no-repeat bottom;
        height: 100vh;
    }

    #wavesBottom{
        mask: url(Images/wavesBottom.svg) no-repeat top;
        height: 100vh;
    }

    .LogoGreen{
        width: 40px;
    }

    header{
        justify-content: space-between;
        padding: 20px;
    }

    nav{
        display: none;
    }

    #brgrMenu{
        display: block;
    }

    .heroText{
        flex-direction: column;
        padding: 20px 0;
        align-content: center;
        gap: 380px;
    }

    #bottle3dElement{
        height: 360px;
        margin-top: -80px;
    }

    #heroTag{
        height: auto;
        width: 100%;
        text-align: center;
    }

    .heroDeets{
        text-align: center;
        gap: 10px;
    }

    .viewerButtons{
        position: absolute;
        bottom: 30px;
        left: 0;
    }

    .deetText{
        font-size: 14px;
    }

    .deetTitle{
        font-size: 16px;
    }

    #heroCta{
        font-size: 16px;
    }

    #about{
        padding: 0 20px;
        flex-direction: column;
        text-align: center;
    }

    .aboutText{
        width: 100%;
        padding: 20px 0 0 0;
    }

    .aboutTitle{
        font-size: 36px;
        
    }

    .aboutP{
        width: 100%;
        font-size: 14px;
        line-height: 140%;
        font-weight: 300;
    }

    .aboutYogurts{
        width: 100%;
    }

    #yogurts3d{
        height: 366px;
    }

    #products{
        margin-top: 0;
        padding: 0 20px;
    }

    .secTitle{
        font-size: 36px;
    }

    .prodBlock, .prodBlock2{
        width: 100%;
        align-items: center;
        flex-direction: column;
        gap: 25px;
    }

    .blockText{
        align-items: center;
    }

    .blockTitle{
        width: 100%;
        font-size: 40px;
        text-align: center;
        
    }

    .blockP{
        text-align: center;
        font-size: 16px;
        line-height: 140%;
        font-weight: 300;
        width: 100%;
    }

    #prodBtn{
        margin-top: 15px;
        font-size: 12px;
        padding: 13px 25px;
    }

    .drinksBlock3d, .yogurtsBlock3d, .cansBlock3d, .applesBlock3d{
        width: 100%;
    }

    #bottleReveal{
        height: 300px;
    }

    #yogurtReveal{
        height: 280px;
    }

    #canReveal{
        height: 300px;
    }

    #appleReveal{
        height: 280px;
    }

    .shopTop{
        top: -20px;
    }

    #shop{
        padding: 120px 20px 120px 20px;
    }

    #shopSects{
        padding: 20px 20px 80px 20px;
    }

    .shopItems{
        width: 100%;
    }

    .shopCard{
        width: 100%;
    }

    #jadeStill, #skyberryStill, #crimsonStill, #amberStill, #rubyStill{
        width: 100%;
    }

    .shopItems{
        flex-direction: column;
    }

    .itemTitle{
        font-size: 16px;
    }

    .itemPrice{
        font-size: 24px;
        margin-top: 10px;
    }

    .shop3d1{
        width: 100%;
    }

    #addToCartBtn{
        margin-top: 15px;
    }

    .footerTop{
        top: -5vw;
    }

    footer{
        flex-direction: column;
        align-items: center;
        gap: 40px;
        padding: 60px 20px;
    }

    .logoWhite{
        width: 40px;
    }

    .fColTitle{
        font-size: 20px;
        text-align: center;
    }

    .fColContent a{
        font-size: 16px;
        text-align: center;
    }

    /* products breakpoints */

    #prodHero{
        flex-direction: column;
        padding: 100px 20px 20px 20px;
        justify-content: center;
    }

    .prodHeroText{
        padding: 0;
        text-align: center;
    }

    #prodBottle{
        height: 430px;
    }

    .LogoWhite{
        width: 40px;
    }

    /* contact breakpoints */

    #contactReach{
        padding: 100px 20px 20px 20px;
    }

    .contInfo{
        flex-wrap: wrap;
    }

    .contCard{
        width: 100%;
    }

    #faqs{
        padding: 20px 20px 180px 20px;
    }

    #faqs .secTitle{
        margin-bottom: 20px;
    }

    .question{
        font-size: 24px;
    }

    .answerTitle{
        font-size: 24px;
    }

    .answerP{
        font-size: 18px;
    }

    /* about breakpoints */

    .heroTitle{
        font-size: 36px;
        width: 100%;
    }

    #aboutHero{
        padding: 20px;
    }

    .aboutHeroText{
        padding-top: 40px;
        width: 70%;
    }

    .aboutHeroTitle{
        font-size: 24px;
        
    }

    .aboutHeroP{
        font-size: 24px;
        width: 100%;
    }

    .star1{
        top: 619px;
        right: 10px;
        width: 216px;
    }

    .star2{
        top: 719px;
        left: 10px;
        width: 115px;
    }

    .star3{
        top: 819px;
        left: 114px;
        width: 91px;
    }

    .processLine{
        display: none;
    }

    .processLineMobile{
        display: block;
        position: absolute;
        top: 0;
        transform: translateX(50%);
        left: 50%;
        height: 1407px;
    }

    #process{
        padding: 60px 20px;
        display: flex;
        flex-direction: column;
    }

    .steps{
        display: flex;
        flex-direction: column;
        gap: 60px;
        padding: 40px 0;
    }

    .processStage1, .processStage2, .processStage3, .processStage4{
        position: relative;
        top: 0;
        left: 0;
        flex-direction: column;
        align-items: center;
        text-align: center;
        
    }

    .stageText{
        margin: 0;
        width: 100%;
    }

    .stageTitle{
        font-size: 36px;
    }

    .stageP{
        font-size: 16px;
        color: var(--heroBtn1);
        width: 100%;
        background-color: var(--mainBg);
    }

    #branches{
        padding: 60px 20px;
        flex-direction: column-reverse;
        gap: 25px;
    }

    .branchesText{
        width: 100%;
        text-align: center;
    }

    .branchesText .secTitle{
        text-align: center!important;
    }

    .secP{
        font-size: 24px;
    }

    .earthModel{
        width: 100%;
    }

    #earth3d{
        height: 390px;
    }

    #mission{
        padding: 80px 20px;
    }

    .visionTitle{
        font-size: 36px;
        
    }

    .visionP{
        font-size: 20px;
        width: 100%;
        font-weight: 300;
        line-height: 140%;
        
    }

    .visionCtaBtn{
        font-size: 20px;
        
    }
}




@media screen and (min-width: 601px) and (max-width: 840px) {
    #hero{
        padding: 100px 20px 20px 20px;
    }

    #wavesTop{
        mask: url(Images/wavesTop.svg) no-repeat right;
        height: 100vh;
    }

    #wavesBottom{
        mask: url(Images/wavesBottom.svg) no-repeat top;
        height: 100vh;
    }

    .LogoGreen{
        width: 40px;
    }

    header{
        justify-content: space-between;
        padding: 20px;
    }

    nav{
        display: none;
    }

    #brgrMenu{
        display: block;
    }

    .heroText{
        flex-direction: column;
        padding: 20px 0;
        align-content: center;
        gap: 15px;
    }

    #bottle3dElement{
        height: 436px;
        margin-top: 130px;
    }

    #heroTag{
        height: auto;
        width: 100%;
        text-align: center;
        font-size: 53px;
    }

    .heroDeets{
        text-align: center;
        gap: 10px;
    }

    .viewerButtons{
        position: absolute;
        bottom: 30px;
        left: 0;
    }

    .deetText{
        font-size: 14px;
    }

    .deetTitle{
        font-size: 16px;
    }

    #heroCta{
        font-size: 16px;
    }

     #wavesTop{
        mask: url(Images/wavesTop.svg) no-repeat bottom;
        height: 100vh;
    }

    #wavesBottom{
        mask: url(Images/wavesBottom.svg) no-repeat top;
        height: 100vh;
    }

    #about{
        padding-top: 0;
    }

    .footerTop{
        top: -5vw;
    }

    footer{
        flex-direction: column;
        align-items: center;
        gap: 40px;
        padding: 120px 20px 60px 20px;
    }

    .logoWhite{
        width: 40px;
    }

    .fColTitle{
        font-size: 20px;
        text-align: center;
    }

    .fColContent a{
        font-size: 16px;
        text-align: center;
    }

    #products{
        margin-top: 0;
        padding: 0 20px;
    }

    .secTitle{
        font-size: 36px;
    }

    .prodBlock, .prodBlock2{
        width: 100%;
        align-items: center;
        flex-direction: column;
        gap: 25px;
    }

    .blockText{
        align-items: center;
    }

    .blockTitle{
        width: 100%;
        font-size: 40px;
        text-align: center;
        
    }

    .blockP{
        text-align: center;
        font-size: 16px;
        line-height: 140%;
        font-weight: 300;
        width: 100%;
    }

    #prodBtn{
        margin-top: 15px;
        font-size: 12px;
        padding: 13px 25px;
    }

    .drinksBlock3d, .yogurtsBlock3d, .cansBlock3d, .applesBlock3d{
        width: 100%;
    }

    #bottleReveal{
        height: 300px;
    }

    #yogurtReveal{
        height: 280px;
    }

    #canReveal{
        height: 300px;
    }

    #appleReveal{
        height: 280px;
    }

    /* products breakpoints */

    #prodHero{
        flex-direction: column;
        padding: 100px 20px 20px 20px;
        justify-content: center;
    }

    .prodHeroText{
        padding: 0;
        text-align: center;
    }

    #prodBottle{
        height: 430px;
    }

    .LogoWhite{
        width: 40px;
    }

    #shopSects{
        padding: 20px 20px 80px 20px;
    }

    /* about breakpoints */

    .heroTitle{
        font-size: 36px;
        width: 100%;
    }

    #aboutHero{
        padding: 20px;
    }

    .aboutHeroText{
        padding-top: 40px;
        width: 70%;
    }

    .aboutHeroTitle{
        font-size: 24px;
        
    }

    .aboutHeroP{
        font-size: 24px;
        width: 100%;
    }

    .star1{
        top: 619px;
        right: 10px;
        width: 216px;
    }

    .star2{
        top: 719px;
        left: 10px;
        width: 115px;
    }

    .star3{
        top: 819px;
        left: 114px;
        width: 91px;
    }

    .processLine{
        display: none;
    }

    #process{
        padding: 60px 20px;
        display: flex;
        flex-direction: column;
    }

    .steps{
        display: flex;
        flex-direction: column;
        gap: 60px;
        padding: 40px 0;
    }

    .processStage1, .processStage2, .processStage3, .processStage4{
        position: relative;
        top: 0;
        left: 0;
        flex-direction: column;
        align-items: center;
        text-align: center;
        
    }

    .stageText{
        margin: 0;
        width: 100%;
    }

    .stageTitle{
        font-size: 36px;
    }

    .stageP{
        font-size: 16px;
        color: var(--heroBtn1);
        width: 100%;
        background-color: var(--mainBg);
    }

    #branches{
        padding: 60px 20px;
        flex-direction: column-reverse;
        gap: 25px;
    }

    .branchesText{
        width: 100%;
        text-align: center;
    }

    .branchesText .secTitle{
        text-align: center!important;
    }

    .secP{
        font-size: 24px;
    }

    .earthModel{
        width: 100%;
    }

    #earth3d{
        height: 390px;
    }

    #mission{
        padding: 80px 20px;
    }

    .visionTitle{
        font-size: 36px;
        
    }

    .visionP{
        font-size: 20px;
        width: 100%;
        font-weight: 300;
        line-height: 140%;
        
    }

    .visionCtaBtn{
        font-size: 20px;
        
    }
}

@media screen and (min-width: 841px) and (max-width: 1330px) {
    #hero{
        padding: 100px 20px 20px 20px;
    }

    #wavesTop{
        mask: url(Images/wavesTop.svg) no-repeat right;
        height: 100vh;
    }

    #wavesBottom{
        mask: url(Images/wavesBottom.svg) no-repeat top;
        height: 100vh;
    }

    .LogoGreen{
        width: 40px;
    }

    header{
        justify-content: space-between;
        padding: 20px;
    }

    nav{
        display: none;
    }

    #brgrMenu{
        display: block;
    }

    .heroText{
        flex-direction: column;
        padding: 20px 0;
        align-content: center;
        gap: 15px;
    }

    #bottle3dElement{
        height: 436px;
        margin-top: 130px;
    }

    #heroTag{
        height: auto;
        width: 100%;
        text-align: center;
        font-size: 53px;
    }

    .heroDeets{
        text-align: center;
        gap: 10px;
    }

    .viewerButtons{
        position: absolute;
        bottom: 30px;
        left: 0;
    }

    .deetText{
        font-size: 14px;
    }

    .deetTitle{
        font-size: 16px;
    }

    #heroCta{
        font-size: 16px;
    }

     #wavesTop{
        mask: url(Images/wavesTop.svg) no-repeat bottom;
        height: 100vh;
    }

    #wavesBottom{
        mask: url(Images/wavesBottom.svg) no-repeat top;
        height: 100vh;
    }

    #about{
        padding-top: 0;
    }

    .footerTop{
        top: -5vw;
    }

    footer{
        flex-direction: column;
        align-items: center;
        gap: 40px;
        padding: 120px 20px 60px 20px;
    }

    .logoWhite{
        width: 40px;
    }

    .fColTitle{
        font-size: 20px;
        text-align: center;
    }

    .fColContent a{
        font-size: 16px;
        text-align: center;
    }

    #shopSects{
        padding: 20px 20px 120px 20px;
    }

    .heroTitle{
        font-size: 36px;
        width: 100%;
    }

    #aboutHero{
        padding: 20px;
    }

    .aboutHeroText{
        padding-top: 40px;
        width: 70%;
    }

    .aboutHeroTitle{
        font-size: 24px;
        
    }

    .aboutHeroP{
        font-size: 24px;
        width: 100%;
    }

    .star1{
        top: 619px;
        right: 10px;
        width: 408px;
    }

    .star2{
        top: 719px;
        left: 280px;
        width: 115px;
    }

    .star3{
        top: 919px;
        left: 370px;
        width: 91px;
    }

    .processLine{
        display: none;
    }

    #process{
        padding: 180px 20px;
        display: flex;
        flex-direction: column;
    }

    .steps{
        display: flex;
        flex-direction: column;
        gap: 60px;
        padding: 40px 0;
    }

    .processStage1, .processStage2, .processStage3, .processStage4{
        position: relative;
        top: 0;
        left: 0;
        flex-direction: column;
        align-items: center;
        text-align: center;
        
    }

    .stageText{
        margin: 0;
        width: 100%;
    }

    .stageTitle{
        font-size: 36px;
    }

    .stageP{
        font-size: 16px;
        color: var(--heroBtn1);
        width: 100%;
        background-color: var(--mainBg);
    }
}