/* ZWIERZAK 5.6.8 — galeria: stabilny tablet i telefon. */
.clinic-gallery-page{width:100%;max-width:100%;overflow-x:clip}
.clinic-gallery-page *{box-sizing:border-box;min-width:0}
.clinic-gallery-page img,.clinic-gallery-page svg{max-width:100%}
.clinic-gallery-page :where(h1,h2,h3,p,button,a,figcaption){overflow-wrap:anywhere}
.clinic-gallery-card button{overflow:hidden}
.clinic-gallery-card img{height:auto}

@media (max-width:1024px){
  .clinic-gallery-hero{padding:52px 0 44px}
  .clinic-gallery-hero__grid{grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);gap:28px}
  .clinic-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .clinic-gallery-card,
  .clinic-gallery-card:first-child,
  .clinic-gallery-card:nth-child(5){grid-column:auto}
  .clinic-gallery-card img{aspect-ratio:4/3}
  .clinic-gallery-lightbox{grid-template-columns:56px minmax(0,1fr) 56px;padding:32px 20px}
}

@media (max-width:768px){
  .clinic-gallery-page .container{width:min(calc(100% - 28px),760px)}
  .clinic-gallery-hero{padding:36px 0 32px}
  .clinic-gallery-hero__grid{grid-template-columns:1fr;gap:20px}
  .clinic-gallery-hero h1{margin:9px 0 15px;font-size:clamp(35px,10vw,48px);line-height:1.02}
  .clinic-gallery-hero__grid>div>p:last-child{font-size:15px;line-height:1.58}
  .clinic-gallery-hero aside{padding:22px;border-radius:18px}
  .clinic-gallery-content{padding-top:24px;padding-bottom:56px}
  .clinic-gallery-filters{
    display:flex;
    flex-wrap:nowrap;
    gap:8px;
    margin:0 -2px 22px;
    padding:2px 2px 8px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  .clinic-gallery-filters::-webkit-scrollbar{display:none}
  .clinic-gallery-filters button{flex:0 0 auto;min-height:44px;scroll-snap-align:start;white-space:nowrap}
  .clinic-gallery-grid{grid-template-columns:1fr;gap:14px}
  .clinic-gallery-card,
  .clinic-gallery-card:first-child,
  .clinic-gallery-card:nth-child(5){grid-column:1!important;width:100%}
  .clinic-gallery-card{border-radius:17px}
  .clinic-gallery-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
  .clinic-gallery-card figcaption{align-items:flex-start;padding:14px;gap:8px}
  .clinic-gallery-card figcaption strong{font-size:13px;line-height:1.3}
  .clinic-gallery-card figcaption small{flex:0 0 auto;padding-top:2px}
  .clinic-gallery-cta{grid-template-columns:1fr;gap:20px;margin-top:38px;padding:26px 21px;border-radius:20px}
  .clinic-gallery-cta h2{font-size:clamp(28px,8vw,38px)}
  .clinic-gallery-cta>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .clinic-gallery-cta .btn{width:100%;justify-content:center;text-align:center;white-space:normal}

  .clinic-gallery-lightbox{
    grid-template-columns:1fr;
    grid-template-rows:minmax(0,1fr) auto;
    align-items:center;
    padding:64px 12px 16px;
    overflow:hidden;
    background:rgba(3,12,8,.96);
  }
  .clinic-gallery-lightbox figure{grid-column:1;grid-row:1;width:100%;max-width:none;min-height:0;margin:0;align-self:center}
  .clinic-gallery-lightbox img{width:100%;max-height:calc(100svh - 160px);border-radius:10px}
  .clinic-gallery-lightbox figcaption{max-height:64px;padding:11px 4px 0;overflow:auto;font-size:13px;line-height:1.35}
  .clinic-gallery-lightbox__close{top:12px;right:12px}
  .clinic-gallery-lightbox__prev,
  .clinic-gallery-lightbox__next{position:static;grid-row:2;width:48px;height:48px;font-size:30px}
  .clinic-gallery-lightbox__prev{grid-column:1;justify-self:start}
  .clinic-gallery-lightbox__next{grid-column:1;justify-self:end;margin-top:-48px}
  .clinic-gallery-lightbox button{touch-action:manipulation}
}

@media (max-width:480px){
  .clinic-gallery-page .container{width:calc(100% - 20px)}
  .clinic-gallery-hero h1{font-size:34px}
  .clinic-gallery-card button>span{right:9px;bottom:9px;padding:7px 9px}
  .clinic-gallery-card figcaption{display:grid;grid-template-columns:minmax(0,1fr) auto}
  .clinic-gallery-cta>div:last-child{grid-template-columns:1fr}
  .clinic-gallery-lightbox{padding:58px 8px 12px}
  .clinic-gallery-lightbox img{max-height:calc(100svh - 150px)}
  .clinic-gallery-lightbox button{width:44px;height:44px}
  .clinic-gallery-lightbox__next{margin-top:-44px}
}

.clinic-gallery-page .zw-page-editor-content{max-width:100%;overflow:hidden}
.clinic-gallery-page .zw-page-editor-content :where(img,video,iframe,table){max-width:100%}
@media (max-width:768px){
  .clinic-gallery-page .zw-page-editor-content table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
