:root{
  --ink:#111111;
  --ink-soft:#252525;
  --paper:#f1ecdf;
  --paper-2:#e8e0d0;
  --white:#fffdf7;
  --matcha:#97d51b;
  --matcha-deep:#25720d;
  --line:rgba(17,17,17,.16);
  --radius:28px;
  --shadow:0 30px 80px rgba(13,18,8,.16);
  --container:min(1180px,calc(100vw - 48px));
  --wide:min(1360px,calc(100vw - 48px));
  --ease:cubic-bezier(.2,.75,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55;overflow-x:hidden}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{color:inherit}
::selection{background:var(--matcha);color:var(--ink)}
.skip-link{position:fixed;left:14px;top:14px;z-index:2000;background:#fff;color:#000;padding:10px 14px;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.page-progress{position:fixed;left:0;top:0;width:100%;height:3px;z-index:1500;pointer-events:none}
.page-progress span{display:block;width:100%;height:100%;background:var(--matcha);transform-origin:left;transform:scaleX(0)}
.container{width:var(--container);margin:0 auto}
.container--wide{width:var(--wide)}
.container--narrow{width:min(920px,calc(100vw - 48px))}
.section-pad{padding:clamp(82px,9vw,145px) 0}
.eyebrow{margin:0 0 20px;text-transform:uppercase;letter-spacing:.17em;font-size:.74rem;font-weight:800}
.eyebrow--light{color:var(--matcha)}
.kicker{margin:0 0 24px;text-transform:uppercase;letter-spacing:.17em;font-size:.75rem;font-weight:800}
.button{display:inline-flex;align-items:center;justify-content:center;gap:34px;min-height:58px;padding:0 26px;border:1px solid transparent;border-radius:999px;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;font-weight:900;transition:transform .35s var(--ease),background .35s,color .35s,border-color .35s}
.button span{font-size:1.1rem}
.button:hover{transform:translateY(-4px)}
.button--green{background:var(--matcha);color:var(--ink)}
.button--green:hover{background:#a2f32e}
.button--outline{border-color:rgba(255,255,255,.32);color:#fff;background:rgba(255,255,255,.03)}
.button--outline:hover{background:#fff;color:#111}
.text-link{display:inline-flex;align-items:center;gap:14px;font-weight:800;border-bottom:1px solid currentColor;padding-bottom:5px}
.text-link span{transition:transform .3s var(--ease)}
.text-link:hover span{transform:translateX(6px)}
.announcement{height:38px;background:var(--matcha);overflow:hidden;border-bottom:1px solid rgba(0,0,0,.12)}
.marquee{height:100%;overflow:hidden}
.marquee__track{width:max-content;display:flex;align-items:center;gap:18px;height:100%;font-weight:900;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;animation:marquee 22s linear infinite}
.marquee__track i{font-style:normal}
@keyframes marquee{to{transform:translateX(-50%)}}
.site-header{position:fixed;z-index:1000;left:0;right:0;top:38px;height:84px;padding:0 30px;display:grid;grid-template-columns:180px 1fr 190px;align-items:center;color:#fff;transition:background .35s var(--ease),backdrop-filter .35s,border-color .35s,transform .35s}
.site-header.is-scrolled{background:rgba(17,17,17,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.1)}
.site-header.is-hidden{transform:translateY(-110%)}
.brand{display:inline-flex;align-items:center;width:166px;height:58px;overflow:visible}
.brand img{width:166px;height:auto;filter:drop-shadow(0 4px 14px rgba(0,0,0,.35))}
.desktop-nav{display:flex;justify-content:center;gap:30px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.desktop-nav a{position:relative;padding:12px 0}
.desktop-nav a:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;background:var(--matcha);transform:scaleX(0);transform-origin:right;transition:transform .3s var(--ease)}
.desktop-nav a:hover:after{transform:scaleX(1);transform-origin:left}
.header-cta{justify-self:end;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#fff;color:#111;border-radius:999px;padding:13px 18px;text-transform:uppercase;font-size:.68rem;letter-spacing:.08em;font-weight:900;white-space:nowrap}.whatsapp-icon{width:18px;height:18px;flex:0 0 18px}.header-cta--whatsapp:hover{background:var(--matcha)}
.menu-toggle{display:none;justify-self:end;width:48px;height:48px;border:0;background:transparent;position:relative;cursor:pointer}
.menu-toggle span{position:absolute;left:9px;width:30px;height:2px;background:#fff;transition:.35s var(--ease)}
.menu-toggle span:first-child{top:19px}.menu-toggle span:last-child{top:28px}
.menu-toggle[aria-expanded="true"] span:first-child{top:24px;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:last-child{top:24px;transform:rotate(-45deg)}
.mobile-menu{position:fixed;z-index:900;inset:38px 0 0;background:var(--ink);color:#fff;padding:145px 7vw 42px;display:flex;flex-direction:column;justify-content:space-between;transform:translateY(-110%);transition:transform .55s var(--ease)}
.mobile-menu.is-open{transform:none}
.mobile-menu nav{display:grid}
.mobile-menu nav a{font-size:clamp(2.4rem,9vw,5rem);line-height:1;border-bottom:1px solid rgba(255,255,255,.15);padding:14px 0;font-weight:900;letter-spacing:-.05em}
.mobile-menu nav a span{font-size:.7rem;letter-spacing:.1em;color:var(--matcha);vertical-align:top;margin-right:12px}
.mobile-menu__footer{display:flex;align-items:center;gap:22px;flex-wrap:wrap;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.mobile-reservation{display:inline-flex;align-items:center;gap:9px;background:var(--matcha);color:#111;padding:12px 16px;border-radius:999px;font-weight:900}
.hero{position:relative;min-height:96svh;background:var(--ink);color:#fff;padding:158px max(24px,calc((100vw - 1360px)/2)) 32px;overflow:hidden}
.hero:before{content:"";position:absolute;width:52vw;height:52vw;right:-18vw;top:1vh;border-radius:50%;background:radial-gradient(circle,rgba(143,227,18,.16),rgba(143,227,18,0) 66%);filter:blur(10px)}
.hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:74px 74px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 80%);pointer-events:none}
.hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);align-items:center;gap:46px;max-width:1360px;margin:0 auto}
.hero__copy{position:relative;z-index:3;padding-top:12px;min-width:0}
.hero-title{margin:0;max-width:790px;font-size:clamp(3.7rem,5.7vw,7rem);line-height:.87;letter-spacing:-.067em;text-transform:uppercase;font-weight:950}
.hero-title>span{display:block;white-space:nowrap}
.hero-title>span:nth-child(2){color:var(--matcha)}
.hero-title>span:nth-child(3){font-size:.65em;letter-spacing:-.055em;margin-top:.18em}
.hero__lead{max-width:560px;margin:30px 0 0;color:rgba(255,255,255,.72);font-size:clamp(.98rem,1.1vw,1.12rem)}
.hero__actions{display:flex;align-items:center;gap:26px;margin-top:32px;flex-wrap:wrap}
.hero__visual{position:relative;z-index:1;min-height:540px;display:grid;place-items:center}
.hero-cup-wrap{position:relative;width:min(76%,450px);z-index:2;transform:rotate(4deg);animation:floatCup 5.5s ease-in-out infinite}
.hero-cup{width:100%;filter:drop-shadow(0 42px 32px rgba(0,0,0,.45));border-radius:32px}
@keyframes floatCup{50%{transform:translateY(-16px) rotate(2deg)}}
.hero-orbit{position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:50%}
.hero-orbit--one{width:470px;height:470px}
.hero-orbit--two{width:360px;height:360px;border-color:rgba(143,227,18,.32);animation:orbitPulse 3.5s ease-in-out infinite}
@keyframes orbitPulse{50%{transform:scale(1.05);opacity:.5}}
.hero-badge{position:absolute;right:-52px;top:22px;width:132px;height:132px;background:linear-gradient(145deg,#a5e71a 0%,#8bd10c 100%);color:#111;border-radius:50%;display:grid;place-items:center;box-shadow:0 16px 40px rgba(0,0,0,.25)}
.hero-badge svg{position:absolute;inset:8px;width:116px;height:116px;animation:spin 18s linear infinite}
.hero-badge text{font-size:10px;letter-spacing:2.4px;font-weight:900;text-transform:uppercase}
.hero-badge__logo{position:relative;z-index:2;display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#f4edd6;border:1px solid rgba(17,17,17,.08);box-shadow:0 8px 20px rgba(17,17,17,.14);padding:7px}
.hero-badge__logo img{display:block;width:100%;height:100%;object-fit:contain;filter:saturate(1.04) contrast(1.04)}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-note{position:absolute;z-index:3;font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;font-weight:900;line-height:1.35}
.hero-note--top{left:5%;top:19%;transform:rotate(-8deg)}
.hero-note--bottom{right:3%;bottom:17%;transform:rotate(8deg);color:var(--matcha)}
.hero__bottom{position:absolute;z-index:3;left:max(24px,calc((100vw - 1360px)/2));right:max(24px,calc((100vw - 1360px)/2));bottom:24px;display:flex;align-items:center;gap:22px;text-transform:uppercase;letter-spacing:.1em;font-size:.66rem;color:rgba(255,255,255,.65)}
.hero__line{height:1px;background:rgba(255,255,255,.25);flex:1}
.statement{background:var(--matcha)}
.statement__text{margin:0;max-width:1240px;font-size:clamp(2.35rem,4.7vw,5.3rem);line-height:1;letter-spacing:-.052em;font-weight:900}
.section-heading{margin-bottom:60px}
.section-heading h2{margin:0;font-size:clamp(3rem,5vw,5.8rem);line-height:.9;letter-spacing:-.06em;text-transform:uppercase}
.section-heading--split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.55fr);gap:80px;align-items:end}
.section-heading__aside{max-width:430px;justify-self:end}
.section-heading__aside p{margin:0 0 30px;color:#555}
.section-heading--center{text-align:center;max-width:820px;margin:0 auto 60px}
.section-heading--center>p:last-child{max-width:600px;margin:28px auto 0;color:#5c5a54}
.about{background:var(--paper)}
.about-collage{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:auto auto;gap:28px;align-items:start}
.image-card{position:relative;margin:0;overflow:hidden;border-radius:var(--radius);background:#ddd}
.image-card img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.image-card:hover img{transform:scale(1.035)}
.image-card--large{grid-row:1/3;min-height:690px}
.image-card--small{min-height:410px}
.image-card figcaption{position:absolute;left:22px;bottom:22px;background:rgba(17,17,17,.86);color:#fff;padding:12px 18px;border-radius:999px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
.about-collage__copy{background:var(--ink);color:#fff;border-radius:var(--radius);padding:42px;min-height:290px;display:flex;flex-direction:column}
.about-number{color:var(--matcha);font-size:.75rem;font-weight:900;letter-spacing:.12em}
.about-collage__copy h3{margin:auto 0 12px;font-size:2.1rem;line-height:1;letter-spacing:-.04em}
.about-collage__copy p{margin:0;color:rgba(255,255,255,.62)}
.specialties{background:#fbf8ef;border-top:1px solid var(--line)}
.filter-tabs{display:flex;justify-content:center;gap:8px;margin-bottom:42px;flex-wrap:wrap}
.filter-tab{border:1px solid #ccc6b8;background:transparent;border-radius:999px;padding:12px 20px;cursor:pointer;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:900;transition:.3s}
.filter-tab:hover,.filter-tab.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.product-card{position:relative;min-height:580px;border-radius:var(--radius);overflow:hidden;background:#eee8dc;isolation:isolate;transition:opacity .35s,transform .55s var(--ease),box-shadow .45s var(--ease);cursor:pointer;outline:none}
.product-card.is-hidden{display:none}
.product-card:hover,.product-card:focus-visible{transform:translateY(-10px);box-shadow:var(--shadow)}
.product-card__media{position:absolute;inset:0;overflow:hidden}
.product-card__media:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(9,12,6,.76))}
.product-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .85s var(--ease),filter .65s}
.product-card:hover .product-card__media img,.product-card:focus-visible .product-card__media img{transform:scale(1.09) rotate(-1deg);filter:saturate(1.1)}
.product-card__index{position:absolute;z-index:2;left:24px;top:24px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);font-size:.7rem;font-weight:900}
.product-card__content{position:absolute;z-index:3;left:0;right:0;bottom:0;padding:30px;color:#fff;transition:transform .55s var(--ease)}
.product-card__content p{margin:0 0 7px;color:var(--matcha);font-size:.66rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.product-card__content h3{margin:0;font-size:clamp(1.85rem,2.45vw,2.95rem);line-height:.92;letter-spacing:-.055em;text-transform:uppercase}
.product-card__content span{display:block;margin-top:15px;color:rgba(255,255,255,.64);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.product-card:hover .product-card__content,.product-card:focus-visible .product-card__content{transform:translateY(-68px)}
.product-card__hover{position:absolute;z-index:4;left:0;right:0;bottom:0;height:72px;padding:0 28px;background:var(--matcha);display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;font-size:.7rem;letter-spacing:.1em;font-weight:900;transform:translateY(105%);transition:transform .5s var(--ease)}
.product-card__hover b{font-size:1.2rem}
.product-card:hover .product-card__hover,.product-card:focus-visible .product-card__hover{transform:none}
.dark-feature{position:relative;background:var(--ink);color:#fff;overflow:hidden}
.dark-feature__glow{position:absolute;width:900px;height:900px;border-radius:50%;right:-300px;top:-300px;background:radial-gradient(circle,rgba(143,227,18,.18),rgba(143,227,18,0) 70%)}
.dark-feature__grid{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:70px}
.dark-feature__copy h2{margin:0;font-size:clamp(3.6rem,5.8vw,6.7rem);line-height:.82;letter-spacing:-.075em;text-transform:uppercase}
.dark-feature__copy>p:not(.eyebrow){max-width:520px;color:rgba(255,255,255,.65);margin:34px 0}
.dark-feature__visual{position:relative;justify-self:end;width:min(100%,600px);min-height:650px}
.dark-feature__visual img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius);box-shadow:0 50px 100px rgba(0,0,0,.35)}
.floating-label{position:absolute;background:var(--matcha);color:#111;border-radius:50%;width:120px;height:120px;display:grid;place-items:center;text-align:center;text-transform:uppercase;font-size:.68rem;line-height:1.3;letter-spacing:.1em;font-weight:900;box-shadow:0 20px 45px rgba(0,0,0,.3)}
.floating-label--one{left:-50px;top:18%;transform:rotate(-12deg)}
.floating-label--two{right:-35px;bottom:17%;background:#fff;transform:rotate(10deg)}
.quality-list{position:relative;margin-top:72px;border-top:1px solid rgba(255,255,255,.16);display:grid;grid-template-columns:repeat(3,1fr)}
.quality-list article{padding:34px 34px 10px;border-right:1px solid rgba(255,255,255,.16)}
.quality-list article:first-child{padding-left:0}.quality-list article:last-child{border-right:0}
.quality-list span{color:var(--matcha);font-size:.72rem;font-weight:900}
.quality-list h3{font-size:1.4rem;margin:24px 0 10px}
.quality-list p{color:rgba(255,255,255,.55);margin:0}
.word-stage{position:relative;background:var(--matcha);height:680px;display:grid;place-items:center;overflow:hidden;color:#111}
.word-stage__center{text-align:center;position:relative;z-index:2;display:grid;gap:5px}
.word-stage__center span{text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;font-weight:900}
.word-stage__center strong{font-size:clamp(4.5rem,13vw,12rem);line-height:.76;letter-spacing:-.09em;white-space:nowrap}
.word-stage__line{position:absolute;white-space:nowrap;font-size:clamp(2.5rem,5vw,5.8rem);font-weight:900;text-transform:uppercase;letter-spacing:-.05em;color:rgba(17,17,17,.19);will-change:transform}
.word-stage__line--left{top:78px;left:-15vw;transform:rotate(-6deg)}
.word-stage__line--right{bottom:88px;right:-30vw;transform:rotate(6deg)}
.visit{background:var(--paper)}
.visit-grid{display:grid;grid-template-columns:1.15fr .9fr .75fr;gap:18px}
.info-panel,.hours-panel,.payment-panel{border-radius:var(--radius);padding:34px;min-height:390px;display:flex;flex-direction:column}
.info-panel--green{background:var(--matcha)}
.info-panel__icon{width:62px;height:62px;border:2px solid #111;border-radius:50%;display:grid;place-items:center;font-size:1.7rem;font-weight:950;margin-bottom:auto}
.info-panel h3{font-size:2.4rem;line-height:.95;letter-spacing:-.05em;margin:0 0 18px}
.info-panel p:not(.eyebrow){margin:0 0 24px;max-width:440px}
.hours-panel{background:var(--ink);color:#fff}
.hours-row{display:flex;justify-content:space-between;gap:20px;padding:21px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.hours-row strong{color:var(--matcha)}
.hours-note{margin-top:auto;color:rgba(255,255,255,.45);font-size:.8rem}
.payment-panel{background:#dcd4c5}
.payment-panel ul{list-style:none;padding:0;margin:auto 0 0}
.payment-panel li{padding:15px 0;border-bottom:1px solid rgba(17,17,17,.16);font-weight:800}
.payment-panel li:before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--matcha);margin-right:11px;font-size:.7rem}
.faq{background:#fbf8ef}
.accordion{border-top:1px solid var(--line)}
.accordion__item{border-bottom:1px solid var(--line)}
.accordion__item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0;font-size:clamp(1.3rem,2vw,2rem);font-weight:900;letter-spacing:-.035em}
.accordion__item summary::-webkit-details-marker{display:none}
.accordion__item summary span{width:42px;height:42px;border-radius:50%;border:1px solid #bbb;display:grid;place-items:center;font-size:1.4rem;transition:.35s}
.accordion__item[open] summary span{transform:rotate(45deg);background:var(--matcha);border-color:var(--matcha)}
.accordion__item p{margin:0;padding:0 70px 28px 0;color:#57544e;max-width:760px}
.contact{position:relative;background:var(--ink);color:#fff;overflow:hidden}
.contact__backdrop{position:absolute;left:-3vw;bottom:-1vw;font-size:24vw;line-height:.7;font-weight:950;letter-spacing:-.1em;color:rgba(255,255,255,.035);pointer-events:none;white-space:nowrap}
.contact__grid{position:relative;display:grid;grid-template-columns:1fr .75fr;gap:90px;align-items:start}
.contact__copy h2{margin:0;font-size:clamp(3.6rem,6vw,7rem);line-height:.82;letter-spacing:-.075em;text-transform:uppercase}
.contact__copy>p:not(.eyebrow){color:rgba(255,255,255,.65);max-width:600px;margin:34px 0 44px}
.contact-links{border-top:1px solid rgba(255,255,255,.16)}
.contact-links a{display:grid;grid-template-columns:130px 1fr 24px;gap:18px;align-items:center;padding:19px 0;border-bottom:1px solid rgba(255,255,255,.16);transition:color .3s,padding .3s}
.contact-links a:hover{color:var(--matcha);padding-left:8px}
.contact-links span{font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.45)}
.contact-links strong{font-size:1.08rem}
.contact-form{background:#fff;color:#111;border-radius:var(--radius);padding:38px;box-shadow:0 35px 100px rgba(0,0,0,.3)}
.contact-form label{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.11em;font-weight:900;margin-bottom:22px}
.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #c7c1b7;background:transparent;padding:11px 0 13px;border-radius:0;outline:none;resize:vertical;transition:border-color .3s}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--matcha-deep)}
.contact-form .checkbox{display:flex;gap:12px;align-items:flex-start;text-transform:none;letter-spacing:0;font-weight:500;font-size:.82rem;color:#555}
.contact-form .checkbox input{width:18px;height:18px;margin-top:2px;accent-color:var(--matcha)}
.contact-form .checkbox a{text-decoration:underline}
.honeypot{position:absolute!important;left:-10000px!important}
.form-status{display:none;margin-bottom:18px;padding:13px;border-radius:10px;font-size:.85rem}
.form-status.is-visible{display:block}.form-status.is-success{background:#e7f8cf}.form-status.is-error{background:#ffe4df}
.site-footer{background:#0b0b0b;color:#fff;padding:62px max(24px,calc((100vw - 1360px)/2)) 26px;border-top:1px solid rgba(255,255,255,.1)}
.footer-top{display:grid;grid-template-columns:200px 1fr 70px;align-items:center;gap:30px;padding-bottom:50px;border-bottom:1px solid rgba(255,255,255,.14)}
.footer-logo{width:165px;height:120px;overflow:hidden;display:grid;place-items:center}.footer-logo img{width:165px}
.footer-top>p{font-size:clamp(1.6rem,3.4vw,4rem);text-transform:uppercase;font-weight:900;letter-spacing:-.045em;margin:0}
.circle-link{width:64px;height:64px;border:1px solid rgba(255,255,255,.32);border-radius:50%;display:grid;place-items:center;font-size:1.5rem;transition:.3s}.circle-link:hover{background:var(--matcha);color:#111;border-color:var(--matcha)}
.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:36px;padding:50px 0}
.footer-grid .eyebrow{color:rgba(255,255,255,.38);margin-bottom:16px}
.footer-grid address{font-style:normal;color:rgba(255,255,255,.65)}
.footer-grid a{color:rgba(255,255,255,.74);line-height:2}.footer-grid a:hover{color:var(--matcha)}
.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.14);padding-top:22px;color:rgba(255,255,255,.38);font-size:.72rem;text-transform:uppercase;letter-spacing:.09em}
.legal-page{background:#fbf8ef}
.legal-hero{padding:190px 0 90px;background:var(--ink);color:#fff}
.legal-hero h1{font-size:clamp(3.6rem,7.5vw,7.5rem);line-height:.85;letter-spacing:-.075em;text-transform:uppercase;margin:0}
.legal-content{padding:80px 0 130px}
.legal-content article{max-width:900px}
.legal-content h2{font-size:2rem;margin:50px 0 12px;letter-spacing:-.04em}
.legal-content h3{margin-top:30px}
.legal-content p,.legal-content li{color:#4f4c46}
.legal-content a{text-decoration:underline;text-decoration-color:var(--matcha-deep);text-decoration-thickness:2px;text-underline-offset:3px}
.legal-box{background:#e9e2d5;border-radius:22px;padding:32px;margin:28px 0}
.reveal-up,.reveal-image,[data-reveal-lines]{opacity:1}
.js .reveal-up{opacity:0;transform:translateY(42px)}
.js .reveal-image{clip-path:inset(0 0 100% 0)}
.js [data-reveal-lines]{opacity:0;transform:translateY(32px)}
.reveal-up.is-visible{opacity:1;transform:none;transition:opacity .8s var(--ease) var(--delay,0s),transform .8s var(--ease) var(--delay,0s)}
.reveal-image.is-visible{clip-path:inset(0);transition:clip-path 1.1s var(--ease) var(--delay,0s)}
[data-reveal-lines].is-visible{opacity:1;transform:none;transition:opacity .85s var(--ease),transform .85s var(--ease)}
.word{display:inline-block;overflow:hidden;vertical-align:bottom;margin-right:.18em}.word-inner{display:inline-block;transform:translateY(112%)}
.is-visible .word-inner{transform:none;transition:transform .8s var(--ease);transition-delay:calc(var(--word-index)*35ms)}
.hero-title .word{margin-right:.12em}
.hero-title .word-inner{transform:translateY(118%)}
.hero-title.is-visible .word-inner{transform:none;transition-duration:1s;transition-delay:calc(.15s + var(--word-index)*65ms)}
@media (max-width:1120px){
  .site-header{grid-template-columns:160px 1fr 175px}.desktop-nav{gap:18px}.header-cta{padding:12px 15px}
  .hero__grid{grid-template-columns:1.1fr .9fr;gap:26px}.hero__visual{min-height:500px}.hero-badge{right:-24px}
  .product-card{min-height:530px}
  .visit-grid{grid-template-columns:1fr 1fr}.payment-panel{grid-column:1/-1;min-height:250px}.payment-panel ul{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.payment-panel li{border:0}
}
@media (max-width:900px){
  :root{--container:min(100% - 32px,760px);--wide:min(100% - 32px,900px)}
  .section-pad{padding:78px 0}
  .site-header{height:76px;top:38px;grid-template-columns:1fr auto;padding:0 18px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:block}.brand{width:150px;height:50px}.brand img{width:150px}
  .hero{padding:132px 16px 28px;min-height:auto}.hero__grid{grid-template-columns:1fr}.hero-title{font-size:clamp(3.15rem,10.2vw,5.7rem)}.hero-title>span{white-space:normal}.hero__lead{margin-top:24px}.hero__visual{min-height:520px;margin-top:14px}.hero-cup-wrap{width:min(68vw,440px)}.hero__bottom{position:relative;left:auto;right:auto;bottom:auto;margin-top:10px}.hero-note--top{left:8%}.hero-note--bottom{right:8%}
  .section-heading--split{grid-template-columns:1fr;gap:34px}.section-heading__aside{justify-self:start}
  .about-collage{grid-template-columns:1fr 1fr;grid-template-rows:auto auto}.image-card--large{grid-column:1/-1;grid-row:auto;min-height:580px}.about-collage__copy{min-height:340px}.image-card--small{min-height:340px}
  .product-grid{grid-template-columns:1fr 1fr}.product-card{min-height:570px}
  .dark-feature__grid{grid-template-columns:1fr}.dark-feature__visual{justify-self:center;min-height:580px;width:min(100%,530px)}.quality-list{grid-template-columns:1fr}.quality-list article{border-right:0;border-bottom:1px solid rgba(255,255,255,.16);padding:28px 0}.quality-list article:last-child{border-bottom:0}
  .word-stage{height:560px}.word-stage__center strong{font-size:16vw}
  .visit-grid{grid-template-columns:1fr}.payment-panel{grid-column:auto}.payment-panel ul{grid-template-columns:1fr 1fr}
  .contact__grid{grid-template-columns:1fr;gap:55px}.contact-form{max-width:620px}
  .footer-grid{grid-template-columns:1fr 1fr}.footer-top{grid-template-columns:150px 1fr 60px}.footer-logo{width:130px}.footer-logo img{width:130px}
}
@media (max-width:620px){
  .announcement{height:34px}.site-header{top:34px}.mobile-menu{inset:34px 0 0;padding-top:120px}
  .section-pad{padding:68px 0}.eyebrow{margin-bottom:15px}
  .hero{padding-top:120px}.hero-title{font-size:12.2vw;line-height:.89}.hero-title>span:nth-child(3){font-size:.54em}.hero__lead{font-size:.98rem}.hero__actions{align-items:flex-start;flex-direction:column;gap:20px}.button{min-height:56px}.hero__visual{min-height:420px}.hero-orbit--one{width:90vw;height:90vw}.hero-orbit--two{width:68vw;height:68vw}.hero-badge{width:112px;height:112px;right:-12px;top:8px}.hero-badge svg{width:96px;height:96px}.hero-badge__logo{width:54px;height:54px;padding:6px}.hero-note{display:none}.hero__bottom{display:grid;gap:6px}.hero__line{display:none}
  .statement__text{font-size:2.35rem}
  .section-heading{margin-bottom:40px}.section-heading h2{font-size:3rem}
  .about-collage{display:block}.about-collage>*{margin-bottom:16px}.image-card--large{min-height:430px}.about-collage__copy{min-height:280px;padding:30px}.image-card--small{min-height:410px}
  .filter-tabs{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:7px}.filter-tab{white-space:nowrap}
  .product-grid{grid-template-columns:1fr}.product-card{min-height:560px}
  .dark-feature__copy h2{font-size:3.35rem}.dark-feature__visual{min-height:auto}.floating-label{width:90px;height:90px}.floating-label--one{left:-8px}.floating-label--two{right:-8px}
  .word-stage{height:510px}.word-stage__center strong{font-size:18vw}.word-stage__line{font-size:3.4rem}.word-stage__line--left{top:55px}.word-stage__line--right{bottom:62px}
  .visit-grid{gap:12px}.info-panel,.hours-panel,.payment-panel{padding:28px;min-height:370px}.hours-row{display:block}.hours-row strong{display:block;margin-top:3px}.payment-panel ul{grid-template-columns:1fr}
  .accordion__item summary{font-size:1.3rem}.accordion__item p{padding-right:0}
  .contact__copy h2{font-size:3.35rem}.contact-links a{grid-template-columns:1fr 24px}.contact-links span{grid-column:1}.contact-links strong{grid-column:1}.contact-links b{grid-column:2;grid-row:1/3}.contact-form{padding:26px}
  .site-footer{padding-top:50px}.footer-top{grid-template-columns:1fr auto}.footer-logo{grid-column:1}.footer-top>p{grid-column:1/-1;grid-row:2}.circle-link{grid-column:2;grid-row:1}.footer-grid{grid-template-columns:1fr;padding:38px 0}.footer-bottom{display:grid;gap:7px}
  .legal-hero{padding:150px 0 70px}.legal-content{padding:60px 0 90px}.legal-box{padding:24px}
}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
  .js .reveal-up,.js .reveal-image,.js [data-reveal-lines]{opacity:1;transform:none;clip-path:none}
  .word-inner{transform:none!important}
}

/* Supplied MONTCHA photography, drinks and menu */
.hero__grid{grid-template-columns:minmax(0,1.06fr) minmax(410px,.94fr);gap:54px}
.hero-title{max-width:740px;font-size:clamp(3.55rem,5.25vw,6.45rem)}
.hero__visual{min-height:560px}
.hero-drinks{position:relative;width:min(100%,570px);height:560px;z-index:2;margin-inline:auto}
.hero-drink{position:absolute;bottom:8px;height:auto;object-fit:contain;filter:drop-shadow(0 35px 25px rgba(0,0,0,.42));will-change:transform}
.hero-drink--main{z-index:3;width:57%;left:21%;animation:floatMain 5.5s ease-in-out infinite}
.hero-drink--left{z-index:2;width:43%;left:0;bottom:20px;transform:rotate(-10deg) scale(.92);animation:floatLeft 6.2s ease-in-out infinite}
.hero-drink--right{z-index:1;width:43%;right:0;bottom:16px;transform:rotate(10deg) scale(.9);animation:floatRight 6.8s ease-in-out infinite}
.hero-drinks .hero-badge{right:0;top:34px;z-index:5}
@keyframes floatMain{50%{transform:translateY(-16px) rotate(1deg)}}
@keyframes floatLeft{50%{transform:translateY(-10px) rotate(-7deg) scale(.92)}}
@keyframes floatRight{50%{transform:translateY(-18px) rotate(7deg) scale(.9)}}

.image-card--large img{object-position:center 47%}
.image-card--small img{object-position:center 56%}

.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.product-card{min-height:490px;background:var(--card-bg,#eee8dc)}
.product-card__media:after{inset:43% 0 0;background:linear-gradient(transparent,rgba(10,14,7,.9) 93%)}
.product-card__media img{object-fit:contain;padding:24px 22px 132px;filter:drop-shadow(0 24px 20px rgba(26,29,18,.22));transform-origin:center 45%}
.product-card--bagels .product-card__media img{padding:46px 25px 140px;filter:drop-shadow(0 18px 14px rgba(26,29,18,.17))}
.product-card:hover .product-card__media img,.product-card:focus-visible .product-card__media img{transform:scale(1.075) rotate(-1deg);filter:drop-shadow(0 30px 24px rgba(26,29,18,.28)) saturate(1.08)}
.product-card__price{position:absolute;z-index:3;left:20px;top:20px;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.88);backdrop-filter:blur(9px);font-size:.72rem;line-height:1;font-weight:950;letter-spacing:.04em}
.product-card__content{padding:25px}
.product-card__content h3{font-size:clamp(1.45rem,1.9vw,2.35rem)}
.product-card__content span{margin-top:11px;font-size:.7rem}
.product-card__hover{height:62px;padding:0 24px}
.product-card__hover b{font-size:.76rem;letter-spacing:.05em}
.product-card:hover .product-card__content,.product-card:focus-visible .product-card__content{transform:translateY(-58px)}

.menu-preview{margin-top:34px;border-radius:var(--radius);overflow:hidden;background:var(--ink);color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;min-height:390px}
.menu-preview__copy{padding:clamp(32px,4.5vw,64px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.menu-preview__copy h3{font-size:clamp(2rem,3.5vw,4rem);line-height:.94;letter-spacing:-.055em;text-transform:uppercase;margin:0 0 20px}
.menu-preview__copy>p:not(.eyebrow){color:rgba(255,255,255,.64);max-width:520px;margin:0 0 28px}
.menu-preview__image{position:relative;overflow:hidden;min-height:390px;background:#efe4c9}
.menu-preview__image img{width:100%;height:100%;object-fit:cover;object-position:center 11%;transition:transform .8s var(--ease)}
.menu-preview__image:hover img{transform:scale(1.035)}
.menu-preview__image span{position:absolute;right:18px;bottom:18px;background:rgba(17,17,17,.9);color:#fff;padding:10px 15px;border-radius:999px;font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;font-weight:900}

.dark-feature__visual img{object-position:center 58%}
.info-panel--photo{position:relative;overflow:hidden;color:#fff;padding:0;isolation:isolate}
.info-panel--photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-2;transition:transform .9s var(--ease)}
.info-panel--photo:hover>img{transform:scale(1.04)}
.info-panel__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,12,8,.14),rgba(10,12,8,.88));z-index:-1}
.info-panel__content{height:100%;min-height:390px;padding:34px;display:flex;flex-direction:column}
.info-panel--photo .info-panel__icon{border-color:#fff;color:#fff}
.info-panel--photo .text-link{margin-top:auto;align-self:flex-start}
.info-panel--photo p:not(.eyebrow){color:rgba(255,255,255,.75)}

.footer-logo{width:145px;height:150px;overflow:visible}
.footer-logo img{width:auto;height:142px;object-fit:contain}

@media (max-width:1200px){
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .product-card{min-height:500px}
}
@media (max-width:1120px){
  .hero__grid{grid-template-columns:1.05fr .95fr;gap:28px}
  .hero-title{font-size:clamp(3.35rem,5.2vw,5.7rem)}
  .hero-drinks{height:510px}
  .product-card{min-height:470px}
}
@media (max-width:900px){
  .hero__grid{grid-template-columns:1fr}
  .hero__visual{min-height:500px}
  .hero-drinks{width:min(92vw,560px);height:500px}
  .hero-drink--main{width:54%;left:23%}
  .hero-drink--left,.hero-drink--right{width:41%}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-card{min-height:500px}
  .menu-preview{grid-template-columns:1fr;min-height:auto}
  .menu-preview__image{min-height:360px}
  .footer-logo{height:130px}.footer-logo img{height:126px}
}
@media (max-width:620px){
  .hero-title{font-size:11.3vw}
  .hero__visual{min-height:400px;margin-top:4px}
  .hero-drinks{height:400px;width:min(100%,430px)}
  .hero-drink--main{width:58%;left:21%}
  .hero-drink--left,.hero-drink--right{width:43%;bottom:8px}
  .hero-drinks .hero-badge{width:98px;height:98px;right:0;top:12px}
  .hero-drinks .hero-badge svg{width:82px;height:82px}
  .product-grid{grid-template-columns:1fr}
  .product-card{min-height:510px}
  .product-card__media img{padding:20px 34px 132px}
  .product-card--bagels .product-card__media img{padding:42px 30px 142px}
  .menu-preview__copy{padding:30px 25px}
  .menu-preview__image{min-height:310px}
  .info-panel__content{min-height:390px;padding:28px}
  .footer-logo{height:120px}.footer-logo img{height:118px}
}

/* =========================================================
   MONTCHA v1.4 — Hype update
   Beige menu palette, oversized products and social energy
   ========================================================= */
:root{
  --paper:#f1e4c5;
  --paper-2:#e8d6ad;
  --cream:#f8efd9;
  --sand:#d6c18f;
  --matcha:#97d51b;
  --matcha-bright:#a5ec20;
}
html{background:var(--paper)}
body{background:var(--paper)}
.button--ink{background:var(--ink);color:#fff;border-color:var(--ink)}
.button--ink:hover{background:var(--matcha);border-color:var(--matcha);color:var(--ink)}

/* Header on the light hero */
.site-header{color:var(--ink);background:rgba(241,228,197,.72);backdrop-filter:blur(13px);border-bottom:1px solid rgba(17,17,17,.08)}
.site-header.is-scrolled{color:#fff;background:rgba(17,17,17,.91);border-bottom-color:rgba(255,255,255,.1)}
.site-header:not(.is-scrolled) .menu-toggle span{background:var(--ink)}
.site-header.is-scrolled .menu-toggle span{background:#fff}
.site-header:not(.is-scrolled) .header-cta{background:var(--ink);color:#fff}
.site-header:not(.is-scrolled) .header-cta:hover{background:var(--matcha);color:var(--ink)}

/* Hero */
.hero.hero--hype{min-height:96svh;background:var(--paper);color:var(--ink);padding-top:164px;overflow:hidden}
.hero.hero--hype:before{width:58vw;height:58vw;right:-15vw;top:4vh;background:radial-gradient(circle,rgba(151,213,27,.42),rgba(151,213,27,0) 66%);filter:blur(24px)}
.hero.hero--hype:after{background-image:linear-gradient(rgba(17,17,17,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(17,17,17,.055) 1px,transparent 1px);mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 92%)}
.hero--hype .hero__grid{grid-template-columns:minmax(0,1.04fr) minmax(450px,.96fr);gap:28px}
.hero--hype .hero__copy{padding-top:0}
.hero-stickers{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.hero-stickers span{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border:1px solid rgba(17,17,17,.24);border-radius:999px;background:rgba(255,255,255,.28);font-size:.62rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase;transform:rotate(-1.5deg)}
.hero-stickers span:nth-child(2){background:var(--matcha);border-color:var(--matcha);transform:rotate(1.5deg)}
.hero-stickers span:nth-child(3){background:var(--ink);color:#fff;border-color:var(--ink);transform:rotate(-.6deg)}
.hero--hype .kicker{margin-bottom:18px}
.hero--hype .hero-title{max-width:820px;font-size:clamp(3.8rem,5.45vw,6.8rem);line-height:.82;letter-spacing:-.078em}
.hero--hype .hero-title>span{white-space:normal}
.hero--hype .hero-title>span:nth-child(2){color:var(--ink);font-size:.72em;margin-top:.12em}
.hero--hype .hero-title>span:nth-child(3){color:var(--matcha-deep);font-size:.72em;margin-top:.12em;letter-spacing:-.065em}
.hero--hype .hero__lead{color:rgba(17,17,17,.7);font-size:clamp(1rem,1.14vw,1.18rem);max-width:600px}
.hero--hype .hero__actions{gap:12px}
.hero--hype .hero__visual{min-height:620px;isolation:isolate}
.hero-ghost-word{position:absolute;z-index:-1;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-8deg);font-size:clamp(5rem,9.4vw,10rem);font-weight:950;line-height:.8;letter-spacing:-.09em;color:rgba(17,17,17,.055);white-space:nowrap}
.hero--hype .hero-orbit{border-color:rgba(17,17,17,.18)}
.hero--hype .hero-orbit--two{border-color:rgba(37,114,13,.42)}
.hero--hype .hero-drinks{width:min(100%,650px);height:620px}
.hero--hype .hero-drink{filter:drop-shadow(0 32px 22px rgba(55,50,31,.28))}
.hero--hype .hero-drink--main{width:60%;left:20%;bottom:-15px}
.hero--hype .hero-drink--left{width:45%;left:-2%;bottom:0}
.hero--hype .hero-drink--right{width:45%;right:-2%;bottom:-4px}
.hero--hype .hero-badge{background:linear-gradient(145deg,#a5e71a 0%,#8bd10c 100%);color:var(--ink);box-shadow:0 18px 50px rgba(66,87,19,.22)}
.hero-handle{position:absolute;z-index:7;left:50%;bottom:42px;transform:translateX(-50%) rotate(-2deg);padding:9px 17px;border:1px solid rgba(255,255,255,.65);border-radius:999px;background:rgba(255,255,255,.42);backdrop-filter:blur(12px);font-size:.74rem;font-weight:900;letter-spacing:.04em;color:var(--ink)}
.hero--hype .hero-note{color:var(--ink)}
.hero--hype .hero-note--bottom{color:var(--matcha-deep)}
.hero--hype .hero__bottom{color:rgba(17,17,17,.62)}
.hero--hype .hero__line{background:rgba(17,17,17,.22)}

/* Loud separator marquee */
.hype-marquee{height:76px;background:var(--ink);color:var(--paper);overflow:hidden;border-block:1px solid var(--ink)}
.hype-marquee__track{height:100%;width:max-content;display:flex;align-items:center;gap:28px;font-size:clamp(1.2rem,2.2vw,2rem);font-weight:950;letter-spacing:-.025em;text-transform:uppercase;animation:hypeRun 24s linear infinite}
.hype-marquee__track i{font-style:normal;color:var(--matcha);font-size:.75em}
@keyframes hypeRun{to{transform:translateX(-50%)}}

.statement{background:var(--matcha)}
.about{background:var(--paper)}
.specialties{background:var(--cream);border-top-color:rgba(17,17,17,.12)}
.visit,.faq{background:var(--paper)}

/* What’s hot */
.hot-now{position:relative;background:var(--paper);overflow:hidden}
.hot-now:before{content:"";position:absolute;width:38vw;height:38vw;left:-18vw;bottom:-20vw;border-radius:50%;background:rgba(151,213,27,.18);filter:blur(5px)}
.hot-now__heading{position:relative;display:grid;grid-template-columns:1.15fr .55fr;gap:70px;align-items:end;margin-bottom:80px}
.hot-now__heading h2{margin:0;font-size:clamp(3.5rem,6vw,7rem);line-height:.82;letter-spacing:-.075em;text-transform:uppercase}
.hot-now__heading>p{max-width:420px;margin:0 0 8px;color:rgba(17,17,17,.64);font-size:1.06rem}
.hot-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:end}
.hot-card{position:relative;min-height:590px;margin-top:64px;border-radius:36px;background:var(--hot-bg,#eadad4);border:1px solid rgba(17,17,17,.12);overflow:visible;isolation:isolate;outline:none;transition:transform .55s var(--ease),box-shadow .55s var(--ease)}
.hot-card--berry{--hot-bg:#edc9d0}
.hot-card--blue{--hot-bg:#d5d0e8}
.hot-card--coffee{--hot-bg:#dec8a9}
.hot-card:before{content:"";position:absolute;inset:0;z-index:-2;border-radius:inherit;background:var(--hot-bg);overflow:hidden}
.hot-card:after{content:"";position:absolute;inset:auto 0 0;height:48%;z-index:-1;border-radius:0 0 36px 36px;background:linear-gradient(transparent,rgba(17,17,17,.86))}
.hot-card:hover,.hot-card:focus-visible{transform:translateY(-14px) rotate(-.4deg);box-shadow:0 36px 80px rgba(74,60,31,.22)}
.hot-card__word{position:absolute;z-index:0;left:18px;right:18px;top:34px;font-size:clamp(2.45rem,3.75vw,4.4rem);line-height:.82;text-align:center;font-weight:950;letter-spacing:-.075em;color:rgba(17,17,17,.115);word-break:break-word;text-transform:uppercase}
.hot-card__tag{position:absolute;z-index:5;right:18px;top:18px;padding:9px 12px;border-radius:999px;background:var(--ink);color:#fff;font-size:.61rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase;transform:rotate(3deg)}
.hot-card:nth-child(2) .hot-card__tag{background:var(--matcha-deep);transform:rotate(-3deg)}
.hot-card:nth-child(3) .hot-card__tag{background:var(--matcha);color:var(--ink);transform:rotate(2deg)}
.hot-card__drink{position:absolute;z-index:2;left:8%;top:-92px;width:84%;height:76%;object-fit:contain;filter:drop-shadow(0 28px 20px rgba(47,41,24,.25));transform:translateY(var(--lift-y,0px)) rotate(var(--drink-rotate,-2deg));transform-origin:center 60%;transition:transform .65s var(--ease),filter .65s var(--ease);will-change:transform}
.hot-card:nth-child(2) .hot-card__drink{--drink-rotate:2deg;left:6%;width:88%}
.hot-card:nth-child(3) .hot-card__drink{--drink-rotate:-1deg;left:9%;width:82%}
.hot-card:hover .hot-card__drink,.hot-card:focus-visible .hot-card__drink{transform:translateY(calc(var(--lift-y,0px) - 24px)) rotate(0) scale(1.055);filter:drop-shadow(0 36px 25px rgba(47,41,24,.33)) saturate(1.08)}
.hot-card__copy{position:absolute;z-index:4;left:25px;right:25px;bottom:25px;color:#fff}
.hot-card__copy small{display:block;margin-bottom:7px;color:var(--matcha);font-size:.64rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.hot-card__copy h3{max-width:88%;margin:0;font-size:clamp(1.9rem,2.7vw,3.1rem);line-height:.9;letter-spacing:-.06em;text-transform:uppercase}
.hot-card__copy p{margin:12px 0 0;color:rgba(255,255,255,.68);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.hot-card__copy strong{position:absolute;right:0;bottom:0;font-size:1rem}
.hot-now__footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:36px;padding-top:20px;border-top:1px solid rgba(17,17,17,.16)}
.hot-now__footer>span{font-size:.7rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase;color:rgba(17,17,17,.52)}

/* Products intentionally break out of their cards */
.product-grid{row-gap:74px;padding-top:20px}
.product-card{overflow:visible;margin-top:44px;background:var(--card-bg,#eee8dc);isolation:isolate}
.product-card:before{content:"";position:absolute;inset:0;z-index:-2;border-radius:inherit;background:var(--card-bg,#eee8dc);box-shadow:inset 0 0 0 1px rgba(17,17,17,.07)}
.product-card__media{overflow:visible}
.product-card__media:after{border-radius:0 0 var(--radius) var(--radius)}
.product-card:not(.product-card--bagels) .product-card__media img{height:calc(100% + 70px);padding:0 18px 132px;transform:translateY(calc(-52px + var(--product-lift,0px))) rotate(-1deg);filter:drop-shadow(0 28px 19px rgba(26,29,18,.24));will-change:transform}
.product-card:not(.product-card--bagels):nth-child(even) .product-card__media img{transform:translateY(calc(-52px + var(--product-lift,0px))) rotate(1deg)}
.product-card:not(.product-card--bagels):hover .product-card__media img,.product-card:not(.product-card--bagels):focus-visible .product-card__media img{transform:translateY(calc(-76px + var(--product-lift,0px))) rotate(0) scale(1.06);filter:drop-shadow(0 38px 25px rgba(26,29,18,.31)) saturate(1.08)}
.product-card--bagels{overflow:hidden;margin-top:0}
.product-card__price{z-index:6}
.product-card__content,.product-card__hover{z-index:7}

/* Social wall */
.social-wall{position:relative;background:var(--cream);overflow:hidden}
.social-wall:after{content:"@montcha.at";position:absolute;right:-2vw;bottom:-1vw;font-size:15vw;font-weight:950;line-height:.75;letter-spacing:-.09em;color:rgba(17,17,17,.035);pointer-events:none}
.social-wall__heading{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .65fr;gap:80px;align-items:end;margin-bottom:52px}
.social-wall__heading h2{margin:0;font-size:clamp(3.5rem,6vw,7rem);line-height:.82;letter-spacing:-.075em;text-transform:uppercase}
.social-wall__cta{justify-self:end;max-width:420px}
.social-wall__cta p{margin:0 0 25px;color:rgba(17,17,17,.65)}
.social-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:185px;gap:14px}
.social-tile{position:relative;margin:0;border-radius:26px;overflow:hidden;background:#d9cba8;box-shadow:0 18px 42px rgba(87,72,37,.11)}
.social-tile img,.social-tile video{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .6s var(--ease)}
.social-tile:hover img,.social-tile:hover video{transform:scale(1.045);filter:saturate(1.08)}
.social-tile figcaption,.social-tile>span{position:absolute;z-index:2;left:15px;bottom:15px;padding:8px 12px;border-radius:999px;background:rgba(17,17,17,.86);color:#fff;font-size:.62rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.social-tile--video{grid-column:span 5;grid-row:span 3}
.social-tile--tall{grid-column:span 3;grid-row:span 3}
.social-tile--wide{grid-column:span 4;grid-row:span 2}
.social-tile:not(.social-tile--video):not(.social-tile--tall):not(.social-tile--wide){grid-column:span 2;grid-row:span 1}
.social-tile--scan{grid-column:span 4!important;grid-row:span 1!important}
.social-tile--video:after{content:"▶";position:absolute;z-index:2;right:18px;top:18px;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--matcha);color:var(--ink);font-size:.9rem;box-shadow:0 12px 30px rgba(0,0,0,.16)}

/* Mobile quick access */
.mobile-hype-bar{display:none}

@media (max-width:1120px){
  .hero--hype .hero__grid{grid-template-columns:minmax(0,1fr) minmax(390px,.85fr)}
  .hero--hype .hero-title{font-size:clamp(3.45rem,5.25vw,5.8rem)}
  .hero--hype .hero-drinks{height:560px}
  .hot-card{min-height:540px}
  .social-grid{grid-auto-rows:165px}
}

@media (max-width:900px){
  .hero.hero--hype{padding-top:138px}
  .hero--hype .hero__grid{grid-template-columns:1fr}
  .hero--hype .hero-title{font-size:clamp(3.25rem,10.6vw,5.9rem)}
  .hero--hype .hero__visual{min-height:520px}
  .hero--hype .hero-drinks{height:520px;width:min(92vw,620px)}
  .hero--hype .hero__bottom{margin-top:0}
  .hot-now__heading,.social-wall__heading{grid-template-columns:1fr;gap:28px;margin-bottom:48px}
  .hot-now__heading>p,.social-wall__cta{justify-self:start}
  .hot-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding:0 16px 32px;margin-inline:-16px;scrollbar-width:none}
  .hot-grid::-webkit-scrollbar{display:none}
  .hot-card{flex:0 0 min(76vw,430px);scroll-snap-align:center;min-height:570px}
  .hot-now__footer{margin-top:12px}
  .product-grid{row-gap:68px}
  .social-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:250px}
  .social-tile,.social-tile--video,.social-tile--tall,.social-tile--wide,.social-tile--scan,.social-tile:not(.social-tile--video):not(.social-tile--tall):not(.social-tile--wide){grid-column:span 1!important;grid-row:span 1!important}
  .social-tile--video{grid-row:span 2!important}
}

@media (max-width:620px){
  body.home-page{padding-bottom:72px}
  .hero.hero--hype{padding:124px 16px 18px}
  .hero-stickers{margin-bottom:16px}
  .hero-stickers span{font-size:.55rem;min-height:27px;padding-inline:10px}
  .hero--hype .kicker{font-size:.65rem;margin-bottom:15px}
  .hero--hype .hero-title{font-size:12vw;line-height:.84}
  .hero--hype .hero-title>span:nth-child(2),.hero--hype .hero-title>span:nth-child(3){font-size:.76em}
  .hero--hype .hero__lead{font-size:.96rem;line-height:1.5;margin-top:22px}
  .hero--hype .hero__actions{align-items:stretch;width:100%}
  .hero--hype .hero__actions .button{width:100%;justify-content:space-between}
  .hero--hype .hero__visual{min-height:430px;margin-top:20px}
  .hero--hype .hero-drinks{height:430px;width:min(110%,470px)}
  .hero--hype .hero-drink--main{width:61%;left:19.5%}
  .hero--hype .hero-drink--left,.hero--hype .hero-drink--right{width:44%}
  .hero--hype .hero-badge{width:96px;height:96px;right:2px;top:20px}
  .hero--hype .hero-badge svg{width:80px;height:80px}
  .hero-handle{bottom:25px;font-size:.64rem}
  .hero-ghost-word{font-size:24vw}
  .hype-marquee{height:58px}
  .hype-marquee__track{gap:18px;font-size:1.05rem}
  .hot-now__heading h2,.social-wall__heading h2{font-size:3.15rem}
  .hot-card{flex-basis:84vw;min-height:520px;margin-top:55px}
  .hot-card__drink{top:-76px;height:74%}
  .hot-card__copy{left:22px;right:22px;bottom:22px}
  .hot-card__copy h3{font-size:2.15rem}
  .hot-now__footer{align-items:flex-start;flex-direction:column}
  .product-card{margin-top:36px;min-height:500px}
  .product-card:not(.product-card--bagels) .product-card__media img{height:calc(100% + 55px);padding-inline:24px;transform:translateY(calc(-42px + var(--product-lift,0px))) rotate(-1deg)}
  .product-card:not(.product-card--bagels):nth-child(even) .product-card__media img{transform:translateY(calc(-42px + var(--product-lift,0px))) rotate(1deg)}
  .product-card:not(.product-card--bagels):hover .product-card__media img,.product-card:not(.product-card--bagels):focus-visible .product-card__media img{transform:translateY(calc(-56px + var(--product-lift,0px))) rotate(0) scale(1.035)}
  .social-grid{grid-template-columns:1fr;grid-auto-rows:340px}
  .social-tile--video{grid-row:span 1!important}
  .social-wall__cta .button{width:100%;justify-content:space-between}
  .mobile-hype-bar{position:fixed;z-index:1400;left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));height:60px;display:grid;grid-template-columns:1fr 1.25fr 1fr;align-items:stretch;padding:5px;border-radius:20px;background:rgba(17,17,17,.94);box-shadow:0 18px 44px rgba(0,0,0,.28);backdrop-filter:blur(16px)}
  .mobile-hype-bar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#fff;border-radius:15px;font-size:.56rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
  .mobile-hype-bar a>span{font-size:1rem;line-height:1}
  .mobile-hype-bar__main{background:var(--matcha);color:var(--ink)!important;flex-direction:row!important;gap:7px!important}
  .mobile-hype-bar__main .whatsapp-icon{width:16px;height:16px}
}

@media (prefers-reduced-motion:reduce){
  .hype-marquee__track{animation:none}
  .hot-card__drink,.product-card__media img{transform:none!important}
}
/* Social QR tile closes the editorial grid as a full-width strip. */
@media (min-width:901px){
  .social-tile--scan{grid-column:span 12!important;grid-row:span 1!important}
  .social-tile--scan img{object-position:center 56%}
}
/* Cards stay open for the drink silhouette, while the action strip remains hidden until interaction. */
.product-card__hover{opacity:0;visibility:hidden;transform:translateY(18px);border-radius:0 0 var(--radius) var(--radius);transition:transform .5s var(--ease),opacity .3s ease,visibility 0s linear .5s}
.product-card:hover .product-card__hover,.product-card:focus-visible .product-card__hover{opacity:1;visibility:visible;transform:none;transition-delay:0s}

/* v1.6: clean symbol badge and prominent Instagram CTA */
.hero-badge{cursor:pointer;text-decoration:none;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.hero-badge:hover,.hero-badge:focus-visible{transform:translateY(-4px) rotate(1deg);box-shadow:0 24px 58px rgba(66,87,19,.3);outline:none}
.hero-badge__logo{width:62px;height:62px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.hero-badge__logo img{width:100%;height:100%;object-fit:contain;filter:brightness(0) saturate(100%);opacity:.92}
.hero-instagram{display:inline-grid;grid-template-columns:46px auto 34px;align-items:center;gap:12px;min-width:min(100%,365px);margin-top:22px;padding:10px 12px 10px 10px;border:1px solid rgba(17,17,17,.18);border-radius:20px;background:rgba(255,255,255,.42);color:var(--ink);text-decoration:none;box-shadow:0 14px 34px rgba(72,58,24,.09);backdrop-filter:blur(12px);transition:transform .35s var(--ease),background .35s var(--ease),box-shadow .35s var(--ease)}
.hero-instagram:hover,.hero-instagram:focus-visible{transform:translateY(-4px);background:#fff8e7;box-shadow:0 20px 45px rgba(72,58,24,.15);outline:none}
.hero-instagram__icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:var(--ink);color:var(--matcha)}
.hero-instagram__icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8}
.hero-instagram__copy{display:grid;gap:1px;text-align:left}
.hero-instagram__copy small{font-size:.59rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:rgba(17,17,17,.55)}
.hero-instagram__copy strong{font-size:1rem;letter-spacing:-.02em}
.hero-instagram__arrow{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--matcha);font-weight:900;transition:transform .35s var(--ease)}
.hero-instagram:hover .hero-instagram__arrow,.hero-instagram:focus-visible .hero-instagram__arrow{transform:rotate(12deg) scale(1.06)}
@media (max-width:620px){
  .hero-badge__logo{width:46px;height:46px}
  .hero-instagram{width:100%;grid-template-columns:44px auto 32px;margin-top:16px;border-radius:18px}
  .hero-instagram__icon{width:44px;height:44px;border-radius:13px}
  .hero-instagram__copy strong{font-size:.96rem}
}


/* v1.7: SVG-Hero-Symbol – sauber innerhalb des rotierenden Badges */
.hero-badge{
  overflow:hidden;
  isolation:isolate;
  background:linear-gradient(145deg,#a9e91d 0%,#91d40e 100%);
  color:#173d16;
}
.hero-badge>svg{
  inset:6%;
  width:88%;
  height:88%;
  z-index:1;
}
.hero-badge__logo{
  position:absolute;
  left:50%;
  top:50%;
  z-index:2;
  width:40%;
  height:40%;
  max-width:none;
  max-height:none;
  padding:0;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  transform:translate(-50%,-50%);
  pointer-events:none;
}
.hero-badge__logo img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  filter:none;
  opacity:1;
}
@media (max-width:620px){
  .hero-badge__logo{
    width:38%;
    height:38%;
  }
}
