.hml-loc{--hml-blue:#1854A8;--hml-blue-wash:#EAF2FD;--hml-blue-deep:#0C3D82;--hml-green:#0E8F5E;
	--hml-green-wash:#E7F6EF;--hml-green-deep:#0A6E48;--hml-clay:#F26A1B;--hml-clay-wash:#FFF0E5;
	--hml-ink:#0B2A4A;--hml-muted:#5B7291;--hml-line:#E4EAF1;--hml-line-str:#CBD5E1;--hml-paper:#F4F7FB;
	--hml-fd:"Poppins","Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--hml-ink)}
.hml-loc *{box-sizing:border-box}
.hml-loc .hml-wrap{max-width: 1680px;margin:0 auto;padding:0 20px}
.hml-loc .hml-sect{padding:60px 20px}
.hml-loc .hml-sect--tight{padding:34px 20px 50px}
.hml-loc .hml-h2{font-family:var(--hml-fd);font-size:clamp(23px,2.9vw,32px);font-weight:700;margin:0 0 8px;text-align:center;line-height:1.22}

/* Popular-in-city product grid — self-contained.
   Same fix as the Find My Support page: this loop isn't a WooCommerce archive,
   so Woo's ul.products grid CSS doesn't apply and the products would stack
   full-width. Style the loop explicitly as a 4-col card grid (4 → 3 → 2 down
   to phone), independent of the archive styles. */
.hml-loc .hml-loc-pop{margin-top:8px}
.hml-loc .hml-loc-pop ul.products{
	display:grid !important;grid-template-columns:repeat(4,1fr);gap:20px;
	margin:0;padding:0;list-style:none;float:none}
.hml-loc .hml-loc-pop ul.products::before,
.hml-loc .hml-loc-pop ul.products::after{display:none !important;content:none !important}
.hml-loc .hml-loc-pop li.product{
	position:relative;width:auto !important;margin:0 !important;padding:16px !important;float:none !important;
	background:#fff;border:1px solid var(--hml-line);border-radius:14px;
	display:flex;flex-direction:column;text-align:center;transition:.18s}
.hml-loc .hml-loc-pop li.product:hover{
	border-color:var(--hml-blue);transform:translateY(-3px);
	box-shadow:0 10px 28px -12px rgba(18,36,70,.22)}
.hml-loc .hml-loc-pop li.product a img{
	width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;
	margin:0 0 12px;background:var(--hml-paper)}
.hml-loc .hml-loc-pop li.product .woocommerce-loop-product__title{
	font-family:var(--hml-fd);font-size:15px;font-weight:700;line-height:1.35;
	color:var(--hml-ink);padding:0 0 6px}
.hml-loc .hml-loc-pop li.product .price{font-size:14px;color:var(--hml-ink);margin-bottom:10px}
.hml-loc .hml-loc-pop li.product .price del{color:var(--hml-muted);font-weight:400;margin-right:6px}
.hml-loc .hml-loc-pop li.product .price ins{text-decoration:none;font-weight:700}
.hml-loc .hml-loc-pop li.product .onsale{
	position:absolute;top:12px;left:12px;background:var(--hml-blue);color:#fff;
	font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;min-height:0;min-width:0;
	line-height:1.4;margin:0}
.hml-loc .hml-loc-pop li.product .button,
.hml-loc .hml-loc-pop li.product .added_to_cart{
	margin-top:auto !important;background:var(--hml-blue) !important;color:#fff !important;
	border-radius:999px !important;font-weight:700 !important;border:0 !important;
	padding:9px 16px !important;font-size:13px !important;width:100% !important;
	display:block !important;text-align:center !important;text-decoration:none}
.hml-loc .hml-loc-pop li.product .button:hover,
.hml-loc .hml-loc-pop li.product .added_to_cart:hover{background:var(--hml-blue-deep) !important}
@media(max-width:1000px){.hml-loc .hml-loc-pop ul.products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.hml-loc .hml-loc-pop ul.products{grid-template-columns:repeat(2,1fr);gap:14px}}
.hml-loc .hml-h2--light{color:#fff}
.hml-loc .hml-sub{text-align:center;color:var(--hml-muted);font-size:15px;max-width:660px;margin:0 auto 32px;line-height:1.6}
.hml-loc .hml-eyebrow{display:inline-block;background:var(--hml-green-wash);color:var(--hml-green-deep);font-size:12px;
	font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:6px 13px;border-radius:999px;margin-bottom:14px}
.hml-loc .hml-center{text-align:center;margin-top:26px}

.hml-loc .hml-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--hml-fd);
	font-weight:600;font-size:15px;padding:12px 24px;border-radius:999px;text-decoration:none;border:0;cursor:pointer;transition:.16s}
.hml-loc .hml-btn--pri{background:var(--hml-blue);color:#fff}
.hml-loc .hml-btn--pri:hover{background:var(--hml-blue-deep);color:#fff}
.hml-loc .hml-btn--ghost{background:#fff;color:var(--hml-blue);border:1.5px solid var(--hml-line-str)}
.hml-loc .hml-btn--ghost:hover{border-color:var(--hml-blue)}
.hml-loc .hml-btn--sm{padding:9px 18px;font-size:14px}
.hml-loc .hff-trigger{background:#fff;color:var(--hml-blue);border:1.5px solid var(--hml-line-str);box-shadow:none}

/* hero */
.hml-lhero{background:linear-gradient(180deg,var(--hml-blue-wash),#fff);padding:54px 0 40px}
.hml-lhero__in{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}
.hml-lhero h1{font-family:var(--hml-fd);font-size:clamp(27px,3.6vw,40px);font-weight:700;line-height:1.16;margin:0 0 12px}
.hml-lhero p{font-size:16px;line-height:1.7;color:var(--hml-muted);margin:0 0 22px;max-width:540px}
.hml-lhero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:26px}
.hml-lhero__facts{display:flex;gap:26px;flex-wrap:wrap;border-top:1px solid var(--hml-line);padding-top:18px}
.hml-lhero__facts b{display:block;font-family:var(--hml-fd);font-size:16px;font-weight:700;color:var(--hml-blue)}
.hml-lhero__facts span{font-size:13px;color:var(--hml-muted)}
.hml-lhero__map iframe{box-shadow:0 18px 38px -22px rgba(11,42,74,.45);display:block}

/* categories */
.hml-loc .hml-cats{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.hml-loc .hml-cat{background:#fff;border:1px solid var(--hml-line);border-radius:14px;padding:12px;text-align:center;
	text-decoration:none;transition:.16s;display:block}
.hml-loc .hml-cat:hover{border-color:var(--hml-blue);transform:translateY(-3px)}
.hml-loc .hml-cat img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;margin-bottom:8px;background:var(--hml-paper)}
.hml-loc .hml-cat span{display:block;font-size:13px;font-weight:600;color:var(--hml-ink)}

/* why band */
.hml-loc .hml-band{background:var(--hml-blue-deep);padding:58px 0}
.hml-loc .hml-band--wash{background:var(--hml-paper)}
.hml-loc .hml-band--wash .hml-h2{color:var(--hml-ink)}
.hml-why{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}
.hml-whyc{display:flex;gap:13px;align-items:flex-start}
.hml-whyc svg{color:#5FD3A3;flex:none;margin-top:3px}
.hml-whyc h4{font-family:var(--hml-fd);font-size:16px;font-weight:700;color:#fff;margin:0 0 5px}
.hml-whyc p{font-size:14px;line-height:1.65;color:rgba(255,255,255,.78);margin:0}

/* areas */
.hml-areas{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;max-width:860px;margin:0 auto}
.hml-area{background:#fff;border:1px solid var(--hml-line);border-radius:999px;padding:8px 16px;
	font-size:14px;font-weight:600;color:var(--hml-ink)}

/* contact */
.hml-contact{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hml-contact__box{background:#fff;border:1px solid var(--hml-line);border-radius:16px;padding:24px}
.hml-contact__box h3{font-family:var(--hml-fd);font-size:16px;font-weight:700;margin:0 0 8px;color:var(--hml-ink)}
.hml-contact__box p{font-size:14px;line-height:1.6;color:var(--hml-muted);margin:0 0 12px}
.hml-contact__box a[href^="tel"]{font-family:var(--hml-fd);font-weight:700;font-size:16px;color:var(--hml-blue);text-decoration:none}
.hml-tag{display:inline-block;background:var(--hml-blue-wash);color:var(--hml-blue-deep);font-size:12px;
	font-weight:600;padding:5px 11px;border-radius:999px}
.hml-tag--green{background:var(--hml-green-wash);color:var(--hml-green-deep)}

/* other cities */
.hml-othercities{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:6px}
.hml-othercities a{background:#fff;border:1px solid var(--hml-line-str);border-radius:999px;padding:9px 20px;
	font-family:var(--hml-fd);font-size:14px;font-weight:600;color:var(--hml-blue);text-decoration:none;transition:.16s}
.hml-othercities a:hover{background:var(--hml-blue);color:#fff;border-color:var(--hml-blue)}

/* disclaimer */
.hml-disc{padding:0 20px 56px}
.hml-disc p{background:var(--hml-paper);border-left:3px solid var(--hml-green);border-radius:0 10px 10px 0;
	padding:16px 18px;font-size:13px;line-height:1.7;color:var(--hml-muted);margin:0;max-width:900px}
.hml-disc b{color:var(--hml-ink)}

@media(max-width:1000px){
	.hml-lhero__in{grid-template-columns:1fr}
	.hml-loc .hml-cats{grid-template-columns:repeat(4,1fr)}
	.hml-why{grid-template-columns:1fr}
	.hml-contact{grid-template-columns:1fr}
}
@media(max-width:600px){
	.hml-loc .hml-sect{padding:42px 20px}
	.hml-loc .hml-cats{grid-template-columns:repeat(2,1fr)}
	.hml-lhero__facts{gap:18px}
}
