html,body,#root{margin:0;min-height:100%;}
body{background:var(--ds-page);}
.tribulti{width:100%;}
.tribulti>div{max-width:none;padding:0!important;}
.status-bar{height:34px;display:flex;align-items:center;justify-content:center;background:white;position:relative;z-index:2;}
.status-bar h1{font-family:var(--ds-font-text,Arial,sans-serif);font-size:11px;line-height:1;font-weight:350;letter-spacing:.03em;margin:0;color:var(--ds-ink);}
.stage{position:relative;overflow:hidden;height:calc(100svh - 34px);min-height:480px;max-height:900px;background:#171714;touch-action:pan-y;}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .85s ease;pointer-events:none;}
.slide.active{opacity:1;}
.slide img{display:block;width:100%;height:100%;}
.ambient{position:absolute;inset:0;object-fit:cover;filter:blur(28px) saturate(.62) brightness(.65);transform:scale(1.12);}
.photograph{position:relative;object-fit:contain;filter:saturate(.76) contrast(.92) sepia(.09) blur(.35px);}
.slide:after{content:'';position:absolute;inset:0;background:rgba(239,226,206,.045);pointer-events:none;}
.slideshow-tools{position:absolute;bottom:14px;right:14px;display:flex;gap:0;opacity:0;transition:opacity .2s;}
.stage:hover .slideshow-tools,.stage:focus-within .slideshow-tools{opacity:1;}
.slideshow-tools button{min-width:44px;min-height:44px;border:0;background:rgba(22,22,19,.28);color:white;font-size:10px;font-family:inherit;cursor:pointer;backdrop-filter:none;}
.slideshow-tools button:focus-visible{outline:2px solid white;outline-offset:2px;}
@media(max-width:600px){.stage{min-height:420px;max-height:none;}.slideshow-tools{opacity:.7;bottom:12px;right:12px;}.status-bar{height:30px;}.stage{height:calc(100svh - 30px);}.status-bar h1{font-size:10px;}}
@media(prefers-reduced-motion:reduce){.slide{transition:none;}}
.tribulti .file-card{padding:0!important;max-width:none;gap:0!important;display:block!important;}
.tribulti .file-card>*{margin:0!important;}

.tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%;align-content:start;}
.slide .photograph{width:100%;height:auto;object-fit:initial;filter:saturate(.85) contrast(.96) sepia(.035);}
@media(max-width:600px){.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}

.look-switch{position:absolute;right:12px;display:flex;gap:4px;}
.look-switch button{border:0;background:none;padding:0 7px;min-height:30px;font:inherit;font-size:10px;color:var(--ds-ink-2);cursor:pointer;}
.look-switch button[aria-pressed="true"]{color:var(--ds-ink);text-decoration:underline;text-underline-offset:3px;}
.look-white .stage{background:white;}
.look-white .tile-grid{height:100%;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;}
.look-white .photograph{display:none;}
.look-white .photograph:first-child{display:block;width:100%;height:100%;object-fit:contain;filter:none;}
.slide:after{display:none;}
.look-white .slideshow-tools button{color:var(--ds-ink);background:rgba(255,255,255,.9);backdrop-filter:none;}

.photo-wall{display:none;}
.look-scatter .stage{background:white;}
.look-scatter .slide{display:none;}
.look-scatter .photo-wall{position:absolute;inset:0;display:block;}
.photo-wall img{position:absolute;object-fit:contain;width:34%;height:40%;filter:none;}
.photo-wall img:nth-child(1){top:5%;left:4%;}
.photo-wall img:nth-child(2){top:12%;right:5%;width:37%;height:34%;}
.photo-wall img:nth-child(3){bottom:9%;left:16%;width:31%;height:35%;}
.photo-wall img:nth-child(4){bottom:5%;right:3%;width:30%;height:32%;}
.look-scatter .slideshow-tools button{color:var(--ds-ink);background:rgba(255,255,255,.9);}
@media(max-width:600px){.status-bar h1{margin-right:auto;margin-left:12px;}.look-switch{right:5px;gap:0;}.look-switch button{padding:0 6px;min-width:44px;}.photo-wall img{width:43%;height:33%;}.photo-wall img:nth-child(1){top:3%;left:3%;}.photo-wall img:nth-child(2){top:23%;right:2%;width:46%;height:32%;}.photo-wall img:nth-child(3){bottom:18%;left:6%;width:42%;height:28%;}.photo-wall img:nth-child(4){bottom:4%;right:3%;width:43%;height:30%;}}

.look-tiles .stage{background:white;}
.tile-cell{position:relative;padding:15px 0 0 15px;min-width:0;box-sizing:border-box;}
.gutter{position:absolute;display:block;color:var(--ds-ink);background:white;font-size:8px;font-weight:350;line-height:15px;letter-spacing:0;overflow:hidden;white-space:nowrap;pointer-events:none;}
.gutter.horizontal{top:0;left:15px;right:0;height:15px;}
.gutter.vertical{top:15px;bottom:0;left:0;width:15px;writing-mode:vertical-rl;text-orientation:mixed;}
.look-tiles .tile-grid{padding-right:15px;box-sizing:border-box;}
.look-tiles .slide:before{content:"tribultiworkinprogresstribultiworkinprogresstribultiworkinprogresstribultiworkinprogresstribultiworkinprogresstribultiworkinprogresstribultiworkinprogresstribultiworkinprogress";position:absolute;right:0;top:15px;bottom:0;width:15px;background:white;color:var(--ds-ink);writing-mode:vertical-rl;font-size:8px;line-height:15px;white-space:nowrap;overflow:hidden;z-index:1;}
.look-white .tile-cell{display:none;padding:0;}
.look-white .tile-cell:first-child{display:block;width:100%;height:100%;}
.look-white .gutter{display:none;}
.look-white .tile-cell img{width:100%;height:100%;object-fit:contain;}
.look-tiles .photograph{filter:none;}

.slide{--gutter-bg:white;--gutter-ink:var(--ds-ink);}
.slide.dark-photo{--gutter-bg:black;--gutter-ink:white;}
.look-tiles .gutter,.look-tiles .slide:before{background:var(--gutter-bg);color:var(--gutter-ink);}
.look-tiles .tile-grid{background:var(--gutter-bg);}

.look-scatter .stage{min-height:480px;max-height:none;}
@media(max-width:600px){.look-scatter .stage{min-height:420px;}}
.photo-wall .wall-frame{position:absolute;inset:0;}
.photo-wall .wall-frame img{right:auto;bottom:auto;object-fit:contain;filter:none;animation:wall-drift 8s ease-in-out alternate infinite;}
.wall-in{animation:wall-enter 1.6s ease both;}
.wall-out{animation:wall-leave 1.6s ease both;}
@keyframes wall-enter{from{opacity:0;}to{opacity:1;}}
@keyframes wall-leave{from{opacity:1;}to{opacity:0;}}
@keyframes wall-drift{from{transform:translate(calc(var(--dx)*-1),calc(var(--dy)*-1));}to{transform:translate(var(--dx),var(--dy));}}
@media(prefers-reduced-motion:reduce){.wall-in,.wall-out,.photo-wall .wall-frame img{animation:none;}.wall-out{display:none;}}

.look-full .tile-grid{height:100%;display:block;}
.look-full .tile-cell{display:none;padding:0;}
.look-full .tile-cell:first-child{display:block;width:100%;height:100%;}
.look-full .gutter{display:none;}
.look-full .tile-cell img{width:100%;height:100%;object-fit:cover;object-position:var(--desktop-position);filter:none;}
@media(max-width:600px){.look-full .tile-cell img{object-position:var(--mobile-position);}}


.glass-watermark{position:absolute;inset:0;z-index:1;margin:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;pointer-events:none;font-family:Fredoka,'Arial Rounded MT Bold',sans-serif;font-weight:700;font-size:clamp(100px,18vw,250px);line-height:.85;letter-spacing:-.065em;}
.glass-watermark span{display:block;color:transparent;background:linear-gradient(160deg,rgba(255,255,255,.65) 0%,rgba(255,255,255,.1) 24%,rgba(240,249,255,.3) 47%,rgba(255,255,255,.06) 53%,rgba(255,255,255,.42) 79%,rgba(255,255,255,.16) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-stroke:1px rgba(255,255,255,.58);filter:drop-shadow(1px 2px 1px rgba(0,0,0,.15));text-shadow:1px -1px 0 rgba(255,255,255,.15),-1px 2px 0 rgba(35,65,85,.08);}
.look-white .glass-watermark span,.look-scatter .glass-watermark span{-webkit-text-stroke-color:rgba(130,151,161,.28);}
.slideshow-tools{z-index:3;}
@media(max-width:600px){.glass-watermark{font-size:24vw;line-height:.95;letter-spacing:-.065em;}.look-switch{right:5px;}}

.status-bar{overflow:hidden;height:28px;transition:background-color .85s ease,color .85s ease;justify-content:flex-start;}
.top-marquee{overflow:hidden;white-space:nowrap;flex:1;padding-right:145px;font-size:10px;line-height:28px;font-weight:350;}
.top-marquee span{display:inline-block;animation:marquee-right 60s linear infinite;}
@keyframes marquee-right{from{transform:translateX(-50%);}to{transform:translateX(0);}}
.look-switch{z-index:1;right:0;top:0;height:28px;transition:background-color .85s ease;}
.look-switch button,.look-switch button[aria-pressed="true"]{color:inherit;min-height:28px;}
.stage{height:calc(100svh - 28px);}
@media(max-width:600px){.status-bar{height:28px;}.stage{height:calc(100svh - 28px);}}
@media(prefers-reduced-motion:reduce){.top-marquee span{animation:none;}}

.top-marquee i{font-style:normal;}

.look-full .slide.active{pointer-events:auto;}
.look-full .stage{touch-action:none;}
.look-full .photograph{cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none;}
.look-full .photograph:active{cursor:grabbing;}

/* Only the overlaid bar is frosted; photographs stay sharp. */
.status-bar{position:absolute;left:0;right:0;top:0;z-index:5;backdrop-filter:blur(18px) saturate(115%);-webkit-backdrop-filter:blur(18px) saturate(115%);}
.look-switch{background:transparent;}
.stage{height:100svh;}
@media(max-width:600px){.stage{height:100svh;}}
.top-marquee{flex:none;min-width:0;width:100%;padding-right:0;overflow:hidden;}
/* Full-width bottom controls use the same frosted surface and small text. */
.slideshow-tools{left:0;right:0;bottom:0;height:44px;opacity:1;justify-content:center;align-items:stretch;backdrop-filter:blur(18px) saturate(115%);-webkit-backdrop-filter:blur(18px) saturate(115%);transition:background-color .85s ease,color .85s ease;}
.slideshow-tools button{background:transparent;color:inherit;font-size:10px;font-weight:350;min-height:44px;min-width:72px;}
.slideshow-tools button:focus-visible{outline:1px solid currentColor;outline-offset:-3px;}
@media(max-width:600px){.slideshow-tools{left:0;right:0;bottom:0;opacity:1;}.slideshow-tools button{min-width:76px;}}

/* Both frosted bars share the same 28px visual height. */
.slideshow-tools{height:28px;}
.slideshow-tools button{height:28px;min-height:28px;padding:0 7px;font-size:10px;line-height:28px;}

body{font-family:Arial,sans-serif;background:#171714;color:#171714;} .tribulti{position:relative;} .stage{max-height:none;} :root{--ds-ink:#171714;--ds-ink-2:#171714;--ds-page:white;}

/* Bottom bar: edge-to-edge scrolling text controls. */
.slideshow-tools{display:flex;justify-content:stretch;}
.slideshow-tools button{flex:1 1 0;min-width:0!important;padding:0;overflow:hidden;white-space:nowrap;font-size:10px;line-height:28px;font-weight:350;font-family:inherit;text-align:left;-webkit-tap-highlight-color:transparent;}
.slideshow-tools #play{flex:1 1 0;}
.slideshow-tools button span{display:inline-block;animation:marquee-right 60s linear infinite;}
.slideshow-tools #prev span{animation-name:marquee-left;}
.slideshow-tools button i{font-style:normal;}
@keyframes marquee-left{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media(prefers-reduced-motion:reduce){.slideshow-tools button span{animation:none;}}

/* Middle box is static and centered; side boxes scroll. */
.slideshow-tools #play{text-align:center;}
.slideshow-tools #play span{animation:none;transform:none;}
.slideshow-tools #play i:nth-child(2){display:none;}

.slideshow-tools #play{text-align:left;}

.slideshow-tools #play{text-align:center;}

/* Middle box shrinks to just the pause/play word; arrow boxes fill the rest edge to edge. */
.slideshow-tools #play{flex:0 0 auto;padding:0 12px;}
.slideshow-tools #prev,.slideshow-tools #next{flex:1 1 0;}
