:root{
  --gp:#298350;--gp-dark:#1B5C38;--gp-mid:#3BA068;--gp-light:#E8F5EE;
  --cream:#F8F5EF;--cream2:#EDE9DF;--cream3:#DDD9CE;
  --gold:#C8974A;--gold-lt:#F5EDDB;
  --char:#1C1A16;--stone:#4A4840;--mist:#9A9890;
  --r-sm:6px;--r-md:10px;--r-lg:16px;--r-xl:24px;
  --sh-sm:0 2px 8px rgba(0,0,0,.06);--sh-md:0 8px 32px rgba(0,0,0,.10);--sh-lg:0 20px 60px rgba(0,0,0,.13);
  --tr:all .22s ease;
}
.btn{display:inline-flex;align-items:center;gap:7px;padding:11px 22px;border-radius:100px;font-family:"Work Sans", sans-serif;font-size:13px;font-weight:500;letter-spacing:.02em;transition:var(--tr);border:none;cursor:pointer}
.btn-primary{background-color: var(--gp); color: var(--white); border: 1px solid var(--gp);}
.btn-primary:hover{background-color: #000;border-color: #000; color:var(--white);}
.btn-other{ background:rgba(255,255,255,.1);color:#fff;border:1.5px solid rgba(255,255,255,.2);}
.btn-other:hover{background:rgba(255,255,255,1);color:#000;border-color:rgba(255,255,255,1);}
.btn-ghost{background:transparent;border:1.5px solid var(--gp);color:var(--stone)}
.btn-ghost:hover{border-color:var(--gp);background:var(--gp); color: var(--white);}
.section-label{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);margin-bottom:10px}

/* ── PAGE HEADER ── */
.page-header{background:#e8f0e9;padding:60px 0;border-bottom:1px solid var(--cream2);text-align:center; background-position: center top; background-size: cover; background-repeat: no-repeat; position: relative;}
.page-header:before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgb(28 58 18 / 40%);
    pointer-events: none;
}
.page-header .container {position: relative;}
.page-header-eyebrow{display:inline-flex;align-items:center;gap:7px;background:var(--gp-light);border:1px solid rgba(41,131,80,.25);border-radius:100px;padding:5px 14px;font-size:11.5px;font-weight:600;color:var(--gp);letter-spacing:.05em;text-transform:uppercase;margin-bottom:16px}
.page-header-title{font-family:"Work Sans", sans-serif;font-size:clamp(34px,5vw,60px);font-weight:500;color:#fff;line-height:1.1;margin-bottom:12px}
.page-header-sub{font-size:14px;color:#fff;max-width:480px;margin:0 auto 28px;line-height:1.65}
.page-header-stats{display:flex;justify-content:center;gap:48px;flex-wrap:wrap}
.ph-stat-val{font-family:"Work Sans", sans-serif;font-size:32px;font-weight:500;color:#fff;}
.ph-stat-lbl{font-size:11.5px;color:#fff;margin-top:2px}

/* ── LOCATION FILTER TABS ── */
.loc-tabs{background:#fff;border-bottom:1px solid var(--cream2);position:sticky;top:0;z-index:100}
.loc-tabs-inner{display:flex;gap:4px;padding:12px 0;overflow-x:auto;scrollbar-width:none}
.loc-tabs-inner::-webkit-scrollbar{display:none}
.loc-tab{padding:8px 18px;border-radius:100px;font-size:13px;font-weight:500;color:var(--stone);border:1.5px solid transparent;white-space:nowrap;transition:var(--tr);cursor:pointer;background:none;flex-shrink:0}
.loc-tab:hover{background:var(--cream);color:var(--char)}
.loc-tab.active{background:var(--gp);color:#fff}

/* ── MAIN LOCATIONS ── */
.locations-section{padding:72px 0}
.loc-card{background:#fff;border:1px solid var(--cream2);border-radius:var(--r-xl);overflow:hidden;margin-bottom:32px;transition:var(--tr)}
.loc-card:hover{box-shadow:var(--sh-md)}
.loc-card.closed{opacity:.75}
.loc-card-inner{display:grid;grid-template-columns:1fr 1.2fr;min-height:360px}
.loc-card.reverse .loc-card-inner{direction:rtl}
.loc-card.reverse .loc-card-body{direction:ltr}
.loc-card.reverse .loc-card-image{direction:ltr}
.loc-card-body{padding:40px 44px;display:flex;flex-direction:column;justify-content:space-between}
.loc-status-row{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}
.loc-status{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:100px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.loc-status.open{background:var(--gp-light);color:var(--gp)}
.loc-status.closed-status{background:var(--cream2);color:var(--stone)}
.loc-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.loc-num{font-family:"Work Sans", sans-serif;font-size:13px;font-weight:500;color:var(--mist)}
.loc-name{font-family:"Work Sans", sans-serif;font-size:clamp(22px,3vw,32px);font-weight:500;color:var(--char);margin-bottom:6px;line-height:1.2}
.loc-address{font-size:13px;color:var(--stone);margin-bottom:20px;display:flex;align-items:flex-start;gap:7px}
.loc-address-icon{font-size:14px;flex-shrink:0;margin-top:1px}
.loc-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}
.loc-info-block{}
.loc-info-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mist);margin-bottom:5px}
.loc-hours-table{font-size:12.5px;color:var(--stone)}
.loc-hours-row{display:flex;gap:6px;margin-bottom:3px;line-height:1.45}
.loc-hours-day{min-width:110px;color:var(--stone)}
.loc-hours-time{font-weight:500;color:var(--char)}
.loc-phone{font-size:14px;font-weight:500;color:var(--char);display:flex;align-items:center;gap:6px}
.loc-phone-icon{font-size:16px}
.loc-offers{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:24px}
.loc-offer-tag{display:flex;align-items:center;gap:5px;padding:5px 12px;background:#E8F5EE;border:1px solid #298350;border-radius:100px;font-size:11.5px;color:var(--stone);font-weight:500}
.loc-offer-tag-icon{font-size:13px}
.loc-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.loc-card-image{position:relative;overflow:hidden;background:var(--cream);min-height:300px}
.loc-card-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.loc-card-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;position:absolute;inset:0}
.loc-placeholder-icon{font-size:52px}
.loc-placeholder-text{font-family:"Work Sans", sans-serif;font-size:16px;color:var(--mist);font-style:italic}
.loc-map-badge{position:absolute;bottom:16px;left:16px;background:rgba(28,26,22,.75);backdrop-filter:blur(6px);color:#fff;font-size:12px;font-weight:500;padding:7px 14px;border-radius:100px;display:flex;align-items:center;gap:5px}
.loc-closed-overlay{position:absolute;inset:0;background:rgba(248,245,239,.6);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center}
.loc-closed-badge{background:var(--char);color:#fff;font-size:12.5px;font-weight:600;padding:10px 22px;border-radius:100px;display:flex;align-items:center;gap:8px}

/* ── RETAIL PARTNERS ── */
.partners-section{padding:72px 0;background:linear-gradient(135deg,#E8F5EE 0%,#C8E8D8 100%)}
.partners-header{text-align:center;margin-bottom:48px}
.partners-title{font-family:"Work Sans", sans-serif;font-size:clamp(26px,3vw,38px);font-weight:500;color:var(--char);margin-bottom:10px}
.partners-sub{font-size:14px;color:var(--mist);max-width:440px;margin:0 auto}
.partners-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-bottom:36px}
.partner-card{background:#fff;border:1px solid var(--cream2);border-radius:var(--r-lg);padding:20px 22px;transition:var(--tr)}
.partner-card:hover{box-shadow:var(--sh-sm);border-color:var(--cream3)}
.partner-type{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mist);margin-bottom:5px}
.partner-name{font-size:14px;font-weight:500;color:var(--char);margin-bottom:3px}
.partner-location{font-size:12px;color:var(--stone);display:flex;align-items:center;gap:5px}
.partner-location-icon{font-size:13px}
.partners-cta{text-align:center}
.partners-note{font-size:13px;color:var(--mist);margin-top:14px}

/* ── WHOLESALE CTA ── */
.wholesale-cta {
	padding: 72px 0;
	background-color: var(--gp);
	text-align: center;
	position: relative;
	overflow: hidden;
}
.wholesale-cta::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(ellipse at 50% 50%,rgba(255,255,255,.05) 0%,transparent 60%);
	z-index: -1;
}
.wholesale-cta-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	background: rgba(255,255,255,.12);
	border: 1px solid rgba(255,255,255,.2);
	border-radius: 100px;
	padding: 5px 14px;
	font-size: 11.5px;
	font-weight: 600;
	color: rgba(255,255,255,.8);
	margin-bottom: 18px;
}
.wholesale-cta-title {
	font-family: "Work Sans", sans-serif;
	font-size: clamp(28px,4vw,48px);
	font-weight: 500;
	color: #fff;
	margin-bottom: 12px;
	line-height: 1.1;
}
.wholesale-cta-sub {
	font-size: 14px;
	color: rgba(255,255,255,.55);
	max-width: 420px;
	margin: 0 auto 32px;
	line-height: 1.65;
}
.wholesale-actions {
	display: flex;
	justify-content: center;
	gap: 12px;
	flex-wrap: wrap;
}
.wholesale-cta .btn-primary{background-color: var(--white); color: var(--000); border: 1px solid var(--white);}
.wholesale-cta .btn-primary:hover{background-color: #000;border-color: #000; color:var(--white);}
.big-map iframe {
    width: 100%;
    border: unset;
    border-radius: var(--r-xl);
}
.testimonials-section {
    padding: 80px 0;
	background-color: var(--white);
}
.testimonials-section .section-header {
    text-align: center;
    margin-bottom: 50px;
}
.testimonials-section .section-label {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--gp);
    margin-bottom: 12px;
    font-weight: 600;
}
.testimonials-section .section-title {
    font-family: "Work Sans", sans-serif;
    font-size: clamp(28px, 5vw, 48px);
    color: #1A1A1A;
    margin-bottom: 16px;
}
.testimonials-section .section-title span {
    font-style: italic;
    color: var(--gp);
}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  .loc-card-inner{grid-template-columns:1fr}
  .loc-card.reverse .loc-card-inner{direction:ltr}
  .loc-card-image{min-height:240px;order:-1}
  .loc-info-grid{grid-template-columns:1fr}
  .loc-card-body{padding:28px 24px}
  .partners-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .page-header{padding:44px 0}
  .page-header-stats{gap:28px}
  .locations-section,.partners-section,.wholesale-cta{padding:48px 0}
  .loc-actions{flex-direction:column;align-items:flex-start}
  .loc-actions .btn{width:100%;justify-content:center}
  .partners-grid{grid-template-columns:1fr}
}
@media(max-width: 600px) {
	.page-header, .locations-section, .partners-section, .wholesale-cta, .testimonials-section {
        padding: 30px 0;
    }
	.page-header-eyebrow {
		margin-bottom: 8px;
	}
	.page-header-title {
		font-size: 32px;
		margin-bottom: 8px;
	}
	.page-header-sub {
		max-width: 100%;
		margin: 0 0 10px;
		line-height: 1.5;
	}
	.page-header-stats {
        gap: 14px;
    }
	.ph-stat-val {
		font-size: 22px;
	}
	.loc-tabs-inner {
		padding: 6px 0;
	}
	.loc-card-body {
        padding: 14px 12px;
    }
	.loc-status-row {
		margin-bottom: 8px;
	}
	.loc-name {
		font-size: 20px;
	}
	.loc-address {
		margin-bottom: 10px;
	}
	.loc-info-grid {
		gap: 8px;
		margin-bottom: 12px;
	}
	.loc-card {
		margin-bottom: 16px;
	}
	.partners-header {
		margin-bottom: 18px;
	}
	.section-label {
		margin-bottom: 6px;
	}
	.partners-title {
		margin-bottom: 8px;
	}
	.partners-grid {
		gap: 8px;
		margin-bottom: 16px;
	}
	.partner-card {
		padding: 10px 12px;
		border-radius: 8px;
	}
	.wholesale-cta-eyebrow {
		margin-bottom: 6px;
	}
	.wholesale-cta-title {
		font-size: 26px;
		line-height: normal;
		margin-bottom: 8px;
	}
	.wholesale-cta-sub {
		max-width: 100%;
		margin: 0 0 16px;
		line-height: 1.5;
	}
	.btn {
		gap: 5px;
		padding: 8px 16px;
	}
	.testimonials-section .section-header {
        margin-bottom: 16px;
    }
	.testimonials-section .section-label {
        margin-bottom: 6px;
        line-height: normal;
    }
	.testimonials-section .section-title {
        margin-bottom: 2px;
    }
}