/* RA Makeover: one admin-controlled mixed-media Apple-inspired Cover Flow.
   No portfolio defaults, no cloned cards and no automatic third-party iframes. */
.instagram-showcase{background:var(--ash);padding:88px 0!important;min-width:0;overflow:hidden}
.ig-gallery{width:100%;min-width:0;margin:0 auto;--ig-card-w:clamp(290px,27vw,350px);--ig-stage-h:calc(var(--ig-card-w)*1.77778 + 22px);--ig-step:calc(var(--ig-card-w)*.9 + 16px)}
.ig-carousel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;width:min(100% - 2 * var(--gutter),var(--container));margin:0 auto 30px;padding:24px 0 0;border-top:1px solid var(--hairline)}
.ig-carousel-heading h2{font-family:var(--font);font-size:var(--fs-h2);font-weight:600;letter-spacing:-.03em;line-height:1.04;text-wrap:balance;color:var(--ink);margin:0}
.ig-carousel-controls{display:flex;align-items:center;gap:9px;flex-shrink:0}
.ig-carousel-arrow{display:grid;place-items:center;appearance:none;width:40px;height:40px;border:0;border-radius:50%;background:var(--white);color:var(--ink);cursor:pointer;transition:background .24s ease,opacity .24s ease}
.ig-carousel-arrow .chev{width:8px;height:13px}.ig-carousel-arrow .chev.flip{transform:scaleX(-1)}
.ig-carousel-arrow:disabled{opacity:.28;cursor:default}
.ig-carousel-arrow:hover:not(:disabled){background:#e8e8ed}
.ig-carousel-count{font:500 12px/1 var(--font);letter-spacing:.05em;color:var(--muted,#777);min-width:44px;text-align:center;font-variant-numeric:tabular-nums}
.ig-carousel[data-ig-static="1"] .ig-carousel-controls{visibility:hidden}
.ig-carousel-stage{position:relative;overflow:hidden;width:100%;height:var(--ig-stage-h);min-width:0;touch-action:pan-y;isolation:isolate;outline-offset:-3px}
.ig-carousel-rail{position:relative;inset:0;width:100%;height:100%;margin:0;perspective:1500px;user-select:none;-webkit-user-select:none}
.ig-card{position:absolute;top:50%;left:50%;width:var(--ig-card-w);height:calc(var(--ig-card-w)*1.77778);margin:0 0 0 calc(var(--ig-card-w)*-.5);display:grid;place-items:center;z-index:var(--ig-layer,0);opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(calc(var(--ig-slot,0)*var(--ig-step)),-50%,0) scale(var(--ig-scale,.72));transition:transform .72s cubic-bezier(.22,1,.36,1),opacity .65s ease,visibility 0s linear .72s;will-change:auto}
.ig-card.is-near{will-change:transform,opacity;opacity:.66;visibility:visible;pointer-events:auto;--ig-scale:.82;transition-delay:0s;cursor:pointer;filter:saturate(.82)}
.ig-card.is-active{will-change:transform,opacity;opacity:1;visibility:visible;pointer-events:auto;--ig-scale:1;transition-delay:0s;filter:none}
.ig-media-shell{position:relative;display:block;width:100%;overflow:hidden;border-radius:var(--r-lg,22px);box-shadow:0 10px 25px rgba(31,21,24,.11),0 28px 55px rgba(31,21,24,.06);background:#171719;isolation:isolate}
.ig-card--reel .ig-media-shell,.ig-card--video-upload .ig-media-shell{height:100%;aspect-ratio:9/16}
.ig-card--post:not(.ig-card--video-upload) .ig-media-shell{height:auto;aspect-ratio:4/5}
.ig-local-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.ig-inline-video{display:block;width:100%;height:100%;object-fit:contain;background:#171719}
.ig-video-card.is-portrait-video .ig-inline-video{object-fit:cover}
.ig-media-cover{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 38% 24%,rgba(155,77,92,.4),transparent 55%),linear-gradient(145deg,#39252c 5%,#141619 75%);color:#fff}
.ig-media-cover[hidden]{display:none}
.ig-instagram-mark{position:absolute;top:22px;left:22px;display:grid;place-items:center;opacity:.75}
.ig-instagram-mark svg{width:23px;height:23px}
.ig-cover-label{position:absolute;bottom:24px;left:20px;right:20px;text-align:center;font:500 12px/1.5 var(--font);letter-spacing:.08em;color:rgba(255,255,255,.82)}
.ig-media-play{position:absolute;inset:0;z-index:2;display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:pointer;color:#fff}
.ig-card-play{display:grid;place-items:center;width:60px;height:60px;border:1px solid rgba(255,255,255,.66);border-radius:50%;background:rgba(21,17,19,.52);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);transition:transform .26s ease,background .26s ease}
.ig-card-play svg{width:23px;height:23px;margin-left:3px}
.ig-card.is-active .ig-media-play:hover .ig-card-play{transform:scale(1.08);background:rgba(28,20,23,.75)}
.ig-video-card.is-playing .ig-media-play{display:none}
.ig-official-card.is-playing .ig-media-cover{display:none}
.ig-player-slot{position:absolute;inset:0;z-index:1;display:none;background:#171719}
.ig-official-card.is-playing .ig-player-slot{display:block}
/* The outer frame fills a true portrait card. Black bars *inside* an Instagram
   cross-origin player cannot safely be altered by website CSS. */
.ig-official-iframe{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:9/16;display:block;border:0;margin:0;padding:0;background:transparent}
.ig-origin-link{position:absolute;right:12px;bottom:12px;z-index:4;display:flex;align-items:center;justify-content:center;min-height:30px;padding:5px 9px;border-radius:99px;background:rgba(255,255,255,.93);color:#5a1f2b;font:500 11px/1.35 var(--font);text-decoration:none;opacity:0;transition:opacity .2s ease}
.ig-card.is-active:hover .ig-origin-link,.ig-origin-link:focus-visible,.ig-official-card.is-playing .ig-origin-link{opacity:1}
.ig-image-unavailable{position:absolute;inset:0;display:flex;place-content:center;align-items:center;padding:16px;text-align:center;background:#282025;color:white;font:500 13px/1.5 var(--font)}
.ig-image-unavailable[hidden]{display:none}
.ig-video-error{position:absolute;left:10px;right:10px;bottom:55px;z-index:5;padding:12px;text-align:center;border-radius:10px;background:rgba(12,12,12,.88);color:#fff;font:500 12px/1.5 var(--font)}
.ig-carousel-arrow:focus-visible,.ig-carousel-stage:focus-visible,.ig-media-play:focus-visible,.ig-local-image:focus-visible,.ig-origin-link:focus-visible{outline:2px solid var(--wine);outline-offset:3px}
@media(max-width:1100px){.instagram-showcase{padding-block:68px!important}.ig-gallery{--ig-card-w:clamp(238px,42vw,330px)}}
@media(max-width:720px){.ig-carousel-heading{align-items:flex-start;gap:18px}.ig-carousel-controls{margin-top:5px}}
@media(max-width:600px){.instagram-showcase{padding-block:48px 52px!important}.ig-gallery{--ig-card-w:min(76vw,calc(62svh*.5625),315px)}.ig-carousel-heading{margin-bottom:24px;gap:13px}.ig-carousel-arrow{width:36px;height:36px}.ig-carousel-count{min-width:35px;font-size:11px}.ig-instagram-mark{left:17px;top:17px}}
@media(hover:none){.ig-card.is-active .ig-origin-link{opacity:1}}
@media(prefers-reduced-motion:reduce){.ig-card,.ig-carousel-arrow,.ig-card-play,.ig-origin-link{transition-duration:0s!important;transition-delay:0s!important}}
@media(max-width:600px){.ig-carousel-heading{flex-direction:column;align-items:stretch;gap:12px}.ig-carousel-controls{align-self:flex-end;margin-top:0}}

/* Instagram-linked cards use only the native embed's Play control, never a
   separate custom overlay. Side covers are branding-only previews. */
.ig-official-card .ig-media-cover{pointer-events:none}
.ig-official-card .ig-instagram-mark{position:static;opacity:.78;transform:scale(2.15)}
.ig-card--reel .ig-official-card{aspect-ratio:9/16}


/* 2026-10: native Instagram Reel embed improvements.
   No internal Instagram layout is cropped, scaled or accessed cross-origin. */
.ig-official-card .ig-player-slot{overflow:hidden;overscroll-behavior:contain}
.ig-official-iframe{overflow:hidden;max-width:100%;max-height:100%}
/* The global Lenis rule disables pointer events on every iframe; override that
   ONLY for interactive native Instagram players. */
.lenis.lenis-smooth .instagram-showcase iframe.ig-official-iframe,
.lenis.lenis-smooth dialog.ig-expanded-dialog iframe.ig-expanded-iframe{
  pointer-events:auto;
}
/* Explicit 'Expand', NOT an additional Play button. */
.ig-expand-control{position:absolute;z-index:5;top:12px;right:12px;border:1px solid rgba(255,255,255,.65);border-radius:999px;padding:7px 11px;background:rgba(20,19,22,.8);color:white;font:600 11px/1.2 var(--font);cursor:pointer;box-shadow:0 2px 12px #0003;opacity:0;transition:opacity .22s ease}
.ig-card.is-active:hover .ig-expand-control,.ig-expand-control:focus-visible{opacity:1}
.ig-expand-control:focus-visible{outline:2px solid white;outline-offset:3px}
/* Don't cover the native video's lower right playback controls. */
.ig-official-card .ig-origin-link{top:48px;bottom:auto}
.ig-expanded-dialog{position:fixed;width:min(94vw,580px);max-width:580px;max-height:94dvh;margin:auto;padding:0;border:0;border-radius:20px;background:#fff;color:#171719;box-shadow:0 24px 90px #0006;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;touch-action:pan-y}
.ig-expanded-dialog::-webkit-scrollbar{display:none}
.ig-expanded-dialog::backdrop{background:rgba(12,13,15,.78);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.ig-expanded-toolbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:10px 16px;background:#fff;border-bottom:1px solid #e7e3e3;font:600 14px/1.35 var(--font)}
.ig-expanded-actions{display:flex;align-items:center;gap:14px}
.ig-expanded-actions a{color:#6b2031;font:600 12px/1.4 var(--font);text-decoration:none}
.ig-expanded-actions a:hover{text-decoration:underline}
.ig-expanded-close{width:34px;height:34px;display:grid;place-items:center;border:0;background:#f3f1f2;color:#30282b;border-radius:50%;font:400 26px/1 var(--font);cursor:pointer}
.ig-expanded-iframe{display:block;width:100%;border:0;margin:0;padding:0;background:white;overflow:hidden;pointer-events:auto}
.ig-expanded-note{padding:10px 18px 18px;margin:0;color:#716f71;font:400 12px/1.5 var(--font)}
@media(max-width:600px){.ig-card.is-active .ig-expand-control{opacity:1}.ig-expanded-dialog{width:96vw;max-height:96dvh;border-radius:14px}.ig-expanded-toolbar{padding-inline:12px}.ig-expanded-note{padding-inline:12px}}
@media(prefers-reduced-motion:reduce){.ig-expand-control{transition:none}}
