.gti-feed{width:100%}
.gti-feed__grid{display:grid;grid-template-columns:repeat(var(--gti-columns,3),minmax(0,1fr));gap:18px}
.gti-feed__item{overflow:hidden;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(23,43,58,.08)}
.gti-feed__media{display:block;aspect-ratio:1/1;overflow:hidden;background:#e8eef1}
.gti-feed__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.gti-feed__media:hover img{transform:scale(1.035)}
.gti-feed__caption{padding:13px 14px;color:#29343b;font-size:14px;line-height:1.45}
.gti-feed__follow{text-align:center;margin-top:22px}
.gti-feed__button{display:inline-block;padding:12px 20px;border-radius:999px;background:#172b3a;color:#fff;text-decoration:none;font-weight:700}
.gti-feed__button:hover{background:#b66a3c;color:#fff}
.gti-editor-placeholder{padding:28px;border:1px dashed #8c8f94;border-radius:10px;background:#f8fafb;text-align:center}
@media(max-width:900px){.gti-feed__grid{grid-template-columns:repeat(min(var(--gti-columns,3),3),minmax(0,1fr))}}
@media(max-width:600px){.gti-feed__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}

.gti-feed--scroll .gti-feed__grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:12px}
.gti-feed--scroll .gti-feed__item{flex:0 0 min(320px,78vw);scroll-snap-align:start}
.gti-feed--scroll .gti-feed__grid::-webkit-scrollbar{height:10px}
.gti-feed--scroll .gti-feed__grid::-webkit-scrollbar-thumb{background:#9aa7ae;border-radius:999px}

.gti-editor-placeholder{position:relative;min-height:120px;cursor:pointer}
.gti-editor-placeholder.is-selected{outline:2px solid var(--wp-admin-theme-color,#3858e9);outline-offset:2px}
.gti-editor-placeholder__hint{margin-bottom:0;color:#646970;font-size:12px}

.gti-carousel{position:relative}
.gti-carousel__viewport{overflow:hidden}
.gti-carousel__track{
    display:flex;
    gap:18px;
    transform:translate3d(0,0,0);
    transition:transform .55s ease;
    will-change:transform
}
.gti-carousel__item{
    flex:0 0 calc((100% - (var(--gti-visible,4) - 1) * 18px) / var(--gti-visible,4));
    min-width:0
}
.gti-carousel__control{
    position:absolute;
    top:50%;
    z-index:2;
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border:0;
    border-radius:999px;
    background:rgba(23,43,58,.92);
    color:#fff;
    cursor:pointer;
    transform:translateY(-50%);
    box-shadow:0 8px 20px rgba(23,43,58,.2)
}
.gti-carousel__control:hover{background:#b66a3c}
.gti-carousel__control:disabled{opacity:.35;cursor:default}
.gti-carousel__control span{font-size:30px;line-height:1}
.gti-carousel__previous{left:10px}
.gti-carousel__next{right:10px}
.gti-carousel__dots{display:flex;justify-content:center;gap:8px;margin-top:16px}
.gti-carousel__dot{
    width:10px;
    height:10px;
    padding:0;
    border:0;
    border-radius:999px;
    background:#c3c4c7;
    cursor:pointer
}
.gti-carousel__dot.is-active{background:#172b3a}
@media(max-width:640px){
    .gti-carousel__control{width:36px;height:36px}
    .gti-carousel__previous{left:6px}
    .gti-carousel__next{right:6px}
}

.gti-carousel__track{flex-wrap:nowrap}
.gti-carousel__item{flex:0 0 25%;width:25%;max-width:25%}
@media(max-width:1024px){
    .gti-carousel__item{flex-basis:50%;width:50%;max-width:50%}
}
@media(max-width:640px){
    .gti-carousel__item{flex-basis:100%;width:100%;max-width:100%}
}

.gti-carousel{touch-action:pan-y;outline:none}
.gti-carousel[data-enable-drag="1"]{cursor:grab}
.gti-carousel[data-enable-drag="1"].is-dragging{cursor:grabbing;user-select:none}
.gti-carousel.is-dragging .gti-carousel__track{transition-duration:0ms!important}
.gti-carousel:focus-visible{outline:2px solid #3858e9;outline-offset:4px}
.gti-carousel__track{transition-timing-function:cubic-bezier(.22,.61,.36,1)}

.gti-carousel[data-enable-drag="1"] .gti-feed__media,
.gti-carousel[data-enable-drag="1"] .gti-feed__media img{
    -webkit-user-drag:none;
    user-select:none
}
.gti-carousel[data-enable-drag="1"] .gti-feed__media img{pointer-events:none}
.gti-carousel[data-enable-drag="1"] .gti-carousel__viewport{cursor:grab}
.gti-carousel[data-enable-drag="1"].is-dragging .gti-carousel__viewport{cursor:grabbing}

.gti-feed__grid{gap:var(--gti-gap,18px)}
.gti-feed__item{border-radius:var(--gti-radius,14px)}
.gti-feed.no-shadow .gti-feed__item{box-shadow:none}
.gti-feed.has-shadow .gti-feed__item{box-shadow:0 8px 24px rgba(23,43,58,.08)}
.gti-feed.has-border .gti-feed__item{border:1px solid rgba(23,43,58,.16)}
.gti-feed.no-hover-zoom .gti-feed__media:hover img{transform:none}
.gti-feed__media--square{aspect-ratio:1/1}
.gti-feed__media--portrait{aspect-ratio:4/5}
.gti-feed__media--landscape{aspect-ratio:16/9}
.gti-feed__media--original{aspect-ratio:auto}
.gti-feed__media--original img{height:auto;object-fit:contain}
.gti-feed--grid .gti-feed__grid,
.gti-feed--scroll .gti-feed__grid{justify-content:start}
.gti-feed--grid.gti-feed--align-center .gti-feed__grid,
.gti-feed--scroll.gti-feed--align-center .gti-feed__grid{justify-content:center}
.gti-feed--grid.gti-feed--align-right .gti-feed__grid,
.gti-feed--scroll.gti-feed--align-right .gti-feed__grid{justify-content:end}
.gti-feed--grid[style*="--gti-card-width:0px"] .gti-feed__item{width:auto}
.gti-feed--grid:not([style*="--gti-card-width:0px"]) .gti-feed__grid{
    grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--gti-card-width)),var(--gti-card-width)))
}
.gti-feed--scroll:not([style*="--gti-card-width:0px"]) .gti-feed__item{
    flex-basis:var(--gti-card-width);
    width:var(--gti-card-width);
    max-width:var(--gti-card-width)
}

.gti-carousel__viewport{max-width:100%}
.gti-carousel__track{min-width:0}

.gti-carousel__item.is-clone{pointer-events:none}

.gti-feed .screen-reader-text{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important
}
@media(prefers-reduced-motion:reduce){
    .gti-carousel__track,
    .gti-feed__media img{transition:none!important}
}
