/* Geometry follows the captured reference: 400px step, 384px card, 375px height. */
.reference-home .oulin-gallery-section{overflow:visible;padding:0;background:transparent}
.oulin-gallery-section>.section-shell{margin-bottom:32px}
.reference-home .oulin-gallery-section .section__lead{margin-bottom:0}.reference-home .oulin-gallery-section .section__lead h2{margin-bottom:0}.reference-home .oulin-gallery-section .section__lead p{margin-top:16px}
.oulin-gallery{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);visibility:visible}
.oulin-gallery .splide__track{overflow:visible}
.oulin-gallery .splide__list{margin:0!important;padding:0!important;list-style:none;align-items:stretch}
.oulin-gallery .splide__slide{width:calc(min(400px,calc(100vw - 80px)) - 16px);flex-shrink:0;background:transparent;perspective:1000px}
.oulin-gallery .gallery-card{display:flex;flex-direction:column;width:100%;height:375px;overflow:hidden;position:relative;background:transparent;text-decoration:none;color:rgba(0,0,0,.85);border:0;border-radius:0;box-shadow:none;transform:translateZ(0);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.oulin-gallery .gallery-card>img{display:block;flex:0 0 319px;width:100%;max-width:none;height:319px;min-height:319px;object-fit:cover;object-position:center;border-radius:0;margin:0;padding:0;transition:transform .55s cubic-bezier(.2,.7,.2,1);transform:scale(1)}
.oulin-gallery .gallery-card-caption{display:flex;align-items:center;flex:0 0 56px;height:56px;min-height:56px;padding:0 16px;background:#f2f2f2;color:rgba(0,0,0,.85);font-size:14px;font-weight:700;line-height:1.35;position:relative;z-index:1}
.oulin-gallery .splide__arrows{display:flex;justify-content:center;align-items:center;width:fit-content;max-width:100%;gap:24px;margin:32px auto 0;padding:12px;border-radius:28px;background:#f2f2f2}
.oulin-gallery .splide__arrow{position:static;display:inline-flex;justify-content:center;align-items:center;width:24px;height:24px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#262626;transform:none;opacity:1;cursor:pointer}
.oulin-gallery .splide__arrow svg{display:block;width:24px;height:24px;fill:none}
.oulin-gallery .splide__arrow--prev svg{transform:rotate(180deg)}
.oulin-gallery .splide__arrow:disabled{opacity:.35;cursor:default}
.oulin-gallery .splide__arrow:focus-visible,.oulin-gallery .gallery-card:focus-visible{outline:2px solid #155ed7;outline-offset:4px}
.oulin-gallery:focus-visible{outline:2px solid #155ed7;outline-offset:-2px}
.oulin-gallery[data-gallery-count="1"] .splide__arrows{display:none}
.oulin-gallery:not(.is-initialized) .splide__track{overflow-x:auto;scroll-snap-type:x mandatory}
.oulin-gallery:not(.is-initialized) .splide__list{display:flex;gap:16px;justify-content:flex-start;padding:0 40px!important}
.oulin-gallery:not(.is-initialized) .splide__slide{scroll-snap-align:center}
.oulin-gallery:not(.is-initialized) .splide__arrows{display:none}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.oulin-gallery .gallery-card:hover{transform:translateY(-4px) rotateX(1.5deg);box-shadow:0 16px 30px rgba(13,30,48,.12)}.oulin-gallery .gallery-card:hover>img{transform:scale(1.035) translateY(-2px)}}
@media(max-width:767px){.oulin-gallery-section>.section-shell{margin-bottom:32px}}
@media(prefers-reduced-motion:reduce){.oulin-gallery .gallery-card,.oulin-gallery .gallery-card>img{transition:none!important;animation:none!important}}

@media(min-width:1025px){.oulin-gallery-section>.section-shell{margin-bottom:48px}}
