body.hub-home,body.hub-detail{padding:0;overflow:hidden;background:#132039}
.business-hub,.hub-detail-bar,.hub-info-detail{display:none}
body.hub-home .business-hub{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;width:100%;max-width:520px;height:100vh;height:100dvh;margin:auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;background:#f7f5ee;color:#172336;box-shadow:0 0 0 100vmax #132039,0 12px 55px #0004}
body.hub-home .business-hub.has-catalog-families{overflow-y:auto;overscroll-behavior:contain}
.has-catalog-families .hub-cover{flex:0 0 clamp(160px,25dvh,260px);min-height:160px}
.has-catalog-families .hub-featured{flex:0 0 auto;grid-auto-rows:minmax(135px,auto)}
.has-catalog-families .hub-actions{flex:0 0 auto;grid-template-rows:repeat(var(--hub-rows,2),minmax(76px,auto))}
body.hub-home #business-root{display:none}
.hub-cover{position:relative;flex:1 0 clamp(160px,25dvh,260px);min-height:160px;overflow:visible;background:linear-gradient(125deg,#956334,#352539 80%)}
.hub-cover img{width:100%;height:100%;object-fit:cover}
.hub-cover-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0000 35%,#142239a0 100%)}
.hub-language{position:absolute;z-index:20;top:calc(env(safe-area-inset-top) + 12px);right:14px;color:#172336}
.hub-language summary{display:flex;align-items:center;justify-content:center;gap:6px;width:68px;height:44px;padding:5px;border:1px solid #ffffffb8;border-radius:100px;background:#fffef4f2;box-shadow:0 6px 18px #0004;backdrop-filter:blur(8px);list-style:none;cursor:pointer}
.hub-language summary::-webkit-details-marker{display:none}
.hub-language summary:focus-visible,.hub-language-options button:focus-visible{outline:3px solid #315fba;outline-offset:2px}
.hub-flag{display:block;width:30px;height:21px;flex:0 0 30px;overflow:hidden;border:1px solid #17233638;border-radius:3px;box-shadow:0 1px 3px #0003}
.hub-language-arrow{font-size:17px;line-height:1;transition:transform .15s ease}
.hub-language[open] .hub-language-arrow{transform:rotate(180deg)}
.hub-language-options{position:absolute;top:calc(100% + 7px);right:0;display:flex;gap:4px;padding:6px;border:1px solid #e6e7e2;border-radius:13px;background:#fff;box-shadow:0 12px 30px #0005}
.hub-language:not([open]) .hub-language-options{display:none}
.hub-language-options button{display:grid;place-items:center;width:42px;height:42px;padding:5px;border:0;border-radius:9px;background:#f1f3f2;cursor:pointer}
.hub-language-options button[aria-pressed="true"]{box-shadow:inset 0 0 0 2px #315fba;background:#e7edf9}
.hub-language-options button:hover{background:#e3e9f2}
.hub-identity{position:relative;display:flex;flex:0 0 auto;align-items:center;gap:12px;min-height:94px;padding:0 17px 8px;background:#f7f5ee}
.hub-logo{display:grid;place-items:center;width:88px;height:88px;flex:0 0 88px;transform:translateY(-32px);overflow:hidden;border:5px solid #f7f5ee;border-radius:50%;background:#f3be50;color:#172336;box-shadow:0 9px 25px #1723364d;font-size:27px;font-weight:900}
.hub-logo img{width:100%;height:100%;object-fit:contain;background:#fff}
.hub-identity-text{align-self:center;min-width:0;flex:1}
.hub-identity h1{margin:0 0 3px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(19px,5.3vw,29px);font-weight:700;line-height:1.05;letter-spacing:-.04em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.hub-description{display:flex;align-items:center;gap:6px;width:100%;max-width:100%;padding:0;border:0;background:transparent;color:#626a6b;text-align:left;font:inherit;font-size:12px;line-height:1.3;cursor:pointer}
.hub-description span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.hub-description b{flex:0 0 auto;color:#1a6795;font-size:17px}
.hub-description:focus-visible{outline:2px solid #1a6795;outline-offset:2px}
.hub-featured{display:grid;flex:0 0 clamp(130px,22dvh,165px);min-height:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:5px 15px 8px}
.hub-featured:empty,.hub-actions:empty{display:none}
.hub-featured.has-offers{position:relative;flex-basis:clamp(165px,27dvh,205px);padding-bottom:42px}
.hub-offers{position:absolute;z-index:2;left:50%;bottom:1px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:72px;height:72px;transform:translateX(-50%);border:4px solid #f7f5ee;border-radius:50%;background:#b52132;color:#fff;box-shadow:0 8px 20px #74162555;font:inherit;cursor:pointer}
.hub-offers span{font-size:24px;font-weight:900;line-height:1}.hub-offers b{font-size:11px;line-height:1.2}.hub-offers:hover{background:#961a29}.hub-offers:focus-visible{outline:3px solid #172336;outline-offset:3px}
.hub-feature{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;min-width:0;min-height:0;gap:14px;padding:18px;border:0;border-radius:21px;color:#fff;text-align:left;text-decoration:none;font:inherit;font-family:Georgia,'Times New Roman',serif;font-size:clamp(21px,5.5vw,31px);font-weight:700;line-height:1.04;letter-spacing:-.03em;box-shadow:0 9px 22px #17233635;cursor:pointer;transition:transform .15s ease,filter .15s ease}
.hub-feature:only-child{grid-column:1/-1}
.hub-featured.has-offers .hub-feature:first-child:nth-last-child(2){grid-column:1/-1}
.hub-feature:hover,.hub-action:hover{transform:translateY(-2px);filter:brightness(1.06)}
.hub-feature:focus-visible,.hub-action:focus-visible{outline:3px solid #172336;outline-offset:2px}
.hub-feature .hub-action-icon{display:grid;place-items:center;width:54px;height:54px;border:1px solid #ffffff5e;border-radius:16px;background:#ffffff29}
.hub-feature .hub-action-icon svg{width:34px;height:34px}
.hub-feature .hub-action-arrow{top:12px;right:14px;font-family:Arial,sans-serif;font-size:24px}
.hub-actions{display:grid;flex:0 0 auto;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(var(--hub-rows,2),minmax(76px,auto));gap:7px;padding:4px 15px max(24px,calc(env(safe-area-inset-bottom) + 12px))}
.hub-action{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:0;gap:5px;padding:7px 4px;border:0;border-radius:16px;color:#fff;text-align:center;text-decoration:none;font:inherit;font-size:clamp(10px,2.8vw,13px);font-weight:800;line-height:1.12;box-shadow:0 5px 12px #17233624;cursor:pointer;transition:transform .15s ease,filter .15s ease}
.hub-action-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:11px;background:#ffffff31}
.hub-action-icon svg{display:block;width:22px;height:22px}
.hub-google-g{display:block;font-family:Arial,sans-serif;font-size:27px;font-weight:800;line-height:1;background:conic-gradient(#4285f4 0 28%,#34a853 28% 49%,#fbbc05 49% 66%,#ea4335 66% 82%,#4285f4 82%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hub-star .hub-action-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;width:62px;height:34px;flex:0 0 34px;gap:0;background:#fff}
.hub-star .hub-google-g{font-size:21px;line-height:21px}
.hub-review-stars{display:block;color:#d99300;font-size:9px;font-weight:900;letter-spacing:-1px;line-height:9px;white-space:nowrap}
.hub-star .hub-action-label{font-size:10px}
.hub-action.hub-star .hub-action-icon,.hub-action.hub-pin .hub-action-icon{background:#fff}
.hub-action.hub-pin .hub-action-icon svg{width:25px;height:25px}
.hub-action-label{display:block;max-width:100%;overflow-wrap:anywhere}
.hub-action-arrow{position:absolute;top:7px;right:10px;font-size:16px;font-weight:400;opacity:.7}
.hub-action .hub-action-arrow{display:none}
.hub-menu{background:linear-gradient(155deg,#efb65b,#a45525 72%,#693b2a)}.hub-daily{background:linear-gradient(155deg,#b68cd1,#72418d 70%,#46305f)}.hub-offer{background:#d5962b;color:#172336}.hub-star{background:#315fba}.hub-chat{background:#268857}.hub-phone{background:#268857}.hub-web{background:#354b82}.hub-mail{background:#5b618c}.hub-pin{background:#35649b}.hub-clock{background:#a3503d}.hub-social{background:#9b487d}.hub-info{background:#d5962b;color:#172336}
.hub-feature.hub-offer{background:linear-gradient(155deg,#efb65b,#a45525 72%,#693b2a);color:#fff}
body.hub-detail #business-root{position:fixed;inset:0;display:block;width:100%;max-width:680px;height:100vh;height:100dvh;margin:auto;overflow-y:auto;overscroll-behavior:contain;background:#f8f6ef}
body.hub-detail #business-root .public-shell{min-height:100%;padding-top:64px;padding-bottom:18px;border:0;border-radius:0;box-shadow:none}
body.hub-detail .public-shell>.cover-wrap,body.hub-detail .public-shell>.business-header,body.hub-detail .public-shell>.business-actions,body.hub-detail .public-shell>.business-footer,body.hub-detail .customer-dock{display:none}
body.hub-detail-carta .daily-public,body.hub-detail-carta .offers-public,body.hub-detail-menu-dia .menu-public,body.hub-detail-menu-dia .offers-public,body.hub-detail-ofertas .menu-public,body.hub-detail-ofertas .daily-public{display:none}
body.hub-detail .menu-public{min-height:calc(100dvh - 82px);padding-top:25px}
body.hub-detail .daily-public{min-height:calc(100dvh - 100px);margin-top:14px}
body.hub-detail .offers-public{min-height:calc(100dvh - 100px);margin-top:14px}
body.hub-detail .hub-detail-bar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:680px;height:64px;margin:auto;padding:calc(env(safe-area-inset-top) + 8px) 16px 8px;background:#f8f6eff5;box-shadow:0 4px 15px #1723361c;backdrop-filter:blur(12px)}
.hub-back{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:6px 12px;border:1px solid #cfd4cf;border-radius:100px;background:#fff;color:#172336;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.hub-back span{font-size:24px;line-height:1}
.hub-detail-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800}
body.hub-detail-horario #business-root,body.hub-detail-redes #business-root,body.hub-detail-sobre-nosotros #business-root{display:none}
body.hub-detail-horario .hub-info-detail,body.hub-detail-redes .hub-info-detail,body.hub-detail-sobre-nosotros .hub-info-detail{position:fixed;inset:0;display:block;width:100%;max-width:680px;height:100vh;height:100dvh;margin:auto;padding:88px 24px 28px;overflow-y:auto;background:#f8f6ef;color:#172336}
.hub-info-detail h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,8vw,45px)}
.hub-info-detail p{white-space:pre-line;overflow-wrap:anywhere;line-height:1.7}
.hub-hours-card{position:relative;max-width:540px;margin:8px auto 0;padding:25px 23px 8px;overflow:hidden;border:2px solid #d6bc7a;border-radius:27px;background:linear-gradient(155deg,#fffdf5 0%,#f7f0df 100%);box-shadow:0 14px 36px #1723361a}
.hub-hours-card::before{content:"";position:absolute;top:0;left:0;right:0;height:7px;background:linear-gradient(90deg,#bc8239,#e9c96f,#bc8239)}
.hub-hours-header{display:flex;align-items:center;gap:16px;padding:9px 0 22px}
.hub-hours-symbol{display:grid;place-items:center;width:58px;height:58px;flex:0 0 58px;border-radius:18px;background:#172336;color:#f2d496;box-shadow:0 7px 16px #1723362b}
.hub-hours-symbol svg{width:31px;height:31px}
.hub-hours-eyebrow{margin:0 0 3px!important;color:#8a6b3d;font-size:11px;font-weight:850;letter-spacing:.11em;line-height:1.2!important;text-transform:uppercase}
.hub-hours-card h1{margin:0;font-size:clamp(28px,7vw,37px);line-height:1.1}
.hub-hours-list{border-top:1px solid #ddcfaf}
.hub-hours-line{display:flex;align-items:flex-start;gap:12px;min-width:0;padding:15px 0;border-bottom:1px solid #e6dbc2;color:#172336;font-size:clamp(16px,4.3vw,20px);font-weight:650;line-height:1.45;overflow-wrap:anywhere}
.hub-hours-line:last-child{border-bottom:0}
.hub-hours-line-mark{width:8px;height:8px;flex:0 0 8px;margin-top:.55em;border-radius:50%;background:#b8873d;box-shadow:0 0 0 4px #e9d8b2}
.hub-social-list{display:grid;gap:12px;margin-top:25px}.hub-social-link{display:flex;align-items:center;justify-content:space-between;min-height:66px;padding:15px 20px;border:1px solid #d5d8d3;border-radius:16px;background:#fff;color:#172336;text-decoration:none;font-weight:800}.hub-social-link b{font-size:25px;font-weight:400}
@media(max-width:360px){.hub-hours-card{padding:21px 17px 6px;border-radius:22px}.hub-hours-header{gap:12px}.hub-hours-symbol{width:51px;height:51px;flex-basis:51px;border-radius:15px}}
@media(max-width:600px){.hub-language{top:max(44px,calc(env(safe-area-inset-top) + 12px))}.hub-action{gap:4px;padding:4px 3px}.hub-action-icon{width:34px;height:34px;flex-basis:34px}.hub-action-icon svg{width:23px;height:23px}}
@media(max-height:640px){.hub-identity{min-height:80px;padding-bottom:4px}.hub-logo{width:70px;height:70px;flex-basis:70px;transform:translateY(-24px)}.hub-featured{flex-basis:135px;gap:7px;padding:3px 11px 6px}.hub-feature{padding:12px;font-size:clamp(17px,4vw,23px)}.hub-feature .hub-action-icon{width:40px;height:40px}.hub-feature .hub-action-icon svg{width:26px;height:26px}.hub-actions{gap:5px;padding:3px 11px max(24px,calc(env(safe-area-inset-bottom) + 9px))}.hub-action{gap:3px;padding:4px 3px;border-radius:12px}.hub-action-icon{width:28px;height:28px;flex-basis:28px;border-radius:8px}.hub-action-icon svg{width:19px;height:19px}}
@media(max-height:640px){.hub-star .hub-action-icon{width:55px;height:29px;flex-basis:29px}.hub-star .hub-google-g{font-size:18px;line-height:18px}.hub-review-stars{font-size:8px;line-height:8px}}
@media(max-width:600px){.hub-star{gap:2px;padding:2px 3px}}
@media(max-height:640px){.hub-featured.has-offers{flex-basis:163px;padding-bottom:36px}.hub-offers{width:66px;height:66px}}
@media(max-height:500px){.hub-identity{min-height:65px}.hub-logo{width:60px;height:60px;flex-basis:60px;transform:translateY(-20px)}.hub-identity h1{font-size:18px}.hub-description{font-size:11px}.hub-featured{flex-basis:110px}.hub-action{font-size:10px}.hub-action-icon{width:25px;height:25px;flex-basis:25px}.hub-action-icon svg{width:18px;height:18px}.hub-language{top:6px}.hub-language summary{height:38px}.hub-language-options button{width:38px;height:38px}}
@media(max-height:500px){.hub-featured.has-offers{flex-basis:137px;padding-bottom:30px}.hub-offers{width:58px;height:58px}.hub-offers span{font-size:19px}.hub-offers b{font-size:10px}}
@media(max-width:350px){.hub-identity{gap:9px;padding-left:12px;padding-right:12px}.hub-featured,.hub-actions{padding-left:10px;padding-right:10px}.hub-action{font-size:10px}}
