/* ==========================================================================
   accessibility.css — fixes for "One Click Accessibility" (Pojo legacy)
   Pages covered: / (elementor-1699 + popup 1185) and /thank-you/ (elementor-1638)

   The plugin only adds a body class and percentage font-sizes. On this site
   (rem/px based) that means: every heading collapses to the same size, inputs
   and nested spans compound to 128–256px, buttons/cookie buttons freeze.

   RULE A: every font rule below is gated behind
           body[class*="pojo-a11y-resize-font-"] — no size chosen = no change.
   Contrast-mode rules (Part 2) are gated behind the plugin's contrast classes.
   ========================================================================== */


/* ==========================================================================
   PART 1 — FONT RESIZE
   ========================================================================== */

/* Section 1: STEP → MULTIPLIERS
     --a11y-scale       text / headings / lists          +15% … +60%
     --a11y-scale-form  inputs, submit, buttons, messages +30% … +75%
     --a11y-scale-cc    cookie banner + settings dialog  +8%  … +40%  (kept a bit smaller)
     --a11y-scale-tb    accessibility toolbar items      +8%  … +45%  (kept a bit smaller) */
:root { --a11y-scale: 1; --a11y-scale-form: 1; --a11y-scale-cc: 1; --a11y-scale-tb: 1; }
body.pojo-a11y-resize-font-120 { --a11y-scale: 1.10; --a11y-scale-form: 1.20; --a11y-scale-cc: 1.05; --a11y-scale-tb: 1.05; }
body.pojo-a11y-resize-font-130 { --a11y-scale: 1.15; --a11y-scale-form: 1.30; --a11y-scale-cc: 1.08; --a11y-scale-tb: 1.08; }
body.pojo-a11y-resize-font-140 { --a11y-scale: 1.22; --a11y-scale-form: 1.40; --a11y-scale-cc: 1.13; --a11y-scale-tb: 1.14; }
body.pojo-a11y-resize-font-150 { --a11y-scale: 1.28; --a11y-scale-form: 1.48; --a11y-scale-cc: 1.18; --a11y-scale-tb: 1.19; }
body.pojo-a11y-resize-font-160 { --a11y-scale: 1.35; --a11y-scale-form: 1.55; --a11y-scale-cc: 1.23; --a11y-scale-tb: 1.25; }
body.pojo-a11y-resize-font-170 { --a11y-scale: 1.42; --a11y-scale-form: 1.62; --a11y-scale-cc: 1.27; --a11y-scale-tb: 1.30; }
body.pojo-a11y-resize-font-180 { --a11y-scale: 1.48; --a11y-scale-form: 1.68; --a11y-scale-cc: 1.31; --a11y-scale-tb: 1.35; }
body.pojo-a11y-resize-font-190 { --a11y-scale: 1.54; --a11y-scale-form: 1.72; --a11y-scale-cc: 1.36; --a11y-scale-tb: 1.40; }
body.pojo-a11y-resize-font-200 { --a11y-scale: 1.60; --a11y-scale-form: 1.75; --a11y-scale-cc: 1.40; --a11y-scale-tb: 1.45; }

/* Section 2: Base pin on <body> (measured baseline 16px). calc(), never flat px. */
html body[class*="pojo-a11y-resize-font-"] {
    font-size: calc(16px * var(--a11y-scale)) !important;
}

/* Section 2b: Accessibility toolbar — grows on its own, gentler curve, so the
   menu items stay a bit smaller than page text. Items are 80% of the overlay
   (12.8px at rest → 18.6px at max; the plugin alone took them to 25.6px). */
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay {
    font-size: calc(16px * var(--a11y-scale-tb)) !important;
}
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay p.pojo-a11y-toolbar-title,
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay li.pojo-a11y-toolbar-item a span,
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay li.pojo-a11y-toolbar-item a svg {
    font-size: inherit !important;
}

/* Section 3: Kill the compounding percentages inside the content root.
   .elementor covers the page (1699 / 1638) and the popup template (1185). */
html body[class*="pojo-a11y-resize-font-"] .elementor p,
html body[class*="pojo-a11y-resize-font-"] .elementor li,
html body[class*="pojo-a11y-resize-font-"] .elementor span,
html body[class*="pojo-a11y-resize-font-"] .elementor label,
html body[class*="pojo-a11y-resize-font-"] .elementor blockquote,
html body[class*="pojo-a11y-resize-font-"] .elementor legend,
html body[class*="pojo-a11y-resize-font-"] .elementor code,
html body[class*="pojo-a11y-resize-font-"] .elementor pre,
html body[class*="pojo-a11y-resize-font-"] .elementor dd,
html body[class*="pojo-a11y-resize-font-"] .elementor dt {
    font-size: inherit !important;
}

/* Section 3b: Heading fallback — theme defaults (hello-elementor) for headings
   that have no size of their own in post-*.css. Per-element rules in
   Section 5 are more specific and win. */
html body[class*="pojo-a11y-resize-font-"] .elementor h1 { font-size: calc(2.5rem  * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor h2 { font-size: calc(2rem    * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor h3 { font-size: calc(1.75rem * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor h4 { font-size: calc(1.5rem  * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor h5 { font-size: calc(1.25rem * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor h6 { font-size: calc(1rem    * var(--a11y-scale)) !important; }

/* Section 3c: Elementor library sizes the plugin never reaches. */
html body[class*="pojo-a11y-resize-font-"] .elementor .elementor-nav-menu--dropdown {
    font-size: calc(13px * var(--a11y-scale)) !important;
}

/* Section 4: FORM CONTROLS + messages — form curve, px only.
   Theme: hello `input{font-size:1rem}`, kit `.field-wrap-form input` and
   `.submit-btn-ads input[type=submit]` 16px. No breakpoint overrides exist. */
html body[class*="pojo-a11y-resize-font-"] .elementor input:not([type="hidden"]),
html body[class*="pojo-a11y-resize-font-"] .elementor select,
html body[class*="pojo-a11y-resize-font-"] .elementor textarea,
html body[class*="pojo-a11y-resize-font-"] .elementor .field-wrap-form input,
html body[class*="pojo-a11y-resize-font-"] .elementor .footer-form input,
html body[class*="pojo-a11y-resize-font-"] .elementor .submit-btn-ads input[type="submit"] {
    font-size: calc(16px * var(--a11y-scale-form)) !important;
}
/* Elementor buttons (frontend default 15px, size-sm) — the text span inherits. */
html body[class*="pojo-a11y-resize-font-"] .elementor .elementor-button {
    font-size: calc(15px * var(--a11y-scale-form)) !important;
}
/* CF7 tip (1em of a 16px wrap, static, flows under the field) and response. */
html body[class*="pojo-a11y-resize-font-"] .elementor .wpcf7-not-valid-tip {
    font-size: calc(16px * var(--a11y-scale-form)) !important;
    line-height: 1.4 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor .wpcf7-response-output {
    font-size: calc(16px * var(--a11y-scale-form)) !important;
    line-height: 1.5 !important;
}
/* Site's own JS error (.custom-field-error, 13px, absolute under the field). */
html body[class*="pojo-a11y-resize-font-"] .elementor .custom-field-error {
    font-size: calc(13px * var(--a11y-scale-form)) !important;
    line-height: 1.3 !important;
}

/* Section 4b: VALIDATION MESSAGE POSITION (mobile hero forms).
   .custom-field-error is absolute (5px under the field, out of flow). On
   ≤767px .form-div stacks the fields with only 10px between them, so the
   message lands on the next field / submit button — 15px overlap at rest,
   25px at max. While a size is chosen, reserve its height below that field.
   CF7 .wpcf7-not-valid-tip is static (flows) and the footer form's error is
   position:relative — both already clear. */
@media (max-width: 767px) {
    html body[class*="pojo-a11y-resize-font-"] .elementor .form-div .field-wrap-form:has(.custom-field-error) {
        margin-bottom: calc(13px * var(--a11y-scale-form) * 1.3 + 12px) !important;
    }
}

/* Section 4c: COOKIE BANNER (#cc-banner-root.cc-root) + SETTINGS DIALOG
   (.cc-modal-wrap — a separate body child, NOT inside .cc-root).
   Gentler --a11y-scale-cc curve so the popup stays a bit smaller than page
   text. Generic inherit first, then explicit pins — every pin is calc(). */
html body[class*="pojo-a11y-resize-font-"] .cc-root p,
html body[class*="pojo-a11y-resize-font-"] .cc-root li,
html body[class*="pojo-a11y-resize-font-"] .cc-root span,
html body[class*="pojo-a11y-resize-font-"] .cc-root label,
html body[class*="pojo-a11y-resize-font-"] .cc-root a,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap p,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap li,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap span,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap label,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap a,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap input {
    font-size: inherit !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-root {
    font-size: calc(14px * var(--a11y-scale-cc)) !important;
    line-height: 1.5 !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-title,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-title {
    font-size: calc(16px * var(--a11y-scale-cc)) !important;
    line-height: 1.3 !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-body,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-body {
    font-size: calc(14px * var(--a11y-scale-cc)) !important;
    line-height: 1.5 !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-btn,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-btn {
    font-size: calc(14px * var(--a11y-scale-cc)) !important;
}
/* Dialog buttons are `font: inherit` from the dialog (16px), not 14px. */
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-btn {
    font-size: calc(16px * var(--a11y-scale-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-lang-toggle,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-lang-toggle {
    font-size: calc(12px * var(--a11y-scale-cc)) !important;
}
/* Settings dialog: base text inherits body (16px) in the cookie CSS. */
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-modal {
    font-size: calc(16px * var(--a11y-scale-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-modal-head h2 {
    font-size: calc(18px * var(--a11y-scale-cc)) !important;
    line-height: 1.3 !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-modal-close {
    font-size: calc(24px * var(--a11y-scale-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-modal-body > p {
    font-size: calc(16px * var(--a11y-scale-cc)) !important;
    line-height: 1.5 !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-cat-desc {
    font-size: calc(13px * var(--a11y-scale-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-required-badge {
    font-size: calc(11px * var(--a11y-scale-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-cookies-list,
html body[class*="pojo-a11y-resize-font-"] .cc-cookies-list th,
html body[class*="pojo-a11y-resize-font-"] .cc-cookies-list td,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-cookies-list,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-cookies-list th,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-cookies-list td {
    font-size: calc(12px * var(--a11y-scale-cc)) !important;
}


/* Section 4d: LAYOUT WHILE TEXT IS ENLARGED -------------------------------- */

/* Toolbar: every item on one line. The panel is 180px and slides by 180px;
   widen it with the text and move both offsets with it. */
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar {
    --a11y-tb-w: max(180px, calc(148px * var(--a11y-scale-tb)));
}
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar.pojo-a11y-toolbar-left {
    left: calc(var(--a11y-tb-w) * -1) !important;
}
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar.pojo-a11y-toolbar-left.pojo-a11y-toolbar-open {
    left: 0 !important;
}
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar.pojo-a11y-toolbar-left .pojo-a11y-toolbar-toggle {
    left: var(--a11y-tb-w) !important;
}
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay {
    width: var(--a11y-tb-w) !important;
}
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay li.pojo-a11y-toolbar-item a,
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay p.pojo-a11y-toolbar-title {
    white-space: nowrap !important;
}

/* Header (desktop): menu + "תאום פגישה" stay on one row. Columns keep their
   default widths and grow with the text; the 1140px container widens (up
   to the viewport) when the row no longer fits. The logo column gives up
   its spare space only when the viewport is too narrow; under 1280px the
   menu may still wrap rather than overflow the screen. */
@media (min-width: 1025px) {
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-273f3576 > .elementor-container {
        width: max-content !important;
        min-width: min(1140px, 100%) !important;
        max-width: calc(100% - 20px) !important;
    }
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-273f3576 > .elementor-container > .elementor-column {
        width: auto !important;
        flex: 0 0 auto !important;
    }
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-273f3576 > .elementor-container > .elementor-column.elementor-element-5ae4a792 {
        width: 273.6px !important;
        flex: 0 1 auto !important;
        min-width: 100px !important;
    }
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-273f3576 > .elementor-container > .elementor-column.elementor-element-8c70f64 {
        min-width: 717.2px !important;
        flex: 1 0 auto !important;
    }
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-273f3576 > .elementor-container > .elementor-column.elementor-element-717c8ed4 {
        min-width: 145.3px !important;
    }
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-1e2de40d .elementor-button {
        white-space: nowrap !important;
    }
}
@media (min-width: 1280px) {
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-273f3576 .elementor-nav-menu--main .elementor-nav-menu {
        flex-wrap: nowrap !important;
    }
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-273f3576 .elementor-nav-menu--main .elementor-item {
        white-space: nowrap !important;
    }
}

/* "מה כן? / מה לא?" panels (desktop only): the white rounded box is a fixed
   ratio PNG (whitebg.png, 78% wide) that cannot grow, so enlarged text ran
   out of it. Draw the same box in CSS around the content instead: same
   position (23.47% / 1.47% from the sides), same inner space as the default
   layout (37px above, 33px below), same 40px radius. Also used in the
   contrast modes (Part 2), where it takes the mode colours. */
html :is(body[class*="pojo-a11y-resize-font-"], body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element:is(.elementor-element-27f54192, .elementor-element-5f7c3a6b):not(#a11y-box) {
    background-image: none !important;
}
html :is(body[class*="pojo-a11y-resize-font-"], body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element:is(.elementor-element-27f54192, .elementor-element-5f7c3a6b) > .elementor-container {
    isolation: isolate;
}
html :is(body[class*="pojo-a11y-resize-font-"], body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element:is(.elementor-element-27f54192, .elementor-element-5f7c3a6b) > .elementor-container::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -37px;
    bottom: -33px;
    left: 23.47%;
    right: 1.47%;
    border-radius: 40px;
    background: #ffffff;
    box-shadow: 0 0 18px rgba(0, 0, 0, 0.07);
    pointer-events: none;
}


/* "שלבי הטיפול" cards: 01im/02img/03img.png are opaque (a rounded card on a
   white square) and sized to "cover", so taller enlarged text cropped the
   card's sides. While text is enlarged (and in the contrast modes, 2d) the
   card is drawn in CSS where the PNG draws it — 4.3% in from the sides,
   6px / 10px top / bottom, 32px radius — with its teal bar and step number.
   The column's own padding is unchanged, so the inner space stays as in
   the default layout. */
html :is(body[class*="pojo-a11y-resize-font-"], body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element:is(.elementor-element-180f9224, .elementor-element-7914fd03, .elementor-element-2b5a23f4) > .elementor-widget-wrap:not(#a11y-box) {
    background-image: none !important;
    isolation: isolate;
}
html :is(body[class*="pojo-a11y-resize-font-"], body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element:is(.elementor-element-180f9224, .elementor-element-7914fd03, .elementor-element-2b5a23f4) > .elementor-widget-wrap::before {
    content: "";
    position: absolute;
    z-index: -1;
    pointer-events: none;
    top: 6px;
    bottom: 10px;
    left: 4.3%;
    right: 4.3%;
    border-radius: 32px;
    background: linear-gradient(#4db6a0, #4db6a0) center bottom 4px / 22% 8px no-repeat, #ffffff;
    box-shadow: 0 0 16px rgba(0, 0, 0, 0.08);
}
html :is(body[class*="pojo-a11y-resize-font-"], body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element:is(.elementor-element-180f9224, .elementor-element-7914fd03, .elementor-element-2b5a23f4) > .elementor-widget-wrap::after {
    position: absolute;
    z-index: -1;
    pointer-events: none;
    right: calc(4.3% + 14px);
    bottom: 14px;
    font: 700 64px/0.8 "Assistant", sans-serif;
    color: #efefef;
}
html :is(body[class*="pojo-a11y-resize-font-"], body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-180f9224 > .elementor-widget-wrap::after { content: "01"; }
html :is(body[class*="pojo-a11y-resize-font-"], body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-7914fd03 > .elementor-widget-wrap::after { content: "02"; }
html :is(body[class*="pojo-a11y-resize-font-"], body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-2b5a23f4 > .elementor-widget-wrap::after { content: "03"; }


/* Section 4e: DEFAULT-LAYOUT FIXES (requested — apply with or without the
   accessibility toolbar) ------------------------------------------------- */

/* Hero / CTA forms: submit had no border while the fields have 1px, so it
   was 2px shorter (48 vs 50px). A transparent 1px border keeps its colour
   and hover, and makes it exactly as tall as the fields at every size. */
.elementor .form-div .submit-btn-ads input[type="submit"] {
    border: 1px solid transparent;
}

/* Mobile: side padding for the text columns that ran edge to edge. */
@media (max-width: 767px) {
    .elementor-1699 .elementor-element.elementor-element-3fcea83f > .elementor-widget-wrap,
    .elementor-1699 .elementor-element.elementor-element-5a452f20 > .elementor-widget-wrap,
    .elementor-1699 .elementor-element.elementor-element-30ab2ad4 > .elementor-widget-wrap {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}
/* Section 5: Per-element sizes from every post-*.css on both pages, gated and
   multiplied. Emitted after Section 3 so equal-specificity span rules win. */

/* ---- post-1699.css ---- */
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-1227dc72 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-6e03f537 .elementor-heading-title {
    font-size: calc(2rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-709c9bdb .elementor-heading-title {
    font-size: calc(3.2rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-5b5514cf {
    font-size: calc(1.11rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-17f2fb16 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-167f0222 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-1773a1b1 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-318ec33c .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-44554236 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-16f8c5c0 .elementor-heading-title {
    font-size: calc(1.1rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-67c9936b .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-6b08cea4 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-e243fcf .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-d0ae6ff .elementor-heading-title {
    font-size: calc(1.5rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-3d7d6239,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-33695caa,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-21d82acb .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-5d6cd2d .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-531d695c .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-14eee9cc,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-5f793978 .elementor-image-box-description,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-445d3f94 .elementor-image-box-description,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-2cce8d9c .elementor-image-box-description,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-68aee5a .elementor-image-box-description,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-3409aa87 .elementor-image-box-description,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-1eb3e157 .elementor-image-box-description,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-58ce0181 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-5b447ff0 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-b0a37b5 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-38b4d3d4 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-7b8a5600 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-43c3286b .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-4689e95d,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-56e6bfb6 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-4eb9543b .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-5cf98795 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-25a8ec24 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-28d44656 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-7a5bd813 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-43614d25 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-4b2e0447 {
    font-size: calc(1rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-bf24b48 {
    font-size: calc(0.9rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-931d2f2 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-5f793978 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-445d3f94 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-2cce8d9c .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-68aee5a .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-3409aa87 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-1eb3e157 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-55e72060 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-2bfc97fb .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-737dac96 .elementor-heading-title {
    font-size: calc(1.4rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-f938997 {
    font-size: calc(1.8rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-7d398038 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-1094dff6 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-15c7336f .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-18e9b79c .elementor-heading-title {
    font-size: calc(2.11rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-757e0e6d .elementor-heading-title {
    font-size: calc(28px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-58e42c4 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-3c5a106b .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-52134313 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-5bcbaafb .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-60e6fef0 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-485309ec .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-39ab8abd .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-2e6ee359 .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-3b6a6a2a .elementor-image-box-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-733dd8e9 .elementor-image-box-title {
    font-size: calc(0.85rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-284f5ed9 .elementor-heading-title {
    font-size: calc(1.25rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-b83f128 .elementor-testimonial__text,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-3395edcd .elementor-testimonial__text {
    font-size: calc(24px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-b83f128 .elementor-testimonial__name,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-3395edcd .elementor-testimonial__name {
    font-size: calc(18px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-b83f128 .elementor-swiper-button,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-3395edcd .elementor-swiper-button {
    font-size: calc(30px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-65fed082 .elementor-icon-list-item > .elementor-icon-list-text,
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-65fed082 .elementor-icon-list-item > a {
    font-size: calc(16px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-3a30ca53 {
    font-size: calc(1.2rem * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-d9eb736 .elementor-icon {
    font-size: calc(22px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .staff-slider-land span,
html body[class*="pojo-a11y-resize-font-"] .staff-slider-land p,
html body[class*="pojo-a11y-resize-font-"] .read-more-tex ul li,
html body[class*="pojo-a11y-resize-font-"] .read-more-tex {
    font-size: calc(14px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .staff-slider-land h4 {
    font-size: calc(20px * var(--a11y-scale)) !important;
}
@media (max-width:1024px) {
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-d9eb736 .elementor-icon {
        font-size: calc(28px * var(--a11y-scale)) !important;
    }
}
@media (max-width:767px) {
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-67c9936b .elementor-heading-title {
        font-size: calc(2.2rem * var(--a11y-scale)) !important;
    }
}

/* ---- post-1638.css ---- */
html body[class*="pojo-a11y-resize-font-"] .elementor-1638 .elementor-element.elementor-element-34e9142 .elementor-heading-title {
    font-size: calc(81px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1638 .elementor-element.elementor-element-e54a137,
html body[class*="pojo-a11y-resize-font-"] .elementor-1638 .elementor-element.elementor-element-3f60d79 {
    font-size: calc(26px * var(--a11y-scale)) !important;
}

/* ---- post-1185.css ---- */
html body[class*="pojo-a11y-resize-font-"] .elementor-1185 .elementor-element.elementor-element-754012c .elementor-heading-title {
    font-size: calc(1.5rem * var(--a11y-scale)) !important;
}

/* Section 5b: mobile cap for the hero heading. It is 3.2rem with no mobile
   size of its own; at max scale the long word "הטכנולוגית" (≈82px) no longer
   fits a 315px column at 360px wide and pushes the page sideways. 20vw keeps
   the longest word on screen (72px at 360, 75px at 375). */
@media (max-width: 767px) {
    html body[class*="pojo-a11y-resize-font-"] .elementor-1699 .elementor-element.elementor-element-709c9bdb .elementor-heading-title {
        font-size: min(calc(3.2rem * var(--a11y-scale)), 20vw) !important;
    }
}


/* ==========================================================================
   PART 2 — CONTRAST MODES
   Only active while the plugin's contrast class is on <body>.
   The plugin paints every element black (negative / high) or white (light
   background) with `*:not(#pojo-a11y-toolbar)` = (1,1,1), so rules here
   carry a `:not(#a11y-…)` to reach ID-level specificity.
   ========================================================================== */

/* 2a: NO BACKING COLOUR BEHIND TEXT — only the page sections keep the mode
   colour. Everything inside them is transparent, so text sits directly on
   the section colour or on its background image (no black/white bars, no
   colour outside the boxes). Form fields and the mobile dropdown menu keep
   a solid fill; the boxes (2d) are drawn with pseudo-elements. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor .elementor-top-section *:not(input):not(select):not(textarea):not(.elementor-nav-menu--dropdown):not(.elementor-nav-menu--dropdown *):not(#a11y-bg) {
    background-color: transparent !important;
    text-shadow: none !important;
}

/* 2b: BACKGROUND IMAGES — the plugin's `background: … !important` shorthand
   wipes background-image AND resets size/position/repeat, so each one is
   restated from post-*.css (base + the 767px overrides). Grayscale is a
   filter only and keeps its images untouched. The white PNG "boxes"
   (01im/02img/03img cards, whitebg panels) are not restored — they are
   redrawn in CSS in the mode colours (2d). */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-4ff9ede:not(.elementor-motion-effects-element-type-background):not(#a11y-bg) {
    background-image: url("https://powerlift.co.il/wp-content/uploads/2025/07/bg.webp") !important;
    background-position: center right !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-15511f58:not(.elementor-motion-effects-element-type-background):not(#a11y-bg) {
    background-image: url("https://powerlift.co.il/wp-content/uploads/2023/06/BG-Element.png") !important;
    background-position: center right !important;
    background-repeat: no-repeat !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-3b0d1b95:not(.elementor-motion-effects-element-type-background):not(#a11y-bg) {
    background-image: url("https://powerlift.co.il/wp-content/uploads/2023/06/BG-Element-1.png") !important;
    background-position: bottom left !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-7cc2d86a:not(.elementor-motion-effects-element-type-background):not(#a11y-bg) {
    background-image: url("https://powerlift.co.il/wp-content/uploads/2025/07/bg2.webp") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-3384b252:not(.elementor-motion-effects-element-type-background):not(#a11y-bg) {
    background-image: url("https://powerlift.co.il/wp-content/uploads/2023/06/BG-Element-5.png") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-59776b67:not(.elementor-motion-effects-element-type-background):not(#a11y-bg) {
    background-image: url("https://powerlift.co.il/wp-content/uploads/2023/06/BG-Element-5.png") !important;
    background-position: center right !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-210073f7:not(.elementor-motion-effects-element-type-background):not(#a11y-bg) {
    background-image: url("https://powerlift.co.il/wp-content/uploads/2023/06/Uclinic-bg.png") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-11298c3d:not(.elementor-motion-effects-element-type-background):not(#a11y-bg) {
    background-image: url("https://powerlift.co.il/wp-content/uploads/2025/07/Screenshot_2.webp") !important;
    background-position: center right !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1638 .elementor-element.elementor-element-6a04002:not(.elementor-motion-effects-element-type-background):not(#a11y-bg) {
    background-image: url("https://powerlift.co.il/wp-content/uploads/2022/12/main-bg_03.jpg") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}

/* 2c: TEXT COLOUR ON PHOTOS — no backing, no shadow; the colour follows the
   photo instead. Light photos (hero bg.webp, "מלווים אותך" Screenshot_2)
   → black text; dark photo (advantages bg2.webp) → white text. Same in all
   three modes so the text always contrasts with what is actually behind it. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element:is(.elementor-element-4ff9ede, .elementor-element-11298c3d) *:not(input):not(select):not(textarea):not(#a11y-txt) {
    color: #000000 !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-7cc2d86a *:not(input):not(select):not(textarea):not(#a11y-txt) {
    color: #ffffff !important;
}

/* 2d: BOXES in the mode colours — no colour outside the box.
   Negative / high: black box, white 2px outline. Light: white box, black
   2px outline. */

/* "מה כן? / מה לא?" panels: the CSS box from Section 4d, recoloured. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast) .elementor-1699 .elementor-element:is(.elementor-element-27f54192, .elementor-element-5f7c3a6b) > .elementor-container:not(#a11y-box)::before {
    background: #000000 !important;
    box-shadow: none !important;
    border: 2px solid #ffffff !important;
}
html body.pojo-a11y-light-background .elementor-1699 .elementor-element:is(.elementor-element-27f54192, .elementor-element-5f7c3a6b) > .elementor-container:not(#a11y-box)::before {
    background: #ffffff !important;
    box-shadow: none !important;
    border: 2px solid #000000 !important;
}

/* Cards (drawn in Section 4d): mode colours. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast) .elementor-1699 .elementor-element:is(.elementor-element-180f9224, .elementor-element-7914fd03, .elementor-element-2b5a23f4) > .elementor-widget-wrap:not(#a11y-box)::before {
    border: 2px solid #ffffff;
    box-shadow: none;
    background: linear-gradient(#4db6a0, #4db6a0) center bottom 4px / 22% 8px no-repeat, #000000;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast) .elementor-1699 .elementor-element:is(.elementor-element-180f9224, .elementor-element-7914fd03, .elementor-element-2b5a23f4) > .elementor-widget-wrap:not(#a11y-box)::after {
    color: #3a3a3a;
}
html body.pojo-a11y-light-background .elementor-1699 .elementor-element:is(.elementor-element-180f9224, .elementor-element-7914fd03, .elementor-element-2b5a23f4) > .elementor-widget-wrap:not(#a11y-box)::before {
    border: 2px solid #000000;
    box-shadow: none;
}
html body.pojo-a11y-light-background .elementor-1699 .elementor-element:is(.elementor-element-180f9224, .elementor-element-7914fd03, .elementor-element-2b5a23f4) > .elementor-widget-wrap:not(#a11y-box)::after {
    color: #e6e6e6;
}

/* 2e: ICONS — the plugin recolours text but not SVG fills (white arrow on
   a white button in light mode) and gives images a grey (#808080) fill in
   high contrast. Icons follow the text colour; image icons lose the fill. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor :is(svg.e-font-icon-svg, .elementor-icon svg, .elementor-button-icon svg, .elementor-icon-list-icon svg, .elementor-swiper-button svg, .elementor-menu-toggle svg):not(#a11y-ico),
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor :is(svg.e-font-icon-svg, .elementor-icon svg, .elementor-button-icon svg, .elementor-icon-list-icon svg, .elementor-swiper-button svg, .elementor-menu-toggle svg) *:not(#a11y-ico) {
    fill: currentColor !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor :is(.elementor-icon, .elementor-icon i, .elementor-button-icon i, .elementor-icon-list-icon i, .elementor-swiper-button i):not(#a11y-ico) {
    color: inherit !important;
    border-color: currentColor !important;
}

/* Image icons: logo (desktop + mobile), the doctor step icon and the "yes"
   check icons are opaque PNG/JPG on a white square — invisible logo text
   and white squares on black. Invert + hue-rotate turns the white black
   and keeps the teal teal. In light mode the white hexagon icons vanish on
   white, so they get a thin dark outline. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast) .elementor-1699 .elementor-element:is(.elementor-element-e64450b, .elementor-element-852a6d1, .elementor-element-5d6cd2d, .elementor-element-58ce0181, .elementor-element-5b447ff0, .elementor-element-b0a37b5, .elementor-element-38b4d3d4, .elementor-element-7b8a5600, .elementor-element-43c3286b) img:not(#a11y-ico) {
    filter: invert(1) hue-rotate(180deg) !important;
}
html body.pojo-a11y-light-background .elementor-1699 .elementor-element:is(.elementor-element-17f2fb16, .elementor-element-167f0222, .elementor-element-1773a1b1, .elementor-element-318ec33c, .elementor-element-44554236) img:not(#a11y-ico) {
    filter: drop-shadow(0 0 1px #000000) drop-shadow(0 0 1px #000000) !important;
}

/* Sticky mobile call button (icon widget d9eb736, tel: link): keep the
   default look — 44×45 teal square, white phone icon — in every contrast
   mode instead of a transparent/black box. A 2px outline (no layout change)
   keeps its edge visible on the section behind it. Double :not(#id) so it
   beats the transparency rule in 2a. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-d9eb736 > .elementor-widget-container:not(#a11y-sticky):not(#a11y-sticky2) {
    background-color: #4ab8a4 !important;
    outline: 2px solid #ffffff !important;
}
html body.pojo-a11y-light-background .elementor-1699 .elementor-element.elementor-element-d9eb736 > .elementor-widget-container:not(#a11y-sticky):not(#a11y-sticky2) {
    outline-color: #000000 !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-d9eb736 :is(.elementor-icon-wrapper, .elementor-icon, i):not(#a11y-sticky):not(#a11y-sticky2) {
    background: transparent !important;
    color: #ffffff !important;
    border: 0 !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) .elementor-1699 .elementor-element.elementor-element-d9eb736 :is(svg, svg *):not(#a11y-sticky):not(#a11y-sticky2) {
    fill: #ffffff !important;
}

/* 2f: BUTTON BORDERS — visible in every mode.
   Negative / high / light: buttons are transparent (2a) or plugin-filled;
   a 2px border in the button's own text colour always contrasts with
   what is behind it. Grayscale keeps the design colours, so it gets a
   two-tone ring (white inside, black outside) that shows on light and
   dark sections alike. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background) :is(.elementor .elementor-button, .elementor .elementor-swiper-button, .elementor button, .elementor input[type="submit"], .cc-btn, .cc-lang-toggle):not(#a11y-btn) {
    border: 2px solid currentColor !important;
}
html body.pojo-a11y-grayscale :is(.elementor .elementor-button, .elementor button, .elementor input[type="submit"], .cc-btn):not(#a11y-btn) {
    box-shadow: inset 0 0 0 2px #ffffff, 0 0 0 2px #000000 !important;
}

/* 2g: FORM FIELD BORDERS — visible in every mode.
   High / negative: white border on black (plugin), made 2px.
   Light background: theme border is #ccc on white and the hero submit has no
   border at all (white button on white) → solid black.
   Grayscale: #ccc on white is too faint → dark grey. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast) .elementor :is(input:not([type="hidden"]), select, textarea):not(#a11y-form) {
    border: 2px solid #ffffff !important;
}
html body.pojo-a11y-light-background .elementor :is(input:not([type="hidden"]), select, textarea):not(#a11y-form) {
    border: 2px solid #000000 !important;
}
html body.pojo-a11y-grayscale .elementor :is(input:not([type="hidden"]), select, textarea):not(#a11y-form) {
    border: 1px solid #444444 !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background, body.pojo-a11y-grayscale) .elementor :is(input, select, textarea):focus:not(#a11y-form) {
    outline: 2px solid currentColor !important;
    outline-offset: 2px !important;
}
/* Invalid field keeps a distinct red border in every mode. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast, body.pojo-a11y-light-background, body.pojo-a11y-grayscale) .elementor :is(.wpcf7-not-valid, .custom-invalid):not(#a11y-form) {
    border-color: #ff3b3b !important;
}
/* Site CSS (inline, DB) turns tips white in grayscale — invisible on the white
   footer form. Keep the red there; the grayscale filter renders it dark grey. */
html body.pojo-a11y-grayscale .footer-form .wpcf7-not-valid-tip:not(#a11y-form) {
    color: #dc3232 !important;
}

/* 2h: COOKIE SETTINGS TOGGLES (.cc-toggle > input[type=checkbox] + .cc-slider)
   Site inline CSS paints every slider #ababff / gray with !important, so ON
   and OFF look identical. Restore a clear ON state everywhere and give each
   contrast mode an ON/OFF pair that reads at a glance. The knob is the
   ::before (18px in a 44×24 track); borders are drawn with an inset
   box-shadow so the knob keeps its 3px inset and stays inside the track. */
html body .cc-toggle input:checked + .cc-slider:not(#a11y-cc) {
    background: #10b981 !important;
}
html body .cc-toggle input:focus-visible + .cc-slider:not(#a11y-cc) {
    outline: 2px solid #2563eb !important;
    outline-offset: 2px !important;
}

/* High contrast + negative: OFF = black track, white outline, white knob;
   ON = yellow track, black knob. */
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast) .cc-toggle .cc-slider:not(#a11y-cc) {
    background: #000000 !important;
    box-shadow: inset 0 0 0 2px #ffffff !important;
    opacity: 1 !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast) .cc-toggle .cc-slider:not(#a11y-cc)::before {
    background: #ffffff !important;
    box-shadow: none !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast) .cc-toggle input:checked + .cc-slider:not(#a11y-cc) {
    background: #ffff00 !important;
    box-shadow: inset 0 0 0 2px #ffff00 !important;
}
html :is(body.pojo-a11y-high-contrast, body.pojo-a11y-negative-contrast) .cc-toggle input:checked + .cc-slider:not(#a11y-cc)::before {
    background: #000000 !important;
}

/* Light background: OFF = white track, black outline, black knob;
   ON = black track, white knob. */
html body.pojo-a11y-light-background .cc-toggle .cc-slider:not(#a11y-cc) {
    background: #ffffff !important;
    box-shadow: inset 0 0 0 2px #000000 !important;
    opacity: 1 !important;
}
html body.pojo-a11y-light-background .cc-toggle .cc-slider:not(#a11y-cc)::before {
    background: #000000 !important;
    box-shadow: none !important;
}
html body.pojo-a11y-light-background .cc-toggle input:checked + .cc-slider:not(#a11y-cc) {
    background: #000000 !important;
}
html body.pojo-a11y-light-background .cc-toggle input:checked + .cc-slider:not(#a11y-cc)::before {
    background: #ffffff !important;
}

/* Grayscale (whole page is filtered): OFF = light track + outlined knob,
   ON = near-black track + white knob. */
html body.pojo-a11y-grayscale .cc-toggle .cc-slider:not(#a11y-cc) {
    background: #d1d5db !important;
    box-shadow: inset 0 0 0 1px #6b7280 !important;
}
html body.pojo-a11y-grayscale .cc-toggle .cc-slider:not(#a11y-cc)::before {
    background: #ffffff !important;
    box-shadow: 0 0 0 1px #4b5563 !important;
}
html body.pojo-a11y-grayscale .cc-toggle input:checked + .cc-slider:not(#a11y-cc) {
    background: #111827 !important;
    box-shadow: none !important;
}
