/* ThirdEye V9: parallax photo carousels, case-study fixes */

.te-orange{color:var(--orange)}

/* ---------- Carousel ---------- */
.te-gal{position:relative;width:100%;height:100%;overflow:hidden;background:#06181e;border-radius:inherit;user-select:none;-webkit-user-select:none}
.te-gal-track{display:flex;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab}
.te-gal-track::-webkit-scrollbar{display:none}
.te-gal.is-dragging .te-gal-track{scroll-snap-type:none;cursor:grabbing}
.te-gal-slide{position:relative;flex:0 0 100%;height:100%;overflow:hidden;scroll-snap-align:center;margin:0}
.te-gal .te-gal-slide img.te-gal-img{position:absolute!important;top:0;left:-15%;width:130%!important;max-width:none!important;height:100%!important;object-fit:cover;will-change:transform;transform:none;transition:none!important;pointer-events:none}
.te-gal .te-gal-slide.is-portrait img.te-gal-img{left:0;width:100%!important;object-fit:contain}
.te-gal .te-gal-slide img.te-gal-bg{position:absolute!important;inset:-30px;width:calc(100% + 60px)!important;height:calc(100% + 60px)!important;max-width:none!important;object-fit:cover;filter:blur(24px) brightness(.55);transform:none!important}
.te-gal-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(6,24,30,.55) 0%,rgba(6,24,30,0) 38%)}
.te-gal-ui{position:absolute;left:16px;right:16px;bottom:14px;display:flex;align-items:center;gap:14px;z-index:3;pointer-events:none}
.te-gal-count{color:#fff;font-size:12px;font-weight:700;letter-spacing:.14em;font-variant-numeric:tabular-nums;text-shadow:0 1px 6px rgba(0,0,0,.4)}
.te-gal-count b{color:var(--orange);font-weight:700}
.te-gal-bar{flex:1;height:2px;background:rgba(255,255,255,.28);border-radius:2px;overflow:hidden}
.te-gal-bar i{display:block;height:100%;width:0;background:var(--orange)}
.te-gal-btns{display:flex;gap:8px;pointer-events:auto}
.te-gal-btn{all:unset;box-sizing:border-box;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.4);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .2s ease,border-color .2s ease,transform .2s ease}
.te-gal-btn:hover{background:var(--orange);border-color:var(--orange);transform:scale(1.06)}
.te-gal-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
.te-gal-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.te-gal:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
@media (max-width:600px){.te-gal-btn{width:34px;height:34px}.te-gal-ui{left:12px;right:12px;bottom:10px}}

/* Where the carousels live */
.toast-media{border-radius:14px}
.toast-media .te-gal{height:clamp(260px,32vw,440px)}
.shockwave-media{border-radius:14px}
.shockwave-media .te-gal{height:clamp(260px,34vw,460px)}
.capability-media .te-gal{position:absolute;inset:0;height:auto}
.te-cap-panel .capability-media .te-gal img{transform:none}

/* ---------- Plug: show the full frame, including the remote speaker on screen ---------- */
.media-frame:has(.plug-photo){height:auto!important;aspect-ratio:1150/481}
.media-frame .plug-photo{object-fit:cover;object-position:50% 50%}

/* ---------- Cutting Edge reality photo framing ---------- */
.zimmer-photo{object-position:center 55%}