.gallery-grid figure{background:#262128}.gallery-open{display:block;width:100%;height:100%;padding:0;border:0;background:#262128;cursor:zoom-in}.gallery .gallery-open img{width:100%;height:100%;object-fit:contain;background:#262128}.gallery-grid figcaption{pointer-events:none}.gallery-lightbox[hidden]{display:none}.gallery-lightbox{position:fixed;inset:0;z-index:1000;display:grid;grid-template-columns:clamp(46px,6vw,82px) minmax(0,1fr) clamp(46px,6vw,82px);align-items:center;background:rgba(20,17,21,.96);color:#fff;padding:clamp(1rem,3vw,2.5rem)}.gallery-lightbox>figure{grid-column:2;margin:0;min-width:0;height:calc(100dvh - 5rem);display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:center}.gallery-lightbox>figure>img{width:100%;height:100%;max-height:calc(100dvh - 11rem);object-fit:contain}.gallery-lightbox figcaption{display:grid;gap:.25rem;padding:1rem 0;text-align:center}.gallery-lightbox figcaption strong{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem}.gallery-lightbox figcaption span{color:#cfc5cd}.gallery-lightbox figcaption a{width:max-content;margin:.3rem auto 0;color:#fff}.gallery-close,.gallery-previous,.gallery-next{border:0;background:#ffffff12;color:#fff;cursor:pointer;display:grid;place-items:center}.gallery-close{position:absolute;right:clamp(1rem,3vw,2.5rem);top:clamp(1rem,3vw,2.5rem);width:46px;height:46px;border-radius:50%;font-size:2rem;z-index:2}.gallery-previous,.gallery-next{width:clamp(42px,5vw,64px);height:clamp(64px,9vw,100px);font-size:3rem;border-radius:999px}.gallery-previous{grid-column:1}.gallery-next{grid-column:3}.gallery-lightbox button:hover,.gallery-lightbox button:focus-visible{background:var(--accent);color:#241d22;outline:2px solid #fff;outline-offset:2px}body.gallery-opened{overflow:hidden}
@media(max-width:600px){.gallery-lightbox{grid-template-columns:42px minmax(0,1fr) 42px;padding:.75rem}.gallery-lightbox>figure{height:calc(100dvh - 3rem)}.gallery-lightbox>figure>img{max-height:calc(100dvh - 10rem)}.gallery-previous,.gallery-next{width:38px;height:64px;font-size:2.2rem}.gallery-close{right:.8rem;top:.8rem}.gallery-lightbox figcaption{padding:.7rem .2rem}}
@media(prefers-reduced-motion:reduce){.gallery-lightbox *{transition:none!important}}
.gallery .gallery-grid{grid-template-columns:repeat(auto-fit,minmax(280px,420px));grid-auto-rows:auto;justify-content:center;align-items:start;background:transparent}.gallery .gallery-grid figure,.gallery .gallery-grid figure:nth-child(4n+1){grid-column:auto;width:100%;height:auto;background:var(--paper);box-shadow:0 12px 34px rgba(45,35,43,.09)}.gallery .gallery-open{height:auto;min-height:0;background:#eee8e2}.gallery .gallery-open img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;background:#eee8e2}.gallery .gallery-grid figcaption{background:linear-gradient(transparent,rgba(37,30,37,.82))}
@media(max-width:600px){.gallery .gallery-grid{grid-template-columns:minmax(0,1fr)}.gallery .gallery-grid figure{max-width:430px;margin-inline:auto}}
.gallery .gallery-grid{grid-template-columns:repeat(auto-fit,minmax(240px,320px));gap:1.25rem;justify-content:center}.gallery .gallery-grid figure,.gallery .gallery-grid figure:nth-child(4n+1){max-width:320px;display:flex;flex-direction:column;background:#fff;box-shadow:0 10px 28px rgba(45,35,43,.1)}.gallery .gallery-open{height:245px;background:linear-gradient(145deg,#f2ece6,#ded6dc)}.gallery .gallery-open img{width:100%;height:245px;object-fit:contain;background:transparent}.gallery .gallery-grid figcaption{position:static;inset:auto;min-height:88px;display:flex;flex-direction:column;justify-content:center;padding:1rem 1.1rem;color:#fff;background:var(--primary);pointer-events:none}.gallery .gallery-grid figcaption strong{line-height:1.25}.gallery .gallery-grid figcaption span{margin-top:.25rem;color:rgba(255,255,255,.78);line-height:1.4}
@media(max-width:600px){.gallery .gallery-grid{grid-template-columns:minmax(0,300px)}.gallery .gallery-grid figure{max-width:300px}.gallery .gallery-open,.gallery .gallery-open img{height:225px}}
.gallery .gallery-grid{grid-template-columns:repeat(auto-fit,minmax(240px,300px))}.gallery .gallery-grid figure,.gallery .gallery-grid figure:nth-child(4n+1){max-width:300px}.gallery .gallery-open{height:300px;background:#f5f0ec}.gallery .gallery-open img{height:300px;background:transparent}.gallery .gallery-grid figcaption{min-height:82px}
@media(max-width:600px){.gallery .gallery-grid{grid-template-columns:minmax(0,290px)}.gallery .gallery-grid figure{max-width:290px}.gallery .gallery-open,.gallery .gallery-open img{height:280px}}
.gallery .gallery-grid{grid-template-columns:repeat(auto-fit,minmax(250px,310px));gap:1.5rem}.gallery .gallery-grid figure,.gallery .gallery-grid figure:nth-child(4n+1){max-width:310px;transition:transform .28s ease,box-shadow .28s ease,outline-color .28s ease;outline:2px solid transparent;outline-offset:3px}.gallery .gallery-open{position:relative;height:335px;overflow:hidden;background:linear-gradient(145deg,#f7f3ef,#e8e0e5)}.gallery .gallery-open img{height:335px;transition:filter .3s ease}.gallery .gallery-open::after{content:'Ver foto';position:absolute;right:1rem;bottom:1rem;padding:.55rem .8rem;border-radius:999px;background:var(--accent);color:#241d22;font-size:.72rem;font-weight:850;letter-spacing:.04em;box-shadow:0 8px 20px rgba(45,35,43,.2);opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease}.gallery .gallery-grid figure:hover,.gallery .gallery-grid figure:focus-within{transform:translateY(-7px);box-shadow:0 20px 44px rgba(45,35,43,.18);outline-color:color-mix(in srgb,var(--accent) 72%,transparent)}.gallery .gallery-grid figure:hover .gallery-open img,.gallery .gallery-grid figure:focus-within .gallery-open img{filter:saturate(1.06) contrast(1.03)}.gallery .gallery-grid figure:hover .gallery-open::after,.gallery .gallery-grid figure:focus-within .gallery-open::after{opacity:1;transform:translateY(0)}.gallery .gallery-grid figcaption{min-height:78px;transition:background-color .28s ease}.gallery .gallery-grid figure:hover figcaption,.gallery .gallery-grid figure:focus-within figcaption{background:#432c41}
@media(max-width:600px){.gallery .gallery-grid{grid-template-columns:minmax(0,300px)}.gallery .gallery-grid figure{max-width:300px}.gallery .gallery-open,.gallery .gallery-open img{height:315px}.gallery .gallery-open::after{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.gallery .gallery-grid figure,.gallery .gallery-open img,.gallery .gallery-open::after,.gallery .gallery-grid figcaption{transition:none}.gallery .gallery-grid figure:hover,.gallery .gallery-grid figure:focus-within{transform:none}}
.gallery .gallery-grid figcaption{position:relative;overflow:hidden;min-height:92px;padding:1.2rem 1.25rem 1.05rem;background:radial-gradient(circle at 92% 18%,rgba(255,255,255,.14),transparent 34%),linear-gradient(125deg,var(--primary) 0%,#3a2a39 72%,#271f29 100%);border-bottom:3px solid var(--accent);box-shadow:inset 0 1px rgba(255,255,255,.12)}.gallery .gallery-grid figcaption::before{content:'';position:absolute;left:1.25rem;top:0;width:44px;height:4px;background:var(--accent);transition:width .3s ease}.gallery .gallery-grid figcaption::after{content:'';position:absolute;right:-22px;bottom:-34px;width:90px;height:90px;border:1px solid rgba(255,255,255,.12);border-radius:50%;pointer-events:none}.gallery .gallery-grid figcaption strong{position:relative;z-index:1;font-family:Georgia,"Times New Roman",serif;font-size:1.15rem;font-weight:600;line-height:1.2;letter-spacing:.005em}.gallery .gallery-grid figcaption span{position:relative;z-index:1;margin-top:.42rem;color:rgba(255,255,255,.76);font-size:.76rem;font-weight:650;line-height:1.4;letter-spacing:.045em}.gallery .gallery-grid figure:hover figcaption,.gallery .gallery-grid figure:focus-within figcaption{background:radial-gradient(circle at 88% 15%,rgba(255,255,255,.18),transparent 36%),linear-gradient(125deg,#5b3a56 0%,var(--primary) 68%,#271f29 100%)}.gallery .gallery-grid figure:hover figcaption::before,.gallery .gallery-grid figure:focus-within figcaption::before{width:92px}
@media(prefers-reduced-motion:reduce){.gallery .gallery-grid figcaption::before{transition:none}}
