/* ===== Tidy Yard - galeria em carrossel (mesmo visual da home) ===== */
.gal{ position: relative; }
.gal-track{ display:flex; gap:22px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; scrollbar-width:none; padding-bottom:2px; }
.gal-track::-webkit-scrollbar{ display:none; }
.gal-item{ flex:0 0 calc(33.3333% - 14.6667px); scroll-snap-align:start; margin:0; }
.gal-item img{ width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; object-position:50% 45%; display:block; border-radius:10px; border:1px solid var(--line); background:var(--parch); }
.gal-nav{ position:absolute; top:50%; transform:translateY(-50%); width:48px; height:48px; border-radius:50%; background:var(--white); border:1px solid var(--line); color:var(--ink); display:flex; align-items:center; justify-content:center; cursor:pointer; padding:0; box-shadow:0 12px 26px -14px rgba(21,58,40,.75); transition:background .25s var(--ease),border-color .25s var(--ease),opacity .25s var(--ease); z-index:2; }
.gal-nav svg{ width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.gal-nav:hover:not(:disabled){ background:var(--ink); border-color:var(--ink); color:var(--paper); }
.gal-nav:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; }
.gal-nav:disabled{ opacity:.3; cursor:default; }
.gal-prev{ left:-20px; }
.gal-next{ right:-20px; }
.gal-dots{ display:flex; justify-content:center; align-items:center; gap:10px; margin-top:28px; }
.gal-dot{ width:9px; height:9px; padding:0; border:0; border-radius:99px; background:rgba(21,58,40,.24); cursor:pointer; transition:width .3s var(--ease),background .3s var(--ease); }
.gal-dot:hover{ background:rgba(21,58,40,.45); }
.gal-dot[aria-current="true"]{ width:28px; background:var(--gold); }
.gal-dot:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; }
@media (max-width:900px){ .gal-item{ flex-basis:calc(50% - 11px); } }
@media (max-width:700px){
  .gal-prev{ left:8px; }
  .gal-next{ right:8px; }
  .gal-nav{ width:42px; height:42px; background:rgba(252,251,247,.92); }
}
@media (max-width:560px){ .gal-item{ flex-basis:100%; } }
