@charset "UTF-8";
/*
Theme Name: Divi Child - for Multisite
Template: Divi
Author: Daniel Vreeman, PT, DPT, MS
Author URI: https://danielvreeman.com/
Description: A mobile responsive and HTML5 theme built for the DIVI.
Version: 2.0.6

*/

/* Get rid of huge spacing*/

.et_post_meta_wrapper {
  padding-top: 2% !important; }

@media only screen and (min-width:1350px) {
      .et_pb_section {
     padding: 1% 0 !important;}
      }

@media only screen and (max-width:767px) {
  .et_pb_section {
  padding: 1% 0 !important;}
  .et_post_meta_wrapper {
    padding-top: 6% !important; }
  
  .gform_wrapper input[type="submit"] {
    color: #ffffff !important;
    border-width: 0px !important;
    border-radius: 50px;
    letter-spacing: 2px;
    font-size: 20px;
    margin-bottom: 10px;
    font-family: 'Barlow', Helvetica, Arial, Lucida, sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    background-color: #f8481d !important;
  }
  }

@media all and (min-width: 981px) {

/* Sections and Rows */
.et_pb_section {
  padding: 1% 0; }
  .et_pb_row {
  padding: 1% 0;
    }
  }

@media all and (min-width: 782px) {

  /* Sections and Rows */
  .et_pb_section {
    padding: 1% 0; }
    .et_pb_row {
    padding: 1% 0;
      }
    }

#page-container { overflow:hidden; }

body {
	font-weight: 300;
}

#left-area li, .entry-content li, .comment-content li, body.et-pb-preview #main-content .container li { 
	margin-top: 16px;
	line-height: 1.7;
 }

#left-area ol, .entry-content ol, .comment-content ol, body.et-pb-preview #main-content .container ol{ 
	margin-top: 15px;
	margin-left: 30px; 
	margin-right: 30px; 
	margin-bottom: 15px; 
	padding: 0 0 16px 0;
	line-height: 1.7;
	list-style-position: inside;
	list-style-type: decimal;
}

.wp-caption {
border: none;
background: none;
font-style: italic;
}

.et_pb_button {
margin-bottom: 2em;
margin-top: 1em;
margin-left: .5em;
margin-right: .5em;
}

.et_pb_cta_0.et_pb_promo h2 {
margin-left: .2em;
margin-right: .2em;
}

.simple-social-icons ul li a {
text-decoration: none;
}

#main-header {
z-index: 2 !important;
}

#main-header, #main-header .nav li ul, .et-search-form, #main-header .et_mobile_menu {
    background-color: #000000 !important;
}

#et_mobile_nav_menu {
z-index: 99999 !important;
}

.et_pb_fullwidth_header 
{
z-index: 0 !important;
}

.et_pb_row.et_pb_row_fullwidth, .et_pb_specialty_fullwidth
{
z-index: 0 !important;
}

/*** Take out the divider line between content and sidebar ***/

#main-content .container:before {background: none;}
 
/*** Expand the content area to fullwidth ***/
@media (min-width: 981px){
#left-area {
    width: 100%;
    padding: 23px 0px 0px !important;
    float: none !important;
}

/*** Full width Slider ***/

.full-image-slider .et_pb_slide {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.full-image-slider .et_pb_slide:first-child .et_pb_slide_image img.active {
 animation: unset !important;
}

.full-image-slider .et_pb_container {
  max-width: 100% !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
}

.full-image-slider .et_pb_slide_image img {
  max-height: none !important;
  width: 100% !important;
}

.full-image-slider .et_pb_slide_image {
  margin: 0 !important;
  padding: 0 !important;
  top: 0 !important;
  position: relative !important;
  width: 100% !important;
  display: block !important;
    -webkit-animation-name: fade !important;
    -moz-animation-name: fade !important;
    -ms-animation-name: fade !important;
    -o-animation-name: fade !important;
    animation-name: fade !important;
}

.full-image-slider .et_pb_slider_container_inner {
  position: relative;
}

.full-image-slider .et_pb_slide_description {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  right:  0 !important;
  padding: 0 !important;
  margin: 0 !important;
width: auto !important;
height: auto !important;
}

.full-image-slider .et_pb_slide_description .et_pb_button_wrapper,
.full-image-slider .et_pb_slide_description .et_pb_button_wrapper a,
.full-image-slider .et_pb_slide_description .et_pb_button_wrapper a:hover {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
 color: rgba(0, 0, 0, 0) !important;  
  border: none !important;
  background: none !important;
}

.et_pb_column.et_pb_slider_fullwidth_off.full-image-slider .et_pb_slide_description .et_pb_slide_title,
.et_pb_column.et_pb_slider_fullwidth_off.full-image-slider .et_pb_slide_description .et_pb_slide_content,
.full-image-slider .et_pb_slide_description .et_pb_slide_title,
.full-image-slider .et_pb_slide_description .et_pb_slide_content {
  display: none;
}

/*** Add Divi to Custom Post Types ***/

.et_pb_pagebuilder_layout.single-POST_TYPE #page-container .et_pb_row {
width: 100%;
}
.et_pb_pagebuilder_layout.single-POST_TYPE #page-container .et_pb_with_background .et_pb_row {
width: 80%;
}
/*** Help Gravity Forms and Divi ***/

body .gform_wrapper input[type="email"], body .gform_wrapper input[type="number"], body .gform_wrapper input[type="password"], body .gform_wrapper input[type="tel"], body .gform_wrapper input[type="text"], body .gform_wrapper input[type="url"], body .gform_wrapper textarea.textarea
{
  border-top-color: #2d3940;
  border-right-color: #2d3940;
  border-bottom-color: #2d3940;
  border-left-color: #2d3940;
  background-color: #f2f2f2 !important;
  color: #333333 !important;
  font-size: 20px;
  margin-bottom: 10px;
}

.gform_wrapper input[type="submit"] {
    color: #ffffff !important;
    border-width: 0px !important;
    border-radius: 50px;
    letter-spacing: 2px;
    font-size: 20px;
    margin-bottom: 10px;
    font-family: 'Barlow', Helvetica, Arial, Lucida, sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    background-color: #f8481d !important;
}

body .gform_wrapper .gform_footer input.button:hover, body .gform_wrapper .gform_page_footer input.button:hover
{
  background-color: #fe702e !important;
  color: #ffffff !important;
  border-top-color: transparent;
  border-right-color: transparent;
  border-bottom-color: transparent;
  border-left-color: transparent;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
  letter-spacing: 0px;
}

.et_pb_contact p input, .et_pb_contact p textarea
{
  background-color: #f4f4f4 !important;
}

/*move the labels above the form input fields*/
.contact-form-labels .et_pb_contact_form_label {
	display: block !important;
	}
	/*hide the label in the field*/
	.contact-form-labels .et_pb_contact_field_options_title {
		display: none;
	}
	/*make the placeholder text the same color as field background*/
	.contact-form-labels input::placeholder,
	.contact-form-labels textarea::placeholder {
	color: #eee !important;
	}
	/*adjust the label design as needed*/
	.contact-form-labels .et_pb_contact_form_label {
	font-size: 20px;
	margin-bottom: 10px;
  }

}

/* ===========================================
   WOOCOMMERCE BLOCKS - CART & CHECKOUT FIXES
   For WooCommerce 8.0+ Block-based Cart/Checkout
   Added: January 2026
   =========================================== */

/*** Cart Block - Main Container ***/

.wc-block-cart,
.wc-block-checkout {
    font-size: 20px;
    line-height: 1.6;
}

/*** Cart Block - Table Header (PRODUCT / TOTAL line) ***/

.wc-block-cart-items th,
.wc-block-cart-items thead th {
    font-size: 15px !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding-bottom: 15px !important;
}

/* Remove all individual header borders and avoid duplicate lines */
.wc-block-cart-items__header,
.wc-block-cart-items__header-image,
.wc-block-cart-items__header-product,
.wc-block-cart-items__header-total,
.wc-block-cart-items thead,
.wc-block-cart-items thead th {
    border: none !important;
    border-bottom: none !important;
}

/* Single 1px top border on the table only */
table.wc-block-cart-items {
    border: none !important;

}

/* Single 1px bottom border under the header row (PRODUCT / TOTAL) – match row border color */
.wc-block-cart-items thead {
    border-bottom: 1px solid #e5e5e5 !important;
}

/* Remove border-top from all cart item cells (user-specified selector) */
.wc-block-cart__main .wc-block-cart-items td {
    border-top: none !important;
}

/* Remove all first-row top borders so only the single thead line shows (no separated lines) */
.wc-block-cart-items tbody tr.wc-block-cart-items__row:first-child,
.wc-block-cart-items tbody tr.wc-block-cart-items__row:first-child td,
.wc-block-cart-items tbody tr.wc-block-cart-items__row:first-child td *:not(.wc-block-components-quantity-selector):not(.wc-block-cart-item__remove-link),
.wc-block-cart-items td.wc-block-cart-item_total,
.wc-block-cart-items td.wc-block-cart-item__image,
.wc-block-cart-items td.wc-block-cart-item__product {
    border-top: none !important;
}

/* Remove extra line above price in 2nd+ rows – kill border-top on price wrappers and total cell contents */
.wc-block-cart-items .wc-block-cart-item__prices,
.wc-block-cart-items .wc-block-cart-item__total-price-and-sale-badge-wrapper,
.wc-block-cart-items .wc-block-cart-item__product .wc-block-components-product-price,
.wc-block-cart-items td.wc-block-cart-item_total * {
    border-top: none !important;
}

/* Hide pseudo-element line that caused thick/duplicate border */
.wc-block-components-sidebar-layout .wc-block-cart__main {
    position: relative;
}

.wc-block-components-sidebar-layout .wc-block-cart__main::before {
    display: none !important;
}

/*** Cart Block - Product Name ***/

.wc-block-components-product-name {
    font-size: 22px !important;
    font-weight: 600 !important;
    display: block;
    margin-bottom: 12px;
}

/*** Cart Block - Product Price ***/

/* Hide duplicate price under product name – show only in TOTAL column */
.wc-block-cart-items .wc-block-cart-item__product .wc-block-cart-item__prices {
    display: none !important;
}

.wc-block-components-product-price {
    font-size: 20px !important;
    font-weight: 600;
}

.wc-block-cart-item__prices .wc-block-components-product-price {
    font-size: 20px !important;
}

.wc-block-cart-item__total-price-and-sale-badge-wrapper {
    font-size: 20px !important;
}

/*** Cart Block - Product Metadata/Description ***/

.wc-block-components-product-metadata {
    font-size: 17px !important;
    line-height: 1.6;
    margin-top: 12px;
}

.wc-block-components-product-metadata__description {
    font-size: 17px !important;
    color: #555;
    line-height: 1.6;
}

.wc-block-components-product-metadata__description > p {
    font-size: 17px !important;
    margin: 0;
    line-height: 1.6;
}

/*** Cart Block - Product Image - Reduced to 50% of previous (37.5%) ***/

.wc-block-cart-item__image {
    max-width: 37.5% !important;
    width: 37.5% !important;
    padding-right: 24px !important;
}

.wc-block-cart-item__image img,
.wc-block-components-product-image img {
    border-radius: 4px;
    width: 100%;
    height: auto;
}

/*** Cart Block - Quantity Selector ***/

.wc-block-components-quantity-selector {
    font-size: 20px;
}

.wc-block-components-quantity-selector input {
    font-size: 20px !important;
    padding: 12px 16px;
}

.wc-block-components-quantity-selector button {
    font-size: 20px !important;
}

/*** Cart Block - Remove Item (button, discrete style) ***/

button.wc-block-cart-item__remove-link,
.wc-block-cart-item__remove-link {
    font-size: 13px !important;
    color: #888 !important;
    display: inline-block;
    padding: 5px 10px !important;
    margin-top: 6px !important;
    margin-bottom: 16px !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    background-color: #f9f9f9 !important;
    text-decoration: none !important;
    cursor: pointer;
    transition: border-color 0.2s, background-color 0.2s, color 0.2s;
    /* Reset default button styling so our styles show */
    appearance: none;
    -webkit-appearance: none;
    font-family: inherit;
    line-height: 1.3;
}

button.wc-block-cart-item__remove-link:hover,
.wc-block-cart-item__remove-link:hover {
    color: #e74c3c !important;
    border-color: #e0e0e0 !important;
    background-color: #f5f5f5 !important;
}

/*** Cart Block - Table Row Spacing ***/

.wc-block-cart-items__row {
    padding: 28px 0 !important;
}



/* Make sure borders between items are thin and consistent */
.wc-block-cart-items__row,
tr.wc-block-cart-items__row {
    border-top: none !important;
    border-bottom-width: 1px !important;
    border-bottom-style: solid !important;
    border-bottom-color: #e5e5e5 !important;
}

/*** Cart Block - Sidebar/Totals ***/

.wc-block-components-totals-wrapper {
    font-size: 20px;
}

.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value {
    font-size: 20px !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 26px !important;
    font-weight: 700 !important;
}

/*** Cart Block - Shipping Line ***/

.wc-block-components-totals-shipping .wc-block-components-totals-item__label,
.wc-block-components-totals-shipping .wc-block-components-totals-item__value {
    font-size: 20px !important;
}

/*** Cart Block - Proceed to Checkout Button ***/

.wc-block-cart__submit-button {
    font-size: 20px !important;
    padding: 18px 36px !important;
}

/*** Cart Block - Coupon/Add Coupons ***/

.wc-block-components-totals-coupon__button {
    font-size: 17px;
}

.wc-block-components-totals-coupon-link {
    font-size: 17px !important;
}

/*** Cart Totals Heading ***/

.wc-block-cart__totals-title {
    font-size: 22px !important;
    font-weight: 600;
}

/*** Checkout Block - Form Fields ***/

.wc-block-checkout input[type="text"],
.wc-block-checkout input[type="email"],
.wc-block-checkout input[type="tel"],
.wc-block-checkout select,
.wc-block-checkout textarea,
.wc-block-components-text-input input {
    font-size: 20px !important;
    padding: 16px 18px;
}

.wc-block-components-text-input label {
    font-size: 16px;
}

/*** Checkout Block - Section Headings ***/

.wc-block-components-checkout-step__title {
    font-size: 22px !important;
    font-weight: 600;
}

.wc-block-components-checkout-step__description {
    font-size: 17px !important;
}

/*** Checkout Block - Order Summary ***/

.wc-block-components-order-summary .wc-block-components-product-name {
    font-size: 18px !important;
}

.wc-block-components-order-summary .wc-block-components-product-metadata {
    font-size: 16px !important;
}

.wc-block-components-order-summary-item__quantity {
    font-size: 14px;
}

/*** Checkout Block - Place Order Button ***/

.wc-block-components-checkout-place-order-button {
    font-size: 22px !important;
    padding: 20px 36px !important;
    width: 100%;
    margin-top: 20px;
}

/*** Notices and Messages ***/

.wc-block-components-notice-banner {
    font-size: 17px;
    padding: 18px 24px;
}

.wc-block-components-notice-banner__content {
    font-size: 17px !important;
}

/*** Mobile Responsive ***/

@media (max-width: 768px) {
    .wc-block-cart,
    .wc-block-checkout {
        font-size: 17px;
    }
    
    .wc-block-components-product-name {
        font-size: 19px !important;
    }
    
    .wc-block-cart-items__row {
        padding: 22px 0 !important;
    }
    
    /* Cart item image: larger on mobile so it’s not microscopic */
    .wc-block-cart-item__image {
        max-width: 50% !important;
        width: 50% !important;
        min-width: 100px !important;
    }
    
    /* Prevent iOS zoom on input focus */
    .wc-block-checkout input[type="text"],
    .wc-block-checkout input[type="email"],
    .wc-block-checkout input[type="tel"],
    .wc-block-checkout select {
        font-size: 16px !important;
    }
}