/*product css*/


/*fonts*/

@font-face {
    font-family: 'roboto';
    src: url(nunito-regular.ttf);
    font-style: normal;
}

@font-face {
    font-family: 'roboto-bold';
    src: url(Roboto-Bold.ttf);
}

@font-face {
    font-family: 'roboto-light';
    src: url(Roboto-Light.ttf);
}


/*fonts*/


/*variables*/

:root {
    --color-nav-back: #16191F;
    --color-secondary: #072B43;
    --color-tertiary: #061F30;
    --color-theme-primary: #0CD4AD;
    --color-theme: #2CB093;
    --pr-color-theme: #45CB4A;
    /* --theme-font: '"Syne", sans-serif';*/
    --theme-font: 'roboto';
    --theme-font-secondary: 'roboto-bold';
    --theme-font-bold: 'Josefin Sans';
    --theme-font-regular: 'roboto-regular';
    --theme-font-light: 'roboto-light';
    --theme-font-extraBold: 'roboto';
}




.jsAlert {
    background-color: #ffffff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    padding: 1.5rem;
    font-size: 1rem;
    color: rgb(0, 0, 0);
    border-radius: 8px;
    border-left: 6px solid red;
}

/*new code */






/*FAQ*/
.faq {
    margin: 20px 0;
  }
.faq h2{
    color: white;
}  
.faq p{
    color: white;
    margin: 0.5rem;
}  

  
  
  .accordion {
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 2px;
    margin: 10px;
  }
  
 
  
  .accordion-header {
    padding: 10px 10px 0px 10px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  
  .accordion-content {
    padding: 10px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-in-out;
   
  }
  
  /* Active state */
  .accordion-item.active .accordion-content {
    max-height: 200px; /* Adjust as needed */
  }
  
/*FAQ*/


/*new code */


















/*typo*/

.grayScale {
    color: var(--color-secondary) !important;
}

.body-medium {
    color: white;
    font-family: var(--theme-font);
    font-size: 3em;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0em;
}


/*typo*/


/*images*/

.img-client {
    max-width: 18lvh;
}

.img-small {
    width: 50px;
    object-fit: contain;
}

.img-v-small {
    width: 70px;
    object-fit: contain;
}

.img-med {
    width: 170px;
    object-fit: contain;
}

.img-gray {
    filter: grayscale(100%);
    opacity: 1;
}


/*images*/


/*container*/

.contact-cta {
    background: #f5f7f8;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem 2rem;
    gap: 1rem;
    color: var(--color-secondary);
}

.container-middle {
    text-align: center !important;
    width: 90%;
    margin: auto;
    padding-top: 30px;
}

.container-dark {
    width: 70%;
    margin: auto;
    background-color: var(--color-nav-back);
}

.container-m {
    width: 70%;
    margin: 0px 50px 0px 0px;
}

.container-s {
    width: 40%;
    margin: 0px 25px;
}


/*container*/


/*layouts*/

.flex {
    display: flex;
    justify-content: space-evenly;
    padding: 90px 0px 90px 0px;
}

.flex-wrapped {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
    vertical-align: bottom;
    align-items: center;
}


/*layouts*/


/*spacing*/

.margin {
    margin: 1rem 0px;
}

.mr-50 {
    margin: 50px 0px;
}
.mr-left-right-1{
 margin-left: 50px;
 margin-right: 50px;
}
.mr-top-bottom-1{
    margin-top: 50px;
    margin-bottom: 50px;
   }

/*spacing*/

.hover {
    transition-duration: 1s;
}

.hover:hover {
    color: var(--color-theme) !important;
}

.center {
    display: block;
    margin-left: auto;
    margin-right: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.align-center {
    text-align: center;
}

.m1 {
    margin: 1rem;
}

.m2 {
    margin: 2rem;
}

.pr-h1 {
    color: white;
    font-family: var(--theme-font-secondary);
    font-size: 4em;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0em;
    text-align: left;
}

.pr-h2 {
    color: white;
    font-family: var(--theme-font-secondary);
    font-size: 2em;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0em;
    text-align: left;
}

.pr-special {
    color: var(--pr-color-theme);
}

.pr-grad {
    border-radius: 50px 30px 0 20em;
    text-align: center;
}

.pr-middle {
    background-image: url("https://estopi.com/res/back-veg.jpg");
    background-size: cover;
    padding: 50px;
    margin: 50px;
    color: white;
    background-repeat: no-repeat;
}

.pr-flex-container {
    display: flex;
    justify-content: space-evenly;
    gap: 10px;
}

.pr-flex-container2 {
    display: flex;
    flex-wrap: wrap-reverse;
    justify-content: space-evenly;
    align-items: center;
    text-align: center;
    padding: 90px 0px 90px 0px;
}

.pr-box {
    width: auto;
    padding: 5%;
    background-color: var(--pr-color-theme);
    border-radius: 20px;
    margin: 3em 0;
}

.pr-text-box {
    text-align: left;
    margin: 5%;
}

.pr-form {
    width: 100%;
    margin: auto;
    display: flex;
    flex-direction: column;
    text-align: center;
}

.pr-input {
    height: 30px;
    padding: 20px;
    width: 80%;
    margin: 10px auto;
}

.pr-input-btn {
    padding: 20px;
    width: 80%;
    margin: 10px auto;
    background-color: var(--color-nav-back);
    color: white;
}


/*product css*/


/*var*/


/*all*/

small {
    color: grey;
    font-size: 1em;
}

.box {
    margin: 0px 5px 50px 0px;
}

.btn {
    width: auto;
    padding: 20px;
    left: 92px;
    top: 435px;
    background: #072b43;
    color: white;
    font-size: 20px;
    align-items: center;
    display: flex;
    justify-content: space-between;
    border: none;
    margin-top: 20px;
}

.btn:hover {
    background: white;
    color: var(--color-theme);
    border: 1px solid var(--color-theme);
}

.hr {
    width: 10%;
    height: 4px;
    background-color: var(--color-theme);
    margin: 5px 0px 20px 0;
    border-radius: 10%;
}

.sub-title {
    color: var(--color-theme);
    font-size: 1rem;
}

.border1 {
    border-radius: 450px 0 650px 450px;
}

.border2 {
    border-radius: 650px 450px 450px 0px;
}

.border3 {
    border-radius: 650px 450px 450px 0px;
}

.border4 {
    border-radius: 650px 450px 450px 0px;
}


/*header*/

.homeHeader {
    padding: 15px 0px;
    font-family: var(--theme-font);
    width: 100%;
    /* background: linear-gradient( to right, #061F30 0%, #2CB093 50%, #061F30 50%, #072B43 100%);
    /* background-color: var(--color-tertiary);*/
    /*   background: linear-gradient( to right, #061F30 0%, #2CB093 50%, #2CB093 50%, #020f14 100%);
*/
    background: white;
    color: black !important;
    /*filter: drop-shadow(4px 4px 6px #00000013);*/
}
.header{
    background: var(--color-nav-back);
}
.header .dropdown{
background: var(--color-nav-back);
}


nav {
   
    padding: 15px 0px;
    font-family: var(--theme-font);
    width: 100%;
}

.gap-100 {
    margin-bottom: 100px;
}

.nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: auto;
    width: 90%;
    background-color: inherit;
}


.nav-menu{
    font-size: 1.8em;
    background: inherit;
}
.nav-menu li {
    margin: 0px 10px !important;
    padding: 5px 0;
    display: inline-block;
    position: relative;
    background-color: inherit;
    letter-spacing: 0.1rem;
}
.dropdown    li {
 float: none;
 display: list-item;
 text-align: left;
}
.nav-menu a:after {
    padding: 0;
    margin: 0;
    display: block;
    /* probably not really needed? */
    content: "";
    background-color: var(--color-theme);
    position: absolute;
    left: 0;
    bottom: 0px;
    transition-duration: 1s;
    -o-transition-duration: 1s;
    -moz-transition-duration: 1s;
    -webkit-transition-duration: 1s;
    width: 0%;
    height: 0px;
}

.nav-menu a:hover:after {
    width: 60%;
    height: 2px;
}



.dropdown {
    display: none;
    padding: 2rem 4rem 2rem 1rem;
    position: absolute;
    color: inherit;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 100;
    width: max-content;
   
  }
  

  
  .nav-menu li:hover .dropdown {
    display: block;
  }



.active {
    position: relative;
}

.active:after {
    padding: 0;
    margin: 0;
    display: block;
    /* probably not really needed? */
    content: "";
    width: 60%;
    height: 2px;
    /* slight higher to work around rounding errors(?) on some zoom levels in some browsers. */
    background-color: var(--color-theme);
    position: absolute;
    left: 0;
    bottom: -1px;
}

.active:hover:after {
    width: 100%;
}


/*header*/


/*banner*/

.banner-slide {
    overflow: hidden;
}

.banner1 {
    display: flex;
    justify-content: space-around;
    align-items: center;
    background-color: var(--color-nav-back);
    color: white;
    padding: 0px 0px 50px 0px;
    min-height: 600px;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: var(--theme-font-bold) !important;
}

.work .h3 {
    font-size: 18lvw;
    opacity: 0.05;
}

.h1 {
    color: inherit;
    font-style: normal;
    font-weight: 900;
    line-height: 1em;
    letter-spacing: 0em;
    text-align: left;
    font-size: 10em;
}

.banner img {
    border-radius: 20px;
}

.special {
    color: var(--color-theme);
    font-weight: 900;
}

.special-2 {
    color: white;
    background-color: #2CB093;
    padding: 0 5px;
}


/*banner*/


/*content*/

.flex-container2 {
    display: flex;
    flex-wrap: wrap-reverse;
    justify-content: space-evenly;
    align-items: center;
    padding: 90px 0px 90px 0px;
}

.flex-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: center;
    padding: 90px 0px 90px 0px;
}

.flex-container-dark {
    display: flex;
    flex-wrap: wrap-reverse;
    justify-content: space-evenly;
    align-items: center;
    padding: 90px 0px 90px 0px;
    background-color: var(--color-nav-back);
    color: white;
}

.h5 {
    font-size: 2.4em;
    font-family: var(--theme-font);
}

.h4 {
    font-size: 3.6em;
    font-family: var(--theme-font);
}

.dark-background {
    display: flex;
    justify-content: space-around;
    align-items: center;
    background-color: var(--color-nav-back);
    color: white;
    padding: 90px 0px 90px 0px;
    min-height: 300px;
    background-image: url(../res/teafweb-background.png);
    background-repeat: no-repeat;
    background-size: cover;
}

.text-box {
    width: 300px;
    text-align: left;
    position: relative;
}


/*contanrt*/


/*contact*/

.contact-container {
    background-color: var(--color-theme);
    min-height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 10px 0;
}

.contact-form {
    width: 351px;
    height: 442px;
    left: 700px;
    top: 736px;
    background: rgba(0, 0, 0, 0.3);
    padding: 20px;
}

.contact-input {
    width: 100%;
    border: none;
    margin: 10px 0;
    padding: 10px;
    background-color: rgba(0, 0, 0, 0);
    border-bottom: 2px solid white;
    color: white;
}

.contact-input::placeholder {
    color: white;
}

.form-button {
    border-radius: 30px;
    padding: 20px;
    border: none;
    background-color: var(--color-nav-back);
    color: white;
    margin: 20px 0;
}

.hr2 {
    width: 20%;
    background-color: black;
    height: 2px;
}


/*contact*/


/*about*/

.initial {
    font-size: 50px;
}


/*terms*/

.terms_heading2 {
    margin-top: 20px !important;
}


/*footer*/

.footer-social a img{
    width: 20px !important;

}
.footer-social {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 50px;
}

.sitemap {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin: 20px 0;
    font-family: var(--theme-font);
    font-style: normal;
    font-weight: 300;
    font-size: 14px;
    line-height: 21px;
    color: black;
}


/*footer*/

.img-work {
    width: 45em;
}

@keyframes bouncing-loader {
    to {
        opacity: 0.1;
        transform: translate3d(0, -1rem, 0);
    }
}

.bouncing-loader {
    display: flex;
    justify-content: center;
}

.bouncing-loader>div {
    width: 1rem;
    height: 1rem;
    margin: 3rem 0.2rem;
    background: #8385aa;
    border-radius: 50%;
    animation: bouncing-loader 0.6s infinite alternate;
}

.bouncing-loader>div:nth-child(2) {
    animation-delay: 0.2s;
}

.bouncing-loader>div:nth-child(3) {
    animation-delay: 0.4s;
}

.preload-stop {
    opacity: 0;
    pointer-events: none;
}

.preloader {
    width: 100%;
    background-color: #16191f;
    position: absolute;
    height: 100%;
    margin: auto;
    z-index: 2;
    overflow: hidden;
}


/*new */

.thumbnail {
    max-width: 50vw;
    aspect-ratio: 3/5;
}

.thumbnail img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 0px;
    justify-content: space-between;
}

.work {
    text-align: left;
    position: relative;
    overflow: hidden;
    width: 100%;
}

.work>h3 {
    position: absolute;
    top: 30px;
    left: 10px;
}

.z {
    z-index: 1 !important;
    position: relative;
    width: 50vw;
}

.blue-back {
    background: radial-gradient(90.2% 90.2% at 50% 50%, #143b91 0%, #4385f6 100%);
    color: white !important;
    padding: 2rem;
    overflow: hidden;
    position: relative;
}

.orange-back {
    background: radial-gradient(90.2% 90.2% at 50% 50%, #ff5e00 0%, #fa5b00 100%);
    color: var(--color-nav-back) !important;
    padding: 2rem;
}

.yellow-back {
    background: radial-gradient(90.2% 90.2% at 50% 50%, rgb(119, 103, 10) 0%, #e7c711 100%);
    color: white !important;
    padding: 2rem;
}

.violet-back {
    background: radial-gradient(90.2% 90.2% at 50% 50%, #ac89e4 0%, #9883BB 100%);
    color: white !important;
    padding: 2rem;
}

.gray-back {
    background: radial-gradient(90.2% 90.2% at 50% 50%, #202020 0%, #000000 100%);
    color: white !important;
    padding: 2rem;
}

.dblue-back {
    background: radial-gradient(90.2% 90.2% at 50% 50%, #072168 0%, #020131 100%);
    color: white !important;
    padding: 2rem;
}

.dark {
    color: var(--color-secondary);
}

.white {
    color: white;
}

.hide {
    display: none !important;
}

.warning {
    color: gold;
}

.gray {
    color: gray !important;
}

.alert {
    color: rgb(145, 9, 9);
}

.success {
    color: rgb(22, 163, 22);
}

.theme {
    color: var(--color-theme);
}


/*new */

@media only screen and (min-width: 769px) {
    .back-text {
        position: absolute;
        top: 5px;
        left: 0px;
        color: rgba(29, 28, 28, 0.409);
        z-index: 1000;
    }
    .btn-glass {
        padding: 1rem 2rem;
        background: rgba(255, 255, 255, 0.1);
        color: white;
        font-size: 1.1rem;
        align-items: center;
        border-radius: 8px;
        border: 1px solid rgba(255, 255, 255, 0.598);
        transition-duration: 0.3s;
    }
    .btn-glass:hover {
        background: var(--color-theme);
        color: white;
        border: 1px solid var(--color-theme);
    }
    .btn2 {
        padding: 1rem 2rem;
        background: var(--color-tertiary);
        color: white;
        font-size: 1.1rem;
        align-items: center;
        border-radius: 8px;
        border: 1px solid rgba(255, 255, 255, 0.598);
        transition-duration: 0.3s;
    }
    .btn2:hover {
        background: var(--color-theme);
        color: white;
        border: 1px solid var(--color-theme);
    }
    .btn-trans {
        padding: 1rem 2rem;
        color: var(--color-tertiary);
        background-color: white;
        font-size: 1.1rem;
        align-items: center;
        border-radius: 8px;
        border: 1px solid var(--color-theme);
        transition-duration: 0.3s;
    }
    .btn-trans:hover {
        background-color: var(--color-theme);
        color: white;
    }
    .flex2 {
        display: flex;
        gap: 2rem;
        justify-content: space-around;
        align-items: center;
    }
    .flex3 {
        display: flex;
        gap: 2rem;
        align-items: center;
        align-content: center;
    }
    .gray-container {
        background-color: #f5f5f5;
        color: rgb(44, 62, 80);
        padding: 3rem;
        border-radius: 18px;
    }
    .symbol-default {
        font-size: 2rem;
        cursor: pointer;
    }
    .symbol-default:hover {
        color: var(--pr-color-theme);
    }
    .thumbanail_13 {
        width: 400px;
    }
    .form1 {
        width: 100%;
        min-width: 20vw;
        padding: 2rem;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        box-sizing: border-box;
    }
    .form1>.input {
        padding: 1rem;
        border: 0px solid #797979;
        outline: 0px;
        border-radius: 0.5rem;
    }
    .form1>::placeholder {
        font-size: 1.1em;
        color: var(--color-nav-back);
    }
    .select {
        padding: 1rem;
        border: 0px solid #797979;
        outline: 0px;
        border-radius: 0.5rem;
        color: var(--color-nav-back);
        background-color: white !important
    }
    .select option {
        font-size: 1.1em;
        color: var(--color-nav-back) !important;
    }
}


/*mobile*/

@media only screen and (max-width: 768px) {
   
    .img-small {
        width: 50px;
    }
    .img-med {
        width: 85px;
    }
    .mob-hide {
        display: none !important;
    }
    .form1 {
        overflow: hidden;
        padding: 2rem;
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .form1>.input {
        padding: 1rem;
        border: 0px solid #797979;
        outline: 0px;
        border-radius: 0.5rem;
        box-sizing: content-box;
    }
    .form1>::placeholder {
        font-size: 1.1em;
        color: var(--color-nav-back);
    }
    .select {
        padding: 1rem;
        border: 0px solid #797979;
        outline: 0px;
        border-radius: 0.5rem;
        color: var(--color-nav-back);
        background-color: white !important
    }
    .select option {
        font-size: 1.1em;
        color: var(--color-nav-back) !important;
    }
    .gray-container {
        background-color: #f5f5f5;
        color: rgb(44, 62, 80);
        padding: 1rem;
        border-radius: 1em;
    }
    .btn2 {
        padding: 0.7rem 1.4rem;
        background: var(--color-tertiary);
        color: white;
        font-size: 0.9rem;
        align-items: center;
        border-radius: 8px;
        border: 1px solid rgb(44, 62, 80);
        transition-duration: 0.3s;
    }
    .btn2:hover {
        background: white;
        color: var(--color-theme);
        border: 1px solid var(--color-theme);
    }
    .btn-trans {
        padding: 0.7rem 1.4rem;
        color: var(--color-theme);
        background-color: white;
        font-size: 0.9rem;
        align-items: center;
        border-radius: 8px;
        border: 1px solid var(--color-theme);
        transition-duration: 0.3s;
    }
    .btn-trans:hover {
        background-color: whitesmoke;
    }
    .btn-glass {
        padding: 0.7rem 1.4rem;
        background: rgba(255, 255, 255, 0.1);
        color: white;
        font-size: 0.9rem;
        align-items: center;
        border-radius: 8px;
        border: 1px solid rgba(255, 255, 255, 0.598);
        transition-duration: 0.3s;
    }
    .btn-glass:hover {
        background: var(--color-theme);
        color: white;
        border: 1px solid var(--color-theme);
    }
    .flex2 {
        display: flex;
        justify-content: space-around;
        flex-wrap: wrap-reverse;
    }
    .flex3 {
        display: flex;
        gap: 1rem;
        flex-wrap: wrap;
    }
    .small_thumb {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    body {
        font-size: 7px;
    }
    .sidebar li {
        color: white !important;
        margin: 30px 0;
        font-size: 2em;
    }
    .sidebar a {
        color: white !important;
    }
    .menu-icon {
        font-size: 1.5rem;
        color: rgb(255, 255, 255);
    }
    .sitemap {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px;
        margin: 20px 0px 0px 0px;
        font-family: var(--theme-font);
        font-style: normal;
        font-weight: 300;
        font-size: 14px;
        line-height: 1px;
        color: black;
    }
    .container-m {
        width: 100%;
        margin: 0px 50px 0px 0px;
    }
    .banner-slide {
        overflow: hidden;
    }
    .back-text {
        position: absolute;
        top: 150px;
        right: 20px;
        display: none;
    }
    .banner {
        display: flex;
        flex-wrap: wrap-reverse;
        justify-content: center;
        text-align: center;
        align-items: center;
        background-color: var(--color-nav-back);
        color: white;
        padding: 0px 20px 20px 20px;
        min-height: 450px;
    }
    .h1 {
        color: white;
        font-family: var(--theme-font-secondary);
        font-size: 8.2em !important;
        font-style: normal;
        font-weight: 400;
        letter-spacing: 0em;
        text-align: left;
        font-size: 100px;
        text-align: center;
    }
    .h3 {
        font-size: 15em;
        opacity: 0.1;
    }
    .banner img {
        width: 90%;
    }
    .flex-container {
        padding: 30px 20px 30px 20px;
        text-align: center;
    }
    .flex-container2 {
        padding: 90px 20px 90px 20px;
    }
    .flex-container-dark {
        padding: 90px 20px 90px 20px;
        text-align: center;
    }
    .img {
        margin: 20px 0px;
        width: 90%;
    }
    .contact-form {
        width: auto;
        margin: 0px;
        height: 442px;
        background: rgba(0, 0, 0, 0.3);
        padding: 20px;
    }
    .container-s {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 15px 0px;
    }
    .box {
        margin: 50px 5px 5px 0px;
    }
    .flex {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-evenly;
        padding: 30px 0px;
        gap: 1rem;
    }
    .pr-middle {
        background-image: url("https://estopi.com/res/back-veg.jpg");
        background-size: cover;
        padding: 5%;
        margin: 0%;
        color: white;
        background-repeat: no-repeat;
    }
    .pr-flex-container {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-evenly;
        gap: 10px;
    }
}