/* Listings Biz Design – archive + single business. Every value can be changed in Appearance → Customize → Listings Biz → Design. */
.lbd-archive,.lbd-single{
	--d-accent:var(--lbiz-d-accent,#FF7445);
	--d-text:var(--lbiz-text,#14141F);
	--d-muted:var(--lbiz-muted,#6B6B78);
	--d-line:var(--lbiz-d-card-border,#E7E7EE);
	--d-bg:var(--lbiz-d-page-bg,#FFFFFF);
	--d-surface:var(--lbiz-surface,#F6F6F8);
	--d-card:var(--lbiz-d-card-bg,#FFFFFF);
	--d-radius:var(--lbiz-d-card-radius,16px);
	--d-shadow:var(--lbiz-d-card-shadow,0 1px 2px rgba(20,20,31,.04),0 4px 14px rgba(20,20,31,.05));
	--d-wrap:var(--lbiz-d-wrap,1240px);
	--d-side:var(--lbiz-d-side-w,300px);
	--d-gap:var(--lbiz-d-gap,32px);
	--d-btn-r:var(--lbiz-d-btn-radius,10px);
	--d-sec-gap:var(--lbiz-d-section-gap,32px);
	background:var(--d-bg);color:var(--d-text);font-family:var(--lbiz-font-body,inherit);
}
.lbd-wrap{max-width:var(--d-wrap);margin:0 auto;padding:0 24px;box-sizing:border-box}
.lbd-archive *,.lbd-single *{box-sizing:border-box}
.lbd-archive a,.lbd-single a{color:inherit}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* ---------- Archive: hero ---------- */
.lbd-hero{background:var(--lbiz-d-hero-bg,#F6F6F8) var(--lbd-hero,none) center/cover no-repeat;color:var(--lbiz-d-hero-text,#14141F);padding:var(--lbiz-d-hero-pad,56px) 0 calc(var(--lbiz-d-hero-pad,56px) * .7);position:relative}
.lbd-hero[style]::before{content:"";position:absolute;inset:0;background:rgba(20,20,31,.55)}
.lbd-hero[style] .lbd-wrap{position:relative;color:#fff}
.lbd-hero__title{font-family:var(--lbiz-font-heading,inherit);font-size:var(--lbiz-d-title-size,40px);font-weight:700;letter-spacing:-.025em;line-height:1.1;margin:0}
.lbd-hero__desc{max-width:720px;margin-top:12px;opacity:.85}

/* ---------- Archive: layout ---------- */
.lbd-layout{display:grid;gap:var(--d-gap);padding-top:32px;padding-bottom:56px;align-items:start;grid-template-columns:var(--d-side) minmax(0,1fr)}
.lbd-archive--right .lbd-layout{grid-template-columns:minmax(0,1fr) var(--d-side)}
.lbd-archive--right .lbd-side{order:2}
.lbd-side{position:var(--lbiz-d-side-position,sticky);top:24px;max-height:calc(100vh - 48px);overflow:auto;scrollbar-width:thin}
.lbd-filters{background:var(--lbiz-d-filter-bg,#fff);border:1px solid var(--d-line);border-radius:var(--d-radius);padding:20px;display:grid;gap:6px}
.lbd-filters__head{display:flex;align-items:center;gap:12px;margin-bottom:6px}
.lbd-filters__head strong{font-size:17px;letter-spacing:-.01em;flex:1}
.lbd-clear{font-size:13px;font-weight:600;color:var(--d-accent)!important;text-decoration:none}
.lbd-clear:hover{text-decoration:underline}
.lbd-drawer-close,.lbd-drawer-open,.lbd-apply,.lbd-scrim{display:none}
.lbd-search{position:relative;margin-bottom:6px}
.lbd-search .lbiz-ico{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--d-muted);pointer-events:none}
.lbd-search input[type=search]{width:100%;height:44px;padding:0 14px 0 42px;border:1px solid var(--d-line);border-radius:12px;background:var(--d-surface);font:inherit;font-size:15px;color:var(--d-text);-webkit-appearance:none;appearance:none}
.lbd-search input[type=search]:focus{outline:0;background:#fff;border-color:var(--d-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--d-accent) 20%,transparent)}
.lbd-group{border-top:1px solid var(--d-line);padding:14px 0 6px}
.lbd-group:first-of-type{border-top:0}
.lbd-group summary{cursor:pointer;font-weight:700;font-size:14px;list-style:none;display:flex;justify-content:space-between;align-items:center;padding-bottom:8px}
.lbd-group summary::-webkit-details-marker{display:none}
.lbd-group summary::after{content:"";width:8px;height:8px;border-right:2px solid var(--d-muted);border-bottom:2px solid var(--d-muted);transform:rotate(45deg);transition:transform .15s;margin-right:4px}
.lbd-group[open] summary::after{transform:rotate(-135deg)}
.lbd-opts{display:grid;gap:2px}
.lbd-opt{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:10px;cursor:pointer;font-size:14.5px;margin:0;transition:background .12s}
.lbd-opt:hover{background:var(--d-surface)}
.lbd-opt input{position:absolute;opacity:0;pointer-events:none}
.lbd-opt::before{content:"";width:18px;height:18px;border-radius:50%;border:1.5px solid #C8C8D2;flex:none;background:#fff;transition:all .12s}
.lbd-opt:has(input:checked){background:color-mix(in srgb,var(--d-accent) 10%,#fff);font-weight:600}
.lbd-opt:has(input:checked)::before{border:5px solid var(--d-accent)}
.lbd-opt:has(input:focus-visible){outline:2px solid var(--d-accent);outline-offset:1px}
.lbd-opt__t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lbd-opt__n{font-size:12.5px;color:var(--d-muted);font-variant-numeric:tabular-nums}
.lbd-opts:not(.is-open) .lbd-opt--more{display:none}
.lbd-more{background:none;border:0;padding:8px;text-align:left;color:var(--d-accent);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer}

/* ---------- Archive: results ---------- */
.lbd-results{min-width:0;transition:opacity .15s}
.lbd-results.is-loading{opacity:.45;pointer-events:none}
.lbd-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.lbd-count{margin:0;color:var(--d-muted);font-size:14.5px}
.lbd-toolbar__r{display:flex;gap:10px;align-items:center;margin-left:auto}
.lbd-sort{height:40px;border:1px solid var(--d-line);border-radius:999px;padding:0 34px 0 16px;background:#fff;font:inherit;font-size:14px;color:var(--d-text);cursor:pointer}
.lbd-view{display:inline-flex;border:1px solid var(--d-line);border-radius:999px;overflow:hidden;background:#fff}
.lbd-view button{width:40px;height:38px;border:0;background:transparent;color:var(--d-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.lbd-view button[aria-pressed=true]{background:var(--d-text);color:#fff}
.lbd-chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
.lbd-chip{display:inline-flex;gap:8px;align-items:center;padding:6px 12px;border-radius:999px;background:color-mix(in srgb,var(--d-accent) 12%,#fff);color:var(--d-text)!important;font-size:13.5px;font-weight:600;text-decoration:none}
.lbd-chip:hover{background:color-mix(in srgb,var(--d-accent) 22%,#fff)}
.lbd-grid{display:grid;gap:20px}
.lbd-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.lbd-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.lbd-results[data-view=list] .lbd-grid{grid-template-columns:1fr}
.lbd-results[data-view=list] .lbiz-bcard{flex-direction:row;align-items:center;gap:20px}
.lbd-results[data-view=list] .lbiz-bcard__head{margin:0;min-width:240px}
.lbd-results[data-view=list] .lbiz-bcard__excerpt{margin:0;flex:1}
.lbd-results[data-view=list] .lbiz-bcard__foot{flex-direction:column;align-items:flex-end;gap:8px;min-width:150px}
.lbd-grid .lbiz-bcard,.lbd-single .lbiz-bcard{background:var(--d-card);border:1px solid var(--d-line);border-radius:var(--d-radius);box-shadow:var(--d-shadow);padding:22px;margin:0;transition:box-shadow .2s,transform .2s,border-color .2s}
.lbd-grid .lbiz-bcard:hover,.lbd-single .lbiz-bcard:hover{transform:translateY(calc(var(--lbiz-d-card-lift,2px) * -1));border-color:color-mix(in srgb,var(--d-accent) 40%,var(--d-line))}
.lbd-no-logo .lbd-grid .lbiz-logo{display:none}
.lbd-no-excerpt .lbd-grid .lbiz-bcard__excerpt{display:none}
.lbd-no-location .lbd-grid .lbiz-bcard__meta span:has(.lbiz-ico--pin){display:none}
.lbd-no-views .lbd-grid .lbiz-bcard__meta span:has(.lbiz-ico--eye){display:none}
.lbd-pagination{margin:28px 0 0}
.lbd-empty{text-align:center;padding:56px 20px;border:1px dashed var(--d-line);border-radius:var(--d-radius);color:var(--d-muted)}
.lbd-empty p{margin:0 0 14px}

/* top-bar layout: the same filters laid out in a row */
.lbd-archive--top .lbd-layout{grid-template-columns:1fr}
.lbd-archive--top .lbd-side{position:static;max-height:none;overflow:visible}
.lbd-archive--top .lbd-filters{grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:start;gap:16px}
.lbd-archive--top .lbd-filters__head{display:none}
.lbd-archive--top .lbd-group{border:0;padding:0}
.lbd-archive--top .lbd-opts{max-height:200px;overflow:auto}
.lbd-archive--top .lbd-search{margin:0}

/* ---------- Archive: tablet / phone (filters become a drawer) ---------- */
@media(max-width:900px){
	.lbd-layout,.lbd-archive--right .lbd-layout,.lbd-archive--top .lbd-layout{grid-template-columns:1fr}
	.lbd-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
	.lbd-drawer-open{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;border-radius:999px;border:1px solid var(--d-line);background:#fff;font:inherit;font-weight:600;font-size:14.5px;color:var(--d-text);cursor:pointer;justify-self:start}
	.lbd-badge{display:inline-flex;min-width:20px;height:20px;border-radius:10px;background:var(--d-accent);color:#fff;font-size:12px;align-items:center;justify-content:center;padding:0 6px}
	.lbd-side,.lbd-archive--top .lbd-side{position:fixed;inset:0 auto 0 0;width:min(360px,92vw);max-height:none;z-index:100000;background:#fff;transform:translateX(-102%);transition:transform .25s ease;padding:0;box-shadow:0 0 60px rgba(0,0,0,.25);overflow:auto}
	.lbd-archive--right .lbd-side{order:0}
	.lbd-filters,.lbd-archive--top .lbd-filters{border:0;border-radius:0;min-height:100%;grid-auto-flow:row;padding:20px 20px 96px;align-content:start}
	.lbd-archive--top .lbd-filters__head{display:flex}
	.lbd-drawer-close{display:inline-flex;width:36px;height:36px;border-radius:50%;border:0;background:var(--d-surface);font-size:24px;line-height:1;cursor:pointer;align-items:center;justify-content:center}
	.lbd-apply{display:block;height:48px;border:0;border-radius:var(--d-btn-r);background:var(--lbiz-btn-bg,var(--d-accent));color:var(--lbiz-btn-text,#14141F);font:inherit;font-weight:700;cursor:pointer;position:fixed;left:16px;bottom:16px;width:min(328px,calc(92vw - 32px));z-index:2}
	body.lbd-drawer-on .lbd-side{transform:none}
	body.lbd-drawer-on{overflow:hidden}
	.lbd-scrim{position:fixed;inset:0;background:rgba(20,20,31,.5);z-index:99999}
	body.lbd-drawer-on .lbd-scrim{display:block}
	.lbd-results[data-view=list] .lbiz-bcard{flex-direction:column;align-items:stretch}
	.lbd-results[data-view=list] .lbiz-bcard__foot{flex-direction:row;align-items:center}
}
@media(max-width:640px){.lbd-cols-2,.lbd-cols-3{grid-template-columns:1fr}.lbd-wrap{padding:0 16px}.lbd-hero__title{font-size:calc(var(--lbiz-d-title-size,40px) * .72)}}

/* ---------- Single business ---------- */
.lbd-crumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:13.5px;color:var(--d-muted);margin-bottom:20px}
.lbd-crumbs a{text-decoration:none}.lbd-crumbs a:hover{color:var(--d-accent)}
.lbd-single__hero{padding:36px 0 28px}
.lbd-head{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.lbd-head__titles{flex:1;min-width:240px}
.lbd-logo{flex:none}
.lbd-title{font-family:var(--lbiz-font-heading,inherit);font-size:var(--lbiz-d-single-title-size,44px);font-weight:700;letter-spacing:-.03em;line-height:1.08;margin:0}
.lbd-tagline{margin:8px 0 0;font-size:1.15rem;color:var(--d-muted)}
.lbd-chips-line{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.lbd-tag{padding:5px 13px;border-radius:999px;background:var(--d-surface);font-size:13px;font-weight:500;text-decoration:none}
.lbd-tag:hover{background:var(--d-accent);color:#fff!important}
.lbd-hero-cta{margin-top:22px}
.lbd-head__meta{display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.lbd-views{display:inline-flex;gap:6px;align-items:center;font-size:13.5px;color:var(--d-muted)}
.lbd-btn,.lbd-single .lbiz-btn,.lbd-archive .lbiz-btn{border-radius:var(--d-btn-r)}
.lbd-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--lbiz-btn-height,46px);padding:0 22px;border:0;background:var(--lbiz-btn-bg,#FF7445);color:var(--lbiz-btn-text,#14141F)!important;font-weight:700;text-decoration:none;cursor:pointer}
.lbd-btn:hover{background:var(--lbiz-btn-hover-bg,#E9602F)}
.lbd-btn.lbiz-btn--block{display:flex;width:100%}
.lbd-h2{font-family:var(--lbiz-font-heading,inherit);font-size:1.25rem;font-weight:700;letter-spacing:-.015em;margin:0 0 14px}
.lbd-contact{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.lbd-contact li{display:flex;gap:12px;align-items:flex-start}
.lbd-contact .lbiz-ico{color:var(--d-accent);margin-top:4px;flex:none}
.lbd-contact a{text-decoration:none;word-break:break-word}.lbd-contact a:hover{color:var(--d-accent)}
.lbd-socials{display:flex;gap:10px;flex-wrap:wrap}
.lbd-socials a{width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--d-surface);transition:background .15s,color .15s}
.lbd-socials a:hover{background:var(--d-accent);color:#fff}
.lbd-map{border-radius:var(--d-radius);overflow:hidden;border:1px solid var(--d-line)}
.lbd-map iframe{display:block;width:100%;height:320px;border:0}
.lbd-cta__title{font-weight:700;font-size:1.05rem;margin:0 0 12px}
.lbd-ai{display:flex;flex-wrap:wrap;gap:8px}
.lbd-ai a{padding:6px 14px;border-radius:999px;background:var(--d-surface);font-size:13.5px;font-weight:500;text-decoration:none}
.lbd-ai a:hover{background:var(--d-text);color:#fff}
.lbd-prose{line-height:1.75;font-size:1.04rem}
.lbd-mbar{display:none}

/* Modern: card layout with a sticky sidebar */
.lbd-single--modern .lbd-single__hero{background:linear-gradient(180deg,var(--lbiz-d-hero-bg,#F6F6F8),var(--d-bg))}
.lbd-single--modern .lbd-body--2{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;padding-top:12px;padding-bottom:40px;align-items:start}
.lbd-single--modern .lbd-body--1{grid-template-columns:1fr}
.lbd-single--modern .lbd-main{display:grid;gap:var(--d-sec-gap)}
.lbd-single--modern .lbd-aside{display:grid;gap:20px;position:sticky;top:24px}
.lbd-single--modern .lbd-sec{background:var(--d-card);border:1px solid var(--d-line);border-radius:var(--d-radius);box-shadow:var(--d-shadow);padding:26px}
.lbd-single--modern .lbd-sec--map{padding:0;overflow:hidden}
.lbd-single--modern .lbd-sec--map .lbd-map{border:0;border-radius:0}
.lbd-single--modern .lbd-sec--related{background:none;border:0;box-shadow:none;padding:0}
.lbd-bottom{padding-bottom:56px}
.lbd-bottom .lbd-sec{margin:0}
@media(max-width:900px){.lbd-single--modern .lbd-body--2{grid-template-columns:1fr}.lbd-single--modern .lbd-aside{position:static}.lbd-head__meta{align-items:flex-start;flex-direction:row;flex-wrap:wrap}}

/* Simple: Apple-style, one calm column */
.lbd-narrow{max-width:var(--lbiz-d-simple-width,760px)}
.lbd-single--simple .lbd-single__hero{padding:72px 0 28px;text-align:center}
.lbd-single--simple .lbd-single__hero .lbd-wrap{max-width:var(--lbiz-d-simple-width,760px)}
.lbd-single--simple .lbd-crumbs{justify-content:center}
.lbd-single--simple .lbd-head{flex-direction:column;gap:20px}
.lbd-single--simple .lbd-logo{width:104px;height:104px;border-radius:26px;overflow:hidden;box-shadow:var(--d-shadow);border:1px solid var(--d-line)}
.lbd-single--simple .lbd-logo img,.lbd-single--simple .lbd-logo .lbiz-logo__fallback{width:100%;height:100%;object-fit:cover}
.lbd-single--simple .lbd-title{font-size:calc(var(--lbiz-d-single-title-size,44px) * 1.25);letter-spacing:-.04em;line-height:1.04}
.lbd-single--simple .lbd-tagline{font-size:1.4rem;line-height:1.35;max-width:620px;margin-left:auto;margin-right:auto}
.lbd-single--simple .lbd-chips-line{justify-content:center;gap:0}
.lbd-single--simple .lbd-tag{background:none;padding:2px 0;color:var(--d-muted)!important;font-size:14px}
.lbd-single--simple .lbd-tag+.lbd-tag::before{content:"·";margin:0 10px;color:var(--d-muted)}
.lbd-single--simple .lbd-tag:hover{background:none;color:var(--d-accent)!important}
.lbd-single--simple .lbd-head__meta{align-items:center;flex-direction:row;justify-content:center}
.lbd-single--simple .lbd-btn{height:50px;padding:0 30px;font-size:16px;font-weight:600;border-radius:999px}
.lbd-single--simple .lbd-body{padding-top:8px;padding-bottom:80px}
.lbd-single--simple .lbd-sec{padding:var(--d-sec-gap) 0;border-top:1px solid var(--d-line);box-shadow:none;background:none;border-left:0;border-right:0;border-bottom:0;border-radius:0}
.lbd-single--simple .lbd-h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--d-muted);font-weight:600}
.lbd-single--simple .lbd-prose{font-size:1.18rem;line-height:1.7}
.lbd-single--simple .lbd-contact{gap:0}
.lbd-single--simple .lbd-contact li{padding:14px 0;border-bottom:1px solid var(--d-line);font-size:1.05rem}
.lbd-single--simple .lbd-contact li:last-child{border-bottom:0}
.lbd-single--simple .lbd-map{border-radius:24px}
.lbd-single--simple .lbd-sec--related{border-top:1px solid var(--d-line)}
.lbd-single--simple .lbd-sec--related .lbd-cols-3{grid-template-columns:1fr}
.lbd-single--simple .lbd-grid .lbiz-bcard,.lbd-single--simple .lbiz-bcard{box-shadow:none}
.lbd-single--simple .lbd-sec--ai,.lbd-single--simple .lbd-sec--website{text-align:center}
.lbd-single--simple .lbd-ai{justify-content:center}

/* Sticky "Visit Website" bar on phones */
@media(max-width:720px){
	.lbd-m-hide{display:none!important}
	.lbd-has-mbar{padding-bottom:84px}
	.lbd-mbar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:9990;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:rgba(255,255,255,.88);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-top:1px solid var(--d-line)}
	.lbd-mbar .lbiz-btn{width:100%;justify-content:center;border-radius:999px;height:50px}
	.lbd-title{font-size:calc(var(--lbiz-d-single-title-size,44px) * .75)}
	.lbd-single--simple .lbd-title{font-size:calc(var(--lbiz-d-single-title-size,44px) * .9)}
	.lbd-single--simple .lbd-single__hero{padding-top:40px}
}
@media(prefers-reduced-motion:reduce){.lbd-archive *,.lbd-single *{transition:none!important}}
