/* BeHost México v396 · capa visual pública ligera y compartida */
:root{--bh-polish-cyan:#27c8d4;--bh-polish-pink:#ef6aad;--bh-polish-yellow:#f6b93b;--bh-polish-navy:#0b294b;--bh-polish-shadow:0 18px 44px rgba(10,36,68,.10)}

.public-page{--bh-polish-x:50%;--bh-polish-y:35%}
.public-page .bh-polish-card{position:relative;isolation:isolate;min-width:0;transition:transform .32s cubic-bezier(.2,.75,.2,1),box-shadow .32s ease,border-color .32s ease,filter .32s ease;will-change:transform}
.public-page .bh-polish-card>.bh-polish-glow{position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none;border-radius:inherit;background:radial-gradient(340px circle at var(--bh-polish-x,50%) var(--bh-polish-y,35%),rgba(255,255,255,.72),rgba(39,200,212,.12) 34%,rgba(239,106,173,.05) 52%,transparent 72%);opacity:0;transition:opacity .3s ease}
.public-page .bh-polish-card>*:not(.bh-polish-glow){position:relative;z-index:1}
.public-page .bh-polish-card:hover{transform:translateY(-7px);box-shadow:0 26px 62px rgba(10,36,68,.14);border-color:rgba(39,200,212,.26)!important}
.public-page .bh-polish-card:hover>.bh-polish-glow{opacity:.9}
.public-page .bh-polish-card:focus-within{outline:3px solid rgba(39,200,212,.24);outline-offset:3px}

.public-page.bh-polish-ready .bh-polish-reveal{opacity:0;transform:translateY(18px) scale(.985);filter:saturate(.92);transition:opacity .58s ease,transform .62s cubic-bezier(.2,.8,.2,1),filter .58s ease}
.public-page.bh-polish-ready .bh-polish-reveal.bh-polish-in{opacity:1;transform:none;filter:none}
.public-page.bh-polish-ready .bh-polish-reveal:nth-child(2n){transition-delay:45ms}.public-page.bh-polish-ready .bh-polish-reveal:nth-child(3n){transition-delay:90ms}

.public-page .bh-btn,.public-page .btn,.public-page .btn-solid,.public-page .btn-secondary,.public-page .btn-ghost{position:relative;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
.public-page .bh-btn:after,.public-page .btn:after,.public-page .btn-solid:after,.public-page .btn-secondary:after,.public-page .btn-ghost:after{content:"";position:absolute;inset:-120% 45% -120% -55%;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.52) 50%,transparent 65%);transform:translateX(-130%) rotate(8deg);transition:transform .55s ease}
.public-page .bh-btn:hover:after,.public-page .btn:hover:after,.public-page .btn-solid:hover:after,.public-page .btn-secondary:hover:after,.public-page .btn-ghost:hover:after{transform:translateX(250%) rotate(8deg)}
.public-page .bh-btn:hover,.public-page .btn:hover,.public-page .btn-solid:hover,.public-page .btn-secondary:hover,.public-page .btn-ghost:hover{transform:translateY(-3px);filter:saturate(1.04)}

.public-page :where(.bh-commercial-visual,.bh-product-visual,.visual,.wide-visual,.media-zoom,.hero-art picture,.bh-window-media){position:relative;overflow:hidden}
.public-page :where(.bh-commercial-visual,.bh-product-visual,.visual,.wide-visual,.media-zoom,.hero-art picture,.bh-window-media) img{transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s ease}
@media(hover:hover) and (pointer:fine){.public-page :where(.bh-commercial-visual,.bh-product-visual,.visual,.wide-visual,.media-zoom,.hero-art picture,.bh-window-media):hover img{transform:scale(1.025);filter:saturate(1.04) contrast(1.015)}}

/* Restaurante Be: elimina letras cortadas y convierte la retícula en tarjetas visuales. */
.public-restaurant .feature-grid{gap:20px!important;align-items:stretch}
.public-restaurant .feature{--rb-accent:#f6b93b;position:relative;overflow:hidden;min-height:246px;padding:26px!important;border:1px solid rgba(26,36,49,.10)!important;border-radius:26px!important;background:linear-gradient(145deg,#fff 0%,#fff 55%,#f8fbfc 100%)!important;box-shadow:0 14px 36px rgba(24,34,47,.07)!important}
.public-restaurant .feature:nth-child(4n+2){--rb-accent:#27c8d4}.public-restaurant .feature:nth-child(4n+3){--rb-accent:#ef6aad}.public-restaurant .feature:nth-child(4n+4){--rb-accent:#ef8b2c}
.public-restaurant .feature:before{content:"";position:absolute;z-index:0;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--rb-accent),#fff);background:linear-gradient(90deg,var(--rb-accent),color-mix(in srgb,var(--rb-accent) 35%,#fff));transform:scaleX(.32);transform-origin:left;transition:transform .32s ease}
.public-restaurant .feature:after{content:"";position:absolute;z-index:0;right:-55px;top:-58px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(39,200,212,.14),transparent 68%);background:radial-gradient(circle,color-mix(in srgb,var(--rb-accent) 18%,transparent),transparent 68%);transition:transform .4s ease,opacity .4s ease;opacity:.7}
.public-restaurant .feature:hover:before{transform:scaleX(1)}.public-restaurant .feature:hover:after{transform:scale(1.18);opacity:1}
.public-restaurant .feature-icon{display:grid!important;place-items:center!important;width:58px!important;min-width:58px!important;height:58px!important;padding:0!important;border-radius:18px!important;background:linear-gradient(145deg,#fff7dd,#fff)!important;background:linear-gradient(145deg,color-mix(in srgb,var(--rb-accent) 17%,#fff),#fff)!important;border:1px solid rgba(246,185,59,.34)!important;border-color:color-mix(in srgb,var(--rb-accent) 30%,#fff)!important;color:#865500!important;box-shadow:0 11px 24px rgba(36,42,52,.09)!important;white-space:nowrap!important;overflow:visible!important;font-size:0!important;line-height:1!important}
.public-restaurant .feature-icon svg{display:block;width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .34s cubic-bezier(.2,.8,.2,1)}
.public-restaurant .feature:hover .feature-icon svg{transform:translateY(-2px) rotate(-3deg) scale(1.08)}
.public-restaurant .feature h3{margin:18px 0 9px!important;color:#10100f!important;font-size:20px!important;line-height:1.18!important;letter-spacing:-.018em;text-wrap:balance}
.public-restaurant .feature p{margin:0!important;color:#514a42!important;font-size:16px;line-height:1.58!important;overflow-wrap:anywhere}

/* Más profundidad para bloques que se repiten en las páginas públicas. */
.public-page :where(.bh-feature-card,.bh-commerce-card,.bh-demo-card,.bh-flow-card,.bh-journey-step,.bh-commercial-benefits article,.bh-commercial-related a,.bh-secondary-grid a,.bh-system-card,.bh-solution,.bh-eco-card,.bh-blog-card,.bh-plan-card,.bh-product-trust article,.role,.price-grid article,.demo-card,.icon-card,.mx-benefit,.mx-audience-card,.mx-step){backface-visibility:hidden}

@media(max-width:760px){
 .public-page .bh-polish-card:hover{transform:none}
 .public-restaurant .feature{min-height:0;padding:23px!important}
 .public-restaurant .feature-icon{width:54px!important;min-width:54px!important;height:54px!important;border-radius:17px!important}
 .public-restaurant .feature h3{font-size:19px!important}
 .public-restaurant .feature p{font-size:15.5px}
}
@media(hover:none),(pointer:coarse){.public-page .bh-polish-card:hover{transform:none}.public-page .bh-polish-card>.bh-polish-glow{display:none}.public-page .bh-btn:hover,.public-page .btn:hover,.public-page .btn-solid:hover,.public-page .btn-secondary:hover,.public-page .btn-ghost:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.public-page.bh-polish-ready .bh-polish-reveal,.public-page .bh-polish-card,.public-page .bh-btn,.public-page .btn,.public-page .btn-solid,.public-page .btn-secondary,.public-page .btn-ghost,.public-page :where(.bh-commercial-visual,.bh-product-visual,.visual,.wide-visual,.media-zoom,.hero-art picture,.bh-window-media) img,.public-restaurant .feature-icon svg{opacity:1!important;transform:none!important;filter:none!important;transition:none!important;animation:none!important}.public-page .bh-btn:after,.public-page .btn:after,.public-page .btn-solid:after,.public-page .btn-secondary:after,.public-page .btn-ghost:after{display:none}}

/* v396 · Portada: iconografía real + recorrido visual sin siglas. */
.public-home .bh-flow-grid-v396{gap:22px}
.public-home .bh-flow-grid-v396 .bh-flow-card{--flow:#28c7d1;--flow2:#0a8f93;--flow-soft:rgba(40,199,209,.12);padding:27px 27px 25px;border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(245,250,253,.98));box-shadow:0 20px 50px rgba(10,36,68,.09);transform-style:preserve-3d}
.public-home .bh-flow-grid-v396 .bh-flow-rh{--flow:#35c889;--flow2:#087d5b;--flow-soft:rgba(53,200,137,.12)}
.public-home .bh-flow-grid-v396 .bh-flow-rb{--flow:#ffad3d;--flow2:#d26a00;--flow-soft:rgba(255,173,61,.14)}
.public-home .bh-flow-grid-v396 .bh-flow-jb{--flow:#ec68b2;--flow2:#a64282;--flow-soft:rgba(236,104,178,.13)}
.public-home .bh-flow-grid-v396 .bh-flow-card:before{width:4px;background:linear-gradient(180deg,var(--flow),var(--flow2));box-shadow:0 0 22px var(--flow-soft)}
.public-home .bh-flow-grid-v396 .bh-flow-card:after{right:-45px;top:-55px;width:180px;height:180px;background:radial-gradient(circle,var(--flow-soft),transparent 68%)}
.public-home .bh-flow-head{position:relative;z-index:2;display:flex;align-items:center;gap:16px;min-height:66px;margin-bottom:18px}
.public-home .bh-flow-head:after{content:"";position:absolute;left:68px;right:3px;bottom:-5px;height:1px;background:linear-gradient(90deg,var(--flow),rgba(10,36,68,.06) 42%,transparent);opacity:.42;overflow:hidden}
.public-home .bh-flow-head>div{min-width:0}.public-home .bh-flow-head small{display:block;margin-bottom:3px;color:var(--flow2);font-size:10px;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.public-home .bh-flow-head h3{margin:0!important;font-size:25px!important}
.public-home .bh-product-orb{position:relative;display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border-radius:18px;background:linear-gradient(145deg,#fff,var(--flow-soft));border:1px solid color-mix(in srgb,var(--flow) 38%,#fff);color:var(--flow2);box-shadow:0 14px 28px rgba(10,36,68,.09),inset 0 1px rgba(255,255,255,.95)}
.public-home .bh-product-orb:before{content:"";position:absolute;inset:-7px;border-radius:23px;border:1px solid color-mix(in srgb,var(--flow) 32%,transparent);opacity:.48;transform:scale(.88)}
.public-home .bh-product-orb:after{content:"";position:absolute;width:7px;height:7px;right:-4px;top:9px;border-radius:50%;background:var(--flow);box-shadow:0 0 0 5px var(--flow-soft),0 0 15px var(--flow)}
.public-home .bh-product-orb svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;transition:transform .32s cubic-bezier(.2,.8,.2,1)}
.public-home .bh-flow-card.in .bh-product-orb{animation:bhOrbFloat396 5.8s ease-in-out infinite}.public-home .bh-flow-card.in .bh-product-orb:before{animation:bhOrbRing396 3.8s ease-out infinite}.public-home .bh-flow-card:hover .bh-product-orb svg{transform:scale(1.12) rotate(-5deg)}
.public-home .bh-flow-grid-v396 .bh-flow-card ol{position:relative;gap:11px;margin:0 0 21px}
.public-home .bh-flow-grid-v396 .bh-flow-card li{min-height:105px;padding:49px 13px 14px;border-radius:19px;background:linear-gradient(180deg,#fff,#f7fafc);border-color:rgba(10,36,68,.075);transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,border-color .28s ease}
.public-home .bh-flow-grid-v396 .bh-flow-card li:before{background:linear-gradient(145deg,#fff,var(--flow-soft));border-color:color-mix(in srgb,var(--flow) 25%,#fff);color:var(--flow2)}
.public-home .bh-flow-grid-v396 .bh-flow-card li:not(:last-child):after{color:var(--flow2);box-shadow:0 5px 14px rgba(10,36,68,.1),0 0 0 4px var(--flow-soft)}
.public-home .bh-flow-grid-v396 .bh-flow-card:hover li{border-color:color-mix(in srgb,var(--flow) 24%,#fff);box-shadow:0 12px 25px rgba(10,36,68,.07)}
.public-home .bh-flow-link{display:inline-flex!important;align-items:center;gap:10px!important;padding:5px 0;color:var(--flow2)!important}.public-home .bh-flow-link i{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--flow-soft);font-style:normal;transition:transform .25s ease,background .25s ease}.public-home .bh-flow-link:hover i{transform:translateX(5px) rotate(-8deg);background:color-mix(in srgb,var(--flow) 20%,#fff)}

/* v396 · Demos: sin RH/RB/JB, icono vivo + estado interactivo. */
.public-home .bh-demo-grid-v396{gap:20px}
.public-home .bh-demo-grid-v396 .bh-demo-card{--flow:#36c88a;--flow2:#087b5b;--flow-soft:rgba(54,200,138,.12);min-height:278px;padding:25px 25px 23px;border-radius:30px;background:linear-gradient(150deg,#fff 0%,#fbfdff 65%,rgba(54,200,138,.055) 100%);box-shadow:0 19px 48px rgba(10,36,68,.085);animation:none}
.public-home .bh-demo-grid-v396 .bh-demo-rb{--flow:#ffad3d;--flow2:#c96700;--flow-soft:rgba(255,173,61,.13)}
.public-home .bh-demo-grid-v396 .bh-demo-jb{--flow:#ec68b2;--flow2:#a64282;--flow-soft:rgba(236,104,178,.13)}
.public-home .bh-demo-grid-v396 .bh-demo-card:before{background:radial-gradient(circle at 84% 14%,var(--flow-soft),transparent 25%),linear-gradient(120deg,transparent 25%,rgba(255,255,255,.0) 45%,rgba(255,255,255,.72) 50%,rgba(255,255,255,0) 55%,transparent 75%);background-size:auto,240% 100%;background-position:center,-140% 0;transition:background-position .75s ease}
.public-home .bh-demo-grid-v396 .bh-demo-card:hover:before{background-position:center,140% 0}
.public-home .bh-demo-grid-v396 .bh-demo-card:after{left:25px;right:25px;height:4px;background:linear-gradient(90deg,var(--flow-soft),var(--flow),var(--flow-soft));transform:scaleX(.36)}
.public-home .bh-demo-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.public-home .bh-demo-head .bh-product-orb{--flow:inherit}
.public-home .bh-demo-live{display:inline-flex!important;align-items:center!important;gap:7px!important;width:auto!important;min-width:0!important;height:auto!important;padding:7px 10px!important;border:1px solid color-mix(in srgb,var(--flow) 25%,#fff)!important;border-radius:999px!important;background:var(--flow-soft)!important;color:var(--flow2)!important;box-shadow:none!important;font-size:10px!important;font-weight:900!important;letter-spacing:.04em!important;text-transform:uppercase}
.public-home .bh-demo-live i{width:7px;height:7px;border-radius:50%;background:var(--flow);box-shadow:0 0 0 0 var(--flow-soft);animation:bhLivePulse396 2.4s ease-out infinite}
.public-home .bh-demo-grid-v396 .bh-demo-card h3{margin:10px 0 10px;font-size:24px}.public-home .bh-demo-grid-v396 .bh-demo-card h3:after{background:linear-gradient(90deg,var(--flow),transparent)}
.public-home .bh-demo-grid-v396 .bh-demo-card p{min-height:72px;margin-bottom:18px}
.public-home .bh-demo-grid-v396 .bh-demo-card strong{gap:9px;margin-top:0;background:var(--flow-soft);color:var(--flow2);transition:transform .25s ease,background .25s ease}.public-home .bh-demo-grid-v396 .bh-demo-card strong i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;font-style:normal;box-shadow:0 5px 12px rgba(10,36,68,.08);transition:transform .25s ease}.public-home .bh-demo-grid-v396 .bh-demo-card:hover strong i{transform:translateX(4px) rotate(-8deg)}
.public-home .bh-demo-grid-v396 .bh-demo-card:hover .bh-product-orb svg{transform:scale(1.12) rotate(-5deg)}

@keyframes bhOrbFloat396{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(1.5deg)}}
@keyframes bhOrbRing396{0%{transform:scale(.84);opacity:.58}70%,100%{transform:scale(1.18);opacity:0}}
@keyframes bhLivePulse396{0%{box-shadow:0 0 0 0 var(--flow-soft)}70%,100%{box-shadow:0 0 0 8px transparent}}

/* v396 · movimiento global un poco más expresivo, manteniendo bajo costo. */
.public-page.bh-polish-ready .bh-polish-reveal{transition-delay:var(--bh-polish-delay,0ms)}
@media(hover:hover) and (pointer:fine){.public-page .bh-polish-card:hover{filter:saturate(1.025)}.public-home .bh-flow-grid-v396 .bh-flow-card:hover,.public-home .bh-demo-grid-v396 .bh-demo-card:hover{transform:translateY(-9px) scale(1.006)}}
@media(max-width:980px){.public-home .bh-flow-grid-v396 .bh-flow-card li{min-height:96px}.public-home .bh-demo-grid-v396 .bh-demo-card{min-height:260px}}
@media(max-width:620px){.public-home .bh-flow-head{align-items:center}.public-home .bh-flow-head h3{font-size:22px!important}.public-home .bh-flow-grid-v396 .bh-flow-card li{min-height:72px;padding:15px 13px 15px 55px}.public-home .bh-demo-head{align-items:flex-start}.public-home .bh-demo-live{margin-top:5px}.public-home .bh-demo-grid-v396 .bh-demo-card{min-height:0}}
@media(hover:none),(pointer:coarse){.public-home .bh-flow-card.in .bh-product-orb{animation:bhOrbFloat396 7s ease-in-out infinite}}
@media(prefers-reduced-motion:reduce){.public-home .bh-product-orb,.public-home .bh-product-orb:before,.public-home .bh-demo-live i{animation:none!important}.public-home .bh-demo-grid-v396 .bh-demo-card:before{transition:none!important;background-position:center!important}}
/* Fallbacks v396 para navegadores sin color-mix(). */
.public-home .bh-product-orb{border-color:rgba(40,199,209,.34)}
.public-home .bh-product-orb:before{border-color:rgba(40,199,209,.26)}
.public-home .bh-flow-grid-v396 .bh-flow-card li:before{border-color:rgba(40,199,209,.20)}
.public-home .bh-flow-link:hover i{background:rgba(40,199,209,.16)}
.public-home .bh-demo-live{border-color:rgba(40,199,209,.22)!important}
@supports (color:color-mix(in srgb,white,black)){
 .public-home .bh-product-orb{border-color:color-mix(in srgb,var(--flow) 38%,#fff)}
 .public-home .bh-product-orb:before{border-color:color-mix(in srgb,var(--flow) 32%,transparent)}
 .public-home .bh-flow-grid-v396 .bh-flow-card li:before{border-color:color-mix(in srgb,var(--flow) 25%,#fff)}
 .public-home .bh-flow-link:hover i{background:color-mix(in srgb,var(--flow) 20%,#fff)}
 .public-home .bh-demo-live{border-color:color-mix(in srgb,var(--flow) 25%,#fff)!important}
}
