/* Presentation moments: a cinematic selector with real event photography. */
.influence-intro{display:block;max-width:860px}
.influence-intro>p{max-width:780px}
.header>.button{max-width:260px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.moments-showcase{--moment-ease:cubic-bezier(.22,.7,.22,1);position:relative;isolation:isolate;overflow:hidden;background:#071316;color:#fff;padding:58px 0 56px}
.moment-backdrop{position:absolute;inset:0;z-index:-2;overflow:hidden;background:#071316;pointer-events:none}
.backdrop-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;filter:saturate(.55);opacity:0;transform:scale(1.035);transition:opacity .75s ease,transform 1.2s var(--moment-ease)}
.backdrop-image.is-visible{opacity:.66;transform:scale(1)}
.moment-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,14,19,.96),rgba(4,14,19,.68) 48%,rgba(4,14,19,.38)),linear-gradient(0deg,#071316 2%,transparent 90%),radial-gradient(ellipse at 95% 15%,#15a29c44,transparent 60%)}
.moments-showcase:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 1% 70%,#ff007713,transparent 50%);border-block:1px solid #15a29c45}
.moments-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}
.moments-heading h2{font-size:clamp(36px,4.15vw,60px);line-height:1.12;max-width:900px}
.moments-heading h2 span{color:#fff}
.moments-heading>p{font-size:14px;color:#c8d4d7;padding-bottom:4px;white-space:nowrap}
.moment-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;padding:8px 5px 20px;margin-inline:-5px}
.moment-tab{border:1px solid #ffffff40;border-radius:9px;overflow:hidden;background:#112127;color:white;padding:0;min-width:0;height:164px;text-align:left;position:relative;isolation:isolate;transition:transform .4s var(--moment-ease),border-color .3s,box-shadow .3s}
.moment-tab>img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--moment-ease),filter .4s;filter:saturate(.65) brightness(.9)}
.moment-tab-shade{position:absolute;inset:0;background:linear-gradient(0deg,#031016f5 0%,#03101665 50%,transparent 90%);pointer-events:none}
.moment-tab-name{position:absolute;left:17px;right:25px;bottom:17px;font:23px/1.1 var(--display);text-transform:uppercase;letter-spacing:.01em;max-width:185px}
.moment-tab-arrow{position:absolute;right:12px;bottom:17px;font-size:17px;opacity:0;transform:translate(-4px,4px);transition:.3s}
.moment-tab:hover{transform:translateY(-4px);border-color:#b1e2df}
.moment-tab:hover>img{transform:scale(1.045);filter:saturate(1) brightness(1)}
.moment-tab.is-selected{transform:translateY(-5px);border-color:#3bcec6;box-shadow:0 0 0 2px #15a29c38,0 7px 28px #15a29c24}
.moment-tab.is-selected:after{content:'';position:absolute;top:0;left:18px;width:42px;height:3px;background:#ff0077;box-shadow:0 0 13px #ff0077aa}
.moment-tab.is-selected .moment-tab-arrow{opacity:1;transform:none;color:#47ddd4}
.moment-tab.is-selected>img{filter:saturate(1) brightness(1)}
.moment-tab:focus-visible{outline:2px solid #ff0077;outline-offset:4px}
.moment-panel{display:grid;grid-template-columns:.85fr 1.15fr;gap:42px;align-items:start;padding-top:22px;min-width:0;scroll-margin-top:20px}
.moment-panel:focus-visible{outline:2px solid #15a29c;outline-offset:12px}
.moment-story{padding-top:4px}
.moment-story h3{font-size:clamp(34px,3vw,46px);line-height:1.13;max-width:480px;text-transform:uppercase}
.moment-intro{color:#d1dbdd;font-size:17px;line-height:1.55;margin-top:16px;max-width:480px}
.moment-benefits{display:grid;gap:15px;margin:23px 0 0}
.moment-benefits>div{padding-left:14px;border-left:2px solid #15a29c88}
.moment-benefits>div:nth-child(2){border-color:#ff007785}
.moment-benefits dt{font-size:14px;font-weight:700;color:#fff;margin-bottom:3px}
.moment-benefits dd{margin:0;max-width:470px;font-size:14px;line-height:1.5;color:#bdccd0}
.moment-contact{display:inline-flex;align-items:center;font-size:12px;font-weight:700;letter-spacing:.045em;gap:20px;margin-top:25px;padding:10px 0;border-bottom:2px solid #ff0077}
.moment-contact:after{content:'↗';font-size:20px;line-height:1;color:#66dcd6;transition:transform .2s}
.moment-contact:hover:after{transform:translate(3px,-3px)}
.moment-gallery{min-width:0;padding:10px;background:#06121680;border:1px solid #c7eaec2e;border-radius:12px;box-shadow:0 16px 50px #0003;backdrop-filter:blur(12px)}
.moment-feature{display:block;width:100%;padding:0;border:0;border-radius:5px;overflow:hidden;position:relative;aspect-ratio:16/10;background:#02090c;cursor:zoom-in}
.moment-feature>img{width:100%;height:100%;object-fit:contain}
.photo-expand{position:absolute;bottom:12px;right:12px;background:#031016c9;color:#fff;border:1px solid #ffffff69;display:grid;place-items:center;width:34px;height:34px;border-radius:5px;font-size:26px;line-height:1;transition:background .2s}
.moment-feature:hover .photo-expand{background:#15a29c}
.moment-gallery-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 3px}
.moment-caption{font-size:12px;color:#d4e0e1}
.moment-gallery-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}
.moment-gallery-controls>button{width:32px;height:32px;border:1px solid #7b91986b;background:#ffffff05;border-radius:50%;color:#fff;font-size:18px;display:grid;place-items:center;padding:0;transition:background .2s}
.moment-gallery-controls>button:hover{background:#15a29c55}
.moment-photo-count{font:11px var(--mono);color:#c2d2d6;min-width:40px;text-align:center}
.moment-thumbnails{display:flex;gap:8px;overflow:auto;padding:4px 3px 7px;scrollbar-width:thin;scrollbar-color:#49666b transparent}
.moment-thumbnails>button{flex:0 0 73px;height:49px;overflow:hidden;border:1px solid transparent;border-radius:3px;padding:0;background:#071316;opacity:.5;transition:opacity .25s,border-color .25s;scroll-margin-inline:4px}
.moment-thumbnails>button[aria-pressed=true]{opacity:1;border-color:#40cbc3;box-shadow:0 0 0 1px #15a29c}
.moment-thumbnails>button:hover{opacity:1}
.moment-thumbnails img{width:100%;height:100%;object-fit:cover}
.moments-nojs{font-size:14px;color:#d1dbdd;margin-top:25px}
#moment-lightbox{padding:0;border:1px solid #42696b;border-radius:12px;background:#061216;color:white;max-width:none;width:min(1220px,calc(100% - 48px));max-height:calc(100dvh - 48px);overflow:auto;box-shadow:0 0 70px #15a29c22,0 20px 100px #0009}
#moment-lightbox::backdrop{background:#02090ce8;backdrop-filter:blur(14px)}
#moment-lightbox[open]{animation:moment-viewer-in .35s cubic-bezier(.2,.7,.2,1) both}
.lightbox-shell{padding:64px 24px 18px;position:relative}
.lightbox-close{position:absolute;right:17px;top:15px;width:36px;height:36px;border:1px solid #78969b;background:#10272d;color:#fff;border-radius:50%;font:26px/1 Arial}
.lightbox-stage{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:16px;align-items:center}
#lightbox-image{width:100%;height:auto;max-height:70dvh;object-fit:contain}
.lightbox-prev,.lightbox-next{border:1px solid #78969b;background:#10272d;color:#fff;border-radius:50%;width:42px;height:42px;font-size:24px}
.lightbox-prev:hover,.lightbox-next:hover,.lightbox-close:hover{border-color:#ff0077;background:#ff007730}
.lightbox-meta{display:flex;justify-content:space-between;gap:18px;margin:16px 58px 0;font-size:14px;color:#c7d5d8}
body.gallery-open{overflow:hidden}
@keyframes moment-viewer-in{from{opacity:0;transform:translateY(12px) scale(.975)}to{opacity:1;transform:none}}
@media(min-width:1100px){.moment-panels{min-height:490px}}
@media(max-width:1100px){
 .moments-heading{align-items:start;flex-direction:column;gap:12px}
 .moment-tabs{gap:11px}
 .moment-tab{height:145px}
 .moment-tab-name{font-size:21px;left:12px;bottom:14px}
 .moment-panel{gap:27px;grid-template-columns:1fr 1.1fr}
 .moment-intro{font-size:16px}
 .moment-benefits{gap:13px}
 .moment-gallery-bar{align-items:start;flex-direction:column}
 .moment-gallery-controls{align-self:flex-end}
}
@media(max-width:760px){
 .moments-showcase{padding:36px 0}
 .moments-heading{margin-bottom:22px;gap:13px}
 .moments-heading h2{font-size:clamp(28px,7.4vw,45px)}
 .moments-heading>p{font-size:13px;padding:0}
 .moment-tabs{display:flex;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#49666b transparent;padding:8px 5px 17px;gap:12px}
 .moment-tab{flex:0 0 145px;height:137px;scroll-snap-align:start}
 .moment-tab-name{font-size:22px;right:22px}
 .moment-tab-arrow{right:9px;bottom:14px}
 .moment-panel{grid-template-columns:1fr;gap:23px;padding-top:20px}
 .moment-story h3{font-size:34px}
 .moment-intro{font-size:16px;margin-top:13px}
 .moment-benefits{gap:14px;margin-top:20px}
 .moment-contact{margin-top:16px}
 .moment-gallery{padding:8px}
 .moment-gallery-bar{flex-direction:row;align-items:center;gap:6px}
 .moment-gallery-controls{gap:5px;align-self:center}
 .moment-gallery-controls>button{width:29px;height:29px}
 .moment-photo-count{min-width:31px;font-size:10px}
 .moment-caption{font-size:11px;max-width:55%}
 .moment-thumbnails>button{flex-basis:60px;height:42px}
 .moment-backdrop:after{background:linear-gradient(180deg,#05131bd9,#05131bef 48%,#071316),linear-gradient(90deg,#07131655,transparent)}
 .backdrop-image{height:650px;object-position:60% 20%}
 #moment-lightbox{width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:8px}
 .lightbox-shell{padding:58px 10px 18px}
 .lightbox-stage{grid-template-columns:1fr 1fr;gap:12px}
 .lightbox-prev,.lightbox-next{width:30px;height:36px;border-radius:5px;font-size:20px}
 #lightbox-image{grid-column:1/-1;grid-row:1;height:auto;max-height:68dvh}
 .lightbox-prev{grid-row:2;justify-self:start}
 .lightbox-next{grid-row:2;justify-self:end}
 .lightbox-meta{margin:14px 5px 0;font-size:12px}
 .header>.button{max-width:150px;font-size:10px;padding-inline:10px}
}
@media(prefers-reduced-motion:reduce){
 .backdrop-image,.moment-tab,.moment-tab>img,.moment-tab-arrow,.moment-thumbnails>button{transition:none!important}
 #moment-lightbox[open]{animation:none!important}
}
