@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1188px;
    }
}
@media (min-width: 1200px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1188px;
    }
}

.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    --bs-gutter-x: 1.75rem;
}

.row {
    --bs-gutter-x: 1.75rem;
}

body {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #333333;
    opacity: 0;
    transition: opacity .6s ease;
}

body.fade-in {
    opacity: 1;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
}

.desk_video {
    display: block;
}

.mob_video {
    display: none;
}

strong {
    font-weight: 700;
}

header#desktop-header {
    position: absolute;
    top: 68px;
    left: 0;
    width: 100%;
    z-index: 100;
    transition: all 0.3s ease;
}

header#desktop-header.scrolled {
    background-color: #333333;
    position: fixed;
    top: 0;
    padding: 36px 0;
}

header#desktop-header.black.scrolled {
    background-color: #F7F7F7;
}

.nav-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

header#desktop-header nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

header#desktop-header nav ul li {
    display: inline-block;
    margin-right: 30px;
}

header#desktop-header nav ul li a {
    color: #ffffff;
    font-size: 1em;
    line-height: 1.25em;
    text-decoration: none;
    position: relative;
    padding-bottom: 8px;
}

header#desktop-header.black nav ul li a {
    color: #333333;
}

header#desktop-header nav ul li a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    background-color: #ffffff;
    transition: width 0.3s ease;
}

header#desktop-header.black nav ul li a::after {
    background-color: #333333;
}

header#desktop-header nav ul li a:hover::after {
    width: 100%;
}

header#desktop-header .current-menu-item a::after {
    width: 100%;
}

.linkedin-link a svg path {
    fill: #ffffff;
    transition: fill 0.3s ease;
}
.black .linkedin-link a svg path {
    fill: #333333;
}
.linkedin-link a:hover svg path {
    fill: #3399FF;
}


.top_baner {
    position: relative;
    height: 100vh;
}

.top_desc_home video {
    width: 100%;
    object-fit: cover;
    height: 100vh;
}

#hero-video::-webkit-media-controls {
    display: none !important;
}

.lines {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
}

.lines .container {
    height: 100%;
    position: relative;
}

.line {
    display: block;
    width: 27px;
    height: 4px;
    background-color: #ffffff;
    position: absolute;
}

#top1 {
    top: 35%;
}

#top2 {
    bottom: 13.3%;
}

#top3 {
    bottom: 30%;
    right: 0;
}

#top4 {
    bottom: 13.3%;
    left: -19%;
}

#scroll-down {
    position: absolute;
    bottom: 75px;
    right: 0;
    transition: all 0.3s ease;
}

#scroll-down:hover {
    transform: translateY(-8px);
}


#perfect-vision {
    padding-top: 69px;
    padding-bottom: 82px;
    background-color: #EFEFEF;
}

#perfect-vision .container {
    position: relative;
}

#perfect-vision h2 {
    font-size: 67px;
    line-height: 70px;
    letter-spacing: 0.02em;
    margin-bottom: 23px;
}

#perfect-vision p {
    font-size: 22px;
    line-height: 30px;
    letter-spacing: 0.01em;
    margin-bottom: 0;
}

.line.dark {
    background-color: #333333;
}

#perf1 {
    margin-top: 15px;
}

#perf2 {
    margin-top: 135px;
}

#perf3 {
    margin-top: 12px;
}

#perf4 {
    margin-top: 12px;
    left: -19%;
}

.video-wrap {
    position: relative;
}

.home_two_baners {
    background-color: #EFEFEF;
    padding-bottom: 280px;
}

.home_two_baner_video {
    position: relative;
}

.home_two_baner_video p {
    margin: 0;
}

.home_two_baner_video video {
    width: 706px;
    height: 665px;
    object-fit: cover;
    right: 0;
    position: absolute;
}

.video-progress {
    position: absolute;
    top: 25px;
    right: 25px;
    width: 49px;
    height: 49px;
    pointer-events: none;
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .4));
}

.home_people {
    padding-top: 130px;
    background-color: #333333;
    padding-bottom: 110px;
    position: relative;
}

.home_people h3 {
    color: #ffffff;
    font-size: 38px;
    letter-spacing: 0.02em;
    line-height: 46px;
    margin-top: 30px;
}

.home_people .image-container {
    margin-bottom: 29px;
}

.under-image-disclaimer {
    color: #9b9b9b;
    font-size: 14px;
    line-height: 19px;
    letter-spacing: 0.01em;
    margin-top: 10px;
}

.whatif {
    position: relative;
    padding-top: 40px;
    margin-top: 140px;
}

#auto2, #auto3 {
    top: 0;
}

#auto3 {
    right: 0;
}

.whatif h3 {
    font-size: 40px;
    line-height: 46px;
    letter-spacing: 0.02em;
    width: 80%;
    margin-top: 0;
}

.whatif p {
    width: 80%;
    font-size: 18px;
    letter-spacing: 0.01em;
    line-height: 23px;
    color: #ffffff;
    margin-top: 38px;
    margin-bottom: 27px;
}

.button,
.newsletter form.fluent_form_3 .wpf_has_custom_css.ff-btn-submit,
.newsletter form.fluent_form_5 .wpf_has_custom_css.ff-btn-submit {
    display: inline-block;
    font-size: 14px;
    line-height: 17px;
    letter-spacing: 0;
    text-align: center;
    padding: 24px 45px 26px;
    background-color: #ffffff;
    color: #333333;
    text-decoration: none;
    border: none;
    border-radius: 34px;
    transition: all 0.3s ease;
}

.newsletter form.fluent_form_3 .wpf_has_custom_css.ff-btn-submit,
.newsletter form.fluent_form_5 .wpf_has_custom_css.ff-btn-submit {
    background-color: #C9C5BF;
}

.button:hover,
.newsletter form.fluent_form_3 .wpf_has_custom_css.ff-btn-submit:hover,
.newsletter form.fluent_form_5 .wpf_has_custom_css.ff-btn-submit:hover {
    box-shadow: 0 0 10px 5px #ffffff;
    background-color: #ffffff;
    color: inherit;
    opacity: 1;
}

#auto4 {
    right: 0;
    bottom: 0;
}

#auto5 {
    right: -19%;
    bottom: 30px;
}

.home_people .container {
    position: relative;
}

footer {
    position: relative;
    background-color: #000000;
}

.newsletter {
    padding-top: 95px;
    padding-bottom: 10px;
}

.newsletter h3 {
    font-size: 42px;
    line-height: 51px;
    letter-spacing: 0.02em;
    color: #ffffff;
    margin-bottom: 37px;
}

.newsletter p {
    font-size: 18px;
    line-height: 29px;
    color: #ffffff;
    letter-spacing: 0.01em;
    margin: 0;
}

.ff-default .ff-el-form-control.newsletter-email-field {
    background-color: #262626;
    border-radius: 34px;
    padding: 24px 35px;
    font-size: 15px;
    line-height: 19px;
    border: none;
    letter-spacing: 0;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
}

.ff-default .ff-el-form-control.newsletter-email-field::placeholder {
    color: #ffffff;
}

.frm-fluent-form .ff-t-cell .ff_submit_btn_wrapper_custom button.button {
    margin-bottom: 0;
}

.newsletter .frm-fluent-form .ff-t-cell .ff_submit_btn_wrapper_custom {
    margin-top: 0;
}

.newsletter .fluentform .ff-el-group {
    margin-bottom: 0;
}

.newsletter .frm-fluent-form .ff-t-container {
    align-items: center;
    gap: 1px;
}

.footer_links {
    padding-top: 100px;
}

.contact-info {
    padding-top: 45px;
}

.contact-info p {
    color: #CAC5BD;
    font-size: 18px;
    line-height: 29px;
    letter-spacing: 0.01em;
    margin-bottom: 45px;
}

.contact-info .mail-link {
    font-size: 17px;
    line-height: 29px;
    letter-spacing: 0.01em;
    color: #CAC5BD;
    text-decoration: none;
    padding-bottom: 12px;
    position: relative;
}

.contact-info .mail-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: #CAC5BD;
    opacity: 0;
    transition: opacity 0.5s ease;
}

.contact-info .mail-link:hover::after {
    opacity: 1;
}

.footer_links .last-one {
    text-align: right;
}

.last-one {
    position: relative;
}

#foot4, #foot5 {
    right: 14px;
}

#foot4 {
    top: 0;
}

#foot5 {
    bottom: 0;
}

.linkedin-footer {
    background: #ffffff;
    color: #000000;
    width: 39px;
    height: 39px;
    font-size: 24px;
    text-align: center;
    display: inline-block;
    border-radius: 50%;
    line-height: 39px;
    transition: all 0.3s ease;
}

.linkedin-footer:hover {
    background: #3399FF;
}

footer .line {
    background-color: #CAC5BD;
}

.footer-bottom {
    padding-top: 45px;
}

.copyright {
    color: #79696D;
    font-size: 13px;
    line-height: 16px;
    letter-spacing: 0.01em;
    margin: 0;
}

.footer-glasses {
    text-align: right;
    padding-right: 20px;
}

#foot6 {
    right: -19%;
}

#foot3 {
    left: -19%;
}

footer .container {
    position: relative;
}

#join2 {
    left: -19%;
}

#join3 {
    bottom: 0;
}

#join5 {
    margin-top: 240px;
}

#join6 {
    right: -19%;
    bottom: 0;
}

#hero {
    height: 100vh;
    padding-top: 30vh;
}

#hero .container {
    position: relative;
}

#hero h3 {
    margin-top: -10px;
    font-size: 53px;
    line-height: 64px;
    font-weight: 300;
    letter-spacing: 0.01em;
    color: #ffffff;
    margin-bottom: 62px;
}

#hero p {
    font-size: 22px;
    line-height: 32px;
    letter-spacing: 0.01em;
    color: #ffffff;
    margin-bottom: 75px;
}

#hero .team_top_desc a {
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0.01em;
    color: #ffffff;
    text-decoration: none;
}

#hero .team_top_desc a span {
    display: inline-block;
    animation: bounce 1s ease-in-out infinite;
}

@keyframes bounce {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(5px);
    }
}

#our-team {
    padding-top: 90px;
    padding-bottom: 50px;
}

.team-box {
    margin-bottom: 55px;
}

.team_img {
    overflow: hidden;
    margin-bottom: 20px;
    cursor: pointer;
}

.team_img img {
    transition: all 0.3s ease;
}

.team_img:hover img {
    transform: scale(1.07);
}

.team_img:hover ~ .team_desc .linkedin-team {
    color: #333333;
    line-height: 26px;
    border-bottom: 1px solid #333333;
}

.team_desc h4,
.partner h4 {
    color: #333333;
    font-size: 24px;
    line-height: 26px;
    letter-spacing: 0.01em;
    margin-bottom: 2px;
}

.team_desc .position,
.partner .position {
    display: block;
    font-size: 16px;
    color: #333333;
    line-height: 26px;
    letter-spacing: 0.01em;
    margin-bottom: 22px;
}

.partner .position {
    margin-bottom: 10px;
}

.linkedin-team {
    font-size: 16px;
    line-height: 27px;
    color: #ACA79E;
    text-decoration: none;
    letter-spacing: 0.01em;
    display: inline-block;
    transition: color 0.3s ease;
}

.linkedin-team:hover {
    color: #333333;
    line-height: 26px;
    border-bottom: 1px solid #333333;
}

#our-partners .bg-gray {
    background-color: #EBE8E5;
    padding: 160px 0 180px;
}

#our-partners .container {
    position: relative;
}

#our-partners h3 {
    color: #333333;
    font-size: 43px;
    line-height: 1em;
    letter-spacing: 0.02em;
    margin-bottom: 60px;
}

@media screen and (min-width: 1600px) {
    #our-partners {
        padding: 0 140px;
    }
}

@media screen and (min-width: 1300px) {
    #our-partners {
        padding: 0 70px;
    }
}

#partn1 {
    margin-top: 115px;
}

#partn2 {
    margin-top: 250px;
}

#partn3 {
    margin-top: 450px;
}

#partn4 {
    bottom: 170px;
}

#partn5 {
    bottom: 70px;
}

.partners {
    display: flex;
    flex-wrap: wrap;
}

.partner {
    flex: 0 0 calc(50% - 50px);
    margin-bottom: 40px;
}

.partner:last-child {
    margin-bottom: 0;
}

.partner:nth-child(odd) {
    margin-right: 100px;
}

.partner-link {
    color: #333333;
    background: #ffffff;
    width: 29px;
    height: 29px;
    display: inline-block;
    text-align: center;
    line-height: 29px;
    border-radius: 50%;
    font-size: 14px;
    transition: all 0.3s ease;
}

.partner-link:hover {
    color: #ffffff;
    background: #333333;
}

#logos {
    padding-top: 144px;
    padding-bottom: 157px;
}

.logo-box {
    text-align: center;
}

.logo-box span {
    display: block;
    border-top: 1px solid #cccccc;
    padding-top: 27px;
    font-size: 16px;
    color: #333333;
    letter-spacing: 0.01em;
    line-height: 24px;
    margin-bottom: 10px;
}

.opto-partners-content {
    margin-top: 85px;
    margin-bottom: 85px;
}

#hero .opto-partners-content p {
    margin-bottom: 42px;
    font-size: 24px;
    line-height: 35px;
    letter-spacing: 0.02em;
}

#optoh2, #optoh3, #optoh5 {
    bottom: 0;
}

#optoh4 {
    right: 14px;
    top: 195px;
}

#optoh5 {
    right: -19%;
}

#reach-out {
    background-color: #EBE8E5;
    padding-top: 246px;
    padding-bottom: 236px;
}

#reach3 {
    bottom: 0;
}

#reach2 {
    bottom: 105px;
}

#reach-out .container {
    position: relative;
}

.reach-out-content {
    padding-top: 115px;
}

.reach-out-content p {
    font-size: 32px;
    letter-spacing: 0.02em;
    line-height: 45px;
    margin: 0;
}

.reach-out-content p a {
    color: inherit;
}

.reach-out-form {
    padding: 66px 55px 15px 68px;
    width: 87.5%;
    background-color: #ffffff;
    border-radius: 10px;
}

.mini-form-logo {
    margin-bottom: 60px;
}

.reach-out-form .fuller-opto-form .fuller-input,
.reach-out-form .fuller-opto-form .fuller-input:focus {
    padding: 3px 0;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #cccccc;
    margin-bottom: 5px;
    font-size: 16px;
    color: #333333;
    letter-spacing: 0.01em;
    line-height: 35px;
    background-color: transparent;
    font-family: 'Inter', sans-serif;
}

.reach-out-form .fuller-opto-form .fuller-input::placeholder {
    color: #333333;
}

.reach-out-form .fuller-opto-form textarea.fuller-input {
    margin-top: -15px;
    margin-bottom: 25px;
    height: 80px;
}

.reach-out-form .fuller-opto-form textarea.fuller-input:focus {
    margin-bottom: 25px;
}

.reach-out-form .fuller-opto-form .wpf_has_custom_css.ff-btn-submit {
    padding: 23px 0 25px;
    font-family: 'Inter', sans-serif;
    border: none;
    font-size: 15px;
    line-height: 19px;
    letter-spacing: 0;
    transition: all 0.3s ease;
}

.reach-out-form .fuller-opto-form .wpf_has_custom_css.ff-btn-submit:hover {
    border: none;
    color: #ffffff;
    background-color: #333333;
    opacity: 1;
}

.logo-box .logo-holder {
    height: 162px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.line-holder {
    height: 4px;
    position: relative;
}

.events-page #hero {
    padding-top: 26.7vh;
    padding-bottom: 130px;
    min-height: 100vh;
    height: auto;
}

.upcoming-title h5 {
    color: #ffffff;
    font-size: 15px;
    letter-spacing: 0.03em;
    line-height: 19px;
    font-weight: 700;
    margin-bottom: 30px;
}

.upcoming-event {
    margin-top: 210px;
    margin-bottom: 45px;
}

.upcoming-event img {
    width: 156px;
    height: auto;
}

#upc3 {
    left: calc(-0.19 * 1188px);
}

.about-upcoming {
    margin-top: 45px;
    color: #ffffff;
    margin-bottom: 44px;
}

.upc-span {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    line-height: 15px;
    letter-spacing: 0.04em;
    color: #ffffff;
    display: block;
}

#hero .about-upcoming h3 {
    font-size: 72px;
    line-height: 86px;
    margin-top: 0;
    font-weight: 400;
    letter-spacing: 0;
    margin-bottom: 0;
}

.about-upcoming p {
    font-size: 20px;
    letter-spacing: 0.01em;
    line-height: 27px;
}

.upcoming-time-date .upc-span {
    margin-bottom: 8px;
}

.upcoming-time-date {
    display: flex;
    color: #ffffff;
}

.upc-date {
    margin-right: 35px;
}

.upc-value {
    font-size: 20px;
    line-height: 24px;
    letter-spacing: 0.01em;
}

#upc4, #upc5, #upc6 {
    top: 68px;
}

#upc5 {
    right: 14px;
}

#upc6 {
    right: -19%;
}

#previous-events {
    padding-top: 97px;
    padding-bottom: 74px;
}

.event-box {
    background: #F5F5F5;
    margin-bottom: 36px;
}

.event-content {
    padding: 40px 15px 45px 35px;
}

.event-content h4 {
    font-weight: 500;
    color: #000000;
    font-size: 28px;
    line-height: 39px;
    letter-spacing: 0.01em;
    margin-bottom: 40px;
}

.sep {
    display: block;
    width: 26px;
    height: 2px;
    background: #000000;
}

.event-content .text {
    margin-top: 23px;
    color: #000000;
    font-size: 18px;
    line-height: 26px;
    letter-spacing: 0;
}

.event-content .text p {
    margin: 0;
}

.mini-logo-footer,
.mini-form-logo {
    display: flex;
}

.mini-logo-footer .circle,
.mini-form-logo .circle {
    width: 37px;
    height: 37px;
    border-radius: 50%;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.mini-logo-footer .square,
.mini-form-logo .square {
    width: 14px;
    height: 14px;
    transition: transform 0.4s ease;
    transform-origin: center center;
}

.circle.black {
    border: 1px solid #ffffff;
}

.circle.white {
    border: 1px solid transparent;
    background: #ffffff;
}

.circle.black .square {
    background: #ffffff;
}

.circle.white .square {
    background: #000000;
}

.mini-logo-footer .circle:first-child,
.mini-form-logo .circle:first-child {
    margin-right: 4px;
}

.mini-form-logo .circle.white {
    border: 1px solid #000000;
    background: transparent;
}

.mini-form-logo .circle .black {
    background: #000000;
}

.mini-form-logo .circle.black {
    border: 1px solid transparent;
    background: #000000;
}

.mini-form-logo .circle .white {
    background: #ffffff;
}

.mini-logo-footer:hover .square,
.mini-form-logo:hover .square,
.header-logo:hover .mini-logo-footer .square,
.header-logo:hover .mini-form-logo .square {
    transform: scaleY(0);
}

#map {
    height: 100vh;
    padding-top: 7.8%;
    background-color: #cac5bd;
    background-size: min(78%, 100%);
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url("../img/map-empty.png");
    position: relative;
}

#map-anim {
    position: absolute;
    width: min(78%, 100%);
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.map-content .container {
    position: relative;
    height: 100%;
}

.map-content .container > .row {
    position: absolute;
    width: 100%;
    bottom: -12px;
}

.upcoming-big h3 {
    font-size: 36px;
    line-height: 42px;
    letter-spacing: 0.01em;
    margin-bottom: 18px;
    color: #333333;
}

.map-content {
    height: 73vh;
}

#map2 {
    right: 14px;
}

#map3 {
    bottom: 65px;
}

#map4, #map5 {
    bottom: 0;
}

#map5 {
    right: 14px;
}

#wishlist {
    background: #333333;
    padding: 75px 0 90px;
}

#wishlist .newsletter {
    padding: 0;
}

#faq {
    padding-top: 155px;
}

#faq .faq-title h3 {
    margin-bottom: 40px;
    color: #333333;
    font-size: 40px;
    line-height: 51px;
    letter-spacing: 0.02em;
    padding-left: 35px;
}

#below-faq {
    padding-bottom: 125px;
}

.specific-cta {
    margin-top: 28px;
    background: #F5F5F5;
    padding: 18px 0 24px;
}

.specific-cta p {
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 0;
    color: #333333;
    margin: 0;
    text-align: center;
}

.specific-cta p a {
    font-weight: 700;
    color: inherit;
    text-decoration: none;
}

#faqAccordion {
    --bs-accordion-inner-border-radius: 0;
    --bs-accordion-btn-padding-y: 0;
    --bs-accordion-btn-padding-x: 35px;
    --bs-accordion-color: #333333;
    --bs-accordion-body-padding-y: 0;
    --bs-accordion-body-padding-x: 35px;
}

.accordion-item {
    border-left: 0;
    border-right: 0;
}

.accordion-button {
    font-size: 18px;
    height: 82px;
    outline: none;
    box-shadow: none;
}

.accordion-button::after {
    content: "\f078";
    border: 2px solid #8D8D8D;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    font-size: 20px;
    margin-right: -15px;
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    background: none;
    line-height: 38px;
    text-align: center;
    color: #8d8d8d;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.accordion-button:not(.collapsed)::after {
    background: none;
}

.accordion-button:hover::after,
.accordion-button:not(.collapsed):hover::after {
    border-color: transparent;
    background: #000000;
    color: #ffffff;
}

.accordion-button:not(.collapsed):hover::after {

}

.accordion-button:focus {
    box-shadow: none;
}


.accordion-body {
    color: #838383;
    font-size: 18px;
    letter-spacing: 0.01em;
    line-height: 28px;
    padding-bottom: 45px;
    padding-right: 70px;
}

.accordion-button:not(.collapsed) {
    color: #333333;
    background-color: transparent;
    box-shadow: none;
}

#faq .container {
    position: relative;
}

#faq1, #faq2, #faq4 {
    left: 14px;
}

#faq2 {
    margin-top: 164px;
}

#faq3 {
    right: 14px;
}

#faq4 {
    bottom: 0;
}

#faq5 {
    bottom: 0;
    right: -19%;
}

.buy-now-page #hero {
    height: 93vh;
    padding-top: 0;
    padding-bottom: 20px;
    background-color: #254253;
    background-image: url("../img/buy-now-map.svg");
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: min(1470px, 100%);
}

.buy-now-page #hero .container {
    position: relative;
    height: 100%;
}

.buy-now-page #hero .container > .row {
    position: absolute;
    width: 100%;
    bottom: 0;
}

#buy1 {
    left: -19%;
    top: 6px;
}

#buy2 {
    top: 6px;
    right: 14px;
}

#buy3 {
    left: 14px;
    bottom: 5px;
}

#buy4 {
    right: 14px;
    bottom: 5px;
}

#buy5 {
    bottom: 5px;
    right: -19%;
}

.buy-now-page #hero h3 {
    font-size: 53px;
    color: #ffffff;
    letter-spacing: 0.02em;
    line-height: 65px;
    margin-bottom: 45px;
    margin-top: 0;
}

.buy-now-page #hero p {
    color: #ffffff;
    font-size: 24px;
    line-height: 35px;
    letter-spacing: 0.02em;
    margin: 0;
}

#buy-now {
    padding-top: 250px;
    padding-bottom: 190px;
    background-color: #254253;
}

#buy7 {
    bottom: 0;
}

#buy-now .container {
    position: relative;
}

.buy-select {
    padding-top: 100px;
}

.buy-select h4 {
    font-size: 34px;
    line-height: 43px;
    letter-spacing: 0.02em;
    color: #ffffff;
    margin-bottom: 10px;
}

.buy-select p {
    font-size: 20px;
    letter-spacing: 0.01em;
    line-height: 29px;
    color: #ffffff;
    margin-top: 10px;
    margin-bottom: 0;
}

.buy-now-box {
    padding: 29px 35px 24px;
    background-color: #3C5469;
    border-radius: 33px;
}

.buy-now-box .title {
    font-size: 50px;
    line-height: 1.2em;
    letter-spacing: 0.02em;
    color: #ffffff;
    border-bottom: 1px solid rgba(255, 255, 255, .27);
    margin-bottom: 14px;
    padding-bottom: 14px;
    font-weight: 300;
}

.buy-now-box .deposit {
    padding-bottom: 30px;
    border-bottom: 1px solid rgba(255, 255, 255, .27);
}

.buy-now-box .deposit p,
.buy-now-box .full-price p {
    font-size: 20px;
    line-height: 1.2em;
    letter-spacing: 0.01em;
    color: #ffffff;
    margin-bottom: 0;
}

.buy-now-box .price {
    display: block;
    color: #ffffff;
    font-size: 55px;
    line-height: 1.2em;
    letter-spacing: 0.02em;
    font-weight: 300;
}

.buy-now-box .deposit .price {
    margin-top: 6px;
    margin-bottom: 9px;
}

.buy-now-box .desc {
    margin-bottom: 30px;
}

.buy-now-box .desc p {
    padding-top: 16px;
    margin-bottom: 0;
    color: #ffffff;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.01em;
}

.buy-now-box .full-price {
    margin-bottom: 37px;
}

.stripe-button {
    display: flex;
    align-items: center;
    background-color: #635BFF;
    border-radius: 34px;
    position: relative;
    text-decoration: none;
    padding: 8px 9px;
}

.stripe-button .icon {
    width: 53px;
    height: 53px;
    border: 1px solid transparent;
    background-color: #ffffff;
    border-radius: 50%;
    color: #635BFF;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 30px;
    transition: all .3s ease;
}

.stripe-button:hover .icon {
    border-color: #ffffff;
    background-color: transparent;
    color: #ffffff;
}

.stripe-button .text {
    color: #ffffff;
    margin-left: 54px;
    font-size: 17px;
    line-height: 20px;
    letter-spacing: 0;
}

.autofocals-page #hero {
    padding-top: 18.7vh;
    background-color: #EAEAEA;
    position: relative;
    z-index: 0;
    overflow: hidden;
}

.autofocals-page #hero .container > .row {
    padding-top: 57vh;
}

.autofocals-page #hero h1 {
    font-size: 72px;
    line-height: 87px;
    letter-spacing: 0;
    color: #333333;
    margin-bottom: 16px;
}

.autofocals-page #hero h1 > sup {
    font-weight: 500;
}

.autofocals-page #hero p {
    font-size: 30px;
    letter-spacing: 0.01em;
    line-height: 1.2em;
    color: #333333;
    margin: 0;
}

#white-bg {
    width: 62%;
    height: 76%;
    background-color: #ffffff;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}

#autofocals1 {
    height: 690px;
    width: auto;
    z-index: 2;
    position: absolute;
    top: 18.7vh;
    right: -7.8125%;
    transition: all .3s ease;
}

#autofocals1:hover,
#autofocals1.hovered {
    transform: rotate(-3deg);
}

#af2 {
    margin-top: 33vh;
}

#af3 {
    margin-top: 33vh;
    left: -19%;
}

#af4 {
    bottom: 0;
    right: 14px;
}

#about-autofocals {
    padding-bottom: 140px;
    padding-top: 100px;
    background-color: #CAC5BD;
}

#about-autofocals h3 {
    color: #333333;
    font-size: 53px;
    letter-spacing: 0.01em;
    line-height: 64px;
}

#about-autofocals p {
    color: #333333;
    font-size: 20px;
    line-height: 29px;
    letter-spacing: 0.01em;
    margin-bottom: 30px;
}

#about-autofocals .intro-text {
    margin-bottom: 53px;
}

#autofocals-slider video {
    width: 100%;
}

.hide_video {
    display: none !important;
}

.thumb-slider-holder, .product__slider-main {
    background-color: #E9E9E4;
}

.prevArrowHolder > a {
    float: left;
}

.nextArrowHolder > a {
    float: right;
}

.thumb-slider-holder .row {
    align-items: center;
    padding-top: 24px;
    padding-bottom: 24px;
}

#prevSlide, #nextSlide,
#prevTestimonial, #nextTestimonial {
    color: #000000;
    text-decoration: none;
    border: 2px solid #000000;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    transition: all .3s ease;
}

#prevSlide:hover, #nextSlide:hover,
#prevTestimonial:hover, #nextTestimonial:hover {
    background-color: #000000;
    color: #ffffff;
}

.product__slider-thmb .slide {
    padding: 0 14px;
    cursor: pointer;
}

#blur-effect {
    margin-top: 74px;
}

.blur-wrap {
    position: relative;
}
#blur-effect .blur-wrap .blur-text {
    display: block;
    color: #333333;
    font-family: "Montserrat", sans-serif;
    text-align: center;
    filter: blur(15px);
    -webkit-filter: blur(15px);
    will-change: filter, transform;
    backface-visibility: hidden;
    transition: filter .6s ease, -webkit-filter .6s ease;
    text-transform: uppercase;
    line-height: 1.39em;
    font-weight: 700;
}
.blur-wrap:nth-child(1) .blur-text {
    font-size: 128px;
    letter-spacing: 0.03em;
    margin-bottom: -15px;
}
.blur-wrap:nth-child(2) .blur-text {
    font-size: 78px;
    letter-spacing: 0.04em;
    margin-bottom: 7px;
}
.blur-wrap:nth-child(3) .blur-text {
    font-size: 54px;
    letter-spacing: 0.05em;
    margin-bottom: 27px;
}
.blur-wrap:nth-child(4) .blur-text {
    font-size: 25px;
    letter-spacing: 0.07em;
}

#bl1 {
    right: 14px;
    margin-top: 104px;
}

#bl2 {
    right: 14px;
    bottom: -10px;
}

#about-autofocals .container {
    position: relative;
}

#autofocals-work {
    padding-top: 85px;
    padding-bottom: 42px;
    position: relative;
}

#autofocals-work .container {
    position: relative;
}

#autofocals-work h3 {
    font-size: 68px;
    color: #333333;
    letter-spacing: 0.02em;
    line-height: 75px;
    margin: 0;
}

#aw1 {
    top: 23px;
}

#autofocals-work .aw-text {
    margin-top: 50vh;
}

.aw-text p {
    color: #333333;
    font-size: 22px;
    line-height: 32px;
    letter-spacing: 0.01em;
    margin-bottom: 36px;
}

#aw2 {
    bottom: 256px;
}

#aw3 {
    bottom: 26px;
}

#aw4 {
    right: 14px;
    bottom: 256px;
}

#aw-img {
    position: absolute;
    left: -165px;
    top: 240px;
    height: 62.77vh;
}

#testimonials {
    padding: 184px 0;
    background-color: #EBEBEB;
    height: 100vh;
    overflow: hidden;
}

#testimonials h3 {
    color: #333333;
    font-size: 49px;
    line-height: 59px;
    letter-spacing: 0.02em;
    margin-bottom: 19px;
}

#testimonials .nav-arrows {
    display: flex;
    gap: 8px;
}

#testimonials .container {
    position: relative;
}

#tes1 {
    top: 345px;
}

#tes2, #tes3 {
    top: 405px
}

#tes3 {
    left: -19%;
}

.testimonial-slider-wrap {
    position: absolute;
    width: 100vw;
    z-index: 1;
}

.testimonial-item img {
    object-fit: cover;
    height: 360px;
}

.testimonial-item {
    width: 396px !important;
    padding: 0 14px;
}

.testimonial-box {
    padding: 32px 30px 29px 35px;
    background-color: #ffffff;
    color: #333333;
}

.testimonial-box h4 {
    font-size: 26px;
    line-height: 32px;
    letter-spacing: 0.01em;
    margin-bottom: 14px;
}

.testimonial-box h5 {
    font-size: 18px;
    line-height: 24px;
    letter-spacing: 0.01em;
    padding-bottom: 58px;
    position: relative;
    margin-bottom: 22px;
}

.testimonial-box h5::after {
    width: 26px;
    height: 2px;
    background-color: #333333;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
}

.testimonial-box p {
    color: #969696;
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 0;
    margin-bottom: 0;
}

#blurred-img {
    filter: blur(16px);
    margin-top: 280px;
    margin-left: -40px;
}

#cta-video {
    padding-top: 128px;
    padding-bottom: 105px;
    background-color: #333333;
}

#cta-video p {
    color: #ffffff;
    font-size: 35px;
    line-height: 42px;
    letter-spacing: 0.02em;
    margin-bottom: 50px;
}

#cta-video .container {
    position: relative;
}

#cta1 {
    top: 16px;
    right: -19%;
}

#cta2 {
    top: 204px;
    right: -19%;
}

#cta3 {
    bottom: 0;
}

#cta4 {
    display: none;
}

#cta-video video {
    width: 100%;
}

.video-container {
    position: relative;
}

#play_button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#cta-video .button {
    width: 142px;
    background-color: #C9C5BF;
    padding: 24px 0 26px;
}

#cta-video .button:hover {
    box-shadow: 0 0 10px 5px #C9C5BF;
}

.thankyou-page {
    background-color: #333333;
    color: #ffffff;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    height: 100vh;
    text-align: center;
}

.thankyou-page.opto-thankyou {
    background-color: #EBE8E5;
    color: #333333;
}

.thankyou-page h1 {
    font-size: 34px;
    line-height: 1.2em;
    letter-spacing: 0.02em;
    margin-bottom: 18px;
}

.thankyou-page p {
    font-size: 18px;
    line-height: 26px;
    letter-spacing: 0;
    margin: 0;
}

#goback {
    position: absolute;
    top: 10vh;
    width: 40px;
    height: 40px;
    color: #000000;
    background-color: #ffffff;
    border-radius: 50%;
    border: 2px solid transparent;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    transition: all .3s ease;
    text-decoration: none;
}

#goback:hover {
    background-color: #000000;
    color: #ffffff;
    border-color: #ffffff;
}

.opto-thankyou #goback {
    background-color: #000000;
    border-color: #000000;
    color: #ffffff;
}

.opto-thankyou #goback:hover {
    background-color: transparent;
    color: #000000;
}

/* Laptop */

.header-logo {
    display: flex;
}

.header-logo .mini-logo-footer,
.header-logo .mini-form-logo {
    margin-right: 8px;
    margin-bottom: 0;
}

.header-logo .mini-logo-footer .circle.white,
.header-logo .mini-form-logo .circle.black {
    position: relative;
    background: white;
    -webkit-mask: radial-gradient(circle at 50% 50%, #000 18.5px, transparent 18.6px),
    linear-gradient(#000 0 0) 50% 50%/14px 14px no-repeat;
    -webkit-mask-composite: source-over, xor;
    mask: radial-gradient(circle at 50% 50%, #000 18.5px, transparent 18.6px),
    linear-gradient(#000 0 0) 50% 50%/14px 14px no-repeat;
    mask-composite: exclude;
    transition: -webkit-mask-size 0.3s ease, mask-size 0.3s ease;
}

.header-logo .mini-form-logo .circle.black {
    background-color: #000000;
}

.header-logo:hover .mini-logo-footer .circle.white,
.header-logo:hover .mini-form-logo .circle.black {
    -webkit-mask: radial-gradient(circle at 50% 50%, #000 18.5px, transparent 18.6px),
    linear-gradient(#000 0 0) 50% 50%/14px 0 no-repeat; /* visina = 0 */
    -webkit-mask-composite: source-over, xor;
    mask: radial-gradient(circle at 50% 50%, #000 18.5px, transparent 18.6px),
    linear-gradient(#000 0 0) 50% 50%/14px 0 no-repeat;
    mask-composite: exclude;
}
.header-logo:hover .mini-logo-footer .circle.white .black {
    background-color: transparent;
}

.mail-link .icon {
    display: none;
}
#tes4 {
    display: none;
}
#mobile-menu {
    display: none;
}
@media screen and (max-width: 1600px) {
    .only-desk {
        display: none;
    }

    .home_two_baner_video video {
        width: 100%;
    }

    #rimgg {
        object-fit: cover;
        max-width: 467px;
        height: 504px;
    }

    #reach-out {
        padding-top: 121px;
        padding-bottom: 194px;
    }

    .upcoming-event {
        margin-top: 75px;
        margin-bottom: 45px;
    }

    .events-page #hero {
        padding-bottom: 80px;
    }

    #map {
        background-size: min(1160px, 100%);
        padding-top: 10.7%;
        height: 95.55vh;
    }

    #map-anim {
        width: min(1160px, 100%);
    }

    .buy-now-page #hero {
        background-size: min(1160px, 100%);
    }

    #buy1 {
        left: 14px;
    }

    #buy5 {
        right: 14px;
        top: -285px;
    }

    .map-content {
        height: 56.3vh;
    }

    .map-content .container > .row {
        bottom: -90px;
    }

    #buy-now {
        padding-top: 150px;
    }

    #faq {
        padding-top: 108px;
    }

    #autofocals1 {
        height: 530px;
        top: 16vh;
    }

    .autofocals-page #hero .container > .row {
        padding-top: 53vh;
    }

    #af1 {
        top: 50px;
    }

    #af2 {
        margin-top: 43vh;
    }

    #aw-img {
        height: 59.77vh;
        top: 280px;
    }

    #autofocals-work .aw-text {
        margin-top: 60vh;
    }

    #testimonials {
        padding: 94px 0;
    }

    #tes1 {
        top: 400px;
    }

    #tes2 {
        top: 460px;
    }

    #cta-video {
        padding-top: 67px;
        padding-bottom: 30px;
    }

    #cta1, #cta2 {
        right: 158px;
    }

    #cta2 {
        z-index: 1;
    }

}
