/* ════════════════════════════════════════════════════════════════
   IT'S RUGBY — BAR PAGE CSS
   Template-specific styles for the bar page
   ════════════════════════════════════════════════════════════════ */

.bar-hero { background:var(--teal); color:#fff; padding:32px 24px; }
.bar-hero-inner { max-width:960px; margin:0 auto; padding:0 24px; display:flex; gap:28px; align-items:flex-start; }
.bar-photo { width:180px; height:180px; flex-shrink:0; overflow:hidden; background:rgba(255,255,255,.1); display:flex; align-items:center; justify-content:center; position:relative; }
.bar-photo img { width:100%; height:100%; object-fit:cover; }
.bar-photo-placeholder { width:100%; height:100%; background:rgba(255,255,255,.05); }
.bar-info-col { flex:1; display:flex; flex-direction:column; gap:8px; }
.bar-name { font-size:clamp(24px,4vw,36px); font-weight:900; line-height:1.1; }
.bar-sub { font-size:13px; color:rgba(255,255,255,.65); font-weight:600; margin-top:2px; }
.bar-badges { display:flex; gap:6px; flex-wrap:wrap; margin-top:4px; }
.bar-desc { font-size:12px; line-height:1.65; color:rgba(255,255,255,.7); max-width:520px; margin-top:4px; }
@media(max-width:680px){ .bar-hero-inner { flex-direction:column; align-items:center; text-align:center; } .bar-photo { width:140px; height:140px; } .bar-badges { justify-content:center; } }
.bar-body { display:grid; grid-template-columns:1.5fr 1fr; gap:24px; padding-top:24px; padding-bottom:32px; }
@media(max-width:680px){ .bar-body { grid-template-columns:1fr; } }
.bar-col-left, .bar-col-right { display:flex; flex-direction:column; gap:20px; }
.bar-block + .bar-block { border-top:1px solid rgba(196,196,196,.3); padding-top:20px; }
.bar-rel-link { color:rgba(255,255,255,.9); font-weight:700; text-decoration:none; display:inline-flex; align-items:center; gap:5px; }
.bar-rel-link:hover { text-decoration:underline; color:#fff; }
.bar-rel-thumb { width:20px; height:20px; object-fit:contain; vertical-align:middle; flex-shrink:0; }
.bar-desc-long-text { font-size:14px; line-height:1.7; color:var(--ink); background:var(--white); border:1px solid var(--border); padding:20px 24px; }
#bar-services-block { background:var(--white); border:1px solid var(--border); padding:14px 18px; }
.bar-svc-group { display:flex; align-items:flex-start; gap:10px; padding:6px 0; border-bottom:1px solid var(--border); }
.bar-svc-group:last-child { border-bottom:none; }
.bar-svc-cat { font-size:9px; font-weight:800; letter-spacing:1px; text-transform:uppercase; color:var(--muted); min-width:110px; padding-top:3px; flex-shrink:0; }
.bar-svc-tags { display:flex; flex-wrap:wrap; gap:4px; }
.bar-svc-tag { font-size:10px; font-weight:600; padding:2px 8px; background:var(--sage-lt); color:var(--teal); border:1px solid var(--border); white-space:nowrap; }
.bar-hours-table { background:var(--white); border:1px solid var(--border); }
.bar-hours-row { display:flex; justify-content:space-between; align-items:center; padding:10px 14px; border-bottom:1px solid rgba(196,196,196,.2); font-size:13px; }
.bar-hours-row:last-child { border-bottom:none; }
.bar-hours-day { font-weight:700; color:var(--ink); min-width:100px; }
.bar-hours-open { color:var(--teal); font-weight:600; }
.bar-hours-closed { color:var(--red); font-style:italic; font-weight:600; }
.bar-hours-today { background:var(--sage-lt); }
.bar-hours-today-badge { font-size:9px; font-weight:800; letter-spacing:.5px; text-transform:uppercase; padding:1px 6px; background:var(--teal); color:#fff; margin-left:6px; vertical-align:middle; }
.bar-tarifs-table { background:var(--white); border:1px solid var(--border); }
.bar-tarif-row { display:flex; justify-content:space-between; align-items:center; padding:10px 14px; border-bottom:1px solid rgba(196,196,196,.2); font-size:13px; }
.bar-tarif-row:last-child { border-bottom:none; }
.bar-tarif-item { font-weight:700; color:var(--ink); }
.bar-tarif-prix { color:var(--teal); font-weight:800; }
.bar-tarif-na { color:var(--muted); }
.bar-carte-actions { text-align:center; margin-bottom:16px; }
.bar-carte-btn { display:inline-block; background:var(--teal); color:#fff; padding:10px 20px; text-decoration:none; font-weight:700; text-transform:uppercase; font-size:11px; letter-spacing:.5px; box-shadow:0 4px 6px rgba(0,0,0,.1); transition:background .2s; }
.bar-carte-btn:hover { background:var(--teal-dk); color:#fff; }
.bar-carte-viewer-wrap { border:1px solid var(--border); background:#f9f9f9; }
.bar-carte-viewer { width:100%; height:400px; border:none; }
@media(max-width:768px){ .bar-carte-viewer { height:300px; } }
.bar-avis-card { background:var(--white); border:1px solid var(--border); padding:20px 24px; }
.bar-avis-text { font-size:14px; line-height:1.7; color:var(--ink); font-style:italic; }
.bar-gallery-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
.bar-gallery-item { overflow:hidden; cursor:pointer; }
.bar-gallery-item img { width:100%; height:110px; object-fit:cover; display:block; transition:opacity .2s; }
.bar-gallery-item:hover img { opacity:.85; }
.bar-gallery-placeholder { height:110px; display:flex; align-items:center; justify-content:center; font-size:10px; color:var(--muted); background:rgba(0,0,0,.03); border:1px solid var(--border); }
.its-zn { position:relative; display:block; margin:16px auto; text-align:center; overflow:hidden; background:#f7f7f7; border:1px solid rgba(0,0,0,.06); transition:box-shadow .2s; }
.its-ad-rectangle-300x250 { max-width:300px; }
.its-ad-square-250x250 { max-width:250px; }
.its-ad-leaderboard-728x90 { max-width:728px; }
.its-zn-link { display:block; margin:0 auto; line-height:0; text-decoration:none; }
.its-ad-leaderboard-728x90{aspect-ratio:728/90;}
.its-ad-banner-468x60{aspect-ratio:468/60;}
.its-ad-rectangle-300x250,.its-ad-square-300x250{aspect-ratio:300/250;}
.its-ad-square-250x250{aspect-ratio:1/1;}
.its-ad-halfpage-300x600,.its-ad-skyscraper-300x600{aspect-ratio:300/600;}
.its-ad-skyscraper-160x600{aspect-ratio:160/600;}
.its-ad-super-970x250{aspect-ratio:970/250;}
.its-zn img{display:block;margin:0 auto;max-width:100%;height:auto;}
.its-zn-tag { position:absolute; bottom:6px; right:6px; z-index:3; font-size:10px; line-height:1.3; letter-spacing:.2px; background:rgba(0,0,0,.6); color:#fff; padding:3px 8px; border-radius:2px; pointer-events:none; }
.its-ad-placeholder { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; background:linear-gradient(135deg,var(--teal) 0%,#2a5e4e 100%); color:rgba(255,255,255,.7); padding:16px; text-align:center; width:100%; }
.its-ad-placeholder-size { font-size:10px; font-weight:800; letter-spacing:1.5px; text-transform:uppercase; opacity:.5; }
.its-ad-placeholder-icon { font-size:24px; opacity:.6; }

/* Bar-specific */
.breadcrumb{background:var(--teal);border-top:1px solid rgba(255,255,255,.08);padding:8px 0;}
