.field_error{
    font-size: 1.7rem;
    color: #e94949 !important;
}


/********************************************
********
******** RESIZE EVERYTHING (Zoom rules — kept in custom.css)
*********************************************/

@media screen and (min-width: 980px) {

   /**** fix for firefox *******/
   @-moz-document url-prefix() {

        .theme-container:not(#prices-calc){
            transform: scale(0.77);
        }

        #home-head {
            margin-bottom: 0rem;
        }
        #greetings {
            margin-bottom: 0rem;
            padding-top: 1rem;
        }
        #phone .text-container {
            height: 68rem;
        }
        #phone {
            margin-bottom: 8rem;
        }
        #tools {
            margin-bottom: -18rem;
        }
        #events {
            margin-bottom: -6rem;
        }
        #service {
            margin-bottom: 4rem;
        }
        #reviews {
            margin-bottom: 0rem;
        }
        #features {
            margin-bottom: 6rem;
        }
        #colophon {
            padding: 2rem 7.5rem;
        }
        #prices-sms .theme-container {
            padding: 0.6rem 0;
        }
        section#prices-contact {
            margin-bottom: 4rem;
        }
        section#prices-faq {
            margin-bottom: 0rem;
        }
        #prices-subscription {
            margin-bottom: 0rem;
        }
        #under_calc .subscription {
            margin-bottom: 4rem;
            margin-top: 2rem;
        }
        section#under_calc {
            margin-top: -2rem;
        }
    }


    body.home #top-gradient {
        height: 80rem;
    }
    .theme-container:not(#prices-calc){
        zoom: 77%;
        transform-origin: top;
    }

    body.page-template-prices #top-gradient {
        height: 60rem;
    }


    /****** fix prices calculator ********/
    #prices-calc .calc {
        width: 75rem;
    }
    #prices-calc .calc .controls .slider-control {
        width: 34rem;
    }

    #prices-calc .controls {
        -moz-user-select: none;
        -webkit-user-select: none;
        -ms-user-select: none;
        user-select: none;
        -o-user-select: none;
    }
    #prices-calc .calc .result {
        width: 32rem;
        padding: 2rem 0 1.5rem;
    }
    /* #prices-calc .calc .result *{
        transform: scale(0.77);
        transform-origin: top;
    } */
    #prices-calc .amount-of-emails-options .body span{
        width: 0.8rem;
        display: inline-block;
    }
    #prices-calc .calc .controls .bigger-package-link p {
        font-size: 1.7rem;
    }
    #prices-calc .amount-of-emails-options .body,
    #prices-calc .amount-of-emails-options .body *,
    #prices-calc .calc .controls .amount-of-recipients-option {
        font-size: 1.4rem;
    }
    #prices-calc .calc .controls .bigger-package-link {
        margin-bottom: 4rem;
    }
    #prices-calc .calc .result .price {
        margin: 0.5rem 0 -0.5rem;
    }
    #prices-calc .calc .result .action-btn {
        margin: 1.5rem 0 1.5rem;
        line-height: 6.3rem;
    }
    #prices-calc .calc .controls {
        flex-grow: 1;
        padding: 1.2rem 2.5rem;
    }
    #prices-calc .calc .controls .bigger-package-link {
        margin-bottom: 3rem;
    }

    #top-gradient {
        width: 100%;
    }
}

/* Mobile-only zoom-scale on tools */
/* @media screen and (max-width: 768px) {
    #tools .tool {
        transform: scale(0.7);
    }
} */


/********************************************
********
******** A11Y: keyboard focus indicators
*********************************************/

/* Suppress default focus when mouse-driven */
:focus:not(:focus-visible) {
    outline: none !important;
}

/* Unified visible focus ring for keyboard navigation
   !important required to override reset.scss global outline:none !important */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible,
[role="button"]:focus-visible,
[role="link"]:focus-visible,
[role="tab"]:focus-visible,
[role="menuitem"]:focus-visible,
[contenteditable="true"]:focus-visible {
    outline: 3px solid #0085ff !important;
    outline-offset: 2px !important;
    border-radius: 4px;
    box-shadow: 0 0 0 2px #fff !important;
    transition: outline-offset 0.1s ease;
}

/* Higher contrast on dark backgrounds */
#colophon a:focus-visible,
#colophon button:focus-visible,
.top_banner_wrap a:focus-visible {
    outline-color: #fff !important;
    box-shadow: 0 0 0 2px #0085ff !important;
}

/* Tools list cards — focus ring (parent has overflow:hidden, need inset) */
ul.tools-list li.tool > a:focus-visible {
    outline: 3px solid #0085ff !important;
    outline-offset: -3px !important;
    box-shadow: inset 0 0 0 6px #fff !important;
}

/* Footer social media icons — explicit focus ring */
.media a,
.single_social a {
    display: inline-block;
    height: 100%;
    line-height: 0;
}
.media a img.reg,
.single_social a img.main_single_social {
    height: 100%;
    display: block;
}
.media a:focus-visible,
#colophon .media a:focus-visible {
    outline: 3px solid #fff !important;
    outline-offset: 4px !important;
    box-shadow: 0 0 0 5px #0085ff !important;
}
.single_social a:focus-visible {
    outline: 3px solid #0085ff !important;
    outline-offset: 4px !important;
    box-shadow: 0 0 0 5px #fff !important;
}

/* Slider focus ring on visual thumb (::after of .slider-inner) */
.slider:focus-visible {
    outline: none !important;
}
.slider:focus-visible .slider-inner::after {
    box-shadow: 0 0 0 3px #0085ff, 0 0 0 5px #fff !important;
    transition: box-shadow 0.15s ease;
}

/* Skip-link: visible when focused */
.skip-link:focus,
.skip-link:focus-visible {
    position: absolute;
    top: 1rem;
    left: 1rem;
    z-index: 9999;
    padding: 1rem 2rem;
    background: #0085ff;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    clip: auto !important;
    clip-path: none;
    width: auto;
    height: auto;
}
