:root{--cream:#f5efe3;--cream-2:#eee4d2;--paper:#fffaf0;--sage:#82925f;--sage-dark:#40512f;--matcha:#6f8946;--matcha-light:#b7c88b;--wood:#9a6b49;--peach:#dba087;--ink:#28321f;--muted:#68705f;--line:#40512f2e;--surface:#fffaf0c2;--scroll-progress:0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--cream)}body{color:var(--ink);background:radial-gradient(circle at 18% 14%,#dba0872e,#0000 28%),radial-gradient(circle at 84% 64%,#82925f29,#0000 34%),linear-gradient(#fbf6ec 0%,#f2e9da 100%);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}::selection{color:var(--ink);background:#6f894640}.matcha-page{isolation:isolate;min-height:500svh;position:relative;overflow:clip}.scene-layer{z-index:-3;pointer-events:none;position:fixed;inset:0}.scene-layer canvas{display:block;width:100%!important;height:100%!important}.paper-grain{z-index:-2;opacity:.28;pointer-events:none;background-image:radial-gradient(circle at 10% 20%,#40512f14 0 1px,#0000 1.4px),radial-gradient(circle at 70% 10%,#9a6b4912 0 1px,#0000 1.4px),radial-gradient(circle at 30% 80%,#40512f0a 0 1px,#0000 1.4px);background-size:110px 110px,150px 150px,190px 190px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#00000073);mask-image:linear-gradient(#000,#00000073)}.progress-fill{z-index:40;height:3px;width:calc(var(--scroll-progress) * 100%);background:linear-gradient(90deg, var(--matcha), var(--peach));transition:width 80ms linear;position:fixed;top:0;left:0;box-shadow:0 0 20px #6f894652}.site-header{z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#fbf6ecf5,#fbf6ecb8,#0000);grid-template-columns:1fr auto 1fr;align-items:center;height:88px;padding:18px clamp(24px,5vw,74px);display:grid;position:fixed;inset:0 0 auto}.wordmark{align-items:center;gap:10px;width:fit-content;display:inline-flex}.wordmark-icon{width:34px;height:34px;color:var(--matcha);background:#ffffff7a;border:1px solid #40512f38;border-radius:50%;place-items:center;display:grid}.wordmark strong{letter-spacing:.04em;flex-direction:column;font-family:Georgia,Times New Roman,serif;font-size:21px;line-height:.9;display:flex}.wordmark small{letter-spacing:.34em;color:var(--matcha);margin-top:7px;font-family:Inter,ui-sans-serif,system-ui;font-size:8px}.site-header nav{align-items:center;gap:clamp(22px,3vw,44px);display:flex}.site-header nav button{color:#28321f9e;letter-spacing:.08em;cursor:pointer;background:0 0;border:0;padding:10px 0;font-size:11px;font-weight:700;position:relative}.site-header nav button:after{content:"";background:var(--matcha);border-radius:50%;width:5px;height:5px;transition:transform .25s;position:absolute;bottom:2px;left:50%;transform:translate(-50%)scale(0)}.site-header nav button:hover,.site-header nav button.active{color:var(--ink)}.site-header nav button.active:after{transform:translate(-50%)scale(1)}.header-actions{justify-self:end;align-items:center;gap:10px;display:flex}.locale-switch,.header-order,.primary-button,.secondary-button,.outline-button,.mobile-order{letter-spacing:.08em;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:43px;padding:0 20px;font-size:10px;font-weight:800;transition:transform .24s,box-shadow .24s,background .24s,border-color .24s;display:inline-flex}.locale-switch{border:1px solid var(--line);background:#ffffff7a;min-width:43px;padding:0 11px}.header-order,.primary-button,.mobile-order{border:1px solid var(--sage-dark);background:var(--sage-dark);color:#fffaf0;box-shadow:0 10px 28px #40512f2b}.header-order:hover,.primary-button:hover,.mobile-order:hover{background:var(--matcha);transform:translateY(-2px);box-shadow:0 14px 34px #40512f3d}.secondary-button,.outline-button{background:#fffaf0ad;border:1px solid #40512f4d}.secondary-button:hover,.outline-button:hover,.locale-switch:hover{border-color:var(--matcha);transform:translateY(-2px)}.mobile-menu-button{border:1px solid var(--line);cursor:pointer;background:#fff9;border-radius:50%;width:42px;height:42px;display:none}.mobile-menu{z-index:29;border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf0f0;border-radius:22px;gap:6px;padding:16px;display:grid;position:fixed;top:78px;left:18px;right:18px;box-shadow:0 24px 60px #3c37282e}.mobile-menu>button:not(.mobile-order){text-align:left;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:12px;grid-template-columns:34px 1fr;padding:11px 12px;display:grid}.mobile-menu>button span{color:var(--ink);font-weight:700}.progress-rail{z-index:20;text-align:center;width:82px;position:fixed;top:50%;right:clamp(22px,4vw,64px);transform:translateY(-46%)}.progress-current{color:var(--sage-dark);font:500 24px/1 Georgia,Times New Roman,serif}.progress-label{color:var(--muted);text-transform:uppercase;letter-spacing:.16em;margin-top:7px;font-size:8px}.progress-track{background:linear-gradient(to bottom, var(--matcha), #6f89461a);flex-direction:column;justify-content:space-between;align-items:center;width:1px;height:230px;margin:16px auto 0;display:flex;position:relative}.progress-dot{background:var(--cream-2);border:1px solid #40512f6b;border-radius:50%;width:8px;height:8px;transition:transform .25s,background .25s;box-shadow:0 0 0 5px #fffaf0b3}.progress-dot.is-active{background:var(--matcha);transform:scale(1.35)}.story-section{align-items:center;min-height:100svh;padding:118px clamp(30px,7vw,110px) 74px;display:grid;position:relative}.story-section:before{content:"";pointer-events:none;border:1px solid #40512f1c;border-radius:28px;position:absolute;inset:14px}.copy-block{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(145deg,#fffaf0db,#f5efe38c);border:1px solid #40512f21;border-radius:28px;width:min(430px,35vw);padding:clamp(22px,3vw,34px);position:relative;box-shadow:0 24px 80px #534e391a}.copy-block h1,.copy-block h2,.visit-modal h2{letter-spacing:-.045em;color:var(--sage-dark);text-wrap:balance;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:500}.copy-block h1{font-size:clamp(56px,6.2vw,94px);line-height:.96}.copy-block h2{font-size:clamp(48px,5.2vw,78px);line-height:.98}.copy-block h1 span,.copy-block h2 span{display:block}.section-code{color:var(--matcha);text-transform:uppercase;letter-spacing:.2em;margin:0 0 20px;font-size:9px;font-weight:800}.accent-line{color:var(--matcha);text-transform:uppercase;letter-spacing:.11em;align-items:center;gap:8px;margin:24px 0 0;font-size:10px;font-weight:800;display:flex}.body-copy{max-width:355px;color:var(--muted);margin:20px 0 0;font-size:clamp(14px,1.05vw,17px);line-height:1.72}.hero-copy .primary-button{margin-top:30px}.scroll-cue{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:12px;margin-top:34px;font-size:9px;font-weight:800;display:inline-flex}.scroll-cue span{border:1px solid var(--line);background:#ffffff80;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.hero-section{grid-template-columns:1fr 1.2fr}.hero-copy{justify-self:start}.right-copy{justify-self:end}.left-copy{justify-self:start}.interior-section{background:radial-gradient(circle at 48% 45%,#ffe1b533,#0000 38%);grid-template-columns:1.2fr 1fr}.craft-section{background:radial-gradient(circle at 55% 55%,#82925f1a,#0000 38%);align-items:end;padding-bottom:clamp(88px,12vh,150px)}.barista-section{background:radial-gradient(circle at 54% 42%,#dba08726,#0000 36%);grid-template-columns:1.2fr 1fr}.experience-section{background:radial-gradient(circle,#b7c88b29,#0000 42%);align-items:center;padding-bottom:130px}.final-copy{justify-self:start}.final-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.micro-list{flex-wrap:wrap;gap:8px;margin-top:25px;display:flex}.micro-list span{border:1px solid var(--line);color:var(--sage-dark);background:#ffffff7a;border-radius:999px;padding:9px 12px;font-size:10px;font-weight:700}.focus-label{z-index:3;color:#40512f94;letter-spacing:.18em;align-items:center;gap:12px;font-size:8px;display:flex;position:absolute;top:46%;right:clamp(90px,12vw,190px)}.focus-label span{background:#40512f4d;width:62px;height:1px}.site-footer{z-index:5;border-top:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:64px;padding-top:18px;display:grid;position:absolute;bottom:28px;left:clamp(30px,7vw,110px);right:clamp(30px,7vw,110px)}.footer-brand{color:var(--sage-dark);letter-spacing:.12em;align-items:center;gap:8px;font-size:10px;font-weight:800;display:inline-flex}.site-footer>div{justify-content:center;gap:20px;display:flex}.site-footer>div a,.site-footer>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px}.site-footer>span{text-align:right}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#28321f6b;place-items:center;padding:20px;animation:.2s both fade-in;display:grid;position:fixed;inset:0}.visit-modal{background:linear-gradient(145deg,#fffaf0,#eee4d2);border:1px solid #40512f33;border-radius:28px;width:min(680px,100%);max-height:90svh;padding:clamp(30px,5vw,58px);animation:.28s both modal-in;position:relative;overflow-y:auto;box-shadow:0 35px 100px #28321f40}.visit-modal h2{margin-top:8px;font-size:clamp(38px,5vw,58px)}.modal-subtitle{max-width:560px;color:var(--muted);line-height:1.65}.modal-close{border:1px solid var(--line);cursor:pointer;background:#ffffff85;border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:20px;right:20px}.visit-form{grid-template-columns:1fr 1fr;gap:18px;margin-top:28px;display:grid}.visit-form label{color:var(--sage-dark);text-transform:uppercase;letter-spacing:.12em;gap:8px;font-size:9px;font-weight:800;display:grid}.visit-form input,.visit-form textarea{width:100%;color:var(--ink);text-transform:none;letter-spacing:normal;background:#ffffff94;border:1px solid #40512f33;border-radius:12px;outline:none;padding:13px 14px;font-size:14px}.visit-form input:focus,.visit-form textarea:focus{border-color:var(--matcha);box-shadow:0 0 0 3px #6f89461f}.full-field{grid-column:1/-1}.honeypot{opacity:0!important;pointer-events:none!important;position:absolute!important;left:-9999px!important}.matcha-button{color:#fffaf0;background:linear-gradient(135deg, var(--sage-dark), var(--matcha));letter-spacing:.08em;cursor:pointer;border:0;border-radius:999px;min-height:48px;font-weight:800}.matcha-button:disabled{opacity:.55;cursor:wait}.form-error{color:#a64435;grid-column:1/-1;margin:0;font-size:13px}.success-panel{text-align:center;justify-items:center;gap:18px;margin-top:34px;display:grid}.success-mark{background:var(--matcha-light);width:64px;height:64px;color:var(--sage-dark);border-radius:50%;place-items:center;font-size:28px;display:grid}.webgl-fallback{place-items:center;width:100%;height:100%;display:grid}.fallback-shop{background:#efe1c9;border:12px solid #5d6849;border-radius:28px 28px 16px 16px;width:min(420px,70vw);height:300px;position:relative;box-shadow:0 40px 100px #40512f40}.fallback-shop:before{content:"MATCHA WORLD";color:var(--sage-dark);white-space:nowrap;font:700 22px Georgia,serif;position:absolute;top:50px;left:50%;transform:translate(-50%)}.fallback-shop span,.fallback-shop i,.fallback-shop b,.fallback-shop em{background:#66816e;border:7px solid #40512f;width:22%;height:58%;position:absolute;bottom:0}.fallback-shop span{left:7%}.fallback-shop i{left:30%}.fallback-shop b{left:53%}.fallback-shop em{right:7%}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(15px)scale(.98)}}@media (max-width:1020px){.site-header{grid-template-columns:1fr auto;height:76px;padding:14px 20px}.site-header nav,.header-order{display:none}.mobile-menu-button{place-items:center;display:grid}.progress-rail{display:none}.story-section{align-items:end;min-height:100svh;padding:96px 22px 46px}.story-section:before{border-radius:22px;inset:8px}.copy-block{background:linear-gradient(145deg,#fffaf0e8,#f5efe3b8);border-radius:22px;width:min(470px,100%);padding:23px}.copy-block h1{font-size:clamp(50px,14vw,76px)}.copy-block h2{font-size:clamp(44px,12vw,66px)}.hero-section,.interior-section,.barista-section{grid-template-columns:1fr}.hero-copy,.right-copy,.left-copy,.final-copy{justify-self:stretch}.interior-section{align-items:start;padding-top:96px}.barista-section{align-items:start;padding-top:105px}.craft-section{padding-bottom:46px}.focus-label{top:26%;right:26px}.experience-section{padding-bottom:138px}.site-footer{grid-template-columns:1fr auto;left:22px;right:22px}.site-footer>div{display:none}.visit-form{grid-template-columns:1fr}.full-field{grid-column:auto}}@media (max-width:560px){.wordmark strong{font-size:18px}.wordmark-icon{width:32px;height:32px}.locale-switch{min-width:39px;min-height:39px}.copy-block h1{font-size:50px}.copy-block h2{font-size:45px}.body-copy{margin-top:15px;line-height:1.58}.hero-copy .primary-button{margin-top:22px}.scroll-cue{margin-top:21px}.micro-list{gap:6px}.micro-list span{padding:8px 10px;font-size:9px}.final-actions{display:grid}.site-footer>span{font-size:8px}.visit-modal{border-radius:22px;padding:34px 22px 24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.admin-login-page,.admin-page{min-height:100svh;color:var(--ink);background:linear-gradient(145deg,#f8f1e5,#e8dec9)}.admin-login-page{place-items:center;padding:24px;display:grid}.admin-login-card{border:1px solid var(--line);background:#fffaf0db;border-radius:24px;width:min(460px,100%);padding:42px;box-shadow:0 30px 90px #40512f29}.admin-login-card>p,.admin-topbar p{color:var(--matcha);letter-spacing:.2em;margin:0;font-size:9px;font-weight:800}.admin-login-card h1,.admin-topbar h1{color:var(--sage-dark);margin:10px 0 8px;font:500 42px/1 Georgia,serif}.admin-login-card>span,.admin-topbar span{color:var(--muted);font-size:13px}.admin-login-card>a{color:var(--muted);margin-top:24px;font-size:12px;display:inline-block}.admin-login-form{gap:16px;margin-top:28px;display:grid}.admin-login-form label{color:var(--sage-dark);text-transform:uppercase;letter-spacing:.12em;gap:8px;font-size:10px;font-weight:800;display:grid}.admin-login-form input{border:1px solid var(--line);min-height:46px;color:var(--ink);background:#ffffff8f;border-radius:12px;outline:none;padding:0 14px}.admin-login-form input:focus{border-color:var(--matcha)}.admin-login-form button,.admin-logout{background:var(--sage-dark);color:#fffaf0;cursor:pointer;border:0;border-radius:999px;min-height:44px;font-weight:800}.admin-login-form p{color:#a64435;margin:0;font-size:12px}.admin-page{padding:clamp(24px,5vw,72px)}.admin-topbar{justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.admin-topbar>div:last-child{align-items:center;gap:14px;display:flex}.admin-topbar a,.admin-logout{border:1px solid var(--line);min-height:40px;color:var(--sage-dark);background:#ffffff75;border-radius:999px;align-items:center;padding:0 18px;font-size:11px;display:inline-flex}.admin-metrics{grid-template-columns:repeat(3,1fr);gap:16px;margin:42px 0 28px;display:grid}.admin-metrics article{border:1px solid var(--line);background:#fffaf0ad;border-radius:18px;padding:24px}.admin-metrics span{color:var(--muted);font-size:12px}.admin-metrics strong{color:var(--sage-dark);margin-top:10px;font:500 36px/1 Georgia,serif;display:block}.admin-table-wrap{border:1px solid var(--line);background:#fffaf0b8;border-radius:18px;overflow-x:auto}.admin-table-wrap table{border-collapse:collapse;width:100%;min-width:1000px}.admin-table-wrap th,.admin-table-wrap td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:16px;font-size:12px}.admin-table-wrap th{color:var(--sage-dark);letter-spacing:.12em;text-transform:uppercase;background:#b7c88b3d;font-size:9px}.admin-table-wrap td{color:var(--muted)}.admin-table-wrap td strong,.admin-table-wrap td small{display:block}.admin-table-wrap td small{color:#68705fb8;margin-top:5px}.notes-cell{white-space:normal;max-width:280px}.status-badge{color:var(--sage-dark);text-transform:uppercase;background:#6f894621;border-radius:999px;padding:5px 9px;font-size:9px}.empty-row{text-align:center!important;padding:50px!important}@media (max-width:760px){.admin-topbar{flex-direction:column;align-items:flex-start}.admin-metrics{grid-template-columns:1fr}.admin-login-card{padding:30px 22px}}
