/**
 * Theme Name:     Contract Laboratory
 * Author:         Jeff Jones
 * Template:       experthive
 * Text Domain:	   contract-laboratory
 * Description:    A child theme based on Hivepress ExpertHive theme
 * Version:        1.0.0
 */

:root {
	--cl-primary-color_1: rgb(18, 39, 76); /* Secondary 3 Dark blue */
    --cl-primary-color_2: rgb(75, 125, 163); /* Primary 1 Blue */
    --cl-primary-color_3: rgb(144, 213, 236); /* Primary 3 Blue */
	--cl-primary-color_4: rgba(255, 191, 0, 1); /* Primary 2 Yellow */
	--cl-primary-color_4_aa: rgba(251, 86, 42, 1); /* AA Primary Orange */
    --cl-secondary-color_1: rgb(102, 103, 102);
	--cl-secondary-color_2: rgb(245, 247, 251);
	--cl-secondary-color_3: rgb(161, 176, 188);
    --light-highlight-color_1: rgb(216, 244, 249); /* Primary 4 light blue */
    --light-highlight-color_2: rgb(217, 219, 226); /* Secondary 2 light blue  */
	--light-highlight-color_3: rgb(248, 248, 248);
	--light-highlight-color_4: rgba(249, 242, 223, 1); /* light orange/yellow */
	--body-text-color: rgba(74, 74, 74, 1); /* Secondary 1 */
/* 	--body-text-color: rgba(110, 110, 110, 1); */
    --muted-text-color: rgba(166, 166, 166, 1);
	
    --body-background-color: rgba(238, 239, 244, 0.4); 
/* 	--body-background-color: rgba(238,236,237, 1); */
	--card-footer-background: rgba(249,249,249, 1) ;
	
    --error-color: rgba(255, 0, 15, 1);
    --error-background: rgba(255, 0, 15, 0.05);
	
    --success-color: rgba(110, 188, 15, 1);
    --success-background: rgba(110, 188, 15, 0.2);
	
    --light-gradient: linear-gradient(0deg, var(--cl-secondary-color_2), var(--cl-secondary-color_3));
	--light-gradient-vertical: linear-gradient(90deg, var(--cl-secondary-color_2), var(--cl-secondary-color_3));
    --light-gradient-opacity: linear-gradient(0deg, rgba(238, 239, 244, 0.9), rgba(161, 176, 188, 0.8));
	--horizontal-solid-gradient: linear-gradient(0deg, var(--cl-secondary-color_2) 47%, var(--cl-secondary-color_3) 40%);
	--angular-solid-gradient: linear-gradient(112deg, var(--cl-secondary-color_2) 50%, var(--cl-primary-color_3) 40%);
	--angular-solid-gradient-light: linear-gradient(112deg, var(--cl-secondary-color_2) 46%, var(--cl-secondary-color_3) 40%);
    --dark-gradient: linear-gradient(0deg, var(--cl-primary-color_3), var(--cl-primary-color_1));
    --dark-gradient-opacity: linear-gradient(0deg, rgba(76, 145, 167, 0.5), rgba(18, 39, 76, 0.5));
	
    --primary-font: 'Poppins', sans-serif;
    
    --font-size-smaller: 0.75rem;
    --font-size-small: 0.875rem;
	--font-size-default: 1rem;
    --font-size-medium: 1.25rem;
    --font-size-large: 1.75rem;
    --font-size-xlarge: 2.25rem;
    --font-weight-light: 100;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-bold: 700;
    --line-height-default: 130%;
    --line-height-short: 110%;
    --line-height-large: 150%;
    --small-border-radius: 4px;
    --default-border-radius: 6px;
    --rounded-border-radius: 3.125rem;
    --default-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
	
/*     --default-border: 1px solid rgba(75, 125, 163, 0.1); */
	--default-border: 1px solid rgba(221, 219, 220, 1);
    --border-branded: 1px solid rgba(18, 39, 76, 0.5);
    --highlight-border: 1px solid rgba(235, 153, 54, 1);
	
    --shadow-color: 231deg 7% 59%;
    --shadow-elevation-low: 0px 0.3px 0.3px hsl(var(--shadow-color) / 0.34), 0px 0.5px 0.6px -1.2px hsl(var(--shadow-color) / 0.34), 0px 1.3px 1.5px -2.5px hsl(var(--shadow-color) / 0.34);
    --shadow-elevation-medium: 0px 0.3px 0.3px hsl(var(--shadow-color) / 0.29), 0px 0.9px 1px -0.6px hsl(var(--shadow-color) / 0.29), 0px 1.7px 1.9px -1.2px hsl(var(--shadow-color) / 0.29), 0px 3.4px 3.8px -1.9px hsl(var(--shadow-color) / 0.29), -0.1px 6.6px 7.4px -2.5px hsl(var(--shadow-color) / 0.29);
    --shadow-elevation-high: 0px 0.3px 0.3px hsl(var(--shadow-color) / 0.3), 0px 1.7px 1.9px -0.3px hsl(var(--shadow-color) / 0.3), 0px 3.1px 3.5px -0.6px hsl(var(--shadow-color) / 0.3), -0.1px 4.9px 5.5px -0.9px hsl(var(--shadow-color) / 0.3), -0.1px 7.4px 8.3px -1.2px hsl(var(--shadow-color) / 0.3), -0.2px 11.1px 12.5px -1.6px hsl(var(--shadow-color) / 0.3), -0.2px 16.3px 18.3px -1.9px hsl(var(--shadow-color) / 0.3), -0.3px 23.4px 26.3px -2.2px hsl(var(--shadow-color) / 0.3), -0.5px 32.8px 36.9px -2.5px hsl(var(--shadow-color) / 0.3);
	--hivepress-box-shadow: rgba(75, 125, 163, 0.35) 0px 5px 21px;
    --gallery-max-img-width: 600px;
    --gallery-max-img-height: 400px;
	--container-width: 90rem;
}


* {
	line-height: 130%;
}

/* override the divi style stuff on Hivepress templates */
/* .hp-page .et-l div{
	text-align: inherit;
    margin: inherit;
    padding: inherit;
    border: inherit;
    outline: inherit;
    vertical-align: inherit;
    background: inherit;
    letter-spacing: inherit;
    color: inherit;
    box-shadow: inherit;
    text-shadow: inherit;
    border-radius: inherit;
    transition: inherit;
} */

/* helpers / utility */

/* || GLOBALS */

html,
body {
    font-size: 100%;
    font-family: 'Poppins', sans-serif;
    /* overflow-y: scroll; */
    scroll-behavior: smooth;
    scroll-padding-top: 6em;
}

body {
	background-color: var(--body-background-color) !important;
}

.container, .hp-page, .et-db #et-boc .et-l .et_pb_row_0_tb_header, .et-db #et-boc .et-l .et_pb_row_1_tb_header, .et_pb_row_0_tb_footer, .et_pb_row_1_tb_footer, .et_pb_row_2_tb_footer, main, .hp-membership-plans, .wp-block-cover .wp-block-cover__inner-container, .page__text > .woocommerce, .hp-form.hp-form--user-register{
		width: var(--container-width) !important;
		max-width: 90dvw !important;
		margin: 0 auto !important;
		padding: 0 !important;
		flex-basis: auto !important;
}

.wp-block-cover, #et-boc .et-l div.wp-block-cover {
    color: var(--body-text-color) !important;
}

p {
	text-wrap: pretty;
}

/* a {
    cursor: pointer;
    color: var(--cl-primary-color_2)!important;
} */

i {
    margin-right: 0.5rem;
    transition: all 400ms ease-in-out;
}

i.right {
    margin-left: 0.5rem;
    margin-right: 0;
}

.unstyled {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.hide {
	display: none !important;
}

.flex {
	display: flex;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 1rem;
}

.row {
    flex-direction: row;
}

.column {
    flex-direction: column;
}

.align-center {
    align-items: center;
}

.align-right {
    align-items: right;
}

.justify-between {
    justify-content: space-between;
}

.justify-evenly {
    justify-content: space-evenly;
}

.justify-around {
    justify-content: space-around;
}

.justify-center {
    justify-content: center;
}

.two-columns {
    columns: 250px 2;
	
}

.three-columns {
    columns: 250px 3;
}

.full-bleed {
	width: 100vw;
	position: relative;
	left: 50%!important;
	right: 50%!important;
	margin-left: -50vw!important;
	margin-right: -50vw!important;
}

.forgot-password-block div p:last-of-type {
	display: none;
}

.banner_cover, #et-boc .et-l div.banner_cover {
	&.full-bleed {
		margin-top: -2rem;
	}
	&.no-padding {
		padding: 0 0 3.5rem 0!important;
	}
	& .wp-block-image {
		width: fit-content;
        margin: auto;
	}
	& .wp-block-columns.container:first-of-type .wp-block-column:first-of-type {
		padding: 3rem 0rem;
	}
	h1.wp-block-heading {
		margin-bottom: 1rem !important;
	} 
	&.requester-register-page .container, .vendor-register-page .container{
		align-items: start;
	}
	&.home_banner {
		background-image: url(/wp-content/uploads/2025/06/CL_Homepage_BG_V2_opt.webp) !important;
/* 		background-image: linear-gradient(rgba(255,255,255,0.4)), url(/wp-content/uploads/2025/06/CL_Homepage_BG_V2_opt.webp) !important; */
		background-repeat: no-repeat !important;
        background-position: center center !important;
        background-size: cover !important;
        min-height: 50vh;
        height: fit-content;
	}
	&.vendor_banner {
		background-image: url(/wp-content/uploads/2025/06/81345_CL_SiteHeroImages_V4-01.webp), url("/wp-content/uploads/2025/06/CL_Homepage_BG_V2_opt.webp") !important;
        background-repeat: no-repeat !important;
		background-position: 90% 70%, bottom !important;
		background-size: 50%, cover !important;
		min-height: 40vh;
		height: fit-content;
	}
	&.request_banner {
		background-image: url(/wp-content/uploads/2025/06/81345_CL_SiteHeroImages_V4-03.webp), url("/wp-content/uploads/2025/06/CL_Homepage_BG_V2_opt.webp") !important;
		background-repeat: no-repeat !important;
		background-position: 90% 70%, bottom !important;
		background-size: 50%, cover !important;
		min-height: 40vh;
		height: fit-content;
	}
}

.no-padding {
	padding: 0!important;
}

.margin-top-auto {
	margin-top: auto;
}

.margin-bottom-auto {
	margin-bottom: auto;
}

.sticky {
	position: sticky !important;
    top: 0rem;
}

.gradient {
	background: var(--light-gradient);
	&.vertical {
		background: var(--light-gradient-vertical);
	}
	&.opacity {
		background: var(--light-gradient-opacity);
	}
	&.horizontal-solid {
		background: var(--horizontal-solid-gradient)!important;
	}
	&.angular-solid {
		background: var(--angular-solid-gradient)!important;
	}
	&.angular-solid-light {
		background: var(--angular-solid-gradient-light)!important;
	}
	&.dark {
		background: var(--dark-gradient);
	}
}

/* Nav width adjustment */
.et_pb_menu__menu, .et-menu-nav, #menu-primary-menu-2 {
	width: 100%!important;
}

#menu-primary-menu-2 {
	gap: 1rem !important;
}

.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu>nav>ul>li {
	padding: 0 !important;
}

/* Typograpy */

h1, h2, h3, h4, h5, h6 {
	letter-spacing: initial!important;
	line-height: var(--line-height-short);
	text-wrap: balance;
}

h3, h4, h5, h6 {
	font-weight: var(--font-weight-bold)!important;
}

:is(h2,h3,h4,h5,h6) a {
    color: var(--cl-primary-color_1)!important;
}

h3.wp-block-heading, 
fieldset legend, 
.header-logo__name, 
.comment__author, 
.hp-review__author, 
.hp-message--view-block hp-message__sender, 
.woocommerce ul.product_list_widget li .product-title, 
.editor-post-title__block, 
.editor-post-title__input, 
.content-title {
	font-weight: var(--font-weight-medium)!important;
}

.vendor-profile h3 strong {
	font-weight: var(--font-weight-medium) !important;
}
.content-title {
	margin-top: 1rem!important;
	text-wrap: balance;
}

.content-title::before {
	display: none!important;
}

h1:not(:last-child), h2:not(:last-child), h3:not(:last-child), h4:not(:last-child), h5:not(:last-child), h6:not(:last-child){
	margin-bottom: 0.5rem!important;
}

h1, h1.wp-block-heading {
	color: var(--cl-primary-color_1)!important;;
	font-size: var( --font-size-xlarge)!important;;
	font-weight: var(--font-weight-bold)!important;
}

h2 {
	color: var(--cl-primary-color_1)!important;;
	font-size: var( --font-size-large)!important;;
	font-weight: var(--font-weight-bold)!important;
}

h1.hp-listing--view-page .hp-listing__title {
	color: var(--body-text-color)!important;;
	font-size: var(--font-size-xlarge)!important;;
	font-weight: var(--font-weight-medium)!important;
	margin-bottom: 1rem !important;
	max-width: 600px;
}

p.content-subtitle {
	color: var(--cl-primary-color_1)!important;;
	font-size: var( --font-size-medium)!important;
	max-width: 600px;
}

.top-header {
	gap: 1rem;
	justify-content: end;
}

.header-logo{
	min-width: 300px;
	max-width: 380px;
}

.content-area {
	padding: 2rem 0;
}


.advertisement {
	padding-top: 1.5rem;
    padding-bottom: 1rem;
	border-top: 1px solid #f7f7f7;
	border-bottom: 1px solid #f7f7f7;
    background-color: #ffffff !important;
	margin-bottom: 2rem;
	& * {
		text-align: center;
	}
	& p {
		color: #666766 !important;
		font-size: 12px;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		color: #666766 !important
	}
}

.signin {
	padding: 2rem;
    margin-bottom: 1rem;
    background: #fff;
    color: var(--body-text-color);
	border-radius: var(--default-border-radius);
	
}

/* buttons */
.btn, 
.button, 
.button--primary, 
.button.button--secondary, 
.hp-menu__item--request-submit.hp-link, 
.wp-block-button, 
.hp-vendor__action--request, 
.hp-vendor__action--message, 
.hp-form__footer .hp-link, 
.hp-field--button, 
html .et_pb_button, 
html .et-db #et-boc .et-l .et_pb_button_0_tb_header.et_pb_button, 
html .et-db #et-boc .et-l .et_pb_button_1_tb_header.et_pb_button,
.limited-subscription-notice,
.woocommerce-button.button, 
.woocommerce .button{
	display: flex;
    justify-content: center;
	white-space: nowrap;
    padding: 0.5rem 2rem !important;
    font-size: var(--font-size-default) !important;
	border: 1px solid !important;
	border-radius: var(--rounded-border-radius)!important;
	text-decoration: none;
	font-weight: var(--font-weight-medium);
	text-align: center;
	vertical-align: middle;
	line-height: 1.4;
	white-space: nowrap;
	width: fit-content;
	transition: all ease-in-out 200ms;
	gap: 0.35rem;
	align-items: center;
	text-align: center;
	cursor: pointer;
	box-shadow: var(--shadow-elevation-medium);
	background-color: var(--cl-primary-color_1);
	color: #fff!important;
	white-space: normal;
	& i {
		margin-top: -0.1rem;
	}
}

.woocommerce-button.button,
.woocommerce .button{
	background-color: var(--cl-primary-color_1)!important;
	color: #fff!important;
	box-shadow: none!important;
}

button[type="button"].button:not(
	a.upgrade-button, 
	.request-button, 
	button.hp-vendor__action--request, 
	.hp-menu__item--request-submit.hp-link, 
	.hp-vendor__action--request, 
	html .et-db #et-boc .et-l .et_pb_button_0_tb_header.et_pb_button, 
	.hp-listing__action.hp-listing__action--offer.hp-button, 
	.hp-membership-plan__select-button
	) 
	{
		color: var(--cl-primary-color_1)!important;
		background-color: #fff!important;
	}

.btn:hover, 
.button:hover, 
button:hover, 
.button--primary:hover, 
.button.button--secondary:hover, 
.hp-menu__item--request-submit.hp-link:hover, 
.wp-block-button:hover, 
.hp-vendor__action--request:hover, 
.hp-vendor__action--message:hover, 
.hp-form__footer .hp-link:hover, 
.hp-field--button:hover, 
.et_pb_button:hover, 
html .et-db #et-boc .et-l .et_pb_button_0_tb_header.et_pb_button:hover, 
html .et-db #et-boc .et-l .et_pb_button_1_tb_header.et_pb_button:hover {
	box-shadow: none;
}
:is(
	.btn, 
	.button, 
	button, 
	.button--primary, 
	.button.button--secondary, 
	.hp-menu__item--request-submit.hp-link, 
	.wp-block-button, 
	.hp-vendor__action--request, 
	.hp-vendor__action--message, 
	.hp-form__footer .hp-link, 
	.hp-field--button, 
	.et_pb_button, 
	html .et-db #et-boc .et-l .et_pb_button_0_tb_header.et_pb_button, 
	html .et-db #et-boc .et-l .et_pb_button_1_tb_header.et_pb_button
):hover {
	box-shadow: none;
}



html .et-db #et-boc .et-l .et_pb_button_1_tb_header.et_pb_button, html .et-db #et-boc .et-l .et_pb_button_0_tb_header.et_pb_button {
	padding: 0.15rem 2rem !important;
	box-shadow: none !important;
}

html .et-db #et-boc .et-l .et_pb_button_1_tb_header.et_pb_button:after, html .et-db #et-boc .et-l .et_pb_button_0_tb_header.et_pb_button:after {
	display: none;
}

.top-header a.wp-block-button.button.button--secondary {
    box-shadow: none !important;
}

/* || UPGRADE / REQUEST BUTTONS */

a.upgrade-button,
.request-button, 
button.hp-vendor__action--request, 
.hp-menu__item--request-submit.hp-link, 
.hp-vendor__action--request, 
html .et-db #et-boc .et-l .et_pb_button_0_tb_header.et_pb_button,
.hp-listing__action.hp-listing__action--offer.hp-button{
    color: var(--cl-primary-color_1) !important;
    background-color: var(--cl-primary-color_4) !important;
	border-color: var(--highlight-border) !important;
}

a.upgrade-button.dark,
.request-button.dark {
    background: var(--cl-primary-color_1);
    border-color: var(--cl-primary-color_1);
    color: var(--cl-secondary-color_2) !important;

    &:hover {
        border-color: var(--cl-secondary-color_2);
    }
}

.btn.secondary {
    /* Light color Button for Secondary purposes */
    background: var(--body-background);
    border: 1px solid var(--cl-primary-color_1);

    &:hover {
        box-shadow: none;
        border-color: var(--cl-secondary-color_1);
    }
}

.button.button--secondary {
	background-color: var(--cl-primary-color_1) !important;
	color: #fff !important;
	border-color: var(--cl-secondary-color_2) !important;
}

.btn.tertiary {
    background: var(--cl-primary-color_3);
    border: 1px solid;
    color: #fff;
    &:hover {
        box-shadow: none;
        border-color: var(--cl-secondary-color_2);
    }
}

.btn-round, .btn-rounded {
    border-radius: var(--rounded-border-radius) !important;
}

.btn-ghost, 
button.hp-vendor__action--message, 
.hp-form__footer .hp-link, 
.hp-field--button, 
.limited-subscription-notice {
    background: transparent!important;
	color: rgba(18, 39, 76, 0.8)!important;
    border-color: var(--cl-secondary-color_1) !important;
	border-radius: var(--rounded-border-radius)!important;
	box-shadow: none;
    &:hover {
        border-color: var(--cl-primary-color_1);
    }
}

.request-button, .member-button {
	box-shadow: none !important;
	margin-top: auto;
}

/* override for search buttons */

.hp-form--vendor-search button.hp-form__button.button-primary.alt.button.hp-field.hp-field--submit span, .hp-form--request-search  button.hp-form__button.button-primary.alt.button.hp-field.hp-field--submit span{
	font-size: 0!important;
}

.wp-block-buttons {
	margin-top: auto;
}



.wp-block-button__link, .wp-block-button__link:before,
.button::before{
	all: unset !important;
}

.hp-menu__item--request-submit.hp-link i {
	color: #12274c !important;
}

/* end */

.wp-block-cover {
	border-bottom: 1px solid var(--cl-primary-color_1);
}

/* Divi Overrides */

html .et-db #et-boc .et-l .et_pb_button_0_tb_header.et_pb_button {
/*     color: #12274C !important;
    border-width: 0px !important;
    font-size: 16px;
    background-color: #FFBF00; */
}

html .et-db #et-boc .et-l .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

html .et-db #et-boc .et-l .nav li ul{
    padding: 0.5rem 0 !important;
    max-width: 100vw;
    width: 350px !important;
}

html .et-db #et-boc .et-l .et-menu.nav li li {
    padding: 0 !important;
    width: 100%;
}

html .et-db #et-boc .et-l .et-menu.nav li li a {
    width: 100%;
    padding: 0.5rem 1rem !important;
}

/* mega menu */

html .et-db #et-boc .et-l .nav li.mega-menu > ul.sub-menu {
  width: 100% !important;
  max-width: 100% !important;
  padding: 1rem !important;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  
}
html .et-db #et-boc .et-l .nav li.mega-menu:hover > ul.sub-menu {
  pointer-events: auto;
  opacity: 1;
  visibility: visible;
}

html .et-db #et-boc .et-l .nav li.mega-menu > ul.sub-menu > li.mega-menu-parent ul.sub-menu {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
}
html .et-db #et-boc .et-l .nav li.mega-menu > ul.sub-menu > li.mega-menu-parent > a {
  font-size: 1rem;
	font-weight: inherit !important;
	color: #002d35 !important;
  display: block;
  padding-bottom: 0.5rem;
  pointer-events: none;
  cursor: default;
	width: 100% !important;
}
.et-db #et-boc .et-l .et-menu-nav li.mega-menu>ul>li {
  width: 50% !important;
}

html .et-db #et-boc .et-l .nav li.mega-menu-parent > ul.sub-menu > li.menu-item > a {
	font-size: 0.8rem !important;
	font-weight: inherit !important;
	line-height: 1.3 !important;
}


@media (max-width: 1350px) and (min-width: 768px) {
  html .et-db #et-boc .et-l .nav li.mega-menu > ul.sub-menu > li.mega-menu-parent ul.sub-menu {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* Icon styling */
.toggle-icon {
  font-weight: bold;
  margin-left: 10px;
  transition: transform 0.3s ease;
}

/* Slide animation container */
.collapsible-wrapper {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.4s ease;
}

/* Expanded state */
.collapsible-wrapper.open {
  max-height: 1200px; /* Large enough to fit full list */
}

.hp-field--checkboxes, .hp-field--radio {
	max-height: fit-content!important;
}

/* Woocommerce-specific styles */

/* woocommerce styles */

.page__text .woocommerce,
.cl-woocommerce-checkout{
	background: #fff;
	border: var(--border-branded)!important;
    border-radius: var(--default-border-radius) !important;
    box-shadow: var(--shadow-elevation-medium) !important;
    border-left: 6px solid !important;
	padding: 1.5rem !important;
	margin-top: 1rem !important;
	margin-bottom: 1rem !important;
}

.woocommerce .et_pb_column.et_pb_column_1_3.et_pb_column_1_tb_body.no-padding.et_pb_column_single {
	z-index: 0 !important;
}

table.variations tr{
	display: flex;
	flex-direction: column;
}

.woocommerce-form-login-toggle .woocommerce-info {
	padding-left: 3rem !important;
}

.wp-block-woocommerce-single-product {
	display: flex;
	flex-direction: column;

	max-width: 100%;
	height: 100%;
	color: var(--body-text-color);

	border: var(--border-branded);
	border-radius: var(--default-border-radius)!important;
	box-shadow: var(--shadow-elevation-medium)!important;
	overflow: hidden;
	&:hover{
		text-decoration: none;
		border: var(--highlight-border);
		box-shadow: var(--shadow-elevation-low)!important;
	}
	
	& .wp-block-post-title {
		font-weight: var(--font-weight-medium) !important;
        margin-bottom: 1rem !important;
	}
	
	& .wp-block-woocommerce-product-price{
		font-size: var(--font-size-large);
		font-weight: var(--font-weight-bold);
		color: var(--cl-primary-color_1) !important;
		padding-bottom: 1rem;
        border-bottom: 1px solid;
        margin-bottom: 1rem !important;
		& .subscription-details, & .from {
			font-size: var(--font-size-default);
			font-weight: var(--font-weight-medium);
		}
	}
	& .wp-block-woocommerce-product-summary{
		padding-bottom: 1rem;
        border-bottom: 1px solid;
        margin-bottom: 1rem !important;
		height: 100%;
		& h3 {
			font-weight: var(--font-weight-medium) !important;
			font-size: var(--font-size-medium);
		}
		& ul {
			list-style: circle outside !important;
			margin: 1rem 0 0 2rem;
		}
		& strong {
			font-weight: var(--font-weight-medium) !important;
		}
	}
	.woocommerce-variation.single_variation {
		padding: 0 1rem 1rem;
		font-weight: var(--font-weight-medium);
		font-size: var(--font-size-medium);
	}
}

.et-db #et-boc .et-l .et_pb_wc_checkout_order_details_0_tb_body tfoot tr.recurring-totals th {
	color: var(--cl-primary-color_1) !important;
}

tr.cart-subtotal {
	font-wieght: var(--font-weight-medium);
}


.woocommerce div.product form.cart .variations label {
		font-weight: var(--font-weight-medium);
		font-size: var(--font-size-default);
}
.woocommerce div.product form.cart .variations td.label {
	padding: 0;
}

.wp-block-woocommerce-add-to-cart-form form.cart {
	margin: 0 !important;
}

.wp-block-add-to-cart-form.wc-block-add-to-cart-form.product.wc-block-add-to-cart-form--input.wp-block-woocommerce-add-to-cart-form {
	margin-top: auto;
}

.et-db #et-boc .et-l .et_pb_wc_checkout_billing_0_tb_body form .form-row input.input-text {
	width: 100% !important;
	border-radius: var(--default-border-radius) !important;
}

.wc-stripe-upe-form .Label {
	color: #ffffff!important;
}

.et_pb_with_border.et_pb_module.et_pb_wc_checkout_payment_info.et_pb_wc_checkout_payment_info_0_tb_body {
    border: var(--border-branded) !important;
    border-radius: var(--default-border-radius) !important;
    box-shadow: var(--shadow-elevation-medium) !important;
    padding: 0.5rem 0.5rem 1rem !important;
}

.woocommerce #payment #place_order, .woocommerce-page #payment #place_order {
	margin-top: 1rem;
}

.woocommerce-checkout .et_pb_column.et_pb_column_1_3.et_pb_column_1_tb_body.et_pb_css_mix_blend_mode_passthrough.et_pb_column_single {
	position: sticky !important;
    top: 2rem;
}

.woocommerce-checkout .form-row.form-row-wide.stripe-gateway-checkout-email-field.validate-required.validate-email {
	width: 100% !important;
}
.et-db #et-boc .et-l .et_pb_module input.text:not(.qty), 
.et-db #et-boc .et-l .et_pb_module input.title, 
.et-db #et-boc .et-l .et_pb_module input[type=email], 
.et-db #et-boc .et-l .et_pb_module input[type=password], 
.et-db #et-boc .et-l .et_pb_module input[type=tel], 
.et-db #et-boc .et-l .et_pb_module input[type=text], 
.et-db #et-boc .et-l .et_pb_module input select, 
.et-db #et-boc .et-l .et_pb_module input textarea,
.woocommerce-checkout #et-boc .et-l span.select2-selection.select2-selection--single{
	border-radius: var(--default-border-radius) !important;
    color: var(--body-text-color) !important;
	transition: background 0.15s ease, border 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
    border: 1px solid rgba(230,230,230,1)!important;
}

input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=max], input[type=min], input[type=month], input[type=number], input[type=password], input[type=range], input[type=search], input[type=step], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=value], select, textarea {
	background-color: #fff;
}

.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .form-row:nth-child(odd) {
	float: right !important;
	clear: right !important;
}

.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .form-row:nth-child(2n) {
	float: left !important;
	clear: left !important;
}

/* style sidebar checkout steps sections */
.woocommerce-checkout .et_pb_column.et_pb_column_2_3.et_pb_column_0_tb_body.et_pb_specialty_column.et_pb_css_mix_blend_mode_passthrough {
	margin-right: 0!important;
}

.et_pb_wc_checkout_order_details.et_pb_wc_checkout_order_details_0_tb_body,
.steps-widget{
	min-width: 350px;
    width: fit-content;
    height: fit-content;
    margin-top: 2rem!important;
    background: rgba(255, 255, 255, 1)!important;
    padding: 1.5rem 1.5rem 1.5rem 2.5rem!important;
    border-radius: 0 var(--default-border-radius) var(--default-border-radius) 0!important;
    border-top: 10px solid var(--cl-primary-color_1)!important;
    border-bottom: 10px solid var(--cl-primary-color_1)!important;
	box-shadow: var(--shadow-elevation-low) !important;
	z-index: 0;
}

.cl-woocommerce-checkout{ 
	box-shadow: var(--shadow-elevation-high) !important;
	z-index: 1 !important;
}


/* || MEDIA QUERIES */

@media (max-width: 34rem) { /* 544px */
	.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .form-row:nth-child(2n),
	.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .form-row:nth-child(odd){
		width: 100% !important;
		float: none !important;
		clear: all !important;
	}
}

@media (max-width: 48rem) { /* 768px */
	.banner_cover {
		&.full-bleed {
			margin-top: -2rem;
		}
		& .wp-block-columns.container:first-of-type .wp-block-column:first-of-type {
			padding: 2rem 0rem;
		}
		&.home_banner, &.vendor_banner, &.request_banenr {
			background-image: url(/wp-content/uploads/2025/06/81345_CL_SiteHeroImages_V4-03.webp) !important;
		}
	}
}

@media (min-width: 769px) and (max-width: 1024px) {

}

@media (max-width: 1200px) {

}

/* end */