/* The ficha of a business (place_public.html, osm_ficha.html, the head of store_public.html; macros in _biz.html): its photo
   or a band of its own color (.tone-N, style.css), its logo or initials over the band, the round buttons, and where and
   when in one card. Mobile first, 375 px. */
.biz-page{max-width:780px;margin-left:auto;margin-right:auto;padding-bottom:40px}
.biz-page>.breadcrumb{margin-bottom:10px}

/* The head */
.biz-hero{position:relative;margin:0 0 4px}
.biz-band{position:relative;height:136px;overflow:hidden;border-radius:22px;color:var(--t2,#fff);
  background:radial-gradient(90% 140% at 12% 0%,#ffffff1c,#fff0 60%),linear-gradient(135deg,var(--t1b,#3a4036),var(--t1,#151815))}
.biz-band::after{content:attr(data-ini);position:absolute;right:-4px;bottom:-36px;font:400 158px/1 Georgia,"Times New Roman",serif;letter-spacing:-.02em;opacity:.17;white-space:nowrap;pointer-events:none}
.biz-band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.biz-hero.has-cover .biz-band{height:clamp(190px,56vw,340px);background:#151815}
.biz-hero.has-cover .biz-band::after{content:none}
.biz-hero.soft .biz-band{color:var(--t1,#151815);background:radial-gradient(90% 140% at 12% 0%,#ffffffa6,#fff0 60%),linear-gradient(135deg,var(--t2b,#f5f6f2),var(--t2,#e1e4dc))}
.biz-hero.soft .biz-band::after{opacity:.12}
/* a complex: the band shows a padel court's lines seen from above (canchas.css), in the padel colors */
.biz-hero.is-court .biz-band{color:#a9c46c;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 100' preserveAspectRatio='none'%3E%3Cg fill='none' stroke='%23fff' stroke-opacity='.16' stroke-width='1.4' vector-effect='non-scaling-stroke'%3E%3Crect x='9' y='11' width='182' height='78' rx='1'/%3E%3Cpath d='M100 11v78M37 11v78M163 11v78M37 50h126'/%3E%3C/g%3E%3C/svg%3E") center/100% 100% no-repeat,radial-gradient(80% 90% at 50% 0%,#a9c46c2e,#a9c46c00 70%),linear-gradient(135deg,#2a3324,#151815)}
.biz-hero.is-court .biz-band::after{content:none}
.biz-hero.is-court .biz-avatar.is-ini{color:#a9c46c;background:linear-gradient(150deg,#3b4a31,#151815)}
.shop .biz-band{color:#fff;background:radial-gradient(90% 140% at 12% 0%,#ffffff26,#fff0 60%),var(--shop)}
.biz-id{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:-48px;padding:0 6px}
.biz-avatar{display:grid;place-items:center;flex:none;width:96px;height:96px;overflow:hidden;border-radius:28px;border:4px solid var(--paper);background:#fff;box-shadow:0 8px 24px #00000029}
.biz-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.biz-avatar.is-ini{color:var(--t2,#fff);background:radial-gradient(120% 90% at 18% 8%,#ffffff24,#fff0 58%),linear-gradient(150deg,var(--t1b,#3a4036),var(--t1,#151815))}
.biz-avatar.is-ini::before{content:attr(data-ini);font:400 38px/1 Georgia,"Times New Roman",serif;letter-spacing:.02em}
.biz-hero.soft .biz-avatar.is-ini{color:var(--t1,#151815);background:linear-gradient(150deg,var(--t2b,#f5f6f2),var(--t2,#e1e4dc))}
.biz-titles{min-width:0;max-width:100%}
.biz-kind{display:flex;flex-wrap:wrap;gap:0 7px;margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.09em;line-height:1.4;text-transform:uppercase;color:var(--muted)}
.biz-kind>span:not(:last-child)::after{content:'·';margin-left:7px}
.biz-hero h1{margin:0;font-size:clamp(28px,8vw,42px);line-height:1.06;letter-spacing:-.035em;overflow-wrap:anywhere}
.biz-hero>.biz-status,.cx-place>.biz-status{margin-left:6px}
.biz-status{display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px 8px;margin:14px 0 0;padding:7px 14px;border-radius:999px;background:var(--sunken);font-size:14px;font-weight:650;line-height:1.3;color:var(--ink-2)}
.biz-status::before{content:'';flex:none;width:8px;height:8px;border-radius:50%;background:var(--faint)}
.biz-status.is-open{background:#e2f3e5;color:#1d6a37}.biz-status.is-open::before{background:#2ea559;box-shadow:0 0 0 3px #2ea5592e}
.biz-status.is-soon{background:var(--warn-bg);color:var(--warn)}.biz-status.is-soon::before{background:#d39b1d}
.biz-status .biz-until{font-weight:500;color:inherit;opacity:.85}
.biz-hero-tags{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0 6px}
.biz-hero-tags span{padding:4px 11px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);font-size:13px;font-weight:600;color:var(--ink-2)}
.biz-lead{margin:14px 6px 0;font-size:17px;line-height:1.5;color:var(--ink-2);white-space:pre-line}

/* One main action and the round buttons: each one once */
.biz-book{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.biz-book .button{flex:1 1 220px}
.biz-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px 4px;margin:22px 0 0;padding:0 2px}
.biz-act{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0;padding:2px 0;border:0;background:none;color:var(--ink-2);font:inherit;font-size:12.5px;font-weight:650;line-height:1.2;text-align:center;cursor:pointer}
.biz-act .icon{box-sizing:content-box;width:22px;height:22px;padding:14px;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);transition:background .15s,border-color .15s}
.biz-act span{max-width:100%;overflow-wrap:anywhere}
.biz-act.whatsapp .icon{color:#1f8a4c}.biz-act.instagram .icon{color:#b1306e}.biz-act.facebook .icon{color:#1b5bb5}
.biz-act.is-main .icon{border-color:var(--ink);background:var(--ink);color:#fff}
.biz-act:hover .icon,.biz-act:focus-visible .icon{border-color:var(--ink)}
.biz-act:focus-visible{outline:none}.biz-act:focus-visible .icon{outline:3px solid var(--focus);outline-offset:2px}
.biz-share-status{margin:8px 0 0;text-align:center}.biz-share-status:empty{display:none}
.biz-links{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}

/* The cards: where and when, services, menu */
.biz-section{margin-top:18px;padding:6px 16px;border:1px solid var(--line);border-radius:20px;background:var(--surface);scroll-margin-top:16px}
.biz-section>h2{margin:12px 0 12px;font-size:18px}
.biz-section.stack{padding-bottom:16px}
.biz-section>.amenities,.biz-section>.biz-chips{margin-bottom:14px}
.biz-row{display:flex;align-items:flex-start;gap:14px;padding:12px 0;color:inherit}
.biz-info>.biz-row~.biz-row,.biz-info>.biz-moves~.biz-row,.biz-info>.map-credit~.biz-row{border-top:1px solid var(--line)}
.biz-row>.icon{flex:none;margin-top:1px;color:var(--muted)}
.biz-row>div{display:grid;gap:2px;flex:1;min-width:0}
.biz-row strong{font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.biz-row>div>span{font-size:14px;color:var(--muted)}
a.biz-row:hover strong{text-decoration:underline}
a.biz-row>div>span{color:var(--accent-ink);font-weight:600}
.biz-today{display:flex;flex-wrap:wrap;gap:0 7px}.biz-today>span:not(:last-child)::after{content:'·';margin-left:7px;color:var(--muted)}
.biz-week{margin:2px 0 0}
.biz-week>summary{min-height:44px;font-size:14px;color:var(--accent-ink)}
.biz-week>summary::after{width:6px;height:6px;margin-left:8px}
.biz-week .status-row{padding:8px 0}
.biz-week .hint{margin:6px 0 2px}
.biz-info .map-embed,.biz-info .biz-map{height:200px;margin:0 0 6px}
.biz-info .map-credit{display:block;margin:-2px 0 6px;text-align:right}
.biz-moves{margin:4px 0 12px}
.biz-chips{display:flex;flex-wrap:wrap;gap:8px}
.biz-chips>span{display:inline-flex;align-items:center;gap:6px;padding:7px 13px 7px 10px;border-radius:999px;background:var(--sunken);font-size:14px;font-weight:600;color:var(--ink-2)}
.biz-chips .icon{width:16px;height:16px;color:var(--accent-ink)}
.biz-sports{margin:14px 6px 0}
.biz-events{margin-top:28px}
.biz-yours{margin-top:24px}

/* «¿Es tu negocio?» */
.biz-claim{margin-top:22px;padding:20px 18px;border-radius:22px;border:1px solid #d6e6bb;background:radial-gradient(90% 120% at 100% 0%,#ffffff8c,#fff0 60%),linear-gradient(160deg,#f4f9ea,#e6f0d2)}
.biz-claim h2{margin:0 0 6px;font-size:21px}
.biz-claim>p{margin:0 0 12px;color:var(--ink-2)}
.biz-checks{display:grid;gap:9px;margin:0 0 18px;padding:0;list-style:none}
.biz-checks li{position:relative;padding-left:30px;line-height:1.45;color:var(--ink-2)}
.biz-checks li::before{content:'';position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;background:var(--accent-ink)}
.biz-checks li::after{content:'';position:absolute;left:7px;top:5px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.biz-claim .button{width:100%}
.biz-claim .hint{margin-top:12px}
.biz-page .osm-credit{margin-top:22px}

/* The store's head: its own actions under it */
.biz-shop-actions{margin-top:16px}

/* The big complex page (canchas.css): the cover without a photo shows the court's lines */
.cx-place-hero .cx-eyebrow>span:not(:last-child)::after{content:' · '}

@media(max-width:760px){
  .biz-band{margin:0 -16px;border-radius:0}
}
@media(max-width:380px){.biz-band{margin:0 -12px}.biz-actions{grid-template-columns:repeat(auto-fill,minmax(58px,1fr))}.biz-act .icon{padding:12px}}
@media(min-width:761px){
  .biz-band{height:176px}
  .biz-id{flex-direction:row;align-items:flex-start;gap:20px;margin-top:-58px;padding:0 22px}
  .biz-avatar{width:116px;height:116px;border-radius:32px}
  .biz-avatar.is-ini::before{font-size:46px}
  .biz-titles{padding-top:66px}
  .biz-hero>.biz-status,.biz-hero-tags,.biz-lead{margin-left:22px}
  .biz-actions{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));max-width:540px}
  .biz-claim{padding:24px 26px}.biz-claim .button{width:auto}
}
