:root{--cg-orange:#ff6b00;--cg-orange-soft:#fff4e8;--cg-ink:#17191d;--cg-muted:#6f747c;--cg-line:#e8e9ec;--cg-bg:#f4f6f9;--cg-green:#18a447;--cg-red:#c84646}
body{background:var(--cg-bg)}
.cg-detail-page{padding:18px 0 72px}.cg-detail-shell{width:min(100% - 28px,1040px);margin:0 auto}.cg-hero{position:relative;height:390px;overflow:hidden;border-radius:26px;background:#e9edf2}.cg-hero-image{width:100%;height:100%;object-fit:cover;display:block}.cg-hero-empty{height:100%;display:grid;place-content:center;gap:10px;text-align:center;background:linear-gradient(135deg,#f0f1f3,#e5e7eb);color:#8a8e95}.cg-hero-empty span{font-size:60px}.cg-float-button,.cg-photo-count{position:absolute;z-index:4;border:0;box-shadow:0 8px 24px rgba(0,0,0,.18);background:rgba(255,255,255,.95);color:var(--cg-ink);text-decoration:none}.cg-float-button{top:18px;left:18px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:27px;font-weight:500}.cg-photo-count{right:18px;bottom:18px;padding:9px 13px;border-radius:999px;font-size:12px;font-weight:800}.cg-business-card{position:relative;margin:-46px 24px 0;padding:28px;border-radius:28px;background:#fff;box-shadow:0 18px 50px rgba(31,41,55,.12)}.cg-business-head{display:flex;align-items:flex-start;gap:16px}.cg-avatar{width:92px;height:92px;flex:0 0 92px;margin-top:-58px;border:7px solid #fff;border-radius:50%;display:grid;place-items:center;background:#fff5e9;font-size:42px;box-shadow:0 8px 24px rgba(0,0,0,.11)}.cg-business-title-wrap{min-width:0}.cg-business-kicker{font-size:13px;color:var(--cg-muted);font-weight:700}.cg-business-title-wrap h1{margin:3px 0 6px;font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;letter-spacing:-.04em;font-weight:900;color:var(--cg-ink)}.cg-rating-status,.cg-open-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:13px}.cg-rating{color:#f59e0b;font-weight:900}.cg-muted{color:var(--cg-muted)}.cg-open{font-weight:800}.cg-open.is-open{color:var(--cg-green)}.cg-open.is-closed{color:var(--cg-red)}.cg-open.is-pending{color:#9b6b2f}.cg-unclaimed{margin:16px 0 0;padding:11px 13px;border:1px solid #ffe0bf;border-radius:13px;background:#fff8ef;color:#6f4a26;font-size:13px}.cg-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0}.cg-action{min-height:74px;padding:10px 5px;border:1px solid var(--cg-line);border-radius:15px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#fff;color:var(--cg-ink);text-decoration:none}.cg-action span{font-size:24px}.cg-action b{font-size:11px}.cg-action.is-disabled{opacity:.38}.cg-description{padding:0 2px 18px;color:#30343a;font-size:14px;line-height:1.6}.cg-description p{margin:0}.cg-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--cg-line);border-radius:17px;overflow:hidden}.cg-summary-item{display:flex;gap:10px;padding:15px;border-right:1px solid var(--cg-line);min-width:0}.cg-summary-item:last-child{border-right:0}.cg-summary-item>span{font-size:20px}.cg-summary-item small,.cg-summary-item strong{display:block}.cg-summary-item small{font-size:11px;color:var(--cg-muted);margin-bottom:3px}.cg-summary-item strong{font-size:12px;line-height:1.35;color:var(--cg-ink)}.cg-section{margin-top:24px;padding-top:22px;border-top:1px solid #eef0f2}.cg-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.cg-section-head h2{margin:0;font-size:20px;font-weight:900;color:var(--cg-ink);letter-spacing:-.025em}.cg-link{border:0;background:none;color:var(--cg-orange);font-size:12px;font-weight:800;text-decoration:none}.cg-photo-strip{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory}.cg-photo-strip img{width:180px;height:120px;flex:0 0 180px;object-fit:cover;border-radius:14px;scroll-snap-align:start}.cg-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.cg-feature{min-height:105px;padding:13px 9px;border:1px solid var(--cg-line);border-radius:15px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;background:#fff}.cg-feature>span{font-size:25px;min-height:31px}.cg-feature b{font-size:12px}.cg-feature small{color:var(--cg-muted);font-size:10px;line-height:1.35}.cg-data-box{margin-top:12px;padding:15px;border:1px solid var(--cg-line);border-radius:15px;background:#fafbfc;color:#3d4248;font-size:13px}.cg-data-box strong{display:block;margin-bottom:8px}.cg-data-box p{margin-bottom:0}.cg-pending{margin:0;color:#8a6a42;font-size:13px}.cg-amenities-inline{display:flex;flex-wrap:wrap;gap:7px}.cg-amenities-inline span{padding:6px 9px;border-radius:999px;background:#fff;color:#3e444b;font-size:11px}.cg-claim-card{margin-top:24px;padding:20px;border:1px solid #ffd7ae;border-radius:20px;background:linear-gradient(135deg,#fff8ee,#fff0dc);display:flex;align-items:center;justify-content:space-between;gap:18px}.cg-claim-card h2{margin:0 0 5px;font-size:19px;font-weight:900}.cg-claim-card p{margin:0;color:#5c6066;font-size:13px}.cg-claim-card a{flex:0 0 auto;padding:12px 18px;border-radius:12px;background:var(--cg-orange);color:#fff;text-decoration:none;font-size:13px;font-weight:900}.cg-schedule-list{border:1px solid var(--cg-line);border-radius:15px;overflow:hidden}.cg-schedule-row{display:flex;justify-content:space-between;gap:20px;padding:12px 14px;border-bottom:1px solid #eef0f2;font-size:13px}.cg-schedule-row:last-child{border-bottom:0}.cg-schedule-row.is-today{background:#effaf2;color:#147d35}.cg-schedule-row strong{text-align:right}#detail-map{width:100%;height:320px;border-radius:17px;z-index:1}.detail-video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.detail-video-card{overflow:hidden;border:1px solid var(--cg-line);border-radius:15px}.detail-video-card video,.detail-video-card iframe{display:block;width:100%;min-height:240px;border:0;background:#000}.detail-video-card a{display:block;padding:30px;text-align:center;color:var(--cg-orange)}.cg-review{padding:14px 0;border-bottom:1px solid #eef0f2}.cg-review:last-child{border-bottom:0}.cg-review>div{display:flex;justify-content:space-between;gap:12px}.cg-review span{color:#f59e0b;font-weight:900}.cg-review b{display:block;margin-top:7px}.cg-review p{margin:5px 0 0;color:#555b63;font-size:13px;line-height:1.55}.cg-review-form{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.cg-review-form label{display:block;margin-bottom:5px;font-size:12px;font-weight:800}.cg-review-form .full{grid-column:1/-1}.cg-submit{width:100%;border:0;border-radius:12px;padding:12px;background:var(--cg-orange);color:#fff;font-weight:900}.cg-related-section{margin:22px 24px 0}.cg-related-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.cg-related-card{overflow:hidden;border:1px solid var(--cg-line);border-radius:16px;background:#fff;color:var(--cg-ink);text-decoration:none}.cg-related-card img,.cg-related-placeholder{width:100%;height:125px;object-fit:cover}.cg-related-placeholder{display:grid;place-items:center;background:#f2f3f5;font-size:34px}.cg-related-card>div:last-child{padding:11px}.cg-related-card strong,.cg-related-card small{display:block}.cg-related-card strong{font-size:13px;line-height:1.25}.cg-related-card small{margin-top:4px;color:var(--cg-muted);font-size:10px}.gallery-modal{position:fixed;inset:0;z-index:2000;display:none;overflow-y:auto;padding:70px 20px 30px;background:rgba(6,17,31,.96)}.gallery-modal.is-open{display:block}.gallery-modal-close{position:fixed;top:18px;right:22px;z-index:2010;width:44px;height:44px;border:0;border-radius:50%;background:#fff;font-size:24px}.gallery-modal-grid{width:min(100%,1150px);display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:0 auto}.gallery-modal-image{width:100%;max-height:650px;border-radius:14px;object-fit:cover}
@media(max-width:768px){.cg-detail-page{padding-top:0}.cg-detail-shell{width:100%}.cg-hero{height:260px;border-radius:0}.cg-float-button{top:16px;left:16px}.cg-photo-count{right:14px;bottom:14px}.cg-business-card{margin:-28px 0 0;padding:20px 16px 28px;border-radius:28px 28px 0 0;box-shadow:none}.cg-avatar{width:76px;height:76px;flex-basis:76px;margin-top:-50px;border-width:6px;font-size:34px}.cg-business-title-wrap h1{font-size:1.72rem}.cg-business-kicker{font-size:11px}.cg-rating-status,.cg-open-row{font-size:11px}.cg-actions{gap:7px;margin:18px 0}.cg-action{min-height:68px;border-radius:13px}.cg-action span{font-size:21px}.cg-action b{font-size:10px}.cg-description{font-size:13px}.cg-summary-grid{grid-template-columns:1fr}.cg-summary-item{border-right:0;border-bottom:1px solid var(--cg-line);padding:12px}.cg-summary-item:last-child{border-bottom:0}.cg-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.cg-feature{min-height:96px;padding:10px 4px}.cg-feature>span{font-size:21px}.cg-feature b{font-size:10px}.cg-feature small{font-size:9px}.cg-photo-strip img{width:135px;height:92px;flex-basis:135px}.cg-section{margin-top:20px;padding-top:18px}.cg-section-head h2{font-size:17px}.cg-claim-card{display:block;padding:17px}.cg-claim-card a{display:block;margin-top:13px;text-align:center}.cg-review-form{grid-template-columns:1fr}.cg-review-form .full{grid-column:auto}.cg-related-section{margin:0;padding:20px 16px 0;background:#fff;border-top:1px solid #eef0f2}.cg-related-strip{display:flex;overflow-x:auto;gap:10px}.cg-related-card{width:145px;flex:0 0 145px}.cg-related-card img,.cg-related-placeholder{height:90px}#detail-map{height:230px}.detail-video-grid,.gallery-modal-grid{grid-template-columns:1fr}.gallery-modal{padding-inline:10px}}
@media(max-width:390px){.cg-actions{grid-template-columns:repeat(4,1fr)}.cg-action b{font-size:9px}.cg-feature-grid{grid-template-columns:repeat(2,1fr)}.cg-feature{min-height:88px}.cg-business-head{gap:11px}.cg-avatar{width:68px;height:68px;flex-basis:68px;font-size:30px}.cg-business-title-wrap h1{font-size:1.52rem}}

/* Logos de negocios: conservar proporción y evitar recortes */
.cg-avatar img { width:100%; height:100%; object-fit:contain; object-position:center; padding:7px; box-sizing:border-box; border-radius:50%; background:#fff; }


/* Correccion avatar flotante en movil: mantenerlo completo sobre la tarjeta */
@media (max-width: 768px) {
  .cg-business-card {
    overflow: visible !important;
  }

  .cg-business-head {
    position: relative;
    overflow: visible !important;
  }

  .cg-avatar {
    position: relative;
    z-index: 20;
    overflow: visible !important;
    background: #fff5e9;
  }

  .cg-avatar img {
    width: 100%;
    height: 100%;
    object-fit: contain !important;
    object-position: center;
    padding: 7px;
    box-sizing: border-box;
    border-radius: 50%;
    background: #fff;
  }
}
