@font-face{font-family:Marfa;src:url('assets/fonts/ABCMARFA-SEMIBOLD-TRIAL.otf')}@font-face{font-family:MuriSans;src:url('assets/fonts/Regular.ttf')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f8ded9;color:#347a96;font-family:MuriSans,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}.wrap{max-width:1120px;margin:auto;padding:0 24px}.intro{position:fixed;inset:0;z-index:200;background:#f8ded9;display:grid;place-items:center;overflow:hidden;transition:opacity .65s ease,visibility .65s ease}.intro.done{opacity:0;visibility:hidden;pointer-events:none}.intro-stage{position:relative;width:min(94vw,820px);height:min(74vh,640px)}.intro-letter{position:absolute;height:clamp(66px,10vw,108px);width:auto;translate:-50% -50%;cursor:pointer;user-select:none;mix-blend-mode:multiply;animation:float 5s ease-in-out infinite;transition:left .8s cubic-bezier(.2,.8,.2,1),top .8s cubic-bezier(.2,.8,.2,1),height .8s ease,transform .8s ease}.intro.assembling .intro-letter{animation:none;pointer-events:none}.skip{position:absolute;right:22px;top:20px;border:1px solid currentColor;background:transparent;color:inherit;border-radius:999px;padding:8px 12px;font:inherit;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}@keyframes float{50%{transform:translateY(-12px) rotate(4deg)}}.page-wipe{position:fixed;inset:0;z-index:180;background:#ef9277;transform:translateY(100%);pointer-events:none}.page-wipe.go{animation:wipe .75s cubic-bezier(.7,0,.2,1) forwards}@keyframes wipe{0%{transform:translateY(100%)}55%,100%{transform:translateY(0)}}header{position:sticky;top:0;z-index:50;background:#f8ded9e8;backdrop-filter:blur(12px);border-bottom:1px solid #347a9640;transition:transform .34s cubic-bezier(.2,.8,.2,1),box-shadow .25s ease}header.nav-hidden{transform:translateY(-105%)}header.nav-scrolled{box-shadow:0 8px 26px rgba(52,122,150,.08)}.nav{height:88px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px}.brand img{height:70px;display:block}.navlinks{display:flex;justify-content:center;gap:20px;font-size:.73rem;text-transform:uppercase;letter-spacing:.09em}.nav-actions{display:flex;gap:8px}.mobile-menu{display:none}.pill{border:1px solid currentColor;border-radius:999px;padding:8px 13px;font:inherit;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;background:transparent;color:inherit;cursor:pointer;transition:transform .22s ease,background-color .22s ease,color .22s ease,box-shadow .22s ease}.pill:hover{transform:translateY(-2px);background:#347a96;color:#f8ded9;box-shadow:0 7px 18px rgba(52,122,150,.12)}.navlinks a{position:relative}.navlinks a::after{content:'';position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:currentColor;transition:right .22s ease}.navlinks a:hover::after{right:0}.hero{min-height:72vh;display:grid;align-items:end;padding:52px 0 38px}.hero-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:38px;align-items:end}.eyebrow,.micro{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.wordmark{display:flex;flex-direction:column;gap:clamp(22px,2.2vw,34px);width:min(100%,650px);margin:16px 0 0}.wordmark-row{display:flex;align-items:flex-end;gap:clamp(12px,1.2vw,16px)}.wordmark img{display:block;height:clamp(74px,10vw,126px);width:auto;mix-blend-mode:multiply}.wordmark.footer-mark{width:min(100%,430px);margin:0 0 34px;gap:clamp(10px,1vw,16px)}.wordmark.footer-mark .wordmark-row{gap:clamp(4px,.55vw,8px)}.wordmark.footer-mark img{height:clamp(48px,7vw,84px)}.hero-side p{font-size:clamp(1rem,1.8vw,1.25rem);line-height:1.45}.sticker{width:min(230px,56vw);display:block;margin:auto auto 18px;animation:drift 7s ease-in-out infinite}@keyframes drift{50%{transform:translateY(-10px) rotate(-2deg)}}.band{overflow:hidden;background:#f6cf9c;color:#ef9277;border-block:1px solid currentColor}.band-track{font-family:Marfa,sans-serif;font-size:clamp(2.2rem,5vw,4.6rem);white-space:nowrap;padding:9px 0;animation:marquee 24s linear infinite}@keyframes marquee{to{transform:translateX(-35%)}}section{padding:64px 0;border-bottom:1px solid #347a9640}.section-head{display:grid;grid-template-columns:120px 1fr minmax(260px,340px);gap:24px;align-items:end;margin-bottom:30px}.section-head h2,.coffee-card h3,.address{font-family:Marfa,sans-serif;text-transform:uppercase}.section-head h2{font-size:clamp(2.5rem,5.6vw,5.1rem);line-height:1.02;margin:0}.section-note{max-width:340px;justify-self:end}.current-coffee-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}.coffee-card{display:grid;grid-template-columns:1fr;min-height:500px;background:#f6cf9c;color:#ef9277;border:1px solid currentColor;padding:24px;gap:30px;transition:transform .24s ease,box-shadow .24s ease}.coffee-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(0,0,0,.08)}.coffee-card-blue{background:#d7e8ee;color:#347a96}.coffee-card h3{font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.02;margin:18px 0}.variety{font-style:italic}.label{border-top:1px solid currentColor}.row{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid currentColor;font-size:.82rem}.row b{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em}.button{display:flex;justify-content:space-between;align-items:center;border:1px solid currentColor;padding:12px 14px;margin-top:18px;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;transition:transform .22s ease,background-color .22s ease,color .22s ease,box-shadow .22s ease}.button:hover{transform:translateY(-3px);background:currentColor;box-shadow:0 8px 20px rgba(0,0,0,.08)}.button:hover span{mix-blend-mode:difference;color:#fff}.gallery{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.gallery img{width:100%;height:100%;object-fit:cover}.gallery-main{min-height:520px}.gallery-stack{display:grid;gap:16px}.visit{background:#cfe7ca;color:#72ad68}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px}.address{font-size:clamp(2.5rem,5.4vw,5rem);line-height:1.02;margin:0 0 24px}.visit img{width:100%;height:430px;object-fit:cover}.visit-list{margin-top:26px;border-top:1px solid currentColor}.visit-list .row{grid-template-columns:160px 1fr}footer{padding:42px 0 54px}.footer-line{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}.footer-line a{transition:transform .2s ease}.footer-line a:hover{transform:translateY(-2px)}.workshop-popup{position:fixed;inset:0;z-index:170;display:grid;place-items:center;padding:28px;background:rgba(248,222,217,.55);backdrop-filter:blur(8px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s ease,visibility .35s ease}.workshop-popup.open{opacity:1;visibility:visible;pointer-events:auto}.workshop-popup-card{position:relative;width:min(92vw,760px);background:#f6d1db;color:#e57c9e;border:1px solid currentColor;padding:34px;box-shadow:0 22px 70px rgba(52,122,150,.12);transform:translateY(18px) scale(.985);transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .25s ease}.workshop-popup.open .workshop-popup-card{transform:translateY(0) scale(1)}.workshop-popup-card:hover{box-shadow:0 30px 80px rgba(52,122,150,.16)}.workshop-popup-card h2{font-family:Marfa,sans-serif;text-transform:uppercase;font-size:clamp(3rem,8vw,6.3rem);line-height:.94;margin:14px 0 20px}.workshop-popup-card p:not(.micro){font-size:1.08rem;line-height:1.5;max-width:560px}.workshop-popup-cta{display:inline-block;margin-top:18px;border:1px solid currentColor;border-radius:999px;padding:9px 13px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.workshop-popup-close{position:absolute;top:20px;right:22px;z-index:2;width:42px;height:42px;border:1px solid #e57c9e;border-radius:50%;background:#f8ded9;color:#e57c9e;font:inherit;font-size:1.25rem;cursor:pointer;transition:transform .2s ease,background-color .2s ease,color .2s ease}.workshop-popup-close:hover{transform:scale(1.05);background:#e57c9e;color:#f8ded9}.game-modal{position:fixed;inset:0;z-index:175;display:grid;place-items:center;padding:24px;background:rgba(248,222,217,.68);backdrop-filter:blur(10px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility .3s ease}.game-modal.open{opacity:1;visibility:visible;pointer-events:auto}.game-card{position:relative;width:min(94vw,980px);background:#f8ded9;color:#347a96;border:1px solid currentColor;padding:26px;box-shadow:0 24px 70px rgba(52,122,150,.14)}.game-card h2{font-family:Marfa,sans-serif;text-transform:uppercase;font-size:clamp(2rem,5vw,4rem);line-height:1;margin:8px 0 10px}.game-card>p:not(.micro):not(.game-help){margin:0 0 14px}.game-score{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}.game-score span{border:1px solid currentColor;border-radius:999px;padding:6px 12px;font-size:.78rem}.game-card canvas{width:100%;height:auto;display:block;background:#f8ded9;border-top:1px solid rgba(52,122,150,.25);border-bottom:1px solid rgba(52,122,150,.25);touch-action:none}.game-help{text-align:center;font-size:.72rem;letter-spacing:.03em;margin:12px 0 0}.game-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border:1px solid currentColor;border-radius:50%;background:#f8ded9;color:#347a96;font:inherit;font-size:1.2rem;cursor:pointer}.menu-modal{position:fixed;inset:0;z-index:160;background:#f8ded9f0;backdrop-filter:blur(14px);display:none;padding:24px}.menu-modal.open{display:grid;place-items:center}.menu-shell{position:relative;width:min(94vw,980px);height:min(88vh,860px);background:#fff8f2;border:1px solid #347a96}.menu-shell iframe{width:100%;height:100%;border:0}.menu-close,.menu-prev,.menu-next{position:absolute;z-index:2;border:1px solid #347a96;background:#f8ded9;color:#347a96;width:42px;height:42px;border-radius:50%;font:inherit;cursor:pointer;transition:transform .2s ease,background-color .2s ease,color .2s ease}.menu-close:hover,.menu-prev:hover,.menu-next:hover{transform:scale(1.06);background:#347a96;color:#f8ded9}.menu-close{top:12px;right:12px}.menu-prev{left:12px;bottom:12px}.menu-next{right:12px;bottom:12px}.highlight-reveal{opacity:0}.title-reveal{opacity:0}@media(min-width:1400px){.wrap{max-width:1100px}.hero{min-height:68vh}.section-head h2{font-size:4.6rem}.current-coffee-grid .coffee-card{min-height:470px}}@media(max-width:800px){.wrap{padding:0 26px}.hero-grid,.coffee-card,.gallery,.visit-grid,.current-coffee-grid{grid-template-columns:1fr}.section-head{grid-template-columns:1fr;gap:18px}.section-note{justify-self:start}.navlinks{display:none}.mobile-menu{display:inline-block}.hero{min-height:70vh}.gallery-main{min-height:420px}.gallery-stack{grid-template-columns:1fr 1fr}.visit img{height:360px}.brand img{height:62px}.nav{height:86px;gap:10px}.pill{padding:8px 11px;font-size:.66rem}.section-head h2{font-size:clamp(2.7rem,12vw,4.7rem);line-height:1.08}.coffee-card h3{font-size:clamp(2.4rem,11vw,4.3rem);line-height:1.04}.current-coffee-grid .coffee-card{min-height:unset}.address{font-size:clamp(2.65rem,11.5vw,4.6rem);line-height:1.06}.wordmark{width:min(100%,520px);gap:18px}.wordmark img{height:clamp(64px,18vw,98px)}.wordmark-row{gap:clamp(7px,2vw,12px)}.wordmark.footer-mark{gap:8px}.wordmark.footer-mark .wordmark-row{gap:3px}.workshop-popup{padding:16px}.workshop-popup-card{padding:26px}.workshop-popup-card h2{font-size:clamp(2.7rem,12vw,4.5rem);line-height:.96}.workshop-popup-close{top:12px;right:12px}.game-modal{padding:12px}.game-card{padding:18px}.game-help{font-size:.65rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.band-track,.sticker,.intro-letter{animation:none!important}.highlight-reveal,.title-reveal{opacity:1!important}.pill,.button,.coffee-card,.footer-line a,.menu-close,.menu-prev,.menu-next,.workshop-popup,.workshop-popup-card,.workshop-popup-close,.game-modal{transition:none!important}}