/*
Theme Name: ARCpoint Labs Child Theme
Description: Custom ARCpoint Labs child theme For use with Divi.
Author: Solucru
Version: 1.0.0
Template: Divi
*/

/* =============== Customization Starts Here =============== */

/* Custom Bullet List Icons for PPC Pages */

.arc-bullet-list ul li {
  list-style:none;
  margin-bottom: 10px;
}

.arc-bullet-list ul li::before {
  content: '\e052';
  color: #F6871F;
  display: inline-block;
  margin-right: 7px;
  margin-left: -30px;
  font-family:'ETmodules';
  font-size: 1.2em;
  vertical-align: middle;
}

a.xoo-wsc-ft-btn.xoo-wsc-btn.xoo-wsc-ft-btn-cart{
	display:none !important;
}

a.added_to_cart.wc-forward{
	display:none !important;
}

/*------Force Products to Single Column on Mobile-------*/

@media (max-width: 768px) {
.woocommerce-page ul.products li.product:nth-child(n) {
width: 100% !important;
}
}

@media (max-width: 768px) {
.et-db #et-boc .et-l .et_pb_shop ul.products.columns-3 li.product {
width: 100% !important;
}
}

/* Product Filter Styling */

.wpf_item .wpf_item_name{
	font-weight:500 !important;
	font-family:'Poppins' !important;
}

.wpf_item label{
	font-size:14px !important;
	font-weight:300 !important;
	font-family:'Roboto' !important;
}

.wpf-slider-label{
	font-weight:500 !important;
	font-family:'roboto' !important;
	font-size:14px !important;
}


.wpf_slider.ui-slider .ui-widget-header {
    background: #F6871F !important;
}

/* Contact Form Success Message Styling */

.et-pb-contact-message p {
color: #ffffff;
font-size: 21px;
font-weight: 700;
text-transform: uppercase;
}

.et_pb_social_media_follow li a {
margin-right: 0px !important;
}

/* Temporarily Hide The BAT menu item */

#mega-menu-item-379355 {
	display:none !important;
}

/* Temporarily Hide The Fentanyl menu item */

#mega-menu-item-381608,
#mega-menu-item-379357, 
#mega-menu-item-381493, 
#mega-menu-item-381234, 
#mega-menu-item-381258, 
#mega-menu-item-381238 {
    display: none !important;
}

/* Temporarily Hide The Opioid menu item */

#mega-menu-item-379359, #mega-menu-item-381609, #mega-menu-item-381494, #mega-menu-item-381235, #mega-menu-item-381259, #mega-menu-item-381239 {
	display:none !important;
}

/* Hide prices on Corporate Site */

/* Hide WooCommerce prices on Site 1 */
body.site-id-1 .woocommerce-Price-amount.amount,
body.site-id-1 .price {
    display: none !important;
}

/* Custom Styling For "No Results" section */

.no-results {
    text-align: center;
    padding: 50px 20px 50px 20px;
    background-color: #ffffff; 
    
}

.no-results-btn-link {
    text-decoration: none; /* Removes underline from links */
    color: inherit; 
}

.no-results-btn {
    background-color: #F6871F; 
    border: solid;
    border-color: #F6871F;
    border-radius: 2px;
    color: #ffffff;
    padding: 10px 20px;
    cursor: pointer;
    font-size: 16px;
   	font-weight:500;
	font-family:'Poppins';
	text-transform: uppercase;
    transition: transform 0.3s ease;
    box-shadow:none;
    margin-top:20px;
}

.no-results-btn:hover {
    transform: scale(0.95);
    
}

/* Contact Form Styling */

.wpforms-form input[type=submit], 
.wpforms-form button[type=submit] {
    background-color: #F6871F !important; 
    border: 1px solid #F6871F !important; 
    color: #ffffff !important; 
    font-size: 15px !important; 
    padding: 10px 15px !important; 
    font-family: 'Poppins'!important;
    text-transform: uppercase !important;
}

.wpforms-form input[type=submit]:hover, 
.wpforms-form input[type=submit]:active, 
.wpforms-form button[type=submit]:hover, 
.wpforms-form button[type=submit]:active, 
.wpforms-form .wpforms-page-button:hover, 
.wpforms-form .wpforms-page-button:active {
    background-color: #F6871F !important; 
    border: 1px solid #F6871F !important; 
    color: #ffffff !important;
}

/* override for B2C */
.location-template-b2c .wpforms-form input[type=submit], 
.location-template-b2c .wpforms-form button[type=submit],
.location-template-b2c .wpforms-form .wpforms-page-button {
    background-color: #54b8a1 !important;
    border: 1px solid #54b8a1 !important;
}
.location-template-b2c .wpforms-form input[type=submit]:hover, 
.location-template-b2c .wpforms-form input[type=submit]:active, 
.location-template-b2c .wpforms-form button[type=submit]:hover, 
.location-template-b2c .wpforms-form button[type=submit]:active, 
.location-template-b2c .wpforms-form .wpforms-page-button:hover, 
.location-template-b2c .wpforms-form .wpforms-page-button:active {
    background-color: #54b8a1 !important;
    border: 1px solid #54b8a1 !important;
}

/* HomePage Slider Custom Styling */

.b2c-primary-button.btn-slider-1 {
    background-color: #54b8a1 !important; 
    border: 1px solid #54b8a1 !important; 
}

.btn-slider-1 {
    display:inline-block!important; 
    background-color: #F6871F !important; 
    border: 1px solid #F6871F !important; 
    border-radius: 2px!important; 
    color: #ffffff !important; 
    font-size: 18px !important; 
    padding: 10px 15px !important; 
    font-family: 'Poppins'!important;
    text-transform: uppercase !important;
    margin-top:20px !important;
    transition: background-color 0.3s ease, transform 0.3s ease !important;  
}

.btn-slider-2 {
    display:inline-block!important;
    background-color: #012b49 !important; 
    border: 1px solid #012b49 !important; 
    border-radius: 2px!important; 
    color: #ffffff !important; 
    font-size: 18px !important; 
    padding: 10px 15px !important; 
    font-family: 'Poppins'!important;
    text-transform: uppercase !important;
    margin-top:20px !important;
    transition: background-color 0.3s ease, transform 0.3s ease !important;
}

.btn-slider-1:hover,.btn-slider-2:hover  {
transform: scale(0.95) !important;
transition: background-color 0.3s ease, transform 0.3s ease !important;
}

/* ZyraTalk Chat Bot Styling to move it from cart */

.BOT_chatcontainer_Add {
    left:0px !important;
    right:auto !important;
    bottom:  20px !important;
 }

.BOT_chatcontainer {
    left: 20px ;
    right: auto !important;
    bottom: 20px ;
}

 @media only screen and (max-width: 480px){
    .BOT_chatcontainer {
        left: 0 ;
        right: auto !important;
        bottom: 0 ;
    }
}

/* Hide Infedility DNA Testing sections from Florida Pages */

.site-id-3 li.flo-inf, 
.site-id-148 li.flo-inf, 
.site-id-136 li.flo-inf, 
.site-id-38 li.flo-inf, 
.site-id-67 li.flo-inf, 
.site-id-70 li.flo-inf, 
.site-id-43 li.flo-inf, 
.site-id-113 li.flo-inf,
.site-id-86 li.flo-inf, 
.site-id-7 li.flo-inf, 
.site-id-158 li.flo-inf, 
.site-id-123 li.flo-inf, 
.site-id-51 li.flo-inf, 
.site-id-152 li.flo-inf, 
.site-id-149 li.flo-inf, 
.site-id-127 li.flo-inf, 
.site-id-158 li.flo-inf, 
.site-id-155 li.flo-inf, 
.site-id-45 li.flo-inf, 
.site-id-90 li.flo-inf, 
.site-id-66 li.flo-inf, 
.site-id-138 li.flo-inf, 
.site-id-50 li.flo-inf, 
.site-id-121 li.flo-inf, 
.site-id-126 li.flo-inf,
.site-id-157 li.flo-inf
 {
    display: none;
}

.site-id-3 .flo-inf, 
.site-id-148 .flo-inf, 
.site-id-136 .flo-inf, 
.site-id-38 .flo-inf, 
.site-id-67 .flo-inf, 
.site-id-70 .flo-inf, 
.site-id-43 .flo-inf, 
.site-id-113 .flo-inf,
.site-id-86 .flo-inf, 
.site-id-7 .flo-inf, 
.site-id-158 .flo-inf, 
.site-id-123 .flo-inf, 
.site-id-51 .flo-inf, 
.site-id-152 .flo-inf, 
.site-id-149 .flo-inf, 
.site-id-127 .flo-inf, 
.site-id-158 .flo-inf, 
.site-id-155 .flo-inf, 
.site-id-45 .flo-inf, 
.site-id-90 .flo-inf, 
.site-id-66 .flo-inf, 
.site-id-138 .flo-inf, 
.site-id-50 .flo-inf, 
.site-id-121 .flo-inf, 
.site-id-126 .flo-inf,
.site-id-157 .flo-inf
{
    display: none;
}

/*Fix header padding issue which breaks header*/
#header-nav-desktop > div > div.et_pb_column.et_pb_column_1_2.et_pb_column_0_tb_header.et_pb_css_mix_blend_mode_passthrough > div.et_pb_module.et_pb_text.et_pb_text_2_tb_header.et_clickable.et_pb_text_align_left.et_pb_bg_layout_light > div > div{
    padding: 0px 0;
}

/*Fix header 2nd div margin bottom issue which breaks header*/
#header-nav-desktop > div > div.et_pb_column.et_pb_column_1_2.et_pb_column_0_tb_header.et_pb_css_mix_blend_mode_passthrough > div.et_pb_module.et_pb_code.et_pb_code_0_tb_header{
    margin-bottom: 0!important;
}

/*Fix header 2nd div vertical padding issue which breaks header*/
#header-nav-desktop > div > div.et_pb_column.et_pb_column_1_2.et_pb_column_0_tb_header.et_pb_css_mix_blend_mode_passthrough > div.et_pb_module.et_pb_code.et_pb_code_0_tb_header > div > div > div{
    padding: 0px 0!important;
}

/* Mobile Menu Dynamic Content Styling */

/* Vertically align menu items middle */
li.menu-item.menu-item-type-custom.menu-item-object-custom {
  align-items: center;
}

/* Fibro Search wrapper transparrent background */
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp {
    background: #fff0;
    padding: 10px;
    border-radius: 10px;
}

@media only screen and (max-width: 980px) {
  #mega-menu-wrap-primary-menu .mega-menu-toggle + #mega-menu-primary-menu {
    position: fixed;
    display: block;
    width: 320px;
    max-width: 90%;
    height: 85vh!important;
    max-height: 90vh!important;
    top: 0;
    box-sizing: border-box;
    transition: left 200ms ease-in-out, right 200ms ease-in-out, visibility 200ms ease-in-out;
    overflow: auto;
    z-index: 9999999999;
    overscroll-behavior: contain;
    visibility: hidden;
  }
}

/* 
   Developer: Richard Wickham
   Target page: Woocommerce Checkout page
   Purpose: Checkout page styling for Booking Details 
   Last Update: August 2024
   Block: Woocommerce Checkout
*/
.email_class {
    color: #215384 !important;
    display: block;
    font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-size: 18px;
    font-weight: bold;
    line-height: 130%;
    margin: 0 0 18px;
    text-align: left;
}

.checkout_page_class {
    font-family: 'Poppins', Helvetica, Arial, Lucida, sans-serif;
    font-weight: 600;
    font-size: 24px;
    color: #012b49 !important;
    line-height: 1.2em;
    padding-bottom: 10px;
}

.woocommerce-checkout .announcement-bar {
    display: none !important;
}

.et_pb_module.et_pb_wc_checkout_payment_info.et_pb_wc_checkout_payment_info_0_tb_body {
    border-radius: 20px;
}

#loading-indicator {
    display: flex;
    align-items: center;
}

.spinner {
    width: 16px;
    height: 16px;
    border: 2px solid #ccc;
    border-top: 2px solid #000;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-right: 8px; /* space between spinner and text */
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.woocommerce-checkout #payment div.payment_box {
    background: #fff;
}

/* 
    END OF BLOCK Woocommerce Checkout
*/


/* 
   Developer: Richard Wickham
   Target page: Single Product
   Purpose: Style remove from cart button 
   Block: Remove from cart button
*/
#remove-from-cart {
    display: none;
}
/* 
    END OF BLOCK Remove from cart button
*/

/* 
   Developer: Richard Wickham
   Target page: dry-eyes product
   Purpose: Styling the dry eye product button
   Block: Dry Eyes Page
*/
body #page-container .dry-eyes-button .et_pb_code_inner .et_pb_button_module_wrapper .et_pb_button_2 {
    background-color: #F6871F !important;
    border-color: #F6871F !important;
    border-radius: 2px !important;
}

body #page-container .et_pb_section .dry-eyes-button .et_pb_button_2 {
    padding-top: 10px !important;
    padding-right: 20px !important;
    padding-bottom: 10px !important;
    padding-left: 20px !important;
    font-weight: normal !important;
}

body #page-container .dry-eyes-button .et_pb_code_inner .et_pb_button_module_wrapper .et_pb_button_2:hover {
    transform: scale(0.99) !important;
    transition: transform 0.3s ease !important;
}

/* 
    END OF BLOCK Dry Eyes Page
*/


/* 
   Developer: Richard Wickham
   Target page: dry-eyes product
   Date: 5 August 2024
   Purpose: Styling Talk To A Doctor Menu Item
   Block: Talk to a Doctor
*/
#mega-menu-primary-menu > li:nth-child(2) {
    border-radius: 30px 30px 30px 30px !important;
    background: #005A96 !important;
    padding: 10px 10px !important;
}

#mega-menu-primary-menu > li:nth-child(2) > a {
    color: #fff !important; 
}
#mega-menu-primary-menu > li:nth-child(2) > a:hover {
    color: #F6871F !important; 
}

@media (min-width: 961px) {
    #mega-menu-wrap-primary-menu #mega-menu-primary-menu > li.mega-menu-item > a:after {
        display: none !important;
    }
}
/* 
    END OF BLOCK Talk to a Doctor
*/


/* 
   Developer: Richard Wickham
   Target page: Home Page
   Date: 27 August 2024
   Purpose: Styling the slider arrows
   Block: Slider Arrows
*/
.et-pb-slider-arrows a.et-pb-arrow-prev, 
.et-pb-slider-arrows a.et-pb-arrow-next {
    display: block !important;  
    opacity: 1 !important;      
    visibility: visible !important;
    position: absolute !important; 
    top: 50% !important; 
    transform: translateY(-50%) !important; 
    transition: none !important; 
}

.et-pb-slider-arrows a.et-pb-arrow-next {
    right: 22px !important; 
}

.et-pb-slider-arrows a.et-pb-arrow-prev {
    left: 22px !important; 
}
/* 
    END OF BLOCK Slider Arrows
*/


/* 
   Developer: Richard Wickham
   Target page: All Pages
   Date: 23 January 2025
   Purpose: Global Style for all pages
   Block: Global Footer Style
*/
:root {
    --brand-blue: #005a96;
    --brand-accent: #54b8a1;
    --brand-dark: #00254a;
    --white: #fff;
}

/* B2B accent color */
.footer.b2b {
    --brand-accent: #f6871f; 
}

/* Base Styles (Mobile First) */
.footer {
    background-color: var(--brand-blue);
    color: var(--white);
    font-family: inherit;
    font-size: 14px;
}

.footer-container {
    display: flex;
    flex-direction: column;
    gap: 40px;
    padding: 50px 20px;
}

.footer-section {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.logo-contact .logo {
    width: 100%;
    max-width: 221px;
    height: auto;
}

.contact-info {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 5px;
}

.contact-item .icon {
    width: 16px;
    height: auto;
}

.contact-item a,
.contact-item address {
    color: #fff;
    text-decoration: none;
    line-height: 1.4;
}

.contact-item address {
    display: inline-block;
}

.social-media {
    display: flex;
    align-items: center;
    gap: 22px;
}

.social-media a img {
    width: 24px;
    height: 24px;
}

.certifications {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.footer-section h3 {
    font-size: 16px;
    color: var(--brand-accent);
    margin: 0;
}

.footer-section ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-section ul li {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer-section ul li a {
    color: #fff;
    text-decoration: none;
}

.footer-section ul li a:hover, .footer-bottom-content a:hover {
    text-decoration: underline;
}

.footer-bottom {
    background-color: var(--brand-dark);
    padding: 20px;
    text-align: center;
}

.footer-bottom-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    font-size: 12px;
}

.footer-bottom-content a {
    color: var(--brand-accent);
    text-decoration: none;
}

.footer-section.links-info h3 {
    margin-bottom: 20px; /* Add gap only for Quick Links and Company headers */
}

/* Add to limit operational times width */
.footer-section.operational-times {
    max-width: 250px;
}

/* Responsive Adjustments */
@media (max-width: 1025px) {
    .footer-container {
        gap: 30px;
    }

    .contact-item {
        justify-content: center;
        text-align: center;
    }

    .certifications {
        flex-direction: column;
        align-items: center;
    }

    .footer-section ul li {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .footer-section h3 {
        text-align: center;
    }

    .footer-section.operational-times {
        gap: 5px;
        margin: auto;
    }

    .logo-contact .logo {
        display: block;
        margin: 0 auto; /* Center alignment */
        text-align: center;
    }

    .social-media {
        justify-content: center; /* Align icons in the center */
    }

    .contact-container {
        display: flex;
        justify-content: center; /* Center the container */
        width: 100%; 
    }

    .contact-info {
        font-size: 98%;
    }

    span.day {
        font-weight: bold;
    }

    li.day-space {
        margin-bottom: 5px;
    }

    .footer-bottom-content {
        justify-content: center !important; 
    }

    .footer-section.links-info h3 {
        margin-bottom: 5px; /* Adjust gap for Quick Links and Company headers */
    }
}

/* Desktop Styles (Min-width: 1024px) */
@media (min-width: 1024px) {
    .footer-container {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        padding: 50px 120px;
    }

    .footer-section {
        flex: 1 1 33.333%;
    }

    .logo-contact {
        max-width: none;
    }

    .links-info {
        display: flex;
        flex-direction: row;
        gap: 30px;
    }

    .quick-links,
    .company-info {
        flex: 1;
    }

    .certifications {
        justify-content: start;
    }

    .footer-bottom {
        padding: 20px 120px;
        text-align: left;
    }

    .footer-bottom-content {
        flex-direction: row;
        justify-content: flex-end !important;
        align-items: center;
        gap: 0;
    }
}
/* 
    END OF BLOCK: Global Footer Style
*/


/* 
   Developer: Richard Wickham
   Target page: All pages with an image and text Desktop/Mobile switch
   Date: May 2025
   Purpose: Reverse Mobile swap of image and text
   Block: Reverse Mobile Swap
*/
@media (max-width: 980px) {
  .reverse-column-on-mobile {
    display: flex !important;
    flex-direction: column !important;
  }

  .reverse-column-on-mobile .et_pb_column:nth-child(1) {
    order: 2;
  }

  .reverse-column-on-mobile .et_pb_column:nth-child(2) {
    order: 1;
    margin-bottom: 30px;
  }
}
/* 
    END OF BLOCK: Reverse Mobile Swap
*/