:root{
    /* --main-color:#89ba7b; */
    --main-color:#024D44;
    --white-color: #fff;
    --black-color: #000;
    /* --green-color: #89ba7b; */
    --green-color: #024D44;

    --font-family-primary: "Assistant", sans-serif;

    --font-weight-light: 300;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 900;



/* --main-xyz-color:#89ba7b; */
}
*{
    box-sizing: border-box;
}
html{
    scroll-behavior: smooth;
}
body{
    direction: rtl;
    font-family: var(--font-family-primary);
    font-weight: var(--font-weight-regular);
    font-size: 20px;
    line-height: 30px;
    color: var(--second-color);
}
h1,h2,h3,h4,h4,h5{
    font-family: var(--font-family-primary);
    font-weight: var(--font-weight-bold);
}
ul, ol{
    padding-right: 0;
    list-style: none;
}
a{
    text-decoration: none;
}
p{
    margin-bottom: 0;
}
.text-black{
    color: var(--black-color) !important;
}
.global-btn{
    background-color: var(--main-color);
    font-size: 23px;
    line-height: 26px;
    border-radius: 50px;
    font-weight: var(--font-weight-regular);
    padding: 14px 30px;
    border: 1px solid var(--main-color);
    color: var(--white-color);
    position: relative;
    display: flex;
    align-items: center;
    text-align: center;
    max-width: fit-content;
}
.global-btn.submit-btn{
    border-radius: 8px;
    font-weight: var(--font-weight-bold);
    padding: 15px 17px !important;
}
.global-btn.submit-btn i{
    font-size: 21px;
    line-height: 23px;
}
.global-btn.submit-btn.rounded{
    border-radius: 50px !important;
}
.global-btn:hover{
    background: none;
    color: var(--main-color);
}
.global-btn.transparent{
    background: none;
    color: var(--main-color);
}
.global-btn.transparent:hover{
    background-color: var(--main-color);
    color: var(--white-color);
}
.global-btn > i{
    margin-right: 10px;
}
.w-fit-content{
    width: fit-content;
}
.min-w-fit-content{
    min-width: fit-content;
}
.max-w-fit-content{
    max-width: fit-content;
}
.mx-w-100{
    max-width: 100% !important;
}
input{
    width: 100%;
    padding: 1.2vh 1.2vw;
    background-color: var(--white-color);
    border-radius: 8px;
    font-weight: var(--font-weight-bold);
    border: 1px solid var(--white-color);
    font-size: 0.9vw;
    line-height: 1.8vh;
}
input::placeholder{
    color: var(--black-color);
}
input:focus{
    box-shadow: none;
    outline-color: var(--main-color);
}
input[type="checkbox"] {
    width: fit-content;
    transform: scale(1.2);
    margin-left: 8px;
    margin-top: 4px;
}
.rounded-input > input{
    border-radius: 50px;
}
.wpcf7 input[type="url"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"]{
    direction: rtl !important;
}
.wpcf7 form .wpcf7-response-output{
    margin: 20px 0 20px;
    text-align: center;
}
.wpcf7 form.invalid .wpcf7-response-output{
    color: #dc3232;
    border-color: #dc3232;
}
.wpcf7 form.sent .wpcf7-response-output {
    border-color:var(--black-color);
    color:var(--black-color);
}
/* CF7 validation message.
   It used to be position:absolute; top:-2.8vh, which anchored the message
   25px ABOVE the field it belongs to and drew it across whatever was there -
   the form title for the first row, the previous field for the others, and
   the submit button for the consent row. Measured clearance at rest was only
   3px, so any wrap or any font change put the red text straight over the
   input. It is now in flow, directly under its own field, which is exactly
   what mobiles.css already did below 767px.
   font-size is deliberately NOT set here: contact-form-7's own styles.css
   declares .wpcf7-not-valid-tip{font-size:1em} and is enqueued in wp_head,
   i.e. after this file, so the theme could never win. The message renders at
   20px and that is left untouched. */
.wpcf7-not-valid-tip{
    display: block;
    position: relative;
    top: auto;
    width: 100%;
    text-align: start;
}
/* Scoped to .wpcf7-form so mobiles.css - which still declares
   line-height:20px for this class - cannot re-tighten the leading below
   767px and make wrapped lines collide. */
.wpcf7-form .wpcf7-not-valid-tip{
    margin-top: 4px;
    line-height: 1.35;
}
/* #dc3232 (contact-form-7's red) on the #024D44 panel is a 2.0:1 contrast
   ratio - unreadable. #ff9c9c is 4.9:1 on the same background. */
.form-wrapper-area .wpcf7-not-valid-tip{
    color: #ff9c9c;
}
/* mobiles.css turns this wrap into a flex container on the consent row, which
   squeezed the message into a ~74px column beside the label. */
.check-col .wpcf7-form-control-wrap{
    flex-wrap: wrap;
}
.check-col .wpcf7-form-control-wrap .wpcf7-not-valid-tip{
    flex: 1 0 100%;
}
.wpcf7-list-item{
    margin: 0;
}
.wpcf7-checkbox .wpcf7-list-item-label {
    font-size: 0.75vw;
    display: block;
    line-height: 2vh;
    text-align: start;
}
.wpcf7-checkbox label{
    display: flex;
    align-items: start;
    gap: 4px;
    color: var(--white-color);
}
.wpcf7-spinner{
    display: none;
}
.contact-form .wpcf7-submit {
    background-color: var(--black-color);
    border: 1px solid var(--black-color);
    color: var(--white-color);
    min-height: 5.3vh;
    font-size: 1.3vw;
}
.text-justify{
    text-align: justify;
}
.text-justify-center{
    text-align: justify;
    text-align-last: center;
}

/**** Hero css start ****/
.lp-section, .page-template-template-home{
    background-color: var(--black-color);
}
.bg-img-wrapper .bg-img{
    height: 96vh;
    object-fit: cover;
    object-position: center center;
}
.logos-wrapper{
    position: fixed;
    top: 2vw;
    left: 3vw;
    gap: 30px;
    align-items: end !important;
}
.logos-wrapper .gn-logo{
    filter: drop-shadow(0 0 10px rgb(0, 0, 0));
}
.logos-wrapper > img {
    /* max-width: 160px;
    max-height: 170px; */
    max-width: 100%;
    height: 5vw;
    /* max-height: 75px; */
    object-fit: contain;
    object-position: center center;
}
.hero-wrapper .sticker{
    top: 3vh;
    right: 31vw;
    max-width: 7vw;
    z-index: 99;
    box-shadow: none;
    border-radius: 50%;
}
.hero-content-wrapper{
    position: absolute;
    top: 40px;
    right: 66px;
}
.hero-content-wrapper::before {
    content: '';
    width: calc(100% + 1.5vw);
    height: 85vh;
    border: 2px solid var(--white-color);
    position: absolute;
    left: 50%;
    top: -1.5vh;
    transform: translateX(-50%);
}
.hero-content-wrapper .content{
    max-width: 34vw;
    z-index: 9;
    background-color: rgba(255, 255, 255, 90%);
}
.hero-content-wrapper .content .content-area{
    padding: 20px 14px 0;
}
.hero-content-wrapper .content .content-area h1.title {
    font-size: 2.8vw;
    line-height: 5.8vh;
    margin-bottom: 2.5vh;
}
.hero-content-wrapper .content .content-area h1.title span{
    font-weight: 400;
}
.z-999{
    z-index: 3;
}
.hero-content-wrapper .desc{
    margin-bottom: 3vh;
    font-size: 1.2vw;
    line-height: 3.1vh;
    font-weight: var(--font-weight-regular);
    color: var(--black-color);
}
.hero-content-wrapper .content > .title{
    font-size: 1.6vw;
    line-height: 2.8vh;
    font-weight: var(--font-weight-bold);
    color: var(--white-color);
    margin-bottom: 1.6vh;
    position: relative;
}
.hero-content-wrapper .content > .subtitle {
    font-weight: var(--font-weight-regular);
    margin-bottom: 15px;
    color: var(--white-color);
    font-size: 1vw;
    line-height: 3vh;
}
.payment-terms .box {
    border: 2px solid var(--black-color);
    max-width: fit-content;
    padding: 0.5vh 0.5vw 1vh;
    margin: 0 auto 1.5vh;
    position: relative;
}
.payment-terms .box::before {
    content: '';
    width: calc(100% + 20px);
    height: 83%;
    background: var(--main-color);
    position: absolute;
    left: 50%;
    bottom: -10px;
    z-index: -1;
    transform: translateX(-50%);
}
.payment-terms .box .installment {
    font-size: 4.5vw;
    line-height: 6.5vh;
    font-weight: var(--font-weight-bold);
    margin-bottom: 1vh;
    z-index: 1;
    position: relative;
    color: var(--white-color);
}
.payment-terms .box .installment > span{
    color: var(--white-color);
}
.payment-terms .desc{
    font-size: 0.9vw;
    line-height: 2.6vh;
    margin-bottom: 1vh;
    font-weight: var(--font-weight-semibold);
    z-index: 1;
    position: relative;
}
.payment-terms .desc.bottom-desc{
    margin-bottom: 0;
    font-weight: var(--font-weight-regular);
}
.price-wrapepr > .desc {
    font-size: 1.1vw;
    font-weight: var(--font-weight-bold);
    margin-bottom: 0.5vh;
    line-height: 2.5vh;
}
.price-area .price {
    font-weight: var(--font-weight-bold);
    font-size: 2.6vw;
    line-height: 4vh;
    margin-bottom: 0;
}
.price-area .price > span {
    font-size: 1.5vw;
}
.price-area .price-badge {
    max-width: fit-content;
    background-color: var(--white-color);
    color: var(--main-color);
    font-weight: var(--font-weight-bold);
    font-size: 0.7vw !important;
    line-height: 1.8vh;
    position: absolute;
    top: 49%;
    right: 0.35vw;
    transform: translateY(-50%);
    padding: 0vw;
}
.feature-list {
    gap: 1.8vw;
    background: #CCE1DE;
        padding: 1vw;
    /* background-image: url('../images/recbg.webp');
    background-size: cover;
    background-position: center center;
    padding: 2vh 2vw;
    margin-top: 2vh; */
}
.feature-list .item > img {
    margin-bottom: 1vh;
    height: 5vh;
    min-height: 5vh;
    object-fit: contain;
}
.feature-list .item > .desc {
    margin-bottom: 0;
    font-size: 0.8vw;
    font-weight: var(--font-weight-bold);
    line-height: 2vh;
}
.button-group {
    position: absolute;
    left: -7.4vw;
    top: 50%;
    transform: translateY(-50%);
    z-index: 99;
}
.button-group .global-btn {
    min-width: 7.5vw;
    font-size: 1.2vw;
    line-height: 1.2vh;
    background-color: var(--main-color);
    border-radius: 50px 0 0 50px !important;
    font-weight: var(--font-weight-bold);
    padding: 2vh 1vw;
    color: var(--white-color);
    position: relative;
    margin-bottom: 1vh;
}
.button-group .global-btn:last-child{
    margin-bottom: 0px;
}
.button-group .global-btn i {
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
}
.form-wrapper-area{
    padding: 20px 40px 40px;
    background-color: var(--main-color);
}
.form-title {
    font-size: 1.4vw;
    line-height: 3.2vh;
    font-weight: var(--font-weight-bold);
    color: var(--white-color);
    margin-bottom: 2.5vh;
    position: relative;
}
.form-wrap{
    max-width: 38vw;
    padding: 0 40px 28px;
    z-index: 9;
    position: relative;
}
.form-desc{
    font-size: 0.75vw;
    display: block;
    line-height: 2vh;
    text-align: start;
    color: var(--white-color);
    margin-top: 2vh;
}
.text-col > p {
    font-size: 0.75vw;
    display: block;
    line-height: 2vh;
    text-align: start;
    color: var(--white-color);
    margin-bottom: 2vh;
}
.copyright-text{
    font-size: 0.7vw;
    line-height: 2vh;
    text-align: start;
    color: var(--white-color);
    position: absolute;
    left: -7vw;
    top: 86vh;
    z-index: 9;
}
.field-col {
    margin-bottom: 2vh;
}

/* Gallery css start */
.lb-outerContainer{
    border-radius: 0 !important;
    overflow: hidden;
}
.lb-nav a{
    width: 45px !important;
    height: 45px;
    background-position: center center !important;
    background-size: 14px !important;
    border-radius: 50% !important;
    background-color: var(--white-color) !important;
    top: 50%;
    position: absolute;
    transform: translateY(-50%);
    opacity: 1 !important;
}
.lb-nav a.lb-next{
    margin-right: 15px;
}
.lb-nav a.lb-prev{
    margin-left: 15px;
}
.lightboxOverlay{
    max-width: 100%;
    background-color: rgba(0, 0, 0, 0.6) !important;
    opacity: 1 !important;
    backdrop-filter: blur(10px);
}
.lightbox{
    position: fixed !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}
.lb-details{
    display: none;
}
.lb-data{
    top: 10px;
    position: absolute;
    display: block;
    z-index: 99;
    width: 45px !important;
    height: 45px;
    opacity: 1;
    margin-right: 7px;
}
.lb-data .lb-close{
    width: 45px !important;
    height: 45px !important;
    background-position: center center !important;
    background-size: 16px !important;
    border-radius: 50% !important;
    background-color: var(--white-color) !important;
    opacity: 1 !important;
}
.lightbox .lb-image{
    border: 0 !important;
}

/**** Page video css start ****/
#desktop-video-container, #mobile-video-container {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    overflow: hidden !important;
    z-index: 0 !important;
    background-color: var(--main-color);
}
.video-container {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    overflow: hidden !important;
    z-index: 0 !important;
}
.video-wrapper {
    position: absolute !important;
    top: -2px !important;
    left: 0 !important;
    width: 84vw !important;
    height: 100vh !important;
    overflow: hidden !important;
    background-color: var(--main-color);
}
iframe.video-iframe {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    object-position: center !important;
}
.video-iframe {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 100vw !important;
    height: auto !important;
    transform: translate(-50%, -50%) !important;
    object-fit: contain !important;
    min-width: 100vw !important;
    min-height: 100% !important;
    border: none !important;
}
.mobile-buttons {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    z-index: 50;
    padding: 15px;
    gap: 15px;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 -5px 20px rgba(0, 0, 0, 0.1);
}
.call-button {
    background: linear-gradient(135deg, #f8b400, #ffc93c);
    color: #333;
    box-shadow: 0 4px 15px rgba(248, 180, 0, 0.4);
}
.mobile-button {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    border-radius: 14px;
    border: none;
    font-weight: bold;
    font-size: 16px;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    height: 65px;
}
.mobile-button-icon {
    margin-left: 10px;
    position: relative;
    z-index: 2;
}
.h-6 {
    height: 1.5rem;
}
.w-6 {
    width: 1.5rem;
}
.mobile-button-text {
    position: relative;
    z-index: 2;
    font-weight: 700;
    white-space: nowrap;
}
.info-button {
    background: var(--black-color);
    color: white;
    box-shadow: 0 4px 15px rgba(49, 103, 56, 0.4);
}

/* Global Page */
.privacy-banner{
    min-height: 360px;
    padding: 16px;
    margin-bottom: 60px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    position: relative;
}
.privacy-banner::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.5);
}
.page-content{
    padding-bottom: 80px;
}
.page-content ul {
    list-style: disc;
    margin-right: 16px;
}
.page-content h2, .page-content h3 {
    margin-top: 26px;
}
.page-content p {
    margin-bottom: 16px;
    line-height: 28px;
}
.page-content p a{
    color: var(--main-color);
}
.privacy-banner h1 {
    font-size: 50px;
    line-height: 56px;
    margin-bottom: 16px;
    color: var(--white-color);
}
.privacy-banner-content{
    z-index: 9;
    position: relative;
}
.breadcrumbs {
    gap: 10px;
    margin-bottom: 0;
}
.breadcrumbs li {
    color: var(--white-color);
    font-size: 24px;
    line-height: 24px;
    font-weight: var(--font-weight-semibold);
}
.breadcrumbs li a{
    color: var(--main-color);
}
.privacy-links {
    gap: 10px;
    margin-top: 16px;
    font-size: 0.9vw;
    line-height: 2.2vh;
    color: var(--white-color);
}
.privacy-links a{
    color: var(--white-color);
    text-decoration: underline;
    line-height: unset;
}


.modal.bottom-to-top:not(.show) .modal-dialog{
	-webkit-transform: translate(0, 100%)scale(1);
    transform: translate(0, 100%)scale(1);
}

body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) input, textarea, select {
    border-color: #000 !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) input::placeholder, textarea::placeholder{
    color: #000;
}

body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .submit-col .global-btn{
    border-color: #000 !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .icon-bg img {
    background: #000 !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .transparent-bg img {
    background: transparent !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .transparent-bg {
    background: transparent !important;
}

@media (max-width: 600px) {
		body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .mobile-dark-bg{
			background: #000 !important;
		}
		body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .mobile-dark-bg img{
			background: #000 !important;
		}
}




/* reCAPTCHA v3 badge: keep it above the fixed bottom bar, and out from under it on mobile. */
.grecaptcha-badge {
    z-index: 60 !important;          /* .mobile-buttons is z-index: 50 */
}
@media (max-width: 767px) {
    .grecaptcha-badge {
        bottom: 105px !important;    /* .mobile-buttons is 95px tall */
    }
    .hero-content-wrapper .content {
        margin: 36px auto 0 !important;
    }
    .price-area .price-badge {
        font-size: 13px !important;
    }
}
/* Remove the problematic body filter only during grayscale mode */
body.pojo-a11y-grayscale {
    -webkit-filter: none !important;
    filter: none !important;
    overflow-x: hidden !important;
}
body.pojo-a11y-grayscale .wpcf7-response-output{
    color: #fff;
}

/* Reapply grayscale to the document root */
html:has(body.pojo-a11y-grayscale) {
    -webkit-filter: grayscale(100%) !important;
    filter: grayscale(100%) !important;
}

/* Change toolbar positioning only during grayscale mode */
body.pojo-a11y-grayscale #pojo-a11y-toolbar {
    position: fixed !important;
    z-index: 99999 !important;
}
.cc-slider, body.pojo-a11y-high-contrast .cc-slider, body.pojo-a11y-grayscale .cc-slider,
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .cc-slider,
body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .cc-slider{
    background: #ababff !important;
}
body.pojo-a11y-grayscale .wpcf7-not-valid-tip {
  color: #fff;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .privacy-banner {
    background-image: url('https://yosefatzvi.com/wp-content/uploads/sites/30/2025/04/bg-img.webp') !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .privacy-banner-content {
    width: fit-content !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .button-group{
    background: transparent !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .cc-btn{
    border: 1px solid #000 !important;
}
body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .cc-slider {
    background: gray !important;
}
body.pojo-a11y-high-contrast .privacy-banner-content {
    width: fit-content !important;
}
body.pojo-a11y-high-contrast .privacy-banner {
    background-image: url('https://yosefatzvi.com/wp-content/uploads/sites/30/2025/04/bg-img.webp') !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
}
body.pojo-a11y-high-contrast .feature-list .item img{
    background: #fff !important;
}
body.pojo-a11y-high-contrast .installment span {
    background: transparent !important;
}
body.pojo-a11y-high-contrast .button-group{
    background: transparent !important;
}
body.pojo-a11y-high-contrast .logos-wrapper {
    background: transparent !important;
}
body.pojo-a11y-high-contrast .logos-wrapper img {
    background: transparent !important;
}
body.pojo-a11y-high-contrast .cc-slider {
    background: gray !important;
}
body.pojo-a11y-high-contrast input::placeholder, 
body.pojo-a11y-high-contrast textarea::placeholder {
    color: #fff !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .privacy-banner-content {
    width: fit-content !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .privacy-banner {
    background-image: url('https://yosefatzvi.com/wp-content/uploads/sites/30/2025/04/bg-img.webp') !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .installment span {
    background: transparent !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .feature-list .item img{
    background: #fff !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .button-group{
    background: transparent !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .logos-wrapper {
    background: transparent !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .logos-wrapper img {
    background: transparent !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) input::placeholder, 
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) textarea::placeholder {
    color: #fff !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .cc-slider {
    background: gray !important;
}
body #cc-floater {
    bottom: unset !important;
    top: 12.5vw !important;
    left: 0.5vw !important;
    right: unset !important;
    width: 2.5vw !important;
    height: 2.5vw !important;
    line-height: 2.5vw;
    text-align: center !important;
    z-index: 9998 !important;
}
#cc-floater svg{
    width: 1.5vw !important;
    height: 1.5vw !important;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#pojo-a11y-toolbar{
    z-index: 9999 !important;
    top: 9vw !important;
}
#pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
    font-size: 1.5vw !important;
    padding: 0.6vw !important;
}
#pojo-a11y-toolbar .pojo-a11y-toolbar-toggle svg{
    width: 1.5vw !important;
}
#pojo-a11y-toolbar.pojo-a11y-toolbar-left {
  top: 8vw !important;
}

@media(max-width: 767px){
    #pojo-a11y-toolbar.pojo-a11y-toolbar-left {
    top: 50vw !important;
    }
    body #cc-floater{
        bottom: unset !important;
        top: 64vw !important;
        left: 2px !important;
        width: 7.5vw !important;
        height: 7.5vw !important;
        line-height: 7.5vw;
        padding: 4.5vw !important;
    }
    #cc-floater svg {
        width: 5vw !important;
        height: 5vw !important;
    }
    #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
        font-size: 5.5vw !important;
        padding: 2vw !important;
    }
    #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle svg {
        width: 5.8vw !important;
    }
    body #pojo-a11y-toolbar {
        top: 48vw !important;
    }


    .cc-pos-right {
        left: 50%;
        right: unset !important;
        bottom: 60px !important;
        width: 95%;
        transform: translateX(-50%);
    }
    .cc-btn{
        padding: 7px 9px !important;
    }
    .cc-pos-left {
        left: 10px !important;
        right: 10px !important;
        bottom: 86px !important;
    }
}

#pojo-a11y-toolbar .pojo-a11y-toolbar-overlay ul.pojo-a11y-toolbar-items li.pojo-a11y-toolbar-item a svg {
    padding-right: 0 !important;
    padding-left: 6px !important;
    font-family: heebo;
}

/* ==========================================================================
   Consent checkbox under the accessibility contrast schemes.

   The plugin repaints every input:
     high-contrast     -> background: black !important
     negative-contrast -> background: black !important
     light-background  -> background: white !important
   while the checkbox keeps appearance:auto and a 0px border, so the box ends
   up the same colour as the page it sits on. Measured: invisible in all three
   schemes, and the checked state invisible too - there is nothing to see
   whether it is ticked or not.

   SPECIFICITY. The negative-contrast rules are written
   `body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar)` = (1,1,1) -
   the :not() carries an ID, so a class-only selector can never beat them.
   The :not(#pojo-a11y-toolbar) below (always true for this input) lifts these
   rules to (1,3,2) / (1,4,2) so they win in every scheme.

   Rendering: unchecked = hollow box with a 2px currentColor border;
   checked = the same box filled with currentColor, inset 3px. currentColor
   means it picks up each scheme's own text colour automatically - white in
   high contrast, yellow in negative contrast, black on light background - so
   there is no hard-coded colour to keep in sync.

   Nothing here applies with no scheme selected: the checkbox keeps its native
   16x16 appearance:auto rendering exactly as today.
   ========================================================================== */
body.pojo-a11y-high-contrast .wpcf7-checkbox input[type="checkbox"]:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .wpcf7-checkbox input[type="checkbox"]:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .wpcf7-checkbox input[type="checkbox"]:not(#pojo-a11y-toolbar) {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 18px !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 !important;              /* the generic input padding (1.2vh 1.2vw)
                                           becomes real once appearance is none */
    border: 2px solid currentColor !important;
    border-radius: 3px !important;
    background: transparent !important;
    background-color: transparent !important;
    transform: none !important;
    margin-top: 2px !important;
    cursor: pointer;
}
body.pojo-a11y-high-contrast .wpcf7-checkbox input[type="checkbox"]:checked:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .wpcf7-checkbox input[type="checkbox"]:checked:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .wpcf7-checkbox input[type="checkbox"]:checked:not(#pojo-a11y-toolbar) {
    padding: 3px !important;
    background: currentColor !important;
    background-color: currentColor !important;
    background-clip: content-box !important;
}

/* ==========================================================================
   Gallery lightbox under the accessibility contrast schemes.

   .lb-nav is a transparent <div> that lightbox.js lays over the photo at
   exactly the photo's size (measured 1420x680, position:absolute, z-index:10)
   purely to catch prev/next clicks. The plugin repaints every <div>:

     high-contrast     -> background: black  !important
     negative-contrast -> background: black  !important
     light-background  -> background: white  !important

   so that click layer turns opaque and covers the photo completely - which is
   why the image is invisible in all three schemes but fine in grayscale
   (grayscale only filters, it does not repaint backgrounds).

   The same sweep also strips background-image from <a>, which wipes the
   close / prev / next icons, so they are restored here from the theme's own
   assets. URLs are relative to this file: assets/css/ -> ../images/.

   SPECIFICITY: same as the checkbox block above - the negative-contrast rules
   are `body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar)` = (1,1,1),
   so the always-true :not(#pojo-a11y-toolbar) is needed to out-specify them.

   Nothing here applies with no scheme selected.
   ========================================================================== */
body.pojo-a11y-high-contrast .lightbox .lb-nav:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lightbox .lb-nav:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lightbox .lb-nav:not(#pojo-a11y-toolbar),
body.pojo-a11y-high-contrast .lightbox .lb-image:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lightbox .lb-image:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lightbox .lb-image:not(#pojo-a11y-toolbar),
body.pojo-a11y-high-contrast .lightbox .lb-container:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lightbox .lb-container:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lightbox .lb-container:not(#pojo-a11y-toolbar),
body.pojo-a11y-high-contrast .lb-dataContainer .lb-data:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lb-dataContainer .lb-data:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lb-dataContainer .lb-data:not(#pojo-a11y-toolbar),
body.pojo-a11y-high-contrast .lb-data .lb-details:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lb-data .lb-details:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lb-data .lb-details:not(#pojo-a11y-toolbar) {
    background: transparent !important;
    background-color: transparent !important;
}

body.pojo-a11y-high-contrast .lb-data .lb-close:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lb-data .lb-close:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lb-data .lb-close:not(#pojo-a11y-toolbar),
body.pojo-a11y-high-contrast .lb-nav a.lb-prev:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lb-nav a.lb-prev:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lb-nav a.lb-prev:not(#pojo-a11y-toolbar),
body.pojo-a11y-high-contrast .lb-nav a.lb-next:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lb-nav a.lb-next:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lb-nav a.lb-next:not(#pojo-a11y-toolbar),
body.pojo-a11y-high-contrast .lb-loader .lb-cancel:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lb-loader .lb-cancel:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lb-loader .lb-cancel:not(#pojo-a11y-toolbar) {
    background-repeat: no-repeat !important;
    background-position: center center !important;
}
body.pojo-a11y-high-contrast .lb-data .lb-close:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lb-data .lb-close:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lb-data .lb-close:not(#pojo-a11y-toolbar) {
    background-color: #fff !important;
    background-image: url(../images/close.png) !important;
    background-size: 16px !important;
}
body.pojo-a11y-high-contrast .lb-nav a.lb-prev:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lb-nav a.lb-prev:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lb-nav a.lb-prev:not(#pojo-a11y-toolbar) {
    background-color: #fff !important;
    background-image: url(../images/prev.png) !important;
    background-size: 14px !important;
}
body.pojo-a11y-high-contrast .lb-nav a.lb-next:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lb-nav a.lb-next:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lb-nav a.lb-next:not(#pojo-a11y-toolbar) {
    background-color: #fff !important;
    background-image: url(../images/next.png) !important;
    background-size: 14px !important;
}
body.pojo-a11y-high-contrast .lb-loader .lb-cancel:not(#pojo-a11y-toolbar),
body.pojo-a11y-negative-contrast .lb-loader .lb-cancel:not(#pojo-a11y-toolbar),
body.pojo-a11y-light-background .lb-loader .lb-cancel:not(#pojo-a11y-toolbar) {
    background-image: url(../images/loading.gif) !important;
}
.wpcf7-spinner {
    display: none !important;
}

