/* Biz Tiendita UI, part 3: storefront redesign.
   Flat and white, brand Fraunces headlines. One loud element: listings drawn as shop signs. */


:root{
	--bg:#FFFFFF;--surface:#FFFFFF;--crema:#F3F4F8;--shelf:#F3F4F8;
	--ink:#131D5C;--ink-2:#454E7E;--ink-3:#6B7196;
	--line:#DCDFEA;--line-2:#C7CBDB;
	--r-sm:4px;--r-md:4px;--r-lg:6px;
	--sh-sm:none;--sh-md:none;
	--head:"Fraunces",Georgia,serif;
}

/* ---------- Type */
.bz-h1,.bz-h2,.bz-display{font-family:var(--head);font-weight:800;font-variation-settings:"SOFT" 100,"opsz" 144;letter-spacing:-.022em;line-height:1.06;text-transform:none}
.bz-h1{font-size:clamp(2.25rem,1.35rem + 3.4vw,3.6rem)}
.bz-h1--page{font-size:clamp(1.9rem,1.4rem + 2vw,2.75rem)}
.bz-h2{font-size:clamp(1.6rem,1.25rem + 1.4vw,2.2rem)}
.bz-h3{font-weight:700}
.bz-lead{max-width:62ch}
.bz-hl{color:inherit;background:none}
.bz :focus-visible{border-radius:2px}

/* Kill uppercase micro-labels everywhere */
.bz-res__type,.bz-datalist dt,.bz-table th,.bz-footer h2,.bz-sample{text-transform:none;letter-spacing:0}
.bz-footer h2{font:700 1.05rem/1.2 var(--head);font-variation-settings:"SOFT" 100;color:#fff}
.bz-datalist dt{font-size:.82rem;font-weight:600;color:var(--ink-3)}
.bz-table th{font-size:.82rem}

/* ---------- Surfaces: flat, no lifts */
.bz-card,.bz-cat,.bz-res,.bz-panel,.bz-filters,.bz-kpi,.bz-chartcard,.bz-fs,.bz-flow,.bz-method>div,.bz-statlist li,.bz-mini-kpis div,.bz-resbar,.bz-dash-bar,.bz-aside-card,.bz-formcard,.bz-mapbox{box-shadow:none!important;border-radius:var(--r-md)}
.bz-card:hover,.bz-cat:hover,.bz-res:hover{transform:none;box-shadow:none;border-color:var(--ink)}
.bz-section{padding:64px 0}
.bz-section--white{background:#fff;border:0}
.bz-section--tint{background:var(--shelf);border:0}
.bz-pagehead{background:#fff;border-bottom:3px solid var(--ink);padding:40px 0 28px}
.bz-shead{align-items:flex-end;margin-bottom:24px}
.bz-shead p{color:var(--ink-2)}

/* ---------- Buttons + inputs */
.bz-btn{border-radius:var(--r-sm);height:46px;font-weight:700}
.bz-btn--sm{height:38px}
.bz-btn--secondary{border:1.5px solid var(--ink);color:var(--ink)!important}
.bz-btn--secondary:hover{background:var(--ink);color:#fff!important}
.bz-btn--light:hover{background:#E8EAF4}
.bz-input,.bz-select,.bz-field textarea{border-radius:var(--r-sm)}
.bz-link-arrow{font-weight:700}
.bz-link-arrow .bz-ico{display:none}
.bz-tag{border-radius:var(--r-sm)}
.bz-pill{border-radius:var(--r-sm)}
.bz-chipbtn{border-radius:var(--r-sm)}
.bz-seg{border-radius:var(--r-sm)}
.bz-lang{border-radius:var(--r-sm)}
.bz-lang a{border-radius:2px}

/* ---------- Header */
.bz-header{background:#fff;backdrop-filter:none}
.bz-nav a{font-weight:600}

/* ---------- Search bar: one solid bar */
.bz-search{border:2px solid var(--ink);border-radius:var(--r-sm);box-shadow:none;padding:0;max-width:760px;overflow:hidden}
.bz-sf{padding:10px 16px;border-right:1px solid var(--line-2)}
.bz-sf:focus-within{background:var(--shelf);border-radius:0}
.bz-sf label{font-weight:600;color:var(--ink-3)}
.bz-search__btn{height:auto;align-self:stretch;border-radius:0;padding:0 28px}
@media (max-width:640px){.bz-search__btn{padding:14px}.bz-sf{border-right:0;border-bottom:1px solid var(--line-2)}}

/* ---------- Home hero */
.bz-home-hero{padding:48px 0 0;background:#fff;border-bottom:1px solid var(--line)}
.bz-home-hero .bz-hero__grid{align-items:center}
.bz-home-hero .bz-hero__frame{border-radius:var(--r-lg);border:2px solid var(--ink);aspect-ratio:5/4}
.bz-home-hero .bz-h1{max-width:15ch}
.bz-home-hero .bz-lead{margin:16px 0 28px;font-size:1.12rem;color:var(--ink-2)}
.bz-home-hero .bz-hero__copy>*+*{margin-top:0}
.bz-home-hero .bz-hero__copy>.bz-lead{margin:18px 0 28px}
.bz-quick{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:16px;font-size:.95rem}
.bz-quick span{color:var(--ink-3)}
.bz-quick a{font-weight:600}
.bz-street{margin-top:44px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;border-bottom:6px solid var(--ink);padding-bottom:0}
.bz-street .bz-card{border:0;border-radius:0;background:transparent}
.bz-street .bz-card__media{border-radius:var(--r-md) var(--r-md) 0 0;overflow:hidden}
.bz-street .bz-card__body{padding:12px 2px 16px}
.bz-street .bz-card__desc,.bz-street .bz-minis{display:none}
@media (max-width:900px){.bz-street{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- Storefront sign (listing without photo) */
.bz-card__media,.bz-cover{container-type:inline-size}
.bz-sign{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:22% 9% 10%;background:var(--sign-bg,#18299B);color:var(--sign-fg,#fff);overflow:hidden}
.bz-sign::before{content:"";position:absolute;left:0;right:0;top:0;height:clamp(24px,15%,46px);background:var(--sign-awn,#F2186A);
	-webkit-mask:linear-gradient(#000 0 0) top/100% calc(100% - 9px) no-repeat,radial-gradient(14px 9px at 14px 0,#000 97%,transparent 100%) 0 100%/28px 9px repeat-x;
	mask:linear-gradient(#000 0 0) top/100% calc(100% - 9px) no-repeat,radial-gradient(14px 9px at 14px 0,#000 97%,transparent 100%) 0 100%/28px 9px repeat-x}
.bz-sign::after{content:"";position:absolute;left:7%;right:7%;top:24%;bottom:9%;border:2px solid var(--sign-rule,rgba(255,255,255,.4));pointer-events:none}
.bz-sign__name{position:relative;font:800 clamp(1.2rem,8.6cqi,3.2rem)/1.02 var(--head);font-variation-settings:"SOFT" 100,"opsz" 144;letter-spacing:-.01em;text-wrap:balance;max-width:100%;overflow-wrap:anywhere}
.bz-sign__trade{position:relative;margin-top:.6em;font:500 clamp(.72rem,3.6cqi,1.15rem)/1.2 var(--body);opacity:.85}
.bz-sign--1{--sign-bg:#18299B;--sign-awn:#F2186A}
.bz-sign--2{--sign-bg:#C70F56;--sign-awn:#131D5C;--sign-rule:rgba(255,255,255,.45)}
.bz-sign--3{--sign-bg:#131D5C;--sign-awn:#F2186A}
.bz-sign--4{--sign-bg:#FFFFFF;--sign-fg:#18299B;--sign-awn:#18299B;--sign-rule:#18299B;box-shadow:inset 0 0 0 2px #18299B}
.bz-cover .bz-sign{padding-top:12%}
.bz-cover .bz-sign::before{height:44px}
.bz-cover .bz-sign::after{top:calc(44px + 18px);bottom:22px;left:24px;right:24px}
.bz-cover .bz-sign__name{font-size:clamp(2rem,6cqi,4.2rem)}
.bz-cover{border-radius:var(--r-md)}

/* ---------- Cards */
.bz-card{border-radius:var(--r-md)}
.bz-card__media{aspect-ratio:4/3}
.bz-card__title{font-size:1.08rem}
.bz-card:hover .bz-card__title a{text-decoration:underline!important}
.bz-card__cat{color:var(--ink-2)}
.bz-sample{border-radius:2px;font-size:.72rem;padding:3px 7px;background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);z-index:2}
.bz-sign--4 ~ .bz-sample,.bz-cover .bz-sample{background:var(--ink);color:#fff;box-shadow:none}
.bz-mini{border-radius:2px}

/* ---------- Phone-book category index */
.bz-index{list-style:none;margin:0;padding:0;columns:3 260px;column-gap:48px;border-top:2px solid var(--ink)}
.bz-index li{break-inside:avoid;border-bottom:1px solid var(--line)}
.bz-index a{display:flex;align-items:baseline;gap:8px;padding:12px 0;color:var(--ink)!important;text-decoration:none!important;font-weight:600}
.bz-index a::after{content:"";order:1;flex:1;border-bottom:2px dotted var(--line-2);transform:translateY(-4px)}
.bz-index b{order:2;font-weight:500;color:var(--ink-3);font-variant-numeric:tabular-nums}
.bz-index a:hover{color:var(--rosa-ink)!important}
.bz-index--all a{color:var(--navy)!important}

/* ---------- Home map, resources list, data line */
.bz-maphead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:20px}
.bz-maphead p{color:var(--ink-2);margin-top:8px;max-width:60ch}
.bz-reslist{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.bz-reslist li{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr) auto;gap:8px 28px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--line)}
.bz-reslist a{font-weight:700}
.bz-reslist p{color:var(--ink-2);font-size:.95rem}
.bz-reslist small{color:var(--ink-3);font-size:.85rem;white-space:nowrap}
@media (max-width:760px){.bz-reslist li{grid-template-columns:1fr}.bz-reslist small{white-space:normal}}
.bz-datarow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;align-items:start}
.bz-datarow p{color:var(--ink-2);max-width:52ch}
.bz-datarow p+p{margin-top:12px}
.bz-datarow .bz-btn{margin-top:22px}
.bz-datarow small{display:block;margin-top:14px;color:var(--ink-3);font-size:.82rem}
@media (max-width:900px){.bz-datarow{grid-template-columns:1fr;gap:28px}}

/* ---------- Submit band */
.bz-band{position:relative;background:var(--navy);color:#DADDF0;padding:64px 0 56px}
.bz-band::before{content:"";position:absolute;left:0;right:0;top:0;height:14px;background:var(--rosa);-webkit-mask:linear-gradient(#000 0 0) top/100% 6px no-repeat,radial-gradient(14px 8px at 14px 6px,#000 97%,transparent 100%) 0 0/28px 14px repeat-x;mask:linear-gradient(#000 0 0) top/100% 6px no-repeat,radial-gradient(14px 8px at 14px 6px,#000 97%,transparent 100%) 0 0/28px 14px repeat-x}
.bz-band__in{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px}
.bz-band .bz-h2{color:#fff}
.bz-band p{margin-top:10px;max-width:56ch}
.bz-band .bz-btn--light{height:52px;padding:0 26px}

/* ---------- Flatten existing components */
.bz-cat__ico,.bz-res__ico{background:none!important;width:auto;height:auto;border-radius:0;color:var(--rosa-ink)}
.bz-res__type{color:var(--rosa-ink);font-size:.85rem}
.bz-cta{border-radius:0}
.bz-context{background:#fff;color:var(--ink-2);border:0;border-top:2px solid var(--ink);border-radius:0;padding:24px 0 0}
.bz-context b{color:var(--ink)}
.bz-context p{color:var(--ink-3);border-top-color:var(--line)}
.bz-context p a{color:var(--navy)}
.bz-kpi{border-top:3px solid var(--ink)}
.bz-notice{border-radius:var(--r-sm);background:#FFF;border:1px solid var(--rosa);color:var(--ink)}
.bz-verify,.bz-alert,.bz-drop,.bz-note{border-radius:var(--r-sm)}
.bz-fs legend i,.bz-flow li i{border-radius:2px}
.bz-ph__ico{border-radius:4px;box-shadow:none}
.bz-footer{background:var(--ink)}

/* ---------- Early-days states */
.bz-hero__actions{display:flex;flex-wrap:wrap;gap:12px}
.bz-card--open .bz-sign::after{border-style:dashed}
.bz-card--open .bz-meta span{color:var(--ink-3)}
.bz-index--plain a::after,.bz-index--plain b{display:none}
.bz-emptydata{padding:8px 0 8px;max-width:68ch}
.bz-emptydata p{color:var(--ink-2);margin-top:12px}
.bz-emptydata .bz-btn{margin-top:8px}

.bz-openline{color:var(--ink-2);margin:4px 0 20px;max-width:62ch}
