.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

/* ======================================
   GLOBAL KEYBOARD FOCUS STYLES
   WCAG 2.4.7 / 2.4.11
====================================== */

/* Show focus ONLY for keyboard users */
:focus-visible {
    outline: 3px solid #FF8C00;
    outline-offset: 3px;
}

/* Fallback for older browsers */
:focus {
    outline: 3px solid #FF8C00;
    outline-offset: 3px;
}

/* Prevent double focus for mouse users */
:focus:not(:focus-visible) {
    outline: none;
}

.message.success a {
    text-decoration: underline;
}
.product-item-name a {
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
    display: -webkit-box;
    -webkit-line-clamp: 2;   /* limit to 2 lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
}

a:hover {
    text-decoration: underline;
}

.field.privacy.required a {
    text-decoration: underline;
}

.cms-page-view.page-layout-cms-full-width .page-title {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

.product-addto-links .action span, .moved-add-to-links .action span, .product-social-links .action span {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
    display: inline;
}

.block-related-products .block-title h2 {
    color: #fff;
    text-align: center;
    background: #094197;
    padding-top: 1rem;
    padding-bottom: 1rem;
    -webkit-font-smoothing: antialiased;
}

.qty.field .qty-changer > a.qty-inc:after, .col.qty .qty-changer > a.qty-inc-cart:after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    height: 9px;
    border-left: 1px solid;
    margin-top: -4.5px;
    margin-left: -.5px;
    color: #094197 !important;
}
.block.items-in-cart .title h3 {
    font-size: 16px;
    font-weight: normal;
}

.required-note {
    color: red;
}