@font-face{font-family:SteamDecor;src:url('assets/steam-decor.woff') format('woff');font-display:swap;font-weight:400}
@font-face{font-family:Muli;src:url('assets/muli.woff') format('woff');font-display:swap;font-weight:400}
:root{--plum:#61404c;--deep-plum:#49333e;--cream:#f5efdf;--paper:#fcf8ed;--copper:#a56545;--gold:#c4a26b;--ink:#563a45;--border:#cfbda2;--card-width:clamp(300px,42vw,580px);--photo-gap:30px;--frame-edge:9px;--frame-mat:12px;color-scheme:light}
*{box-sizing:border-box}html{background:var(--cream);scroll-behavior:smooth}body{margin:0;font-family:Muli,Arial,sans-serif;color:var(--ink);font-size:16px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--copper);outline-offset:5px}img{max-width:100%;display:block}[hidden]{display:none!important}.experience{overflow:clip}.page-shell{opacity:1;transition:opacity .65s}.mobile-break{display:none}
.top-surface{position:relative;isolation:isolate;background:var(--cream)}.top-surface::before{content:"";position:absolute;inset:0;background:url('assets/brand-background.jpg') 50% 42%/cover no-repeat;opacity:.055;z-index:-1;pointer-events:none}
.header{max-width:1480px;margin:0 auto;padding:18px 56px 16px;display:grid;grid-template-columns:1fr 106px 1fr;align-items:center;gap:40px;position:relative}.header::after{content:"";position:absolute;left:56px;right:56px;bottom:0;height:1px;background:var(--border)}.brand{display:block;width:106px;position:relative}.brand img{width:106px;height:auto}.nav{display:flex;align-items:center;gap:34px;font-size:13px}.nav a{padding:12px 0;position:relative}.nav .current::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--copper)}.nav a:hover{color:var(--copper)}.inquiry{justify-self:end;display:flex;align-items:center;gap:24px;background:none;border:1px solid var(--copper);padding:14px 18px;font-size:12px;transition:background .2s,color .2s}.inquiry:hover{background:var(--plum);border-color:var(--plum);color:var(--cream)}
.hero-copy{text-align:center;margin:0 auto;padding:34px 24px 31px}.eyebrow{font-size:10px;letter-spacing:.15em;text-transform:uppercase;line-height:1.6;margin:0 0 16px}.hero-copy .eyebrow{display:flex;align-items:center;justify-content:center;gap:16px;color:#91664d}.hero-copy .eyebrow span{width:25px;height:1px;background:#b38566}h1{font-family:SteamDecor,Georgia,serif;font-weight:400;font-size:clamp(35px,4.2vw,60px);line-height:1.12;letter-spacing:0;margin:0}.hero-description{font-size:13px;line-height:1.75;margin:15px auto 0;color:#7b635b;max-width:670px}
.showcase{position:relative;isolation:isolate;padding-top:0;background:var(--cream)}.showcase::before{content:"";position:absolute;left:0;right:0;top:48%;bottom:0;background:var(--plum);z-index:-2}.showcase::after{content:"";position:absolute;left:0;right:0;top:48%;bottom:0;z-index:-1;background:url('assets/brand-background.jpg') 50% 61%/cover no-repeat;mix-blend-mode:soft-light;opacity:.16;pointer-events:none}.gallery-heading{max-width:1480px;padding:0 56px 17px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#92664e}.gallery-hint{display:flex;align-items:center;gap:13px;font-size:9px;letter-spacing:.08em}.gallery-hint>span{font-size:23px;line-height:12px;font-family:Arial,sans-serif}
.photo-window{overflow:hidden;touch-action:pan-y;cursor:grab;width:100%;position:relative;user-select:none;padding:1px 0 9px}.photo-window.dragging{cursor:grabbing}.photo-track{display:flex;width:max-content;will-change:transform;position:relative}.photo-group{display:flex;gap:var(--photo-gap);padding-right:var(--photo-gap);flex-shrink:0;align-items:flex-start}.photo-card{display:block;flex:0 0 var(--card-width);width:var(--card-width);border:0;background:none;padding:0 0 1px;text-align:left;position:relative;cursor:inherit}.photo-frame{display:block;background:var(--plum);padding:var(--frame-edge);clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px)}.photo-mat{display:block;padding:var(--frame-mat);border:1px solid var(--copper);background:var(--paper);height:100%}.photo-frame img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;pointer-events:none}.photo-caption{display:flex;align-items:center;gap:14px;padding:15px 22px 14px;min-height:53px;font-size:12px;line-height:1.4;letter-spacing:.035em;background:var(--paper);color:var(--plum);width:calc(100% - 38px);margin:0 auto;clip-path:polygon(0 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px))}.photo-number{font-size:9px;letter-spacing:.08em;color:#987254}.photo-arrow{margin-left:auto;font-family:Arial,sans-serif;font-size:19px;color:var(--copper);transition:transform .2s}.photo-card:hover .photo-arrow{transform:translate(2px,-2px)}.photo-card:focus-visible{outline:none}.photo-card:focus-visible .photo-mat{box-shadow:inset 0 0 0 3px var(--copper)}
.gallery-tools{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:0 auto;max-width:1480px;padding:19px 56px 24px;font-size:11px;color:#e1cdb4}.gallery-tools p{margin:0}.playback{display:flex;align-items:center;gap:22px;flex-shrink:0}.playback button{display:flex;align-items:center;gap:10px;border:0;background:none;padding:8px 0;font-size:11px;min-height:36px;white-space:nowrap}.playback button:hover{color:#fff6e5}.tool-divider{width:1px;height:17px;background:#a7867359}.pause{min-width:73px}.pause-symbol{font-family:Arial,sans-serif;font-size:17px;min-width:16px;text-align:center}.replay>span{font-family:Arial,sans-serif;font-size:21px}.replay:disabled{opacity:.5;cursor:default}
.invitation{max-width:1480px;margin:0 auto;padding:46px 56px 45px;display:flex;align-items:center;justify-content:space-between;gap:35px}.invitation .eyebrow{color:#987254;font-size:9px;margin:0 0 10px}.invitation h2{font-family:SteamDecor,Georgia,serif;font-weight:400;font-size:32px;line-height:1.15;margin:0}.invitation-action{display:flex;align-items:center;gap:30px}.invitation-action>p{font-size:11px;line-height:1.8;margin:0;color:#7b635b}.invitation button{display:flex;align-items:center;gap:24px;border:1px solid var(--plum);background:var(--plum);color:var(--paper);padding:16px 20px;font-size:12px;white-space:nowrap;transition:background .2s}.invitation button:hover{background:#915737;border-color:#915737}.footer{border-top:1px solid var(--border);color:#886954;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:23px 56px;font-size:10px;letter-spacing:.035em;max-width:1480px;margin:auto}.footer-dot{margin:0 7px;color:var(--copper)}.footer>a:hover{color:var(--plum)}
.opening{position:fixed;inset:0;z-index:20;overflow:hidden;isolation:isolate;pointer-events:none}.opening-paper{position:absolute;inset:0;background:var(--cream);z-index:-1}.opening-paper::after{content:"";position:absolute;inset:0;background:url('assets/brand-background.jpg') center/cover;opacity:.04}.opening-logo{position:absolute;top:18px;left:50%;transform:translateX(-50%);width:106px;height:auto}.skip{position:absolute;right:max(4vw,24px);top:48px;background:none;border:0;color:var(--plum);font-size:11px;padding:10px 0;border-bottom:1px solid var(--copper);pointer-events:auto}.skip span{margin-left:15px}.opening-heading{position:absolute;top:clamp(139px,23vh,220px);left:0;right:0;text-align:center}.opening-heading .eyebrow{font-size:9px;color:#92664e;margin:0 0 12px}.opening-heading>p:last-child{font-family:SteamDecor,Georgia,serif;font-size:clamp(27px,3.2vw,45px);margin:0}.truck-stage{position:absolute;left:50%;top:52%;width:min(90vw,1120px);aspect-ratio:2/1;transform:translate(-50%,-34%)}.truck-rig{width:100%;height:100%;transform:translateX(-120vw);opacity:0;filter:drop-shadow(0 12px 9px #40283512)}.truck-photo{display:block;width:100%;height:100%;overflow:visible}.service-contour{fill:none;stroke:var(--copper);stroke-width:4;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:0}.opening-bottom{position:absolute;bottom:6vh;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:17px;font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#94745f;white-space:nowrap}.arrival-line{width:66px;height:1px;background:#cab399;position:relative;overflow:hidden}.arrival-line::after{content:"";position:absolute;inset:0;background:var(--copper);transform-origin:left;transform:scaleX(0)}.is-intro .arrival-line::after{animation:arrival-progress 3.2s linear forwards}@keyframes arrival-progress{to{transform:scaleX(1)}}
.portal{position:fixed;z-index:22;pointer-events:none;will-change:left,top,width,height,clip-path;transform-origin:50% 50%}.portal .photo-mat{height:100%}.portal img{height:100%;aspect-ratio:auto}.intro-queued .page-shell{visibility:hidden}.intro-queued .opening[hidden]{display:block!important}.intro-queued,.is-opening{overflow:hidden}.is-intro .page-shell{opacity:0}.is-revealing .page-shell{opacity:1}.is-revealing .opening-logo,.is-revealing .opening-heading,.is-revealing .opening-bottom,.is-revealing .skip{opacity:0;transition:opacity .3s}.opening-ready .opening-logo{opacity:1}
.details{border:1px solid var(--gold);padding:43px;max-width:490px;width:calc(100% - 36px);background:var(--cream);color:var(--plum)}.details::backdrop{background:#2d1b25b8;backdrop-filter:blur(5px)}.close{position:absolute;right:15px;top:10px;border:0;background:none;padding:8px 12px;font-size:28px}.details h2{font-family:SteamDecor,Georgia,serif;font-weight:400;font-size:40px;line-height:1.1;margin:19px 0}.detail-copy{font-size:14px;line-height:1.8;margin:0 0 23px}.details>a{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 0;border-top:1px solid var(--border);font-size:13px}.all-catering{margin-top:14px;color:#8d563a}
@media(min-width:1800px){.hero-copy{padding-top:42px;padding-bottom:42px}.gallery-heading{padding-bottom:22px}.gallery-tools{padding-top:23px;padding-bottom:28px}}
@media(max-width:1100px){.header{padding:16px 32px;gap:24px;grid-template-columns:1fr 96px 1fr}.header::after{left:32px;right:32px}.brand,.brand img{width:96px}.nav{gap:25px}.inquiry{font-size:11px;padding:13px;gap:15px}.hero-copy{padding-top:29px;padding-bottom:28px}.gallery-heading{padding-left:32px;padding-right:32px}.gallery-tools{padding-left:32px;padding-right:32px}.invitation{padding:36px 32px}.invitation-action>p{display:none}.invitation h2{font-size:29px}.footer{padding-left:32px;padding-right:32px}.opening-logo{top:16px;width:96px}.truck-stage{width:94vw;top:53%}}
@media(max-width:700px){:root{--card-width:84vw;--photo-gap:19px;--frame-edge:7px;--frame-mat:8px}.header{grid-template-columns:1fr 80px 1fr;padding:16px 20px 13px;gap:15px}.header::after{left:20px;right:20px}.brand,.brand img{width:80px}.nav{display:flex;flex-direction:column;align-items:flex-start;gap:2px;font-size:11px}.nav a{padding:5px 0}.nav .current::after{bottom:0}.inquiry{border:0;padding:9px 0;text-align:right;gap:7px;font-size:10px;line-height:1.6;max-width:95px}.inquiry:hover{background:none;color:var(--copper)}.inquiry span:first-child{max-width:70px}.hero-copy{padding:28px 19px 25px}.hero-copy .eyebrow{font-size:8px;gap:11px;margin-bottom:14px;letter-spacing:.1em}.hero-copy .eyebrow span{width:18px}h1{font-size:clamp(25px,6.4vw,42px);line-height:1.15;white-space:nowrap}.hero-description{font-size:11px;line-height:1.8;margin-top:14px;max-width:360px}.mobile-break{display:block}.gallery-heading{padding:0 23px 15px;font-size:8px;letter-spacing:.08em}.gallery-hint{font-size:8px;gap:9px;letter-spacing:0}.gallery-hint>span{font-size:19px}.photo-caption{padding:12px 15px;min-height:45px;width:calc(100% - 28px);font-size:10px;gap:10px}.photo-number{font-size:8px}.photo-arrow{font-size:17px}.gallery-tools{padding:11px 23px 18px;gap:15px}.gallery-tools>p{display:none}.playback{width:100%;justify-content:space-between;gap:18px}.playback button{min-height:44px;font-size:10px}.tool-divider{margin-left:auto}.pause{min-width:62px}.invitation{padding:29px 23px 31px;display:block}.invitation .eyebrow{font-size:8px;margin-bottom:9px}.invitation h2{font-size:28px}.invitation-action{margin-top:20px}.invitation button{padding:14px 17px;font-size:11px;min-height:44px;gap:27px}.footer{padding:20px 23px;display:grid;grid-template-columns:1fr;gap:12px;font-size:10px}.footer>span{color:#a07c63;margin-bottom:3px}.opening-logo{top:16px;width:80px}.skip{top:auto;bottom:25px;right:23px;font-size:10px}.opening-heading{top:27vh;padding:0 20px}.opening-heading .eyebrow{font-size:8px}.opening-heading>p:last-child{font-size:29px}.truck-stage{width:112vw;top:49%;transform:translate(-50%,-13%)}.opening-bottom{bottom:19vh;font-size:8px;gap:11px;letter-spacing:.08em}.arrival-line{width:35px}.details{padding:35px 25px}.details h2{font-size:34px}}
@media(max-height:680px) and (min-width:701px){.opening-heading{top:128px}.opening-heading>p:last-child{font-size:31px}.opening-heading .eyebrow{font-size:8px;margin-bottom:8px}.truck-stage{width:min(72vw,790px);top:51%;transform:translate(-50%,-26%)}.opening-bottom{bottom:4vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.opening,.portal{display:none!important}}
@media(max-width:700px){.truck-stage{width:100vw}h1{font-size:clamp(20px,6.4vw,42px)}}
@media(max-width:360px){h1{font-size:6vw}}
.gallery-all-link{display:inline-flex;align-items:center;gap:20px;font-size:12px;padding:8px 0}.gallery-all-link:hover{text-decoration:underline;text-underline-offset:5px}.gallery-all-link>span{font-family:Arial,sans-serif;font-size:19px}
@media(max-width:700px){.gallery-tools{flex-wrap:wrap;gap:1px}.gallery-all-link{width:100%;min-height:44px;border-bottom:1px solid #a7867359;justify-content:space-between;margin-bottom:5px}.nav{gap:0}}
