/*
Theme Name: Worship Square
Theme URI: https://worshipsquare.co.uk
Author: Whitewall Marketing
Author URI: https://whitewallmarketing.co.uk
Description: Bespoke theme development
Version: 1.1
Date: July 2021
*/

/* Start Header CSS */
#header {
    z-index: 20;
}
.page-container {
    z-index: 1;
}
/* End Header CSS */
/* Start Footer CSS */
#footer {
    z-index: 0;
}
#footer-logo p {
    font-family: ABCWhyte, Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 22px;
    color: #000;
    letter-spacing: normal;
}
/* End Footer CSS */
/* Start "Ready to Work" Page CSS */
.contact-popup {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    z-index: 301;
}

.contact-popup .popup__content {
    width: calc(100% - 40px);
    max-width: 815px;
    max-height: 500px;
    overflow-y: auto;
    padding: 50px 108px;
    background: white;
    color: black;
    position: relative;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-sizing: border-box;
}

.contact-popup .popup__content .close {
    position: absolute;
    right: 4px;
    top: -4px;
    width: 30px;
    height: 30px;
    display: block;
    z-index: 301;
    cursor: pointer;
}
.contact-popup .popup__form {
    position: relative;
}
.contact-popup .popup__content .close span {
    position: absolute;
    width: 34px;
    height: 1px;
    background: #000;
    top: 16px;
    right: -3px;
}

.contact-popup .popup__content .close span:nth-child(1) {
    transform: rotate(45deg);
}

.contact-popup .popup__content .close span:nth-child(2) {
    transform: rotate(135deg);
}

.contact-popup-btn {
    color: #ffffff;
    position: fixed;
    bottom: 16px;
    right: 3.333%;
    z-index: 21;
    border: 1px solid #000;
    padding: 18px 43px;
    display: inline-block;
    border-radius: 50px;
    box-shadow: none;
    background-color: #000;
    cursor: pointer;
    font-size: 18px;
    text-decoration: none;
    outline: unset;
    box-shadow: unset;
}
.contact-popup-btn:hover {
    background-color: #ffffff;
    color: #000;
}
.contact-popup h4 {
    text-align: left;
    font-size: 20px;
    margin-bottom: 20px;
    font-size: 26px;
}
.contact-popup .popup__form {
    position: relative;
}
.contact-popup .half-col {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
}
.contact-popup .full-row textarea {
    resize: none;
    height: 100px !important;
}
.contact-popup .full-row textarea,
.contact-popup .full-row {
    width: 100%;
}
.contact-popup .half-col,
.contact-popup .full-row {
    margin-bottom: 16px;
}
.contact-popup .flex-row p {
    padding-bottom: 0;
}
.contact-popup .flex-row p br {
    display: none;
}
.contact-popup .flex-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
}
.contact-popup .half-col input {
    max-width: 294px;
    width: 100%;
}
.contact-popup input[type="text"],
.contact-popup input[type="email"],
.contact-popup input[type="tel"],
.contact-popup textarea {
    padding: 10px;
    box-sizing: border-box;
}
.contact-popup label {
    display: block;
    text-align: left;
    color: #000;
}
.contact-popup label span{
    color: #dc3232;
}
.contact-popup .wpcf7-form-control-wrap {
    position: relative;
    display: block;
}
.contact-popup input.wpcf7-submit {
    box-shadow: unset;
    outline: unset;
    border: 0;
    background-color: #000;
    color: #fff;
    padding: 12px 28px;
    text-transform: uppercase;
    border: 1px solid #000;
    cursor: pointer;
}
.contact-popup input.wpcf7-submit:hover {
    background-color: #fff;
    color: #000;
}
.contact-popup .wpcf7-not-valid-tip {
    text-align: left;
}
.contact-popup .wpcf7-spinner {
    position: absolute;
}
/* End "Ready to Work" Page CSS */
h3.ct-heading {
    font-size: 54px;
    line-height: normal;
    margin: 0 auto;
    padding: 0;
    color: #FFF;
    padding-bottom: 25px;
}
.full-screen.parallax {
    z-index: 11 !important;
}
.blog-list .blogs,.cus-single-page{
    max-width: 1285px;
    margin: 0px auto;
}
.blog-list .blogs .blog-item{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.blog-list .blogs .blog-item .left-part{
    width: 40%;
}
.blog-list .blogs .blog-item .right-part{
    width: 55%;
}
.blog-list .blogs .blog-item .right-part h3{
    font-size: 35px;
    padding: 0px;
    margin-bottom: 34px;
}
.blog-list .blogs .blog-item .right-part p{
    font-size: 23px;
    font-weight: normal;
    line-height: 30px;
    padding-bottom: 10px;
}
.blog-list .blogs .blog-item .right-part a{
    font-weight: bold;
    font-size: 22px;
    margin-top: 30px;
    display: flex;
    align-items: center;
}
.blog-list .blogs .blog-item .right-part a:hover,.blogs .load-more:hover{
    opacity: 0.7;
}
.blog-list .blogs .blog-item .right-part a img{
    width: 30px;
    margin-left: 35px;
}
.blog-list .blogs .blog-item:not(:last-child){
    margin-bottom: 100px;
}
.blogs .load-more{
    width: 40%;
    text-align: right;
    padding-right: 20px;
    color: #ffffff;
    font-weight: bold;
    font-size: 22px;
    margin-top: 80px;
}
.cus-single-page p,.cus-single-page h1,.cus-single-page h2,.cus-single-page h3,.cus-single-page h4,.cus-single-page h5,.cus-single-page h6,.cus-single-page strong{
    color: #000000 !important;
}
.cus-single-page h1,.cus-single-page h2,.cus-single-page h3,.cus-single-page h4,.cus-single-page h5,.cus-single-page h6{
    padding-bottom: 35px;
}
.cus-single-page h3{
    font-weight: bold !important;
}
.news-single{
    background-color: #ffffff;
    padding: 80px 0px 130px;
}
.blog-list .blogs .blog-item .right-part h3:not(:nth-child(1)),.blog-list .blogs .blog-item .right-part p:not(:nth-child(2)){
    display: none;
}
.read-blog{
    font-weight: bold;
}

.video-slider .rdsn-carousel .image {
    position: relative;
}

.video-slider .rdsn-carousel .image .play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 150px;
    height: 150px;
    z-index: 10;
    cursor: pointer;
    padding: 5px;
}

/* Video Popup */
.video-popup {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 998;
    background: rgba(0, 0, 0, .7);
    cursor: pointer;
    display: none !important;
}

.video-popup.show-video {
    display: flex !important;
}

.video-popup .iframe-wrapper {
    position: relative;
}

.video-popup .iframe-wrapper .close-video {
    position: absolute;
    width: 25px;
    height: 25px;
    top: -20px;
    right: 0;
    cursor: pointer;
    color: #000;
    text-align: center;
    line-height: 25px;
    background: #fff;
    border-radius: 50%;
}

.video-over-content {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 999;
    transform: translate(-50%, -50%);
}
.vimeo-custom .video-over-content img.bg-play-btn {
    position: relative;
    z-index: 100;
    cursor: pointer;
    background: rgba(0,0,0,0.5);
    border-radius: 100%;
}
.custom-vimeo-wrapper iframe {
    width: 100vw;
    height: 56.25vw;
    min-height: 100vh;
    min-width: 177.77vh;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index:10;
}
.vimeo-custom .video-popup {
    z-index: 999;
    background: rgba(0, 0, 0, 0.90);
}

/* Start Download Form CSS */
body.download-form-page div#bg-page {
    width: 100%;
    height: 100vh;
}
.download-form {
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
    padding: 40px 15px 0px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.download-form h1 {
    font-family: WeaveDisplay,Arial,Helvetica,sans-serif;
    font-size: 84px;
    line-height: 92px;
    text-align: center;
    margin: 0 auto;
    padding: 0;
    color: #FFF;
}
.download-form .subtext p {
    font-size: 20px;
    line-height: 28px;
    text-align: center;
    color: #FFF;
    padding: 40px 0px 20px;
}
.download-form .field-group > p {
    padding: 0px;
}
.download-form .field-group {
    margin-bottom: 25px;
}
.download-form .field-group.two-col > p {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.download-form .field-group.two-col > p > span {
    width: 44%;
}
.download-form .field-group.checkbox .wpcf7-list-item {
    margin: 0px;
}
.download-form .field-group.checkbox {
    margin-bottom: 15px;
}
.download-form .field-group input::-webkit-input-placeholder { /* WebKit browsers */
    color: #fff !important;
    opacity: 1;
}
.download-form .field-group input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #fff !important;
    opacity: 1;
}
.download-form .field-group input::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #fff !important;
    opacity: 1;
}
.download-form .field-group input:-ms-input-placeholder { /* Internet Explorer 10+ */
    color: #fff !important;
    opacity: 1;
}
.download-form .field-group input.form-control {
    width: 100%;
    height: 40px;
    padding: 6px 0px;
    background-color: transparent;
    border: 0px;
    border-bottom: 1px solid #fff;
    color: #fff;
    font-size: 16px;
}
.download-form .wpcf7-submit {
    display: inline-block;
    padding: 10px 60px;
    border-radius: 50px;
    box-shadow: none;
    background-color: #fff;
    border-color: transparent;
    cursor: pointer;
    color: #3579FE;
    font-size: 16px;
    font-family: WeaveDisplay,Arial,Helvetica,sans-serif;
    margin-top: 20px;
}
.download-form .wpcf7-not-valid-tip {
    margin-top: 3px;
    color: #fff;
}
.download-form  .wpcf7-response-output {
    margin: 0px !important;
}
/* End Download Form CSS */
/* Start Homepage - Hero Section CSS */
.full-screen .subtext span {
    animation-delay: 2s;
}
.full-screen #scrollToNext span {
    animation-delay: 2s;
}
.show-scroll-next #scrollToNext {
    display: flex;
    justify-content: center;
}
.show-scroll-next #scrollToNext span {
    position: relative;
    width: 20px;
    height: 100px;
    cursor: pointer;
}
.show-scroll-next #scrollToNext span::before {
    content: " ";
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    width: 12px;
    height: 12px;
    transform: rotate(134deg);
    cursor: pointer;
    display: block;
    bottom: 0;
    position: absolute;
}
.show-scroll-next #scrollToNext span::after {
    content: '';
    background-color: #fff;
    width: 2px;
    height: 74px;
    display: block;
    left: 6.4px;
    position: absolute;
    top: 26px;
}
/* End Homepage - Hero Section CSS */
/* Start gallery-carousel-popup */
.gallery-carousel-popup {
    padding: 70px 0 50px;
}
.gallery-carousel-popup .gallery-popup {
    display: flex;
    gap: 10px;
    justify-content: space-between;
    flex-wrap: wrap;
}
.gallery-carousel-popup .card {
    width: calc(calc(100% / 6) - 9px);
    animation-delay: calc(0.25s * (var(--card-index) - 1));
}
.gallery-carousel-popup .gallery-popup .card a {
    display: block;
}
.gallery-carousel-popup .gallery-popup .card img {
    width: 100%;
    height: 115px;
    object-fit: cover;
}
.has-gallery-carousel-popup .fancybox-infobar .fancybox-infobar__body {
    display: none;
}
.has-gallery-carousel-popup .fancybox-controls {
    position: static;
}
.has-gallery-carousel-popup .fancybox-controls .fancybox-infobar .fancybox-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 99994;
}
.has-gallery-carousel-popup .fancybox-controls .fancybox-infobar .fancybox-button.fancybox-button--right {
    right: 50px;
}
.has-gallery-carousel-popup .fancybox-controls .fancybox-infobar .fancybox-button.fancybox-button--left {
    left: 50px;
}
.has-gallery-carousel-popup .fancybox-controls .fancybox-button--close {
    cursor: pointer;
    z-index: 99999;
    background-image: url('assets/img/close-icon.png');
    background-repeat: no-repeat;
    background-size: 32px;
    background-position: center;
}

.has-gallery-carousel-popup .fancybox-controls .fancybox-button--close:after,
.has-gallery-carousel-popup .fancybox-controls .fancybox-button--close:before {
    content: unset;
}
.has-gallery-carousel-popup .fancybox-controls .fancybox-infobar .fancybox-button--right:after, 
.has-gallery-carousel-popup .fancybox-controls .fancybox-infobar .fancybox-button--left:after {
    top: unset;
    width: 16px;
    height: 16px;
}
.has-gallery-carousel-popup .fancybox-button--close:after, .fancybox-button--close:before {
    left: calc(50% - 17px);
}
.has-gallery-carousel-popup .fancybox-button--close::after, .fancybox-button--close::before {
    width: 34px;
    height: 6px;
}
/* End gallery-carousel-popup */
/* Start accordion section CSS */
.accordion-items {
    padding-bottom: 60px;
}
.accordion-items .accordion-row {
    animation-delay: 2s;
}
.accordion-items .accordion-row .inner-row:last-child .accordion-content {
    padding-bottom: 0;
}
.cus-container {
    padding: 0 20px;
    max-width: 1174px;
    margin: 0 auto;
}
.accordion-content {
    display: none;
    padding: 30px 0 40px;
}
.accordion-header {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid;
    border-bottom: 1px solid;
    padding: 18px 0;
    cursor: pointer;
    align-items: center;
}
.accordion-header h4 {
    color: #fff;
    font-size: 26px;
    line-height: normal;
}
.accordion-row .accordion-header svg {
    fill: #FFF;
    display: inline-block;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    transition: all 0.3s ease-in-out !important;
}
.accordion-row .accordion-header.open svg,
.accordion-row .accordion-header:hover svg {
    transform: rotate(45deg);
}
.accordion-row .grid_blocks .blocks .block h5 {
    font-size: 22px;
    line-height: normal;
    padding: 10px 0 15px;
}
.accordion-row .grid_blocks .blocks .block p {
    font-size: 14px;
}
.accordion-row .grid_blocks .blocks .block p:last-child {
    padding-bottom: 0;
}
.accordion-row .grid_blocks .blocks {
    display: flex;
    flex-wrap: wrap;
}
.accordion-row .grid_blocks .blocks.small_block {
    justify-content: space-between;
    padding: 30px 0 0;
}
.accordion-row .grid_blocks .blocks.large_block {
    padding: 0 25px;
}
.accordion-row .grid_blocks .blocks.large_block .block {
    width: 27.9%;
    padding: 22px 30px;
}
.accordion-row .grid_blocks .blocks.large_block .block p:last-child {
    padding-bottom: 0;
}
.accordion-row .grid_blocks .blocks.small_block .block {
    width: 19%;
    padding: 22px 65px;
}
.accordion-row .grid_blocks .blocks .block img {
    width: auto;
    height: 95px;
}
.image_with_grid_blocks .image-area {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.image-area .full-img {
    width: 70%;
    padding-right: 40px;
}
.image-area .zoom-btn {
    position: relative;
    margin-top: auto;
    margin-bottom: 10%;
    padding-right: 40px;
}
.image-area .zoom-btn a {
    display: flex;
    align-items: center;
    gap: 15px;
    text-decoration: none;
}
.image-area .zoom-btn img {
    width: 25px;
}
.zoom-btn span {
    display: block;
    font-size: 20px;
    font-weight: 600;
}
.image-area .right-grid {
    text-align: right;
    margin-left: auto;
}
.image-area .right-grid h3 {
    padding: 0;
    margin: 0;
    font-size: 48px;
    line-height: 48px;
}
.image-area .right-grid h5 {
    padding: 0;
    margin: 6px 0 0;
    font-size: 14px;
}
.image_with_grid_blocks .blocks {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 25px;
    margin-top: 30px;
}
.image_with_grid_blocks .blocks .block h4 {
    text-align: center;
    padding: 0 56px;
    font-size: 20px;
    line-height: normal;
}
.image_with_grid_blocks .blocks .block {
    padding: 24px;
    border-radius: 60px;
    border: 1px solid #fff;
    width: calc(calc(100% / 3) - 84px);
    display: flex;
    align-items: center;
    justify-content: center;
}
.two_column_block .left-content h5,
.image-area .right-grid h5,
.accordion-row .grid_blocks .block h5,
.image_with_grid_blocks .blocks .block h4 {
    color: #fff;
}
.two_column_block {
    display: flex;
    justify-content: space-between;
    padding: 20px 0 20px 55px;
}
.two_column_block .left-content .full-img {
    text-align: center;
}
.two_column_block .left-content .full-img img {
    width: 125px;
    margin: 0 auto;
}
.two_column_block .left-content h5 {
    text-align: center;
    font-size: 40px;
    line-height: normal;
}
.two_column_block .right-content {
    margin-left: auto;
    width: 65%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 10px;
    row-gap: 46px;
}
.two_column_block .right-content .flex-box {
    width: 31.33%;
}
.two_column_block .right-content .flex-box img {
    max-height: 95px;
    width: auto;
}
.two_column_block .right-content .flex-box h4 {
    color: #fff;
}
.two_column_block .right-content .images,
.two_column_block .right-content .content {
    padding-left: 30px;
}
.two_column_block .content ul li {
    font-size: 18px;
    line-height: normal;
}
.two_column_block .content ul {
    columns: 2;
    list-style: none;
    margin: 0;
}
.two_column_block .right-content .images {
    display: flex;
    gap: 44px;
    justify-content: space-between;
    padding-top: 25px;
    flex-wrap: wrap;
    align-items: center;
}
.two_column_block .right-content .images img {
    max-height: 115px;
    width: auto;
    height: 10%;
}
.download-btn {
    text-align: center;
    padding-top: 40px;
}
#bg-page .download-btn a {
    padding: 18px 43px;
    display: inline-block;
    border-radius: 50px;
    box-shadow: none;
    background-color: #fff;
    cursor: pointer;
    color: #3579FE;
    font-size: 18px;
    text-decoration: none;
}
.has-gallery-carousel-popup .fancybox-bg {
    background: #c3c0df !important;
}
/* End accordion section CSS */

/* Start Grid Block ( Image + Text ) Section CSS */
.grid-block .cus-container {
    max-width: 1225px;
}
.grid-block {
    padding-top: 100px;
    padding-bottom: 40px;
}
.grid-block .inner-grid {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.grid-block .inner-grid .inner-col {
    width: calc(25% - 22px);
}
.grid-block .inner-grid .inner-col img {
    max-height: 150px;
    width: auto;
}
.grid-block .inner-grid .inner-col h5 {
    color: #fff;
    font-size: 28px;
    line-height: normal;
    padding-bottom: 20px;
}
.grid-block .inner-grid .inner-col .content {
    padding-right: 24px;
}
/* End Grid Block ( Image + Text ) Section CSS */

/* Start Vision Block Section CSS */
#bg-page .vision-block .vision-tooltips .vision-data * {
    color: #c9a1ff;
}
.vision-block .map-area {
    min-height: 200px;
}
.vision-block .vision-theme-light .vision-tooltips .vision-tooltip.vision-top .vision-arrow {
    display: none;
}
.vision-block .vision-map .vision-tooltips .vision-offset {
    margin-top: -23px !important;
}
.vision-block .vision-theme-light .vision-tooltips .vision-form {
    background-color: #fff;
    border-radius: 0;
    font-size: 14px;
    width: 140px;
    padding: 26px;
    text-align: center;
}
.vision-block .vision-tooltips .vision-data p:last-child {
    padding-bottom: 0;
}
.vision-block .vision-data {
    padding: 0;
    max-width: 100%;
}
.vision-block .toggle-button .toggle-text {
    display: block;
    text-align: center;
    width: 100px;
    padding-top: 6px;
}
.vision-block .toggle-button {
    float: right;
    margin-top: -100px;
    position: relative;
    right: 3%;
    z-index: 1;
    text-align: center;
}
.vision-block .toggle-button input[type="checkbox"].toggle {
    opacity: 0;
    position: absolute;
}
.vision-block .toggle-button input[type="checkbox"].toggle + label {
    height: 46px;
    background-color: transparent;
    border-radius: 30px;
    display: inline-block;
    position: relative;
    border: 1px solid #fff;
    cursor: pointer;
}
.vision-block .toggle-button input[type="checkbox"].toggle + label:before,
.vision-block .toggle-button input[type="checkbox"].toggle + label:hover:before {
    content: ' ';
    position: absolute;
    top: 4px;
    left: 5px;
    width: 38px;
    height: 38px;
    border-radius: 100%;
    background-color: #fff;
    z-index: 2;
}
.vision-block .toggle-button input[type="checkbox"].toggle + label .off,
.vision-block .toggle-button input[type="checkbox"].toggle + label .on {
    color: #fff;
    height: 46px;
    width: 40px;
    line-height: 40px;
}
.vision-block .toggle-button input[type="checkbox"].toggle + label .off {
    margin-left: 40px;
    display: inline-block;
}
.vision-block .toggle-button input[type="checkbox"].toggle + label .on {
    display: none;
}
.vision-block .toggle-button input[type="checkbox"].toggle:checked + label .off {
    display: none;
}
.vision-block .toggle-button input[type="checkbox"].toggle:checked + label .on {
    margin-right: 40px;
    display: inline-block;
}
.vision-block .toggle-button input[type="checkbox"].toggle:checked + label:before,
.vision-block .toggle-button input[type="checkbox"].toggle:focus:checked + label:before,
.vision-block .toggle-button input[type="checkbox"].toggle:checked + label:hover:before,
.vision-block .toggle-button input[type="checkbox"].toggle:focus:checked + label:hover:before {
    left: 100%;
    margin-left: -43px;
}
/* End Vision Block Section CSS */
@media screen and (max-width: 1399px) {
    .blog-list .blogs,.cus-single-page{
        max-width: 1050px;
    }
    .blog-list .blogs .blog-item .right-part h3{
        margin-bottom: 30px;
    }
    .blog-list .blogs .blog-item .right-part a{
        margin-top: 20px;
    }
}
@media screen and (max-width: 1199px) {
    .blog-list .blogs,.cus-single-page{
        max-width: 870px;
    }
    .blog-list .blogs .blog-item .right-part h3{
        font-size: 30px;
        margin-bottom: 20px;
    }
    .blog-list .blogs .blog-item .right-part p{
        font-size: 18px;
        line-height: 26px;
    }
    .blog-list .blogs .blog-item .right-part a{
        font-size: 18px;
        margin-top: 15px;
    }
    .blog-list .blogs .blog-item:not(:last-child) {
        margin-bottom: 75px;
    }

    /* Start Download Form CSS */
    .download-form h1 {
        font-size: 64px;
        line-height: 72px;
    }
    /* End Download Form CSS */
    /* Start accordion section CSS */
    .two_column_block .right-content .images {
        gap: 15px;
    }
    .image_with_grid_blocks .blocks .block h4 {
        padding: 0;
    }
    .accordion-row .grid_blocks .blocks.large_block .block {
        width: 27%;
        padding: 22px 30px;
    }
    .accordion-row .grid_blocks .blocks.small_block .block {
        width: 22%;
        padding: 22px 40px;
    }
    .accordion-row .grid_blocks .blocks.large_block {
        padding: 0;
    }
    .image-area .full-img {
        width: 63%;
    }
    .gallery-carousel-popup .gallery-popup .card img {
        height: 104px;
    }
    .has-gallery-carousel-popup .fancybox-controls .fancybox-infobar .fancybox-button.fancybox-button--left {
        left: 0;
    }
    .has-gallery-carousel-popup .fancybox-controls .fancybox-infobar .fancybox-button.fancybox-button--right {
        right: 0;
    }
    .has-gallery-carousel-popup .fancybox-button--close {
        right: 20px;
        top: 20px;
    }
    .has-gallery-carousel-popup .fancybox-slider-wrap {
        width: calc(100% - 76px);
        left: 38px;
    }
    .two_column_block .right-content .images img {
        max-height: 104px;
    }
    /* End accordion section CSS */

}

@media screen and (max-width: 991px) {
    .blog-list .blogs,.cus-single-page{
        max-width: 720px;
    }
    .blog-list .blogs .blog-item .left-part {
        width: 45%;
    }
    .blogs .load-more{
        width: 45%;
    }
    .blog-list .blogs .blog-item .right-part {
        width: 50%;
    }
    .news-single{
        padding: 80px 0px;
    }

    /* Start Download Form CSS */
    .download-form {
        max-width: 700px;
    }
    /* End Download Form CSS */
    /* Start accordion section CSS */
    .accordion-row .grid_blocks .blocks.small_block .block {
        width: 28%;
        padding: 12px;
    }
    .accordion-row .grid_blocks .blocks.large_block .block {
        width: 43%;
        padding: 12px 25px;
    }
    .two_column_block .right-content .images img {
        max-height: 74px;
    }
    .image_with_grid_blocks .blocks .block h4 {
        font-size: 18px;
    }
    .image-area .full-img {
        padding-right: 20px;
    }
    .image-area .zoom-btn a {
        gap: 5px;
    }
    .zoom-btn span {
        font-size: 16px;
    }
    .gallery-carousel-popup .gallery-popup .card img {
        height: 80px;
    }
    .gallery-carousel-popup .gallery-popup {
        justify-content: center;
        gap: 10px;
    }
    .gallery-carousel-popup {
        padding: 40px 0 40px;
    }
    .fancybox-button--close {
        right: 0;
        top: 10px;
    }
    /* End accordion section CSS */
    /* Start Grid Block ( Image + Text ) Section CSS */
    .grid-block .inner-grid .inner-col {
        width: calc(50% - 12px);
    }
    .grid-block .inner-grid .inner-col .content {
        padding-right: 0;
    }
    .grid-block .inner-grid .inner-col img {
        max-height: 100px;
    }
    .grid-block {
        padding-top: 50px;
        padding-bottom: 10px;
    }
    .grid-block .inner-grid .inner-col h5 {
        font-size: 24px;
        padding-bottom: 12px;
    }
    .grid-block .cus-container {
        padding: 0 6.666vw;
    }
    /* End Grid Block ( Image + Text ) Section CSS */
}
@media (max-width: 800px) {
    .fancybox-button--left, .fancybox-button--right {
        display: block !important;
    }
}
@media screen and (max-width: 767px) {
	h3.ct-heading {
    	font-size: 40px;
	}
    .cus-single-page{
        max-width: unset;
        width: 100%;
    }
    .blog-list .blogs .blog-item{
        flex-direction: column;
    }
    .blog-list .blogs .blog-item .left-part {
        width: 100%;
    }
    .blogs .load-more{
        width: 100%;
        text-align: center;
    }
    .blog-list .blogs .blog-item .right-part {
        width: 100%;
        margin-top: 20px;
    }
    .blog-list .blogs .blog-item:not(:last-child) {
        margin-bottom: 50px;
    }

    /* Start Download Form CSS */
    body.download-form-page .full-screen.standard {
        height: 0px !important;
    }
    body.download-form-page div#bg-page .container {
        background: #386CFF;
    }
    .download-form {
        max-width: 300px;
        padding: 40px 0px 0px;
        position: relative;
        top: 0;
        left: 0;
        right: 0px;
        transform: none;
        padding-top: 130px;
    }
    .download-form {
        max-width: 500px;
    }
    .download-form .field-group.two-col > p {
        display: block;
    }
    .download-form .field-group.two-col > p > span {
        width: 100%;
    }
    .download-form .field-group.two-col > p span:last-child {
        margin-top: 10px !important;
        display: block;
    }
    .download-form .subtext p {
        font-size: 18px;
        line-height: 26px;
    }
    /* End Download Form CSS */
    /* Start accordion section CSS */
    .accordion-row .grid_blocks .blocks.large_block {
        justify-content: space-between;
        gap: 15px;
    }
    .accordion-row .grid_blocks .blocks.large_block .block {
        width: calc(50% - 10px);
        padding: 0;
    }
    .accordion-header h4 {
        font-size: 20px;
    }
    .accordion-header {
        padding: 14px 0;
    }
    .accordion-row .grid_blocks .blocks.small_block .block {
        width: calc(50% - 10px);
        padding: 0;
    }
    .accordion-row .grid_blocks .blocks {
        gap: 15px;
    }
    .two_column_block {
        padding: 0;
        flex-direction: column;
    }
    .two_column_block .right-content .images, .two_column_block .right-content .content {
        padding-left: 0;
    }
    .two_column_block .right-content {
        width: 100%;
    }
    .two_column_block .content ul li {
        font-size: 16px;
        line-height: normal;
    }
    .two_column_block .right-content {
        margin-left: auto;
        width: 100%;
        margin-top: 30px;
    }
    .two_column_block .left-content h5 {
        font-size: 28px;
    }
    .image_with_grid_blocks .blocks .block h4 {
        padding: 0;
        font-size: 16px;
    }
    .image_with_grid_blocks .blocks .block {
        width: calc(50% - 82px);
    }
    .image_with_grid_blocks .blocks .block {
        padding: 15px 24px;
    }
    .image_with_grid_blocks .blocks {
        gap: 15px;
    }
    .image_with_grid_blocks .image-area {
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
        column-gap: 50px;
        align-items: center;
    }
    .image-area .full-img {
        width: 100%;
        padding-right: 0;
    }
    .image-area .right-grid {
        margin-left: 0;
    }
    .image-area .zoom-btn {
        margin-top: 0;
        margin-bottom: 0;
        padding-right: 0;
    }
    .two_column_block .right-content .images {
        justify-content: center;
    }
    .gallery-carousel-popup .card {
        width: calc(calc(100% / 3) - 9px);
    }
    .gallery-carousel-popup .gallery-popup .card img {
        height: 104px;
    }
    .has-gallery-carousel-popup .fancybox-button--close {
        right: 0;
    }
    .accordion-row .grid_blocks .blocks .block img {
        height: 70px;
    }
    .accordion-row .grid_blocks .blocks .block h5 {
        font-size: 20px;
        padding: 4px 0 5px;
    }
    /* End accordion section CSS */
    /* Start Vision Block Section CSS */
    .vision-block .vision-map .vision-image {
        width: 1280px;
        height: 562px !important;
    }
    .vision-block .toggle-button input[type="checkbox"].toggle + label .off, .vision-block .toggle-button input[type="checkbox"].toggle + label .on {
        height: 30px;
        width: 30px;
        line-height: 30px;
    }
    .vision-block .toggle-button input[type="checkbox"].toggle + label {
        height: 36px;
    }
    .vision-block .toggle-button input[type="checkbox"].toggle + label .off {
        margin-left: 30px;
    }
    .vision-block .toggle-button input[type="checkbox"].toggle:checked + label .on {
        margin-right: 30px
    }
    .vision-block .toggle-button input[type="checkbox"].toggle:checked + label:before, .vision-block .toggle-button input[type="checkbox"].toggle:focus:checked + label:before, .vision-block .toggle-button input[type="checkbox"].toggle:checked + label:hover:before, .vision-block .toggle-button input[type="checkbox"].toggle:focus:checked + label:hover:before {
        margin-left: -35px;
    }
    .vision-block .toggle-button input[type="checkbox"].toggle + label:before, .vision-block .toggle-button input[type="checkbox"].toggle + label:hover:before {
        top: 3px;
        width: 30px;
        height: 30px;
    }
    .vision-block .toggle-button .toggle-text {
        font-size: 14px;
    }
    .vision-stage .vision-layers .vision-layer.tap-title {
        display: block;
    }
    .desktop.click-title {
        display: none;
    }
    .vision-stage .vision-layers .vision-layer.click-title {
        display: none;
    }
    .vision-map{
        overflow-x: auto;
    }
    .vision-layer:not(.tap-title,.explore-view) .vision-body{
        width: 100px !important;
        height: 100px !important;
    }
    .vision-layer.tap-title .vision-zoom{
        transform: unset !important;
    }
    .vision-layer.tap-title .vision-zoom .vision-offset .vision-body{
        width: 240px !important;
        height: 100% !important;
    }
    .vision-layer.tap-title .vision-pos{
        top: -85.1782% !important;
        left: -73.5262% !important;
    }
    /* End Vision Block Section CSS */
    /* Start "Ready to Work" Page CSS */
    .contact-popup .popup__content {
        padding: 40px;
        max-width: 560px;
    }
    /* End "Ready to Work" Page CSS */
}

.vision-stage .vision-layers .vision-layer.tap-title {
    display: none;
}
@media screen and (max-width: 575px) {
    /* Start Vision Block Section CSS */
    .vision-layer:not(.tap-title,.explore-view) .vision-body{
        width: 150px !important;
        height: 150px !important;
    }
    /* End Vision Block Section CSS */
    /* Start Download Form CSS */
    .download-form h1 {
        font-size: 44px;
        line-height: 52px;
    }
    .download-form .field-group input.form-control,
    .download-form .field-group.checkbox > p,
    .download-form p { 
        font-size: 14px;
    }
    .download-form .wpcf7-submit {
        font-size: 15px;
    }
    /* End Download Form CSS */
    /* Start accordion section CSS */
    .accordion-row .grid_blocks .blocks.small_block .block {
        width: 100%;
        padding: 0;
        text-align: center;
        margin: 0 auto;
    }
    .accordion-row .grid_blocks .blocks.large_block .block {
        width: 100%;
    }
    .two_column_block .content ul {
        columns: 1;
    }
    .two_column_block .content ul li {
        text-align: center;
    }
    .image_with_grid_blocks .blocks .block {
        width: 100%;
    }
    .two_column_block .right-content .flex-box {
        width: 48%;
    }
    .two_column_block .right-content {
        row-gap: 15px;
    }
    .gallery-carousel-popup .card {
        width: 280px;
    }
    /* End accordion section CSS */
    /* Start Grid Block ( Image + Text ) Section CSS */
    .grid-block .inner-grid .inner-col {
        width: 100%;
    }
    /* End Grid Block ( Image + Text ) Section CSS */
     .vision-map-4 .explore-view .vision-body {
        width: 250px !important;
        height: 250px !important;
        font-size: 50px !important;
        line-height: 60px !important;
    }
    .vision-map-4 .explore-view[data-layer-id="819fda9b"] .vision-pos {
        top: 26% !important;
    }
    /* Start "Ready to Work" Page CSS */
    .contact-popup .half-col {
        flex-direction: column;
    }
    .contact-popup .flex-row p ,
    .contact-popup .half-col input {
        max-width: 100%;
        width: 100%;
    }
    /* End "Ready to Work" Page CSS */
}
/* Popup Design Start here */
body.vision-lightbox-active, html.vision-lightbox-active {
    overflow: hidden;
}
.vision-layer .vision-zoom .vision-offset .vision-body{
    font-weight: 700;
    font-family: ABCWhyte,Arial,Helvetica,sans-serif;
}
.vision-body{
    cursor: pointer;
}
.vision-lightbox-theme-light.vision-show.vision-lightbox{
    background-color: rgb(181 129 255 / 90%);
}
.vision-lightbox-theme-light.vision-lightbox.vision-show .vision-inner{
    padding: 0px;
    align-items: normal;
}
.vision-lightbox-theme-light.vision-lightbox.vision-show .vision-form{
    background-color: transparent;
    box-shadow: none;
    position: unset;
}
.vision-lightbox-theme-light.vision-lightbox.vision-show .vision-form .vision-frame{
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}
.vision-lightbox-theme-light.vision-lightbox.vision-show .vision-form .vision-frame::-webkit-scrollbar{
    display: none;
}
.vision-data{
    padding: 60px 30px;
    max-width: 1085px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
}
.vision-data p {
    order: -1;
}

.vision-data h2, .vision-data h3 {
    color: #fff;
    margin: 0px;
}

.vision-data h2 {
    font-family: WeaveDisplay,Arial,Helvetica,sans-serif;
}

.vision-data h3 {
    font-family: ABCWhyte,Arial,Helvetica,sans-serif,sans-serif;
    font-weight: 500 !important;
    padding: 0px;
    margin-bottom: 16px;
}
.vision-data h2 sup{
    font-size: 28px;
    vertical-align: super;
    font-weight: normal;
}
.vision-data h2{
    font-size: 40px;
    line-height: 40px;
    font-weight: 500 !important;
    padding-top: 30px;
}
.vision-lightbox-theme-light.vision-lightbox.vision-show .vision-close{
    top: 30px;
    right: 30px;
    width: 25px;
    height: 25px;
    opacity: 1;
}
.image-building .vision-theme-light.vision-map .vision-image{
    width: auto;
    height: 700px !important;
}
.vision-map.hide .vision-layers .vision-layer:not(.explore-view) {
    display: none;
}
.vision-map.show .vision-layers .vision-layer {
    display: block;
}
.vision-frame .vision-data h3 a {
    text-decoration: none;
    background: #fff;
    border-radius: 40px;
    padding: 15px 50px 15px 30px;
    color: #b580ff;
    font-size: 18px;
    font-weight: 400;
    position: relative;
    display: inline-block;
}
.vision-frame .vision-data h3 a:after {
    content: "";
    background-image: url('assets/img/long_arrow_alt_right_solid_icon.svg');
    background-repeat: no-repeat;
    height: 30px;
    width: 44px;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
}
.page-id-1637 .vision-image::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 1199px) {
    .image-building .vision-theme-light.vision-map .vision-image{
        height: 550px !important;
    }
}
@media screen and (max-width: 991px) {
    .image-building .vision-theme-light.vision-map .vision-image{
        width: auto;
    }
}
@media only screen and (max-width: 767px) {
    .vision-data h2{
        font-size: 30px;
        line-height: 30px;
    }
    .vision-data h2,
    .vision-data h2{
        padding: 0 0 20px 0;
    }
    .image-building .vision-theme-light.vision-map .vision-image {
        width: 100%;
    }
    .image-building .vision-theme-light.vision-map .vision-image{
        width: 1280px;
        height: 700px !important;
    }
    .vision-data h2 sup{
        font-size: 22px;
    }
}

@media (max-width: 720px){
    .col-half.left, .col-half.right {
        width: 100%;
    }
}

@media screen and (max-width: 575px) {
    .vision-data{
        padding: 60px 15px;
    }
    .image-building .vision-theme-light.vision-map .vision-image{
        height: 600px !important;
    }
    .vision-frame .vision-data h3 a {
        font-size: 15px;
        padding: 15px 50px 15px 20px;
    }
    .nav-mobile li a {
        font-size: 24px;
    }
}
/* Popup Design End here */

/* Image Building Design Start here */
.image-building{
    max-width: 1150px;
    margin-left: auto;
}
.vision-stage .vision-layers .vision-layer.click-title .vision-body,
.vision-stage .vision-layers .vision-layer.tap-title .vision-body,
.vision-stage .vision-layers .vision-layer.zoom-title .vision-body {
    font-family: WeaveDisplay,Arial,Helvetica,sans-serif;
}

.vision-stage .vision-layers .vision-layer.click-title .vision-body {
    padding-right: 100px;
}

.img-map-section {
    position: relative;
}

.desktop.click-title {
    position: absolute;
    top: 18%;
    left: 8%;
    font-size: 76px;
    width: 415px;
    line-height: 76px;
    font-family: WeaveDisplay,Arial,Helvetica,sans-serif;
    font-weight: normal !important;
}

.vision-layer.zoom-title .vision-body {
    position: relative;
}

.vision-layer.zoom-title .vision-body::before {
    content: "";
    background-image: url('assets/img/search-13-xxl.png');
    background-repeat: no-repeat;
    background-size: 100%;
    width: 50px;
    height: 50px;
    position: absolute;
    left: -60px;
    bottom: 10px;
}

.img-map-section .vision-theme-light .vision-tooltips .vision-form {
    background-color: transparent;
    padding: 0px;
    border-radius: 0px;
}
.img-map-section .vision-theme-light .vision-tooltips .vision-form:after {
    box-shadow: none;
}
.img-map-section .vision-tooltips .vision-data {
    padding: 0px;
    max-width: 100%;
    margin: 0px;
    display: block;
}
.tooltip-img-hover img {
    max-height: 300px;
    object-fit: cover;
}

@media screen and (min-width: 1600px) {
    .desktop.click-title {
        font-size: 94px;
        width: 500px;
        line-height: 94px;
    }
}

@media screen and (max-width: 1530px) {
    .desktop.click-title {
        left: 4%;
        font-size: 70px;
        width: 372px;
        line-height: 70px;
    }
}

@media screen and (max-width: 1440px) {
    .desktop.click-title {
        top: 30%;
        left: 0;
        font-size: 44px;
        width: 260px;
        line-height: 44px;
    }
}

@media screen and (max-width: 1199px) {
    .image-building{
        max-width: 950px;
    }
    .desktop.click-title {
        font-size: 36px;
        width: 200px;
        line-height: 36px;
    }
}
@media screen and (max-width: 991px) {
    .image-building{
        max-width: 720px;
    }
    .desktop.click-title {
        font-size: 30px;
        width: 160px;
        line-height: 30px;
    }
}
@media screen and (max-width: 767px) {
    .image-building{
        max-width: 100%;
    }
    .vision-layer.zoom-title, .vision-layer.search-icon {
        display: none;
    }
    .video-popup .iframe-wrapper iframe {
        width: 300px;
        height: 280px;
    }
}
/* Image Building Design End here */

.vision-data .background{
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-size: cover;
    background-repeat: no-repeat;
    filter: blur(4px);
    transform: scale(1.1);
}
.vision-data .zoom-container {
    position: relative;
    z-index: 2;
}
.zoom-container .zoom {
    background-image: url("/wp-content/uploads/2022/11/Cross_Section_transparent-min-2.png'");
    background-repeat: no-repeat;
    width: 1024px;
    overflow: hidden;
    cursor: zoom-in;
    margin: auto;
    filter: none !important;
}
.zoom-container .zoom.zoomout {
    background-image: unset;
}
.zoom-container .zoom img {
    transition: opacity .5s;
    display: block;
    width: 100%;
}
.zoom-container .zoom img:hover {
    opacity: 0;
}

/* Close button start here */
body .vision-lightbox-theme-light.vision-lightbox .vision-close {
    background-image: url("/wp-content/uploads/2022/11/close-icon.png");
}
/* Close button end here */

/* Start CSS for Step Inside Page */
.view-img-360 img {
    width: 40px;
    vertical-align: middle;
}
.full-screen .image.overaly-img::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0,0,0.3);
}
.link-over-img {
    position: absolute;
    left: 50%;
    top: 54%;
    transform: translate(-50%, -50%);
}
.link-over-img img {
    width: 80px;
    margin-bottom: 8px;
}
.link-over-img a {
    padding: 10px;
    font-size: 20px;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}
.link-over-img a:hover {
    text-decoration: none;
}
@media screen and (max-width: 720px) {
    .flx-grid-lvl .view-img-360 {display:none;}
}
/* End CSS for Step Inside Page */