:root{--ink:#152238;--muted:#66758a;--brand:#2563eb;--brand-dark:#1746b2;--line:#e4eaf2;--surface:#f5f8fc;--white:#fff;--danger:#b42318}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff}a{color:var(--brand)}.topbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px max(5vw,24px);border-bottom:1px solid var(--line);background:#fff}.brand{font-size:23px;font-weight:850;letter-spacing:-.8px;color:var(--ink);text-decoration:none;white-space:nowrap}.brand span{color:var(--brand)}nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap}nav a{font-size:14px;color:#475569;text-decoration:none;font-weight:650}.nav-button,.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;border-radius:10px;background:var(--brand);color:#fff!important;text-decoration:none;font-weight:750;border:0;cursor:pointer;font:inherit;font-size:14px}.button:hover,.nav-button:hover{background:var(--brand-dark)}.button.secondary{background:#edf3ff;color:var(--brand)!important}.button.danger{background:#fff0ef;color:var(--danger)!important}.button.full{width:100%;margin-top:10px}.small-button{font-size:12px;padding:8px 10px;border-radius:7px;border:0;background:#edf3ff;color:var(--brand);font-weight:700;cursor:pointer}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:850;color:var(--brand);margin:0 0 15px}.hero{padding:90px 24px 75px;text-align:center;background:radial-gradient(ellipse at top,#e9f1ff 0,rgba(255,255,255,0) 65%)}.hero h1{font-size:clamp(40px,6vw,68px);line-height:1.04;letter-spacing:-2.8px;margin:0;font-weight:850}.hero h1 span{color:var(--brand)}.lead{font-size:18px;color:var(--muted);margin:20px auto 28px;max-width:680px;line-height:1.6}.search{display:flex;gap:8px;max-width:850px;margin:0 auto;background:#fff;border:1px solid #dce4f0;padding:7px;border-radius:14px;box-shadow:0 14px 40px #203b6812}.search input,.search select{flex:1;min-width:0;border:0;outline:0;padding:13px 12px;font:inherit;background:white}.search button{border:0;background:var(--brand);color:#fff;padding:0 24px;border-radius:9px;font:inherit;font-weight:750;cursor:pointer}.section{padding:64px max(5vw,24px)}.section h1{font-size:34px;letter-spacing:-1px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.section-heading h2{font-size:32px;letter-spacing:-1px;margin:0}.muted{color:var(--muted)}.small{font-size:12px}.text-link{font-weight:700;text-decoration:none}.business-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.business-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;background:#fff;transition:transform .15s,box-shadow .15s}.business-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #203b6810}.business-logo{width:100%;height:160px;object-fit:cover;background:#edf3ff;display:block}.business-logo.placeholder{display:grid;place-items:center;font-size:56px;font-weight:800;color:var(--brand)}.card-body{padding:18px}.card-body h3{margin:10px 0 5px;font-size:20px}.card-body p{margin:0 0 12px;color:var(--muted);font-size:14px}.pill{display:inline-block;background:#edf3ff;color:#2455ad;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.cta{margin:8px max(5vw,24px) 65px;padding:36px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:var(--surface);border:1px solid var(--line);border-radius:20px}.cta h2{font-size:30px;letter-spacing:-1px;margin:0}.cta p:not(.eyebrow){color:var(--muted);margin-bottom:0}.form-wrap{padding:55px 20px;display:flex;justify-content:center}.form-wrap.wide{padding-left:max(4vw,20px);padding-right:max(4vw,20px)}.form-card{width:100%;max-width:560px;border:1px solid var(--line);border-radius:20px;padding:30px;background:#fff;box-shadow:0 16px 48px #1428470b}.wide .form-card{max-width:1000px}.form-card h1,.pricing h1{font-size:34px;letter-spacing:-1px;margin:0 0 10px}.form-card form{margin-top:24px}.form-card label{display:block;font-size:13px;font-weight:750;margin-bottom:16px}.form-card input,.form-card textarea,.form-card select{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #d5deea;border-radius:9px;font:inherit;font-size:14px;background:#fff;color:var(--ink)}.form-card input:focus,.form-card textarea:focus,.form-card select:focus{outline:2px solid #bfd3ff;border-color:var(--brand)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.span-2{grid-column:span 2}.form-actions{display:flex;align-items:center;gap:18px;margin:12px 0 25px}.alert,.flash{padding:13px 16px;border-radius:10px;margin:15px 0;font-size:14px}.alert.error,.flash.error{background:#fff0ef;color:#9e251d}.alert.info,.flash.info{background:#edf4ff;color:#244d94}.flash{margin:18px max(5vw,24px)}.alert.success,.flash.success{background:#eaf8ef;color:#176b39}.empty{padding:60px 20px;text-align:center;background:var(--surface);border:1px dashed #cbd7e7;border-radius:18px}.empty h2,.empty h3{margin-top:0}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;font-size:13px;min-width:760px}th,td{text-align:left;padding:14px;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--surface);color:#526176;font-size:11px;text-transform:uppercase;letter-spacing:.7px}tr:last-child td{border-bottom:0}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions a{font-weight:700;text-decoration:none}.pricing{padding:65px 20px;text-align:center;background:linear-gradient(#f4f8ff,#fff 400px)}.pricing .lead{max-width:600px}.price-card{max-width:440px;margin:30px auto;padding:30px;text-align:left;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 18px 50px #1428470b}.price{font-size:42px;font-weight:850;letter-spacing:-1.5px;margin:18px 0}.price small{font-size:13px;color:var(--muted);font-weight:500;letter-spacing:0}.price-card ul{padding-left:20px;line-height:2.2;color:#4b5c72}.profile{max-width:1000px;margin:0 auto;padding:35px 24px 70px}.profile-head{display:flex;align-items:center;gap:25px;padding:30px 0}.profile-head h1{font-size:38px;letter-spacing:-1.2px;margin:8px 0}.profile-head .lead{margin:8px 0;font-size:16px}.profile-logo{width:150px;height:150px;object-fit:cover;border-radius:20px;background:#edf3ff}.profile-logo.placeholder{display:grid;place-items:center;font-size:60px;font-weight:800;color:var(--brand)}.profile-section{border-top:1px solid var(--line);padding:25px 0}.profile-section h2{font-size:23px}.preserve{white-space:normal;line-height:1.8}.contact-links,.social-links{display:flex;gap:10px;flex-wrap:wrap}.social-links{margin-top:20px}.social-links a{padding:8px 12px;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-weight:700;font-size:13px}.image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.image-grid img{width:100%;height:140px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.image-grid form{margin-top:6px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:25px 0}.stats div{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:20px}.stats span{display:block;color:var(--muted);font-size:12px}.stats strong{display:block;font-size:30px;margin-top:8px}.inline-form{display:flex;gap:5px;flex-wrap:wrap}footer{border-top:1px solid var(--line);padding:25px max(5vw,24px);display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:12px}.image-grid>div{min-width:0}@media(max-width:800px){.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search{flex-wrap:wrap}.search input,.search select{flex-basis:100%;border-bottom:1px solid var(--line)}.section-heading,.cta{align-items:flex-start;flex-direction:column}.topbar{align-items:flex-start;flex-direction:column}nav{gap:13px}.profile-head{align-items:flex-start;flex-direction:column}.image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.business-grid,.form-grid,.stats{grid-template-columns:1fr}.span-2{grid-column:auto}.hero{padding-top:60px}.hero h1{letter-spacing:-1.5px}.form-card{padding:22px}.cta{padding:24px}.section-heading h2{font-size:27px}footer{flex-direction:column}.business-logo{height:140px}}

/* Perfil ampliado: portada, catálogo y datos de visita */
.profile-cover{width:100%;height:260px;overflow:hidden;border-radius:16px;background:var(--surface);margin:22px 0 8px}.profile-cover img{width:100%;height:100%;object-fit:cover;display:block}.product-editor{border:1px solid var(--line);border-radius:12px;padding:16px;margin:8px 0 20px}.product-editor h2{margin-top:0}.product-edit-row{display:grid;grid-template-columns:2fr 1fr;gap:0 14px;padding:14px 0;border-top:1px solid var(--line)}.product-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.product-card{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fff}.product-card h3{margin:0 0 8px}.product-card p{color:var(--muted);line-height:1.55}.product-card strong{color:#168044}@media(max-width:650px){.profile-cover{height:170px}.product-cards{grid-template-columns:1fr}.product-edit-row{grid-template-columns:1fr}.product-edit-row .span-2{grid-column:auto}}
/* Perfil empresarial completo y formulario organizado por secciones */
.form-section{padding:16px 0 8px;border-top:1px solid var(--line);margin-top:6px}.form-section h2,.product-editor h2{font-size:19px;letter-spacing:-.3px;margin:0 0 7px}.form-section>p{margin:0 0 14px;font-size:13px}.feature-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0 8px}.form-card .feature-option{display:flex;align-items:center;gap:9px;padding:10px 12px;margin:0;border:1px solid var(--line);border-radius:10px;background:#fbfdff;font-weight:600;font-size:13px;cursor:pointer}.form-card .feature-option input{width:17px;height:17px;flex:0 0 auto;margin:0;accent-color:var(--brand)}.product-editor{margin-top:12px}.product-editor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:10px}.product-editor-heading p{margin:0;font-size:13px}.product-rows{display:flex;flex-direction:column}.product-edit-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(130px,1fr) minmax(0,2fr) 34px;gap:0 12px;align-items:end;border-top:1px solid var(--line);padding:8px 0 0}.product-edit-row label{min-width:0}.product-edit-row .product-description{grid-column:auto}.form-card .remove-product-row{width:32px;height:40px;margin-bottom:16px;border:1px solid #f0c8c5;border-radius:8px;background:#fff4f3;color:#a52a22;font-size:22px;cursor:pointer}.profile{max-width:1240px}.profile-hero{border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-top:18px;background:#fff}.profile-cover{height:250px;margin:0;border-radius:0}.profile-head{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:center;padding:18px 22px}.profile-logo{width:150px;height:150px;max-width:200px;max-height:200px;object-fit:contain;border:1px solid var(--line);border-radius:16px;padding:3px;background:#fff}.profile-title h1{font-size:32px;margin:7px 0 2px}.profile-title .lead{margin:3px 0 8px;font-size:15px}.profile-actions,.profile-socials{grid-column:2;display:flex;flex-wrap:wrap;gap:8px}.profile-actions .button{padding:10px 14px}.whatsapp-button{background:#138b50}.profile-socials a{padding:6px 10px;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-size:12px;font-weight:700}.profile-tabs{display:flex;gap:26px;overflow-x:auto;border-bottom:1px solid var(--line);padding:14px 4px;margin:0 0 12px}.profile-tabs a{white-space:nowrap;text-decoration:none;font-weight:700;font-size:13px;color:#475569}.profile-tabs a:hover{color:var(--brand)}.profile-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,.9fr);gap:22px}.profile-main,.profile-sidebar{min-width:0}.profile-main .profile-section{padding:20px 0}.profile-section h2,.side-card h2{font-size:20px;margin:0 0 12px}.business-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:8px;margin-top:20px;padding:12px;background:#f2f7ff;border-radius:12px}.business-feature{display:flex;align-items:center;gap:8px;padding:8px;font-size:12px;font-weight:650;color:#253f67}.business-feature>span{display:inline-grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:#dce9ff;color:var(--brand);font-weight:900}.side-card{padding:18px;border:1px solid var(--line);border-radius:13px;background:#fff;margin:0 0 14px;overflow-wrap:anywhere}.side-card p{font-size:13px;line-height:1.6;margin:12px 0}.side-card p strong{color:#526176;font-size:11px;text-transform:uppercase;letter-spacing:.4px}.side-card .button{font-size:12px}.section-heading.compact{margin:0 0 14px;align-items:center;flex-direction:row}.section-heading.compact h2{margin:0}.profile-main .image-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-main .product-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.profile-main .image-grid img{height:160px}.profile-main .product-card{min-width:0}.profile-main .product-card h3{overflow-wrap:anywhere}
@media(max-width:850px){.profile-layout{grid-template-columns:1fr}.profile-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.side-card{margin:0}.profile-head{grid-template-columns:110px minmax(0,1fr)}.profile-logo{width:110px;height:110px}.profile-actions,.profile-socials{grid-column:1/-1}.feature-options{grid-template-columns:repeat(2,minmax(0,1fr))}.product-edit-row{grid-template-columns:minmax(0,1fr) minmax(120px,.7fr) 32px}.product-edit-row .product-description{grid-column:1/3}.form-card .remove-product-row{grid-column:3;grid-row:2}}
@media(max-width:560px){.profile{padding:22px 14px 45px}.profile-cover{height:160px}.profile-head{grid-template-columns:76px minmax(0,1fr);gap:12px;padding:14px}.profile-logo{width:76px;height:76px;border-radius:12px}.profile-title h1{font-size:24px}.profile-actions{grid-column:1/-1}.profile-tabs{gap:18px}.profile-sidebar{grid-template-columns:1fr}.profile-main .product-cards{grid-template-columns:1fr}.profile-main .image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-options{grid-template-columns:1fr}.product-editor-heading{flex-direction:column}.product-edit-row{grid-template-columns:minmax(0,1fr) 32px;gap:0 8px}.product-edit-row label:nth-child(2){grid-column:1}.product-edit-row .product-description{grid-column:1}.form-card .remove-product-row{grid-column:2;grid-row:1/4;align-self:center;margin:0}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.form-section.span-2{grid-column:1}}

/* AJUSTES DE REFERENCIA: ficha full width, imágenes redondeadas, iconografía y catálogo individual */
.profile{width:100%;max-width:none;margin:0;padding:18px clamp(14px,2.2vw,34px) 56px;box-sizing:border-box}
.profile-hero{width:100%;margin-top:12px;border-radius:14px;overflow:hidden}
.profile-cover{width:100%;height:clamp(165px,18vw,285px);max-height:285px;aspect-ratio:3/1;overflow:hidden;margin:0;border-radius:0;background:#edf2f8}
.profile-cover img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.profile-head{grid-template-columns:150px minmax(0,1fr);gap:14px 20px;padding:16px 20px 20px}
.profile-logo{width:150px;height:150px;max-width:200px;max-height:200px;object-fit:contain;border-radius:50%;padding:0;box-shadow:0 2px 10px #102b4a12}
.profile-title h1{font-size:clamp(25px,2.2vw,34px)}
.profile-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.profile-actions .button{min-width:130px;justify-content:center}
.profile-socials{display:flex;align-items:center;gap:10px;margin-top:4px}
.profile-socials .social-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;padding:8px;border:0;border-radius:50%;background:#f2f6fb;color:#1f4b84;transition:transform .15s ease,background .15s ease}
.profile-socials .social-icon:hover{transform:translateY(-2px);background:#e1ecff}
.profile-socials .social-icon svg{width:22px;height:22px;display:block}
.profile-tabs{position:relative;gap:clamp(16px,3vw,34px);padding:15px 12px;margin:0 0 12px;border-bottom:1px solid #e6ebf2}
.profile-tabs a{padding:0 4px 10px}
.profile-layout{grid-template-columns:minmax(0,1.9fr) minmax(300px,.95fr);gap:16px;align-items:start}
.profile-main,.profile-sidebar{min-width:0}
.profile-main .profile-section{padding:19px 20px;border:1px solid #e8edf3;border-radius:12px;background:#fff;margin-bottom:12px}
.profile-section h2,.side-card h2{font-size:19px;letter-spacing:-.3px}
.profile-sidebar{display:flex;flex-direction:column;gap:0}
.side-card{border-radius:12px;padding:18px;margin:0 0 12px;box-shadow:0 2px 10px #18315305}
.side-card p{font-size:14px}
.business-map{display:block;width:100%;height:150px;border:0;border-radius:8px;margin:12px 0 10px;background:#eef3f8}
.business-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:0;margin-top:16px;padding:10px 8px;background:#f1f7ff;border-radius:10px}
.business-feature{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:10px 8px;text-align:center;font-size:12px;font-weight:600;color:#243f65;border-right:1px solid #dfe9f7;border-radius:0;background:transparent}
.business-feature:last-child{border-right:0}
.business-feature .line-icon{width:26px;height:26px;flex:0 0 26px;color:#274b7c}
.business-feature-label{line-height:1.35}
.product-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.product-card{padding:0;overflow:hidden;border:1px solid #e5eaf0;border-radius:11px;background:#fff;box-shadow:0 1px 4px #102b4a06;min-width:0}
.product-image-link{display:block;width:100%;height:clamp(110px,12vw,170px);overflow:hidden;background:#f1f4f8;border-radius:10px 10px 0 0}
.product-card-image{display:block;width:100%;height:100%;object-fit:cover;border-radius:10px 10px 0 0;transition:transform .25s ease}
.product-image-link:hover .product-card-image{transform:scale(1.035)}
.product-card-body{padding:10px 12px 12px}
.product-card h3{font-size:14px;line-height:1.35;margin:0 0 5px}
.product-card p{font-size:12px;line-height:1.45;margin:0 0 8px}
.product-card strong{font-size:13px;display:block;margin-top:7px}
.profile-main .image-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:12px 0 0}
.gallery-image{display:block;overflow:hidden;aspect-ratio:4/3;border-radius:10px;background:#eef2f6;cursor:zoom-in;border:1px solid #e7ecf2}
.gallery-image img,.profile-main .image-grid img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;border:0;border-radius:10px;transition:transform .25s ease}
.gallery-image:hover img{transform:scale(1.04)}
.profile-main .image-grid img{height:100%}
/* Lightbox de galería y fotos de productos */
.lightbox-overlay{display:none;position:fixed;inset:0;z-index:99999;align-items:center;justify-content:center;padding:50px 70px;background:rgba(5,12,25,.92)}
.lightbox-overlay.is-open{display:flex}
.lightbox-overlay>img{max-width:min(92vw,1500px);max-height:86vh;object-fit:contain;border-radius:12px;box-shadow:0 15px 60px #0008}
.lightbox-overlay button{position:absolute;border:0;color:#fff;background:#ffffff22;cursor:pointer;border-radius:50%;width:44px;height:44px;font-size:30px;line-height:1}
.lightbox-overlay button:hover{background:#ffffff3d}
.lightbox-close{top:18px;right:22px}.lightbox-prev{left:18px;top:50%;transform:translateY(-50%)}.lightbox-next{right:18px;top:50%;transform:translateY(-50%)}
body.lightbox-open{overflow:hidden}
/* Panel: formulario compacto de dos/tres columnas y productos guardados como tarjetas */
.form-wrap.wide{width:min(1500px,100%);max-width:none;padding-left:clamp(12px,2vw,28px);padding-right:clamp(12px,2vw,28px);box-sizing:border-box}
.form-wrap.wide .form-card{width:100%;max-width:none}
.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px}
.form-grid>.span-2{grid-column:span 3}
.form-grid label{min-width:0}
.form-grid input,.form-grid select,.form-grid textarea{min-width:0;max-width:100%;box-sizing:border-box}
.feature-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.form-card .feature-option{min-width:0;display:grid;grid-template-columns:17px 22px minmax(0,1fr);align-items:center;gap:8px;padding:9px 10px}
.form-card .feature-option .line-icon{width:22px;height:22px;color:#2b4d7b}
.form-card .feature-option span{line-height:1.35}
.product-manager-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 18px}
.product-manager-item{min-width:0;display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fff}
.product-manager-item>img,.product-manager-placeholder{width:72px;height:64px;object-fit:cover;border-radius:9px;background:#f0f4f8}
.product-manager-placeholder{display:grid;place-items:center;color:#72829a;font-size:24px}
.product-manager-info{display:flex;min-width:0;flex-direction:column;gap:4px;overflow-wrap:anywhere}
.product-manager-info strong{font-size:14px}
.product-manager-price{font-size:12px;color:#12834a;font-weight:700}
.product-manager-info small{font-size:12px;color:var(--muted);line-height:1.4}
.product-manager-actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}
.product-manager-actions .button{flex:1;min-width:70px}
.single-product-form{padding:15px;border:1px solid #dce6f4;border-radius:12px;background:#f7faff}
.single-product-form h3{margin:0 0 12px;font-size:16px}
.product-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.product-input-description{grid-column:1/-1}
.product-form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.gallery-manage-grid>div{min-width:0;border:1px solid var(--line);border-radius:10px;padding:8px;overflow:hidden}
.gallery-manage-grid>div img{width:100%;height:130px;object-fit:cover;border-radius:8px}
.gallery-manage-grid .button{margin-top:7px}
@media(max-width:1100px){.product-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-main .image-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.profile-layout{grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr)}}
@media(max-width:850px){.profile-layout{grid-template-columns:1fr}.profile-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.side-card{margin:0}.product-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-main .image-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid>.span-2{grid-column:span 2}.feature-options{grid-template-columns:repeat(2,minmax(0,1fr))}.product-manager-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.profile{padding:12px 10px 35px}.profile-cover{height:165px;aspect-ratio:auto}.profile-head{grid-template-columns:76px minmax(0,1fr);padding:12px;gap:10px}.profile-logo{width:76px;height:76px}.profile-actions{grid-column:1/-1}.profile-actions .button{min-width:0;flex:1}.profile-socials{grid-column:1/-1}.profile-main .profile-section{padding:15px 12px}.profile-sidebar{grid-template-columns:1fr}.product-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.product-image-link{height:112px}.product-card-body{padding:8px}.profile-main .image-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.business-features{grid-template-columns:repeat(2,minmax(0,1fr))}.business-feature:nth-child(2n){border-right:0}.form-grid,.product-input-grid{grid-template-columns:1fr}.form-grid>.span-2,.product-input-description{grid-column:1}.feature-options{grid-template-columns:repeat(2,minmax(0,1fr))}.product-manager-list{grid-template-columns:1fr}.product-manager-item{grid-template-columns:70px minmax(0,1fr)}.product-manager-item>img,.product-manager-placeholder{width:70px;height:64px}.lightbox-overlay{padding:42px 8px}.lightbox-overlay button{width:38px;height:38px}.lightbox-prev{left:6px}.lightbox-next{right:6px}}


/* Diseño de ficha según la referencia visual compartida */
.profile{width:100%;max-width:1440px;margin:0 auto;padding:0 28px 64px}
.profile-hero{position:relative;width:100%;margin:0 0 12px;border-radius:0 0 14px 14px;overflow:visible;background:#fff}
.profile-cover{width:100%;height:650px;max-height:650px;margin:0;overflow:hidden;border-radius:12px 12px 0 0;background:#edf2f8}
.profile-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.profile-cover-placeholder{width:100%;height:100%;background:linear-gradient(120deg,#e9eff7,#f7f9fc)}
.profile-head{position:relative;display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:auto auto;align-items:start;gap:0 22px;padding:0 18px 20px;background:#fff;border:1px solid #e9edf3;border-top:0;border-radius:0 0 14px 14px}
.profile-logo{position:relative;z-index:2;width:260px;height:260px;max-width:260px;max-height:260px;grid-column:1;grid-row:1 / span 2;align-self:start;margin-top:-78px;border-radius:50%;object-fit:cover;background:#fff;border:5px solid #fff;box-shadow:0 2px 12px #102b4a18}
.profile-logo.placeholder{display:grid;place-items:center}
.profile-title{grid-column:2;grid-row:1;padding:18px 0 8px;min-width:0}
.profile-title .pill{font-size:12px;font-weight:650}
.profile-title h1{font-size:38px;line-height:1.15;margin:6px 0 4px;letter-spacing:-1px}
.profile-title .lead{font-size:18px;margin:0 0 8px;line-height:1.4}
.profile-title>.muted{font-size:14px;margin:7px 0 0}
.profile-contact-row{grid-column:1/-1;display:flex;align-items:center;gap:24px;min-width:0;flex-wrap:wrap;padding-top:10px}
.profile-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0;min-width:0}
.profile-actions .button{min-height:54px;min-width:145px;padding:13px 22px;border-radius:9px;font-size:16px;font-weight:700;gap:9px}
.profile-actions .whatsapp-button{background:#079849}
.profile-actions .call-button{background:#0865ef}
.profile-actions .directions-button,.profile-actions .website-button{background:#eef5ff;color:#0865ef!important;border:1px solid #a9ccff}
.button-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:0 0 22px}
.button-icon svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.profile-socials{display:flex;align-items:center;gap:14px;margin:0}
.profile-socials .social-icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;padding:8px;border:0;border-radius:50%;background:transparent;color:#142d50;transition:transform .15s ease}
.profile-socials .social-icon:hover{transform:translateY(-2px)}
.profile-socials .social-icon svg{width:31px;height:31px;display:block}
.profile-socials .social-facebook{color:#1877f2}
.profile-socials .social-instagram{color:#e4405f}
.profile-socials .social-tiktok{color:#111}
.profile-socials .social-youtube{color:#f00}
.profile-socials .social-linkedin{color:#0a66c2}
.profile-socials .social-x,.profile-socials .social-twitter{color:#111}
.profile-socials .social-icon svg [fill="currentColor"]{fill:currentColor}
.profile-socials .social-icon svg [stroke="currentColor"]{stroke:currentColor}
.profile-tabs{display:flex;gap:28px;align-items:center;max-width:100%;padding:0 12px;margin:0 0 14px;border-bottom:1px solid #e5eaf1;overflow-x:auto}
.profile-tabs a{white-space:nowrap;padding:15px 4px;color:#34445b;text-decoration:none;font-size:14px;font-weight:650}
.profile-tabs a:first-child{color:#0865ef;border-bottom:3px solid #0865ef}
.profile-layout{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(300px,.92fr);gap:14px;align-items:start}
.profile-main,.profile-sidebar{min-width:0}
.profile-main .profile-section,.profile-sidebar .side-card{padding:20px;border:1px solid #e8edf3;border-radius:12px;background:#fff;margin-bottom:12px}
.profile-main .profile-section h2,.profile-sidebar .side-card h2{font-size:19px;letter-spacing:-.35px;margin:0 0 14px}
.business-features{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:16px;padding:10px 4px;background:#f1f7ff;border-radius:10px}
.business-feature{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:10px 6px;text-align:center;font-size:11px;font-weight:200;color:#203a60;border-right:1px solid #dfe9f7;border-radius:0;background:transparent}
.business-feature:nth-child(5n){border-right:0}
.business-feature .line-icon{width:25px;height:25px;flex:0 0 25px;color:#1d3557;stroke-width:1.7}
.business-feature-label{font-size:11px;font-weight:200;line-height:1.35;text-align:center}
.product-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.product-card{min-width:0;padding:0;overflow:hidden;border:1px solid #e8edf3;border-radius:10px;background:#fff}
.product-card-image{display:block;width:100%;height:130px;object-fit:cover;border-radius:9px 9px 0 0}
.product-card-body{padding:10px 12px 12px}
.product-card h3{font-size:16px;font-weight:650;line-height:1.35;margin:0 0 4px;color:#172b4d}
.product-card p{font-size:13px;color:#748196;line-height:1.4;margin:0 0 7px}
.product-card strong{display:block;color:#0865ef;font-size:16px;font-weight:650}
.contact-detail{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:12px;margin:0 0 15px;font-size:14px;line-height:1.55;overflow-wrap:anywhere}
.contact-detail:last-child{margin-bottom:0}
.contact-detail>span{min-width:0}
.contact-detail strong{font-weight:650;color:#34445b}
.contact-line-icon{width:23px;height:23px;color:#24456f;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}
.side-card .business-map{display:block;width:100%;height:180px;border:0;border-radius:9px;margin:10px 0}
.side-card .button.full{margin-top:0}
@media(max-width:1100px){
 .profile{padding-left:20px;padding-right:20px}
 .profile-cover{height:clamp(360px,48vw,650px)}
 .profile-layout{grid-template-columns:minmax(0,1.45fr) minmax(270px,.9fr)}
 .profile-logo{width:210px;height:210px;max-width:210px;max-height:210px;margin-top:-62px}
 .profile-head{grid-template-columns:180px minmax(0,1fr)}
 .profile-actions .button{min-width:125px;padding:12px 14px}
 .profile-contact-row{gap:14px}
 .profile-socials{gap:5px}
 .profile-socials .social-icon{width:36px;height:36px}
 .profile-socials .social-icon svg{width:27px;height:27px}
}
@media(max-width:800px){
 .profile{padding:0 14px 40px}
 .profile-cover{height:360px}
 .profile-head{grid-template-columns:120px minmax(0,1fr);padding:0 12px 16px;gap:0 12px}
 .profile-logo{width:145px;height:145px;max-width:145px;max-height:145px;margin-top:-45px;border-width:4px}
 .profile-title{padding-top:14px}
 .profile-title h1{font-size:30px}
 .profile-contact-row{grid-column:1/-1;gap:12px;padding-top:16px}
 .profile-actions{gap:8px}
 .profile-actions .button{min-width:0;min-height:46px;font-size:14px;padding:10px 13px}
 .profile-socials{gap:4px}
 .profile-layout{grid-template-columns:1fr}
 .profile-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .profile-sidebar .side-card{margin:0}
 .product-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
 .business-features{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(max-width:560px){
 .profile{padding:0 10px 30px}
 .profile-cover{height:240px}
 .profile-head{grid-template-columns:80px minmax(0,1fr);gap:0 10px;padding:0 10px 14px}
 .profile-logo{width:100px;height:100px;max-width:100px;max-height:100px;margin-top:-28px;border-width:3px}
 .profile-title{padding-top:12px}
 .profile-title h1{font-size:24px;letter-spacing:-.5px}
 .profile-title .lead{font-size:14px}
 .profile-title>.muted{font-size:12px}
 .profile-contact-row{gap:10px}
 .profile-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .profile-actions .button{width:100%;min-width:0;padding:10px 8px}
 .profile-socials{width:100%;justify-content:flex-start}
 .profile-socials .social-icon{width:34px;height:34px}
 .profile-layout{grid-template-columns:1fr}
 .profile-sidebar{grid-template-columns:1fr}
 .product-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .product-card-image{height:112px}
 .business-features{grid-template-columns:repeat(3,minmax(0,1fr))}
 .business-feature:nth-child(5n){border-right:1px solid #dfe9f7}
 .business-feature:nth-child(3n){border-right:0}
 .profile-tabs{gap:20px}
}


/* Ajustes finales solicitados */
.profile{width:100%;max-width:none;margin:0 auto;padding:0 10px 64px}
.profile-cover{height:400px;max-height:400px}
.profile-head{grid-template-columns:280px minmax(0,1fr);gap:0 26px}
.profile-logo{width:260px;height:260px;max-width:260px;max-height:260px;margin-top:-78px}
.profile-title{grid-column:2;grid-row:1;padding-left:14px;position:relative;z-index:3}
.profile-contact-row{padding-left:0}
.profile-actions .button{min-height:35px;min-width:160px;padding:13px 22px;border-radius:9px;font-size:14px;font-weight:700;gap:9px}
.profile-actions .whatsapp-button,.profile-actions .call-button{color:#fff!important}
.profile-actions .whatsapp-button .button-icon,.profile-actions .call-button .button-icon{color:#fff!important}
.profile-actions .whatsapp-button .button-icon svg,.profile-actions .call-button .button-icon svg{width:22px;height:22px;stroke:#fff!important;color:#fff!important}
.business-features{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:16px;padding:10px 4px;background:#f0f6ff;border-radius:20px}
.business-feature{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 8px;text-align:center;font-size:12px;font-weight:200;color:#000;border-right:1px solid #d9e5f6;border-radius:0;background:transparent}
.business-feature:nth-child(5n){border-right:0}
.business-feature>span,.business-feature>.line-icon{display:inline-grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:transparent;color:#000;font-weight:300}
.business-feature>.line-icon{stroke:#203a60;stroke-width:1.7}
.business-feature-label{font-size:12px;font-weight:200;line-height:1.35;text-align:center;color:#000}
@media(min-width:1441px){
 .profile-head,.profile-tabs,.profile-layout{width:100%}
}
@media(max-width:1100px){
 .profile{padding-left:12px;padding-right:12px}
 .profile-head{grid-template-columns:230px minmax(0,1fr);gap:0 18px}
 .profile-logo{width:210px;height:210px;max-width:210px;max-height:210px;margin-top:-62px}
 .profile-title{padding-left:8px}
}
@media(max-width:800px){
 .profile{padding-left:10px;padding-right:10px}
 .profile-cover{height:300px;max-height:300px}
 .profile-head{grid-template-columns:145px minmax(0,1fr);gap:0 12px}
 .profile-logo{width:145px;height:145px;max-width:145px;max-height:145px;margin-top:-45px}
 .profile-title{padding-left:0}
 .profile-actions .button{min-width:130px;padding:10px 13px}
}
@media(max-width:560px){
 .profile-cover{height:220px;max-height:220px}
 .profile-head{grid-template-columns:80px minmax(0,1fr);gap:0 10px}
 .profile-logo{width:100px;height:100px;max-width:100px;max-height:100px;margin-top:-28px}
 .profile-title{padding-left:0}
 .profile-actions .button{min-width:0;padding:10px 8px}
 .business-features{grid-template-columns:repeat(2,minmax(0,1fr))}
 .business-feature:nth-child(5n){border-right:1px solid #d9e5f6}
 .business-feature:nth-child(2n){border-right:0}
}


/* Buscador en la cabecera y ancho global de contenido */
.topbar{width:100%;max-width:1800px;margin:0 auto;display:flex;align-items:center;gap:22px;padding:10px 24px;min-height:72px}
.brand{display:flex;align-items:center;gap:9px;flex:0 0 auto;text-decoration:none;white-space:nowrap}
.brand-pin{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:#0865ef;color:#fff;flex:0 0 38px}
.brand-pin svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.brand-copy{display:flex;flex-direction:column;gap:1px;line-height:1.1}
.brand-copy strong{font-size:18px;letter-spacing:-.35px;color:#111d35}
.brand-copy small{font-size:11px;font-weight:500;color:#64748b}
.header-search{display:flex;align-items:center;gap:7px;flex:1 1 600px;min-width:280px;max-width:850px;margin:0}
.header-search label{display:flex;align-items:center;min-width:0;background:#f4f6f9;border:1px solid #edf0f5;border-radius:10px;height:42px}
.header-search input,.header-search select{width:100%;min-width:0;border:0;outline:0;background:transparent;padding:0 13px;color:#334155;font:inherit;font-size:13px}
.header-keyword{flex:1 1 250px}
.header-filter{flex:0 1 170px}
.header-search-button{height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 18px;border:0;border-radius:9px;background:#0865ef;color:#fff;font-size:13px;font-weight:750;white-space:nowrap;cursor:pointer}
.header-search-button span{font-size:23px;line-height:1}
.topbar nav{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex:0 0 auto;white-space:nowrap}
.topbar nav a{font-size:12px}
@media(max-width:1300px){
 .topbar{gap:14px;padding-left:16px;padding-right:16px}
 .brand-copy strong{font-size:16px}
 .brand-copy small{font-size:10px}
 .header-filter{flex-basis:130px}
 .topbar nav{gap:10px}
 .topbar nav a{font-size:11px}
}
@media(max-width:980px){
 .topbar{flex-wrap:wrap}
 .header-search{order:3;flex:1 1 100%;max-width:none}
 .topbar nav{margin-left:auto}
}
@media(max-width:560px){
 .topbar{padding:10px;gap:10px}
 .brand-pin{width:34px;height:34px;flex-basis:34px}
 .brand-copy strong{font-size:15px}
 .brand-copy small{font-size:9px}
 .topbar nav{gap:8px}
 .topbar nav a:not(.nav-button){display:none}
 .header-search{display:grid;grid-template-columns:1fr 1fr}
 .header-keyword{grid-column:1/-1}
 .header-filter{width:100%;flex:auto}
 .header-search-button{width:100%}
}

/* Ancho general del sitio y encabezado de ficha con galería a la derecha */
body>main{width:100%;max-width:1800px;margin:0 auto}
.profile{width:100%;max-width:1800px;margin:0 auto;padding-left:24px;padding-right:24px}
.profile-title{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,42%);align-items:center;gap:20px;width:100%;min-width:0}
.profile-title-info{min-width:0}
.profile-gallery-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:center;min-width:0}
.profile-gallery-preview>a{position:relative;display:block;min-width:0;height:118px;overflow:hidden;border-radius:10px;background:#eef2f7}
.profile-gallery-preview img{display:block;width:100%;height:100%;object-fit:cover;border-radius:10px}
.profile-gallery-more>span{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#101820b8;color:#fff;font-size:20px;font-weight:800}
.profile-gallery-more small{font-size:12px;font-weight:600}
.profile-title-info .business-open-status{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;margin-top:6px;font-size:13px;font-weight:700}
.business-open-status i{display:block;width:9px;height:9px;border-radius:50%;background:currentColor}
.business-open-status.is-open{background:#e0f6e8;color:#168348}
.business-open-status.is-closed{background:#fff0f0;color:#c03939}
.profile-head{grid-template-columns:280px minmax(0,1fr);gap:0 26px}
.profile-logo{z-index:4}
.profile-contact-row{position:relative;z-index:2}
.profile-actions .button{white-space:nowrap}
.business-features{grid-template-columns:repeat(5,minmax(0,1fr));gap:0}
.business-feature{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-width:0;padding:16px 10px;border-right:1px solid #d9e5f6;background:transparent;color:#000;text-align:center}
.business-feature:nth-child(5n){border-right:0}
.business-feature>span,.business-feature>.line-icon{display:inline-grid;place-items:center;flex:0 0 22px;width:100%;height:22px;border-radius:50%;background:transparent;color:#000;font-weight:300}
.business-feature>span.business-feature-icon{width:100%}
.business-feature>span.business-feature-icon svg{width:22px;height:22px;display:block;stroke:#203a60;stroke-width:1.7}
.business-feature-label{width:100%;font-size:12px;font-weight:200;line-height:1.35;text-align:center;color:#000;overflow-wrap:anywhere}
.gallery-anchor{display:block;height:0;scroll-margin-top:90px}

/* Horario semanal por menús desplegables */
.hours-editor{padding:18px;border:1px solid #e5eaf1;border-radius:12px;background:#fbfcfe}
.hours-editor h3{margin:0 0 5px;font-size:17px}
.hours-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}
.hours-row{display:grid;grid-template-columns:minmax(75px,.7fr) minmax(95px,.8fr) minmax(100px,1fr) minmax(100px,1fr);gap:8px;align-items:center;padding:10px;background:#fff;border:1px solid #e5eaf1;border-radius:9px}
.hours-row>strong{font-size:13px}
.hours-row label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#64748b}
.hours-row label.hours-closed{display:flex;flex-direction:row;align-items:center;gap:5px;color:#334155}
.hours-row select{width:100%;min-width:0;padding:7px 5px;border:1px solid #dbe3ee;border-radius:6px;background:#fff;font:inherit;font-size:12px}
.hours-row input[type=checkbox]{accent-color:#0865ef}
@media(max-width:1400px){
 .profile-title{grid-template-columns:minmax(0,1fr) minmax(230px,38%);gap:12px}
 .profile-gallery-preview>a{height:90px}
 .profile-head{grid-template-columns:240px minmax(0,1fr)}
 .profile-logo{width:220px;height:220px;max-width:220px;max-height:220px}
 .hours-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
 .profile{padding-left:14px;padding-right:14px}
 .profile-head{grid-template-columns:160px minmax(0,1fr);gap:0 14px}
 .profile-logo{width:150px;height:150px;max-width:150px;max-height:150px}
 .profile-title{grid-template-columns:1fr}
 .profile-gallery-preview{grid-template-columns:repeat(4,minmax(0,1fr))}
 .profile-gallery-preview>a{height:72px}
 .hours-row{grid-template-columns:70px 90px 1fr 1fr}
}
@media(max-width:560px){
 .profile{padding-left:10px;padding-right:10px}
 .profile-head{grid-template-columns:90px minmax(0,1fr);gap:0 10px}
 .profile-logo{width:100px;height:100px;max-width:100px;max-height:100px}
 .profile-title{grid-template-columns:1fr}
 .profile-gallery-preview{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:10px}
 .profile-gallery-preview>a{height:58px}
 .profile-contact-row{grid-column:1/-1}
 .business-features{grid-template-columns:repeat(2,minmax(0,1fr))}
 .business-feature:nth-child(5n){border-right:1px solid #d9e5f6}
 .business-feature:nth-child(2n){border-right:0}
 .hours-grid{grid-template-columns:1fr}
 .hours-row{grid-template-columns:1fr 1fr}
 .hours-row>strong{grid-column:1/-1}
 .hours-row label.hours-closed{grid-column:1/-1}
}

footer{width:100%;max-width:1800px;margin-left:auto;margin-right:auto}

/* Actualización: tarjetas, horario, reseñas, promociones y navegación móvil */
.business-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.business-card{display:block;min-width:0}
.business-cover-card{height:190px;object-fit:cover}
.card-hours{display:flex;flex-direction:column;gap:7px;margin-top:12px}
.card-hours small{font-size:12px;color:var(--muted)}
.business-open-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;margin-top:6px}
.business-open-status i{width:8px;height:8px;border-radius:50%;display:inline-block;background:#d92d20}
.business-open-status.is-open i{background:#16a34a}
.nearby-control{margin:20px auto 0;max-width:850px;text-align:center}
.mobile-login-link{display:none}
.hours-public-row{display:flex;justify-content:space-between;gap:12px;padding:5px 0;margin:0;border-bottom:1px solid var(--line);font-size:13px}
.hours-public-row span{text-align:right}
.review-list,.promotion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}
.review-card,.review-form-card,.promotion-card{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff}
.review-stars{color:#f59e0b;font-size:22px;letter-spacing:2px;margin-bottom:8px}
.review-card p{line-height:1.65}
.review-form-card{max-width:760px;background:var(--surface)}
.review-form-card label{display:block;font-size:13px;font-weight:700;margin:12px 0}
.review-form-card input,.review-form-card select,.review-form-card textarea{display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #d5deea;border-radius:8px;font:inherit;background:white}
.promotion-card{padding:0;overflow:hidden;display:grid;grid-template-columns:150px minmax(0,1fr);gap:0}
.promotion-card img{width:150px;height:100%;min-height:145px;object-fit:cover}
.promotion-card>div{padding:16px}
.promotion-card h3{margin:0 0 8px}
.promotion-card strong{color:var(--brand)}
.promotion-manager-row{display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);padding:12px 0}
.promotion-manager-row img{width:74px;height:64px;object-fit:cover;border-radius:8px}
.promotion-manager-row>div{flex:1;min-width:0}
.promotion-manager-row small{display:block;color:var(--muted);margin-top:5px}
@media(max-width:1100px){.business-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar nav .mobile-login-link{display:inline-flex}.topbar nav .desktop-login-link{display:none}.topbar nav a[href*="planes"]{display:inline-flex}.review-list,.promotion-grid{grid-template-columns:1fr}}
@media(max-width:520px){.business-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.business-cover-card{height:125px}.card-body{padding:11px}.card-body h3{font-size:16px}.card-body p{font-size:12px}.card-hours small{font-size:10px}.business-open-status{font-size:10px}.promotion-card{grid-template-columns:100px minmax(0,1fr)}.promotion-card img{width:100px;min-height:120px}.promotion-card>div{padding:12px}.promotion-card h3{font-size:15px}}


/* Reseñas verificadas, respuestas de propietarios y controles de denuncia */
.review-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 20px;padding:16px;border:1px solid var(--border,#e5e7eb);border-radius:14px}.review-summary>strong{font-size:28px}.review-summary small{color:var(--muted,#667085)}.review-featured-label{display:inline-block;margin:4px 0;padding:3px 8px;border-radius:999px;background:#fff3cf;color:#7a5200;font-size:12px;font-weight:700}.owner-review-response{margin-top:12px;padding:12px;border-left:3px solid #cbd5e1;background:#f8fafc;border-radius:6px}.owner-review-response p{margin:6px 0 0}.owner-review-tools{margin-top:12px;padding:12px;border:1px solid var(--border,#e5e7eb);border-radius:10px}.owner-review-tools summary{cursor:pointer;font-weight:700}.owner-review-tools form{display:grid;gap:10px;margin-top:12px}.checkbox-label{display:flex;align-items:center;gap:8px}.review-report-inline{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid var(--border,#e5e7eb)}.review-report-inline label{flex:1;min-width:190px}.small-button{min-height:34px;padding:8px 12px;font-size:13px}

/* Aion panel refresh: centered layout, balanced controls and section markers */
.form-wrap.wide{width:min(1240px,calc(100% - 32px));max-width:1240px;margin:24px auto;padding:0;}
.form-wrap.wide .form-card{width:100%;max-width:1240px;margin:0 auto;padding:clamp(22px,3vw,42px);border:1px solid #e4e9f1;border-radius:22px;background:linear-gradient(145deg,#fff 0%,#fbfcff 100%);box-shadow:0 22px 65px rgba(22,38,65,.10);}
.form-card{font-weight:400;color:#263247}.form-card strong,.form-card b{font-weight:400}.form-card h1,.form-card h2,.form-card h3,.form-card h4{font-weight:750;color:#111827}
.form-section{border-top:0!important;margin-top:16px!important;padding:10px 0 12px!important}
.form-section h2,.product-editor>h2,.product-editor-heading h2{display:flex;align-items:center;gap:10px;width:fit-content;max-width:100%;background:#101114;color:#fff!important;border-radius:10px;padding:10px 15px;margin:0 0 12px!important;font-size:16px!important;letter-spacing:0!important;line-height:1.3}
.form-section h2::first-letter{color:#fff}
.product-editor{padding:18px;margin-top:16px;border:1px solid #e7ebf2;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(20,35,60,.04)}
.product-editor h2{background:#101114;color:#fff!important;border-radius:10px;padding:10px 15px;font-size:16px!important;display:inline-flex}
.form-card label{font-weight:400;color:#334155;font-size:13px}
.form-card input:not([type=checkbox]):not([type=radio]):not([type=file]),.form-card select,.form-card textarea{min-height:46px;box-sizing:border-box;border:1px solid #d8e0eb;border-radius:10px;padding:11px 13px;background:#fff;color:#172033;font:inherit;font-weight:400;transition:border-color .15s,box-shadow .15s}
.form-card textarea{min-height:100px}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{outline:none;border-color:#7187ff;box-shadow:0 0 0 3px rgba(89,111,255,.13)}
.form-card select{height:46px;padding-right:36px;line-height:22px;appearance:auto}
.form-card input[type=file]{min-height:46px;width:100%;padding:9px;border:1px dashed #cbd5e1;border-radius:10px;background:#f8fafc}
.form-card .button,.location-picker-card .button{border-radius:10px;min-height:44px}
.location-picker-card{padding:20px;border:1px solid #e1e7f0;border-radius:16px;background:#f8faff;margin:10px 0 16px}
.location-picker-card h3{font-size:18px;margin:0 0 8px}.location-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;margin:14px 0}.location-search-row input{min-width:0}
#business-location-map{height:340px;width:100%;border-radius:13px;overflow:hidden;border:1px solid #d8e0eb;z-index:1}.location-status{font-size:12px;margin:10px 0}.location-coords{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;background:#fff;border:1px solid #e5eaf2;border-radius:9px;font-size:12px}
.product-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.product-input-grid .product-input-description{grid-column:1/-1}.product-manager-old-price{display:block;color:#7b8495;text-decoration:line-through;font-size:12px}.product-manager-price.discounted,.product-discount-price{color:#087f52;font-size:17px}
.product-price-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:8px}.product-price-line del{color:#8b95a5;font-size:13px}.product-card-body .product-discount-price{font-weight:700;color:#087f52}
.profile-socials .report-business-trigger{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 11px;font-size:12px;white-space:nowrap}
.report-modal{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:20px}.report-modal.is-open{display:flex}.report-modal-backdrop{position:absolute;inset:0;background:rgba(10,17,30,.64);backdrop-filter:blur(4px)}.report-modal-panel{position:relative;z-index:1;width:min(520px,100%);max-height:min(90vh,760px);overflow:auto;padding:28px;border-radius:20px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.28)}.report-modal-panel h2{font-size:25px;margin:0 0 10px}.report-modal-panel label{display:block;margin:14px 0;font-size:13px}.report-modal-panel input,.report-modal-panel select,.report-modal-panel textarea{display:block;width:100%;box-sizing:border-box;margin-top:6px;min-height:44px;padding:11px 12px;border:1px solid #d5deea;border-radius:10px;background:#fff;font:inherit}.report-modal-panel textarea{min-height:110px}.report-modal-close{position:absolute;right:14px;top:12px;border:0;background:#f1f4f8;border-radius:50%;width:34px;height:34px;font-size:24px;cursor:pointer}.report-modal-open{overflow:hidden}
@media(max-width:760px){.form-wrap.wide{width:calc(100% - 20px);margin:12px auto}.form-wrap.wide .form-card{padding:20px 15px}.location-search-row{grid-template-columns:1fr}.location-search-row .button{width:100%}#business-location-map{height:280px}.location-coords{flex-direction:column;gap:4px}.product-input-grid{grid-template-columns:1fr}.product-input-grid .product-input-description{grid-column:auto}.form-section h2,.product-editor>h2,.product-editor-heading h2{font-size:14px!important;padding:9px 11px}.report-modal-panel{padding:24px 18px}}

/* Actualización portada de inicio y navegación móvil Aion */
.hero{position:relative;isolation:isolate;min-height:520px;padding:78px 24px 62px;background-image:linear-gradient(90deg,rgba(255,255,255,.12),rgba(255,255,255,.48) 34%,rgba(255,255,255,.52) 66%,rgba(255,255,255,.08)),url('hero-terrace.webp');background-size:cover;background-position:center;background-repeat:no-repeat;}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at center,rgba(255,255,255,.88) 0%,rgba(255,255,255,.74) 36%,rgba(255,255,255,.08) 74%);pointer-events:none}
.hero .eyebrow,.hero h1,.hero .lead,.hero .search,.hero .nearby-control{position:relative;z-index:1}
.hero .lead{color:#53647a}
.search button{height:25px;min-height:25px;padding:0 22px;line-height:25px;align-self:center;white-space:nowrap}
.topbar nav .nav-plans-link{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#111827;color:#fff;padding:12px 18px}
.topbar nav .nav-login-link{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#2563eb;color:#fff;padding:12px 18px}
.topbar nav .nav-button{border-radius:10px}
@media(max-width:800px){.topbar{align-items:center;gap:12px}.topbar nav{width:100%;display:flex;justify-content:center;align-items:center;gap:10px}.topbar nav a{padding:11px 14px}.topbar nav .nav-login-link{background:#2563eb;color:#fff;min-width:105px}.topbar nav .nav-plans-link{background:#111827;color:#fff;min-width:95px}.topbar nav .nav-button{min-width:130px;background:#2563eb;color:#fff}.hero{min-height:500px;padding:58px 16px 42px;background-position:center center}.hero h1{font-size:clamp(34px,8vw,48px);letter-spacing:-1.6px}.hero .lead{font-size:16px}.search{gap:6px}.search button{height:25px;min-height:25px;padding:0 18px;line-height:25px}.nearby-control{display:flex;flex-direction:column;align-items:center;gap:8px}.nearby-control .button{align-self:center}}
@media(max-width:520px){.topbar{padding:14px 12px}.topbar nav{justify-content:center;flex-wrap:wrap;gap:8px}.topbar nav a{font-size:13px;padding:10px 13px}.topbar nav .nav-login-link,.topbar nav .nav-plans-link,.topbar nav .nav-button{min-width:105px}.hero{min-height:470px;padding-top:48px;background-position:50% 50%}.hero:before{background:radial-gradient(ellipse at center,rgba(255,255,255,.91) 0%,rgba(255,255,255,.78) 46%,rgba(255,255,255,.15) 100%)}.search button{width:auto;min-width:100px;height:25px;min-height:25px;padding:0 16px}.nearby-control .muted{text-align:center}}

/* Actualización UX: QR privado en panel, reseñas emergentes y navegación móvil */
.business-qr-card{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:22px 0;padding:22px;border:1px solid var(--line,#e5e7eb);border-radius:18px;background:#f8fafc}
.business-qr-card h2{margin:0 0 8px}.business-qr-output{display:flex;flex-direction:column;align-items:center;gap:12px;flex:0 0 250px}.business-qr-output>div{padding:10px;background:#fff;border-radius:12px;border:1px solid #e5e7eb}.business-qr-output canvas,.business-qr-output img{display:block;max-width:100%;height:auto}
.review-business-trigger{background:#fff!important;color:#111827!important;border:1px solid #d1d5db!important}
.review-modal{position:fixed;inset:0;z-index:10020;display:none;align-items:center;justify-content:center;padding:20px}.review-modal.is-open{display:flex}.review-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62)}.review-modal-panel{position:relative;z-index:1;width:min(100%,560px);max-height:90vh;overflow:auto;padding:28px;border-radius:18px;background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.25)}.review-modal-panel h2{margin-top:0}.review-modal-panel label{display:block;margin:14px 0;font-size:13px}.review-modal-panel input,.review-modal-panel select,.review-modal-panel textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #d5deea;border-radius:9px;font:inherit;background:#fff}.review-modal-open{overflow:hidden}.plans-back-button{display:none}
@media(max-width:760px){.business-qr-card{align-items:stretch;flex-direction:column}.business-qr-output{flex-basis:auto}.profile-socials .review-business-trigger,.profile-socials .report-business-trigger{white-space:normal;min-height:38px;padding:8px 10px}.plans-back-button{display:inline-flex;align-items:center;justify-content:center;margin:0 0 18px;padding:10px 14px;border-radius:10px;background:#111827;color:#fff;text-decoration:none;font-size:14px}.review-modal{padding:12px}.review-modal-panel{padding:24px 18px;max-height:94vh}}


/* Presenza: identidad de marca, favicon y portada sin mancha blanca */
.brand{display:flex;align-items:center;flex:0 0 auto;max-width:245px;overflow:hidden;padding:0;background:#fff}
.brand-logo{display:block;width:225px;height:auto;max-height:54px;object-fit:contain;object-position:left center}
.brand-pin,.brand-copy{display:none!important}
.hero{background-image:url('hero-terrace.webp')!important;background-size:cover;background-position:center;background-repeat:no-repeat}
.hero:before{display:none!important;content:none!important}
.hero .eyebrow,.hero h1,.hero .lead{ text-shadow:0 1px 12px rgba(255,255,255,.48) }
@media(max-width:800px){
 .topbar{align-items:center}
 .brand{max-width:190px}
 .brand-logo{width:185px;max-height:46px}
 .topbar nav .nav-login-link,.topbar nav a[href*="/panel"]{display:inline-flex!important;align-items:center;justify-content:center;background:#2563eb;color:#fff!important;border-radius:10px;padding:10px 13px;min-width:105px;white-space:nowrap}
 .topbar nav .nav-plans-link{display:inline-flex!important;background:#111827;color:#fff!important}
 .topbar nav .nav-button{display:inline-flex!important}
}
@media(max-width:520px){.brand{max-width:170px}.brand-logo{width:165px;max-height:42px}.topbar nav .nav-login-link,.topbar nav a[href*="/panel"]{min-width:105px}}

/* Corrección definitiva: dos productos/servicios por fila en móviles */
@media screen and (max-width: 600px) {
  .product-cards,
  .products-grid,
  .services-grid,
  .business-products,
  .business-services,
  .product-list,
  .service-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100%;
  }
  .product-cards > *,
  .products-grid > *,
  .services-grid > *,
  .business-products > *,
  .business-services > *,
  .product-list > *,
  .service-list > * {
    min-width: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    grid-column: auto !important;
  }
}
