.unearthed-cinema{background:#e8dfd0;color:#30271d;position:relative}.gallery-stage{height:850px;min-height:720px;max-height:100svh;position:relative;overflow:hidden;background:radial-gradient(ellipse at 40% 60%,#c8b79677,transparent 65%)}.gallery-top{position:absolute;top:35px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;gap:25px;z-index:3;pointer-events:none}.gallery-top .eyebrow{color:#7a6647;font-size:8px;margin-bottom:14px}.gallery-top h2{font-size:clamp(36px,4.5vw,65px);margin:0}.gallery-top h2 em{color:#8a6841}.archive-open{pointer-events:auto;background:transparent;border:0;border-bottom:1px solid #87704a;padding:12px 0;font-size:8px;letter-spacing:1.2px;color:#493b27}.archive-open span{margin-left:15px}.gallery-track{display:flex;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;position:relative}.gallery-track::-webkit-scrollbar{display:none}.gallery-scene{flex:0 0 100%;height:100%;position:relative;scroll-snap-align:start;padding:150px 6% 85px;isolation:isolate;overflow:hidden}.gallery-scene-number{position:absolute;left:4%;bottom:0;font:400 clamp(150px,28vw,420px)/1 'Cormorant Garamond',serif;color:#93805e18;pointer-events:none}.gallery-scene-title{position:absolute;top:25%;left:7%;width:26%;z-index:3;pointer-events:none}.gallery-scene-title .eyebrow{font-size:7px;color:#766044;letter-spacing:2px}.gallery-scene-title h3{font:italic clamp(40px,5.5vw,80px)/.95 'Cormorant Garamond',serif;margin:0 0 22px;color:#54422e}.gallery-scene-title>p:last-child{font-size:11px;color:#756655;max-width:230px}.cinema-photo{position:absolute;display:block;border:0;padding:0;background:#eee6d8;box-shadow:0 25px 50px #37291b30;overflow:hidden;cursor:zoom-in;transition:box-shadow .4s,scale .4s;transform:translateY(var(--drift,0px)) rotate(var(--tilt));z-index:2}.cinema-photo img{height:100%;width:100%;object-fit:cover;transition:scale .7s}.cinema-photo:hover{z-index:4;box-shadow:0 30px 70px #37291b70}.gallery-scene .cinema-photo:hover,.gallery-scene .cinema-photo:focus-visible{scale:1.045;z-index:5}.cinema-photo:after{content:'↗';position:absolute;bottom:13px;right:13px;color:#fff;background:#191b1c88;border:1px solid #fff9;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font-size:16px}.cinema-photo.photo-0{left:36%;top:22%;width:41%;height:58%;--tilt:-5deg}.cinema-photo.photo-1{left:71%;top:36%;width:23%;height:44%;--tilt:8deg}.cinema-photo.photo-2{left:24%;top:58%;width:23%;height:29%;--tilt:-9deg;z-index:3}.gallery-scene:nth-child(even) .photo-0{--tilt:5deg;left:39%;top:25%}.gallery-scene:nth-child(even) .photo-1{--tilt:-8deg;top:18%;left:70%;height:38%}.gallery-scene:nth-child(even) .photo-2{--tilt:-5deg;top:54%;left:30%;height:34%}.gallery-scene[data-scene="3"] .photo-0{width:46%;left:35%;height:60%;top:21%}.gallery-scene[data-scene="5"] .photo-0{width:42%;height:56%;top:20%}.gallery-bottom{position:absolute;bottom:25px;left:6%;right:6%;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:25px}.gallery-navigation{display:flex;align-items:center;gap:20px}.gallery-navigation button,.lightbox-navigation button{border:1px solid #86704666;border-radius:50%;width:38px;height:38px;background:none;color:inherit;font-size:18px}.gallery-navigation button:disabled{opacity:.25;cursor:default}.gallery-navigation span{font-size:8px;letter-spacing:2px;min-width:58px}.gallery-bottom>p{font:italic 23px 'Cormorant Garamond',serif;margin:0;color:#7e6749}.gallery-scroll-hint{font-size:7px;letter-spacing:2px}.gallery-progress{position:absolute;top:calc(100% + 15px);height:1px;left:0;right:0;background:#88704b33}.gallery-progress span{display:block;width:var(--gallery-percent,16.66%);height:1px;background:#80623c}.gallery-archive-error{padding:180px 7%;font-size:14px}.gallery-stage:focus-within .gallery-top{z-index:5}#gallery-archive{max-width:1250px;width:95vw;padding:55px 4%;background:#e8dfd0;color:#30271d}#gallery-archive h2{font-size:clamp(37px,5vw,65px);margin-bottom:20px}#gallery-archive em{color:#8a6841}.archive-count{font-size:11px;color:#79694e}.archive-filters{display:flex;gap:22px;flex-wrap:wrap;border-bottom:1px solid #8a704933;margin:20px 0 30px}.archive-filters button{border:0;border-bottom:1px solid transparent;padding:10px 0;background:none;color:#6b5a43;font-size:10px}.archive-filters .active{border-color:#81603e}.archive-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.archive-grid button{border:0;background:none;padding:0;text-align:left;color:#685a48;cursor:zoom-in}.archive-grid img{aspect-ratio:1;height:auto;object-fit:cover;background:#342c26}.archive-grid span{display:block;font-size:8px;margin-top:10px}.archive-grid button:hover img{outline:2px solid #927441;outline-offset:4px}#gallery-lightbox{width:95vw;max-width:1450px;background:#171411;color:#eee5d5;padding:40px 20px 15px}#gallery-full-photo{max-height:72svh;height:auto;width:100%;object-fit:contain}#gallery-photo-caption{text-align:center;font-size:10px;margin-top:15px}.lightbox-navigation{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:15px}.lightbox-navigation span{font-size:10px;letter-spacing:2px}.lightbox-navigation button{border-color:#b6a17777}.gallery-stage h2,.gallery-scene-title{user-select:none}
@media(min-width:761px) and (prefers-reduced-motion:no-preference){html.motion-on:not(.motion-paused) .unearthed-cinema{height:480svh}html.motion-on:not(.motion-paused) .gallery-stage{position:sticky;top:0;height:100svh;max-height:none;min-height:660px}html.motion-on:not(.motion-paused) .gallery-track{overflow:visible;scroll-snap-type:none;transform:translateX(var(--gallery-x,0px));will-change:transform}html.motion-on:not(.motion-paused) .gallery-scene-title{transform:translateY(var(--title-drift,0px))}html.motion-on:not(.motion-paused) .gallery-scene.is-current .cinema-photo{will-change:transform}}
@media(max-width:1000px){.gallery-top h2{font-size:43px}.gallery-scene-title h3{font-size:52px}.gallery-scene-title{left:6%;width:26%}.gallery-scene-title>p:last-child{font-size:10px}.gallery-bottom>p{font-size:20px}.archive-open{font-size:7px}.gallery-scroll-hint{display:none}.archive-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.gallery-stage{height:790px;min-height:700px;max-height:none}.gallery-top{top:35px;display:block}.gallery-top h2{font-size:43px;max-width:330px}.gallery-top .eyebrow{font-size:7px;letter-spacing:2px}.archive-open{margin-top:12px;font-size:8px}.gallery-scene{padding:210px 6% 80px}.gallery-scene-title{top:27%;left:7%;width:70%}.gallery-scene-title .eyebrow{margin-bottom:12px}.gallery-scene-title h3{font-size:42px;max-width:240px;margin-bottom:12px}.gallery-scene-title>p:last-child{max-width:270px;font-size:10px}.cinema-photo.photo-0,.gallery-scene:nth-child(even) .photo-0,.gallery-scene[data-scene="3"] .photo-0,.gallery-scene[data-scene="5"] .photo-0{top:48%;left:9%;width:66%;height:36%;--tilt:-5deg}.cinema-photo.photo-1,.gallery-scene:nth-child(even) .photo-1{top:57%;left:63%;width:33%;height:27%;--tilt:8deg}.cinema-photo.photo-2,.gallery-scene:nth-child(even) .photo-2{top:76%;left:38%;width:31%;height:14%;--tilt:-9deg}.gallery-bottom{bottom:24px;gap:15px}.gallery-bottom>p{display:none}.gallery-navigation{width:100%;justify-content:space-between}.gallery-scene-number{font-size:250px;bottom:70px}.archive-grid{grid-template-columns:repeat(2,1fr);gap:20px 12px}#gallery-archive{padding:50px 20px}.archive-filters{gap:15px}.gallery-scroll-hint{display:none}}
html.motion-paused .gallery-track{transform:none;overflow-x:auto}html.motion-paused .cinema-photo{transform:rotate(var(--tilt))}html.motion-paused .gallery-scroll-hint{display:none}
@media(prefers-reduced-motion:reduce){.gallery-track{scroll-behavior:auto}.cinema-photo{transform:rotate(var(--tilt))}.cinema-photo img{transition:none}.gallery-scroll-hint{display:none}}
.unearthed-contact{background:#c9ba9f;overflow:hidden;padding:22px 0}.contact-ribbon{display:flex;gap:16px;width:max-content}.contact-ribbon button{width:150px;height:150px;padding:0;border:0;cursor:zoom-in;flex:none;background:#29231b}.contact-ribbon img{width:100%;height:100%;object-fit:cover}.unearthed-contact:focus-within{overflow-x:auto}.contact-ribbon:has(button:focus-visible){animation:none!important}
@media(prefers-reduced-motion:no-preference){html.motion-on:not(.motion-paused) .contact-ribbon{animation:contact-drift 90s linear infinite}.unearthed-contact:hover .contact-ribbon{animation-play-state:paused!important}}
@keyframes contact-drift{from{translate:0 0}to{translate:calc(-100% + 100vw) 0}}
html.motion-paused .unearthed-contact{overflow-x:auto}
@media(prefers-reduced-motion:reduce){.unearthed-contact{overflow-x:auto}}
@media(max-width:760px){.contact-ribbon button{width:110px;height:110px}.unearthed-contact{padding:16px 0;overflow-x:auto}}



@media(prefers-reduced-motion:reduce){.cinema-photo{transition:none}}
.gallery-scene .cinema-photo.photo-1,.gallery-scene .cinema-photo.photo-2{height:auto;aspect-ratio:1}
@media(min-width:761px){.gallery-scene .cinema-photo.photo-2{top:45%}}

/* Two equal photo groups make the ribbon loop without a visible reset. */
.contact-ribbon{gap:0}
.contact-ribbon-group{display:flex;gap:16px;padding-right:16px;flex:none}
@keyframes contact-drift{from{translate:0 0}to{translate:-50% 0}}
