/*
 Theme Name:   Blessingdales Thrift Stores
 Theme URI:    https://crushingpixels.com
 Description:  Crushing Pixels Child Theme
 Author:       Shanda Watts
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      3.0
*/


/***Load Fonts ***/

/**
See: https://github.com/rsms/inter/tree/master/docs/font-files
https://abcdinamo.com/news/using-variable-fonts-on-the-web
**/


@font-face {
    font-family: 'Inter';
    src: local(''), 
		 url('../blessingdales/fonts/InterVariable.woff2') format('woff2-variations'),
         url('../blessingdales/fonts/InterVariable.ttf') format('truetype-variations');
    font-weight: 300 400 500 600 700;
    font-style: normal;
	font-display: swap;
}


/***Container Styles ***/

/* Site Wrapper */
.site-wrapper {
    width: 100%;
    max-width: 1920px;
    margin-inline: auto;
}

.ar-16-9 {
    aspect-ratio: 16/9;
}

.ar-9-16 {
    aspect-ratio: 9/16;
}

.ar-4-3 {
    aspect-ratio: 4/3;
}

.ar-3-4 {
	aspect-ratio: 3/4;
}
.ar-3-1 {
	aspect-ratio: 3/1;
}

.ar-1-1 {
	aspect-ratio: 1/1;
}


/* Visually Hidden */
.visually-hidden:not(:focus):not(:active) {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

/* No Underline */
.no-ul, .no-ul a {
	text-decoration: none;
}


/* Remove bottom margin on last paragraph */
.gb-container p:last-child:last-of-type {
    margin-bottom: 0px;
}

.block-editor-block-list__layout .gb-container p:nth-last-child(2) {
    margin-bottom: 0px;
}

/**Cursor**/
.pointer {
	cursor:pointer;
}

/**Typography **/

/**Clamp Defaults:
https://chrisburnell.com/clamp-calculator/?font-size-root=16&size-min=18&size-max=24&viewport-min=320&viewport-max=1600&viewport-units=vw&rounding-strategy=nearest&rounding-value=0.5em 
Min Viewpoint: 320px
Max Viewpoint: 1600px
Rootsize: 16px
Viewpoint Units: vw
Rounding Nearest
Rounding Value 0.5em
**/

:root {
	--headline-font:'Inter', serif;
	--body-font:'Inter', sans-serif;

	/* Body text size: fluid ~ 17.5px to 20px */
	--body: clamp(1.094rem, round(1.055rem + 0.195vw, 0.5em), 1.25rem);

	/* Headline XL: fluid ~ 52px to 72px */
	--headline-xl: clamp(3.25rem, round(2.938rem + 1.563vw, 0.5em), 4.5rem);

	/* Headline H1: fluid ~ 52px to 60px */
	--headline-h1: clamp(3.25rem, round(3.125rem + 0.625vw, 0.5em), 3.75rem);

	/* Headline H2:fluid ~ 44px to 52px */
	--headline-h2: clamp(2.75rem, round(2.625rem + 0.625vw, 0.5em), 3.25rem);

	/* Headline H3: fluid ~ 41px to 45px */
	--headline-h3: clamp(2.563rem, round(2.5rem + 0.313vw, 0.5em), 2.813rem);

	/* Headline H4: fluid ~ 24px to 30px */
	--headline-h4: clamp(1.5rem, round(1.406rem + 0.469vw, 0.5em), 1.875rem);

	/* Headline H5: fluid ~ 20px to 28px */
	--headline-h5: clamp(1.25rem, round(1.125rem + 0.625vw, 0.5em), 1.75rem);

	/* Headline H6: fluid ~ 18px to 24px */
	--headline-h6: clamp(1.125rem, round(1.031rem + 0.469vw, 0.5em), 1.5rem);

	/* Body XL: fluid ~ 24px to 28px */
	--body-xl: clamp(1.5rem, round(1.438rem + 0.313vw, 0.5em), 1.75rem);

	/* Body LG: fluid ~ 20px to 24px */
	--body-lg: clamp(1.25rem, round(1.188rem + 0.313vw, 0.5em), 1.5rem);

	/* Body MD: fluid ~ 16px to 18px */
	--body-md: clamp(1rem, round(0.969rem + 0.156vw, 0.5em), 1.125rem);

	/* Body SM: fixed ~ 16px */
	--body-sm: clamp(1rem, round(1rem + 0vw, 0.5em), 1rem);

	/* Body XS: fixed ~ 14px */
	--body-xs: clamp(0.875rem, round(0.875rem + 0vw, 0.5em), 0.875rem);

	--padding-left-right-fullwidth: clamp(2.5rem, calc((100% - 1600px) / 2 + 2.5rem), calc((100% - 1600px) / 2 + 2.5rem));
	
	/* Left and right padding: min ~ 16px, fluid ~ 14px to 18px, max ~ 24px */
	--padding-left-right: clamp(1rem, 0.848rem + 0.758vw, 1.5rem);

	/* Top and bottom padding for default container: min ~ 48px, fluid ~ 48px to 88px, max ~ 80px */
	--padding-default-top-bottom: clamp(3rem, 2.394rem + 3.03vw, 5rem);

	/* Top and bottom padding for XXL container: min ~ 112px, fluid ~ 120px to 174px, max ~ 192px */
	--padding-xxl-top-bottom: clamp(7rem, 7.648vw + 5.47rem, 12rem);

	/* Top and bottom padding for XL container: min ~ 100px, fluid ~ 108px to 174px, max ~ 224px */
	--padding-xl-top-bottom: clamp(6.25rem, 6.692vw + 4.859rem, 14rem);

	/* Top and bottom padding for LG container: min ~ 72px, fluid ~ 72px to 128px, max ~ 120px */
	--padding-lg-top-bottom: clamp(4.5rem, 3.591rem + 4.545vw, 7.5rem);

	/* Top and bottom padding for MED container: min ~ 24px, fluid ~ 24px to 48px, max ~ 40px */
	--padding-med-top-bottom: clamp(1.5rem, 1.197rem + 1.515vw, 2.5rem);

	/* Top and bottom padding for SM container: fixed ~ 24px */
	--padding-sm-top-bottom: clamp(1.5rem, 1.5rem + 0vw, 1.5rem);

	/* Top and bottom padding for XS container: fixed ~ 16px */
	--padding-xs-top-bottom: 1rem;

}

body {
	font-family: var(--body-font);
	font-weight:500;
}

.heading-font {
	font-family: var(--headline-font);
	font-weight:700;
}

.body-font {
	font-family: var(--body-font);
}

p {
	font-size:var(--body);
	font-family: var(--body-font);
	line-height: 1.6;
	margin-bottom: 1.25rem;
}

h1, h2, h3, h4, h5, h6, .headline-xl, .headline-h1, .headline-h2, .headline-h3, .headline-h4, .headline-h5, .headline-h6 {
	font-family: var(--headline-font);
	margin-bottom:1rem;
	line-height: 1.15;
	font-weight:700;
}

.headline-xl {
	font-size:var(--headline-xl);
}


h1, .headline-h1 {
	 font-size: var(--headline-h1);
	 line-height:1.1;
}

h2, .headline-h2 {
	font-size: var(--headline-h2);
	line-height:1.1;
}

h3, .headline-h3 {
	font-size: var(--headline-h3);
	 line-height:1.2;
}

h4, .headline-h4 {
	font-size: var(--headline-h4);
	 line-height:1.25;
}

h5, .headline-h5 {
	font-size: var(--headline-h5);
	line-height: 1.25;
}

h6, .headline-h6{
	font-size: var(--headline-h6);
	line-height: 1.4;
}

.sub-headline {
	font-size: clamp(1.5rem, round(1.438rem + 0.313vw, 0.5em), 1.75rem);
}

.body-xl {
	font-family: var(--body-font);
    font-size: var(--body-xl);
}

.body-lg {
	font-family: var(--body-font);
    font-size: var(--body-lg);
}

.body-md {
	font-family: var(--body-font);
    font-size: var(--body-md);
}

.body-sm {
	font-family: var(--body-font);
    font-size: var(--body-sm);
}

.body-xs {
	font-family: var(--body-font);
    font-size: var(--body-xs);
}

.body-lt {
	font-weight:300;
}


.balanced {
  max-inline-size: 50ch;
  text-wrap: balance;
}

/***Secton Padding***/

.container-default {
    padding: var(--padding-default-top-bottom) var(--padding-left-right);
}

.container-xxl {
    padding: var(--padding-xxl-top-bottom) var(--padding-left-right);
}

.container-xl {
    padding: var(--padding-xl-top-bottom) var(--padding-left-right);
}

.container-lg {
    padding: var(--padding-lg-top-bottom) var(--padding-left-right);
}

.container-md {
    padding: var(--padding-med-top-bottom) var(--padding-left-right);
}

.container-sm {
    padding: var(--padding-sm-top-bottom) var(--padding-left-right);
}

.container-xs {
    padding: var(--padding-xs-top-bottom) var(--padding-left-right);
}

/**buttons**/
.gb-button {
	/* Top and Bottom padding: min ~ 12px, fluid ~ 12px to 18px, max ~ 18px */
	padding-top:clamp(0.75rem, round(0.656rem + 0.469vw, 0.5em), 1.125rem);
	padding-bottom:clamp(0.75rem, round(0.656rem + 0.469vw, 0.5em), 1.125rem);

	/* Left and right padding: fixed ~ 16px  */
	padding-left:clamp(2.5rem, round(2.5rem + 0vw, 0.5em), 2.5rem);
	padding-right:clamp(2.5rem, round(2.5rem + 0vw, 0.5em), 2.5rem);
}


.gb-button-wide {
	/* Left and right padding: min ~ 40px, fluid ~ 40px to 75px, max ~ 75px */
	padding-left:clamp(2.5rem, round(1.953rem + 2.734vw, 0.5em), 4.688rem);
	padding-right:clamp(2.5rem, round(1.953rem + 2.734vw, 0.5em), 4.688rem);
}


.gb-button-text, .main-navigation a.gb-button-text {
	font-family:var(--body-font);
	text-transform:uppercase;
	font-size:1rem;
}

/* Haumburger Menu Styling */ 
.main-navigation .menu-toggle {
 	font-size: 1em;
}   



/**-----------------------Add Custom Styles--------------------------**/

/**Navigation**/


.main-navigation .main-nav ul li a, .main-navigation .menu-toggle, .main-navigation .menu-bar-items {
	font-size:var(--body-md);
	font-weight:700;
	text-transform:uppercase;

}

.main-navigation .menu-bar-items a {
	color:unset;
}

@media screen and (max-width: 767px) {
	#mobile-header .mobile-header-logo img {
		max-width: 180px;
	}
	#mobile-header .menu-bar-items .gb-button-eb224519.gb-button-text {
		padding: 10px 13px;
    	font-size: 14px;
	}
}

/**container gradient**/
.gb-container:after {
	border-radius:inherit;
}

/*Desktop*/
@media only screen and (min-width: 1025px) {

}
/*Tablet and smaller styles*/
@media only screen and (max-width: 1024px) {

}

/*WH - Footer list styles*/
.footer-list{
	list-style:none;
	margin:0em;
}

.footer-list li{
	padding-bottom:0.25rem;
}

.footer-list a{
	color:#fff;
	text-decoration:none;
}
/*---*/

/*WH - Dotted line on Schedule Pickup page*/
.step-column {
  position: relative;
  z-index: 1;
}

.step-column > div {
  position: relative;
  z-index: 10;
}

.step-column:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 45%;
  width: calc(100% + 2rem);
  border-top: 3px dashed #C42535;
  z-index: -1;
}

@media (max-width: 1025px) {
  .step-column:not(:last-child)::after {
    display: none;
  }
}
/*---*/

/*WH - Decoration for Red CTA*/
.yellow-dotted-circle{
	bottom: 0px;
    position: absolute;
    width: 530px;
    object-fit: contain;
    z-index: 1;
}

/*WH - Decoration for Red CTA*/
.yellow-dotted-circle-right{
	bottom: 0px;
    position: absolute;
	right:0;
    width: 530px;
    object-fit: contain;
    z-index: 1;
}

@media (max-width: 1025px) {
  .yellow-dotted-circle, .yellow-dotted-circle-right {
    width:200px;
  }
}

.white-dots-right{
	width: 80px;
	object-fit:contain;
	position: absolute;
    right: 12rem;
    top: 10rem;
    z-index: 3;
}


.white-dots-left-home{
	width: 80px;
	object-fit:contain;
	position: absolute;
    left: calc((100% - 1630px) / 2 - 25px);
    top: -2rem;
    z-index: 3;
}

@media (max-width: 1220px) {
  .white-dots-right {
    width: 60px;
    top: 6rem;
  }
}

@media (max-width: 615px) {
  .white-dots-right {
    width: 50px;
    top: 5rem;
  }
}

.white-dots-right-2{
	width: 80px;
    object-fit: contain;
    position: absolute;
    right: 4rem;
    top: 8rem;
    z-index: 3;
}

@media (max-width: 1220px) {
  .white-dots-right-2 {
    width: 60px;
    top: -2rem;
  }
}

.blue-circle-top-right-1{
	position:absolute;
	right:6rem;
	top:2rem;
	object-fit:contain;
	width:330px;
}

.blue-circle-top-right-2{
	position: absolute;
    right: 1rem;
    top: 9rem;
    object-fit: contain;
    width: 330px;
}


.blue-circle-top-left-1{
	position:absolute;
	left:calc((100% - 1630px) / 2 - 125px);
	top:-25%;
	object-fit:contain;
	width:330px;
}

/*---*/

/*WH - Toggle FAQ Style*/
.gb-accordion__toggle .gb-icon svg.gb-accordion__icon {
    position: absolute;
    opacity: 0;
    width: 23px;
    height: 23px;
}

.gb-accordion__toggle .gb-icon {
    background-image: url('/wp-content/uploads/2024/10/closed.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 23px;
    height: 23px;
    display: inline-block;
}

.gb-accordion__toggle[aria-expanded="true"] .gb-icon {
    background-image: url('/wp-content/uploads/2024/10/open.svg');
}

svg.gb-accordion__icon-open{
	display:none;
}

.gb-accordion__toggle{
	padding:0px;
	border-bottom:1px solid #D9D9D9;
}

.gb-accordion__item .gb-button{
	background-color:#ff00 !important;
	border-radius:0px;
	padding:clamp(0.75rem, round(0.656rem + 0.469vw, 0.5em), 1.125rem)
}

.my-toggle .gb-button-text{
	font-size:30px;
	text-transform:none;
	font-weight:500;
	max-width:800px;
}

@media only screen and (max-width: 767px) {
  .my-toggle .gb-button-text {
    max-width:300px;
  }
}
@media only screen and (max-width: 1024px) {
  
	.blue-circle-top-left-1{
		left:-25%;
	}
}

@media only screen and (max-width: 1023px) {  
  .my-toggle .gb-button-text {
    font-size:20px;
  }
}
/*---*/

/*WH - Locations Map*/
.location-map-container .rwmb-map-canvas{
	border-radius:20px;
	height: 580px !important;
}

@media screen and (max-width: 1080px) {
	.location-map-container {
		padding-left: 2em;
		padding-right: 2em;
	}
	.location-map-container .rwmb-map-canvas{
		height: 400px !important;
	}
}

/*---*/

/* SPECIALS QUERY LOOP */
@media screen and (min-width: 820px) {
    .gb-query-loop-wrapper.gb-grid-wrapper-2b7fa089 .gb-query-loop-item:nth-child(odd) .special-template-cols {
        flex-direction: row-reverse;
    } 
}