/* Şube galerisi: Vitrin, Odak, Kolaj. Sahne için branch-stage.css. */
.rb-gal{--st-night:#18110D; --st-ink:#F6EFE4; --gal-ink:#241A14; --gal-muted:#54463B; --gal-line:#DCCDB8; --gal-red:#A31F24; color:var(--gal-ink); position:relative}
.section.rb-branch--vitrin,.section.rb-branch--odak,.section.rb-branch--kolaj{padding:36px 0}
.rb-gal{padding-top:48px; padding-bottom:48px}
/* Desen arkada devam eder; yalnızca küçük yazılar okunaklı bir zemine oturur. */
.rb-vitrin__info,.rb-odak__bar,.rb-odak .rb-gal__line,.rb-kolaj__foot{background:rgba(246,239,228,.92)}
.rb-gal .title-script,.rb-gal .subtitle-script{margin:0; line-height:1.15}
.rb-gal__rule{height:1px; background:var(--gal-line); margin:10px 0 8px}
.rb-gal__addr,.rb-gal__line{margin:0; font-size:15px; line-height:1.6; color:var(--gal-muted)}
.rb-gal__line a{font-weight:600; color:var(--gal-ink); text-decoration:none; white-space:nowrap}
.rb-gal__tel{font-size:16px; font-weight:600; color:var(--gal-ink); text-decoration:none}
.rb-gal__tel:hover,.rb-gal__line a:hover{text-decoration:underline}
.rb-gal__count{white-space:nowrap; font-size:14px; letter-spacing:.06em; font-variant-numeric:tabular-nums}
.rb-gal__btn{
  width:44px; height:44px; flex:none; padding:0; display:grid; place-items:center; cursor:pointer;
  border-radius:50%; border:1px solid currentColor; background:none; color:inherit; transition:background .2s,color .2s;
}
.rb-gal__btn svg{width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round}
.rb-gal__btn:hover{background:var(--gal-ink); color:#fff; border-color:var(--gal-ink)}
.rb-gal button:focus-visible,.rb-gal a:focus-visible,.rb-vitrin__strip:focus-visible{outline:2px solid var(--gal-red); outline-offset:2px}
.rb-gal .slide{position:relative; display:block; padding:0; border:0; background:none; overflow:hidden; cursor:zoom-in}
.rb-gal .slide img,.rb-gal .slide video{display:block; width:100%; height:100%; object-fit:cover}

/* Vitrin */
.rb-vitrin{
  --gal-h:clamp(420px,66vh,540px);
  display:grid; grid-template-columns:minmax(250px,310px) minmax(0,1fr); gap:44px; align-items:stretch;
  padding-left:max(20px,calc((100vw - 1320px)/2));
}
.rb-vitrin__info{display:flex; flex-direction:column; gap:10px; min-width:0; padding:22px; box-sizing:border-box}
.rb-vitrin .title-script,.rb-vitrin .subtitle-script{text-align:left}
.rb-vitrin__ctl{margin-top:auto; padding-top:20px; display:flex; flex-direction:column; gap:14px}
.rb-vitrin__prog{position:relative; height:2px; background:var(--gal-line)}
.rb-vitrin__prog i{position:absolute; top:0; bottom:0; left:0; width:0; background:var(--gal-red); transition:width .5s ease}
.rb-vitrin__row{display:flex; align-items:center; gap:10px}
.rb-vitrin__row .rb-gal__count{margin-right:auto}
.rb-vitrin__strip{position:relative; display:flex; gap:14px; height:var(--gal-h); overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; min-width:0}
.rb-vitrin__strip::-webkit-scrollbar{display:none}
.rb-vitrin__strip figure{margin:0; height:100%; flex:none; scroll-snap-align:start; background:rgba(36,26,20,.06)}
.rb-vitrin__item{width:100%; height:100%}
.rb-vitrin__item img{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.rb-vitrin__item:hover img{transform:scale(1.03)}

/* Odak */
.rb-odak{--gal-h:min(560px,105vw); display:flex; flex-direction:column; gap:22px}
.rb-odak__head{text-align:center; padding:0 20px}
.rb-odak__stage{position:relative; height:var(--gal-h); overflow:hidden; touch-action:pan-y}
.rb-gal .rb-odak__s{
  position:absolute; top:0; left:50%; width:calc(var(--gal-h)*.75); height:var(--gal-h); margin-left:calc(var(--gal-h)*-.375);
  transform:translateX(calc(var(--d,0)*var(--gal-h)*.62)) scale(var(--sc,1)); opacity:var(--o,0); z-index:var(--z,1);
  transition:transform .75s cubic-bezier(.22,.75,.2,1),opacity .6s ease; cursor:pointer;
}
.rb-gal .rb-odak__s.is-on{cursor:zoom-in}
.rb-odak__s img{transition:filter .6s ease}
.rb-odak__s:not(.is-on) img{filter:saturate(.75) brightness(.78)}
.rb-odak__bar{display:flex; align-items:center; justify-content:center; gap:16px; width:fit-content; max-width:calc(100% - 32px); box-sizing:border-box; margin:0 auto; padding:8px 12px; border-radius:999px}
.rb-odak__seg{display:flex; gap:5px; width:min(300px,36vw); min-width:0}
.rb-odak__seg i{height:2px; flex:1; background:var(--gal-line); transition:background .3s}
.rb-odak__seg i.is-on{background:var(--gal-red)}
.rb-odak .rb-gal__line{text-align:center; width:fit-content; max-width:calc(100% - 32px); box-sizing:border-box; margin:0 auto; padding:6px 16px; border-radius:12px}

/* Kolaj */
.rb-kolaj{display:flex; flex-direction:column; gap:24px; padding-left:20px; padding-right:20px}
.rb-kolaj__head{text-align:center}
.rb-kolaj__grid{display:grid; grid-template-columns:2fr 1fr 1fr; gap:10px; width:100%; max-width:960px; margin:0 auto}
.rb-kolaj__t{position:relative; display:block; width:100%; aspect-ratio:3/4; padding:0; border:0; background:rgba(36,26,20,.06); overflow:hidden; cursor:zoom-in}
.rb-kolaj__t.is-big{grid-row:span 2; aspect-ratio:auto; height:100%}
.rb-kolaj__t img{position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity 1.1s ease,transform 1.2s ease}
.rb-kolaj__t img.is-on{opacity:1}
.rb-kolaj__t:hover img{transform:scale(1.04)}
.rb-kolaj__foot{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 24px; width:100%; max-width:960px; box-sizing:border-box; margin:0 auto; padding:10px 14px}
.rb-kolaj__foot .rb-gal__line{min-width:0}
.rb-kolaj__all{font-size:14px; font-weight:600; padding:10px 18px; border:1px solid var(--gal-ink); background:none; color:var(--gal-ink); cursor:pointer; transition:background .2s,color .2s}
.rb-kolaj__all:hover{background:var(--gal-ink); color:#fff}

@media (max-width:900px){
  .section.rb-branch--vitrin,.section.rb-branch--odak,.section.rb-branch--kolaj{padding:20px 0}
  .rb-gal{padding-top:32px; padding-bottom:32px}
  .rb-vitrin{--gal-h:min(440px,112vw); grid-template-columns:minmax(0,1fr); gap:22px; padding-left:20px}
  .rb-vitrin__info{margin-right:20px; padding:18px}
  .rb-vitrin__ctl{padding-top:6px}
  .rb-kolaj__grid{grid-template-columns:1fr 1fr}
  .rb-kolaj__t.is-big{grid-row:auto; grid-column:1 / -1; aspect-ratio:4/5; height:auto}
  .rb-kolaj__t.is-extra{display:none}
}
@media (prefers-reduced-motion:reduce){
  .rb-gal *{transition:none !important}
}
