@font-face{font-family:Heebo;src:url('assets/heebo-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Heebo;src:url('assets/heebo-bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--ink:#303c2d;--sage:#e9eddb;--paper:#f8f5eb;--muted:#6b735d;--line:#c9cdbb;--olive:#b9c398;--deep:#334532;--body:Heebo,Arial,sans-serif;--display:Georgia,'Times New Roman',serif;--gutter:clamp(24px,6.25vw,100px)}*{box-sizing:border-box}html{scroll-padding-top:28px}body{margin:0;background:var(--sage);color:var(--ink);font-family:var(--body);font-size:16px;-webkit-font-smoothing:antialiased}button,a,input{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit}button:disabled{cursor:default}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid currentColor;outline-offset:5px}p,h1,h2,h3{margin:0}p{line-height:1.7}svg{width:24px;height:24px;flex:none}img{display:block;max-width:100%}em{font-weight:400}section{scroll-margin-top:24px}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;margin:-1px;overflow:hidden}.skip-link{position:fixed;top:-80px;inset-inline-start:20px;background:var(--ink);color:var(--paper);padding:12px 24px;z-index:30}.skip-link:focus{top:12px}.header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;margin:0 var(--gutter);height:106px;border-bottom:1px solid var(--line);z-index:3}.brand{display:flex;align-items:center;gap:10px;font-family:Arial,sans-serif;letter-spacing:-1.3px;font-weight:700;font-size:25px;min-height:44px}.brand svg{width:32px;height:32px}.desktop-nav{display:flex;align-items:center;gap:36px}.desktop-nav a{display:flex;align-items:center;min-height:44px;font-size:14px;position:relative}.desktop-nav a:after{content:'';position:absolute;inset-inline:0;bottom:8px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:center}.header-actions{display:flex;align-items:center;gap:12px}.language,.saved-control,.mobile-toggle{background:transparent;min-height:44px;min-width:44px}.language{font-family:Arial,sans-serif;font-size:13px;border:1px solid var(--line);border-radius:50%;font-weight:bold}.saved-control{display:flex;align-items:center;gap:7px;padding:6px}.saved-control svg{width:20px;height:20px;fill:none}.saved-count{font-size:12px;min-width:18px}.mobile-toggle,.mobile-nav{display:none}.eyebrow{font-size:11px;letter-spacing:1.4px;font-weight:700;line-height:1.4;text-transform:uppercase}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:5.5%;padding:60px var(--gutter) 56px;max-width:1800px;margin:auto;align-items:center}.hero-copy{padding-block:6px}.hero-copy .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:26px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--deep);display:block;flex:none}.hero h1{font-family:var(--display);font-size:clamp(66px,7.4vw,122px);line-height:.99;font-weight:400;letter-spacing:-6px;margin-bottom:24px}.hero h1 span,.hero h1 em{display:block}.hero h1 em{color:#63754c}.hero-intro{max-width:370px;font-size:15px;line-height:1.8;color:#59614c}.hero-links{display:flex;align-items:center;gap:28px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:15px 24px;min-height:54px;font-size:13px;font-weight:700;white-space:nowrap}.button-dark{background:var(--ink);color:var(--paper)}.button-cream{background:var(--paper);color:var(--ink)}.button svg{width:22px;height:22px}.text-link{font-size:12px;text-decoration:underline;text-underline-offset:5px;background:transparent;min-height:44px;display:inline-flex;align-items:center;padding:0}.hero-foot{display:flex;gap:10px;align-items:center;font-size:11px;margin-top:38px;color:#69745a}.mini-sun{font-size:20px}.hero-art{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0;padding-top:5px}.hero-photo-wrap{position:relative;min-height:520px;aspect-ratio:4/4.7;overflow:hidden;border-radius:46% 46% 1px 1px;background:#d8c6a5}.hero-photo{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.photo-grain{position:absolute;inset:0;box-shadow:inset 0 0 70px #403c2414;pointer-events:none}.sun-seal{position:absolute;inset-inline-start:-49px;top:20px;width:116px;height:116px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;background:#d1ce75;border-radius:50%;transform:rotate(-11deg);color:#3a4527;box-shadow:0 0 0 5px var(--sage)}.sun-seal span{font-size:9px;font-weight:700;letter-spacing:.6px}.sun-seal svg{width:45px;height:45px}.photo-caption{display:flex;justify-content:space-between;gap:12px;padding-top:14px;font-size:9px;color:#717960}.photo-caption span:first-child{font-family:Georgia,serif;font-style:italic}.manifesto-strip{display:flex;align-items:center;justify-content:space-around;gap:24px;padding:23px var(--gutter);background:var(--olive);color:#405039;border-block:1px solid #73845922;font-size:11px;font-weight:700;letter-spacing:1.8px}.manifesto-strip svg{width:22px;height:22px}.section{padding:105px var(--gutter)}h2{font:400 clamp(46px,5.2vw,78px)/1.06 var(--display);letter-spacing:-3px}.story{background:var(--paper);padding-block:92px 102px}.story-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.bean-mark{display:flex;gap:7px;transform:rotate(-20deg);padding:2px 20px 0}.bean-mark span{position:relative;display:block;width:23px;height:37px;border:1.5px solid var(--ink);border-radius:50%;overflow:hidden}.bean-mark span:after{content:'';display:block;position:absolute;inset-inline-start:10px;top:-3px;width:9px;height:42px;border-inline-start:1.5px solid var(--ink);border-radius:50%;transform:rotate(10deg)}.bean-mark span:last-child{transform:translateY(15px) rotate(65deg)}.story h2{font-size:clamp(44px,5.25vw,80px);max-width:1000px;line-height:1.13}.story-bottom{display:grid;grid-template-columns:1fr 1fr;gap:14%;margin-top:48px;align-items:center}.story-bottom>div{max-width:465px;font-size:15px;color:#606853}.story-end{margin-top:20px;color:var(--ink);font-weight:700}.hand-note{font-family:var(--display);font-style:italic;font-size:24px;transform:rotate(-5deg);color:#77825d}.menu{background:var(--paper);padding-top:0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;border-top:1px solid var(--line);padding-top:64px;margin-bottom:50px}.section-heading .eyebrow{margin-bottom:20px}.section-heading>p{max-width:340px;font-size:14px;color:#6d705f}.menu-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:8%}.menu-tabs{display:flex;gap:26px;border-bottom:1px solid var(--line)}.menu-tabs button{background:transparent;padding:13px 1px;min-height:50px;font-size:14px;position:relative;color:#7d806f}.menu-tabs [aria-selected=true]{color:var(--ink);font-weight:700}.menu-tabs [aria-selected=true]:after{content:'';position:absolute;inset-inline:0;bottom:-1px;height:2px;background:var(--ink)}.menu-item{display:grid;grid-template-columns:1fr auto auto;gap:20px;align-items:center;padding-block:25px;border-bottom:1px solid #d9d9ca;min-height:104px}.menu-item h3{font-family:var(--display);font-weight:400;font-size:26px;letter-spacing:-.5px}.menu-item p{font-size:12px;color:#777b68;margin-top:6px}.item-price{font:400 18px var(--display);white-space:nowrap}.favorite-button{width:44px;height:44px;background:transparent;display:grid;place-items:center;border-radius:50%;border:1px solid transparent}.favorite-button svg{width:18px;height:18px;fill:transparent}.favorite-button[aria-pressed=true]{color:#53673d;background:#e8ebd8}.favorite-button[aria-pressed=true] svg{fill:currentColor}.menu-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.menu-bottom>p{font-size:10px;color:#838776}.favorites-open{gap:9px;white-space:nowrap}.favorites-open .saved-count{display:grid;place-items:center;border:1px solid #a1aa8a;border-radius:50%;width:21px;height:21px;font-size:10px}.daily-pick{background:#e3e7cf;padding:28px 35px 26px;position:relative;display:flex;align-items:center;flex-direction:column;text-align:center;overflow:hidden}.daily-pick>.eyebrow{font-size:9px;letter-spacing:2px}.daily-pick h3{font:italic 46px/1.1 var(--display);letter-spacing:-2px;margin:0 0 15px}.daily-pick>p:not(.eyebrow){font-size:12px;max-width:210px;color:#737a60}.daily-stamp{margin-top:25px;padding-top:22px;border-top:1px solid #bfc8a5;width:100%;font-size:8px;letter-spacing:1.3px}.cup-scene{position:relative;width:220px;height:220px;margin-block:12px 3px;display:grid;place-items:center;direction:ltr;isolation:isolate}.saucer{width:181px;height:181px;position:relative;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 42% 34%,#fdfdf3 42%,#d7dbc6 58%,#f2f3e8 61%,#cfd5bf 70%);box-shadow:14px 20px 15px #53653620,1px 2px 2px #6e7c4b44;transform:rotate(-25deg)}.cup{width:132px;height:132px;border-radius:50%;background:#fffff6;display:grid;place-items:center;position:relative;box-shadow:5px 9px 12px #37433033,inset -4px -3px 5px #d6d8c2}.cup-handle{position:absolute;left:137px;top:77px;width:40px;height:28px;background:#fdfdf3;border:6px solid #fffff8;border-radius:7px 50% 50% 6px;box-shadow:3px 6px 9px #37433033}.cup-handle:after{content:'';position:absolute;inset:1px 3px 1px 1px;border-radius:4px 50% 50% 4px;background:#ced4bc}.coffee{border-radius:50%;width:108px;height:108px;background:radial-gradient(ellipse at 40% 45%,#b78242 15%,#ae7334 50%,#915b20 75%);box-shadow:inset 2px 4px 7px #683d3c66;border:2px solid #c6a367;overflow:hidden;display:grid;place-items:center}.latte-art{position:relative;width:59px;height:85px;transform:rotate(25deg)}.latte-art i{position:absolute;width:52px;height:19px;background:#eee5c4;border-radius:50%;left:3px;top:17px;transform:rotate(-4deg)}.latte-art i:after{content:'';position:absolute;inset:-5px 2px 7px;background:#b57d3d;border-radius:50%}.latte-art i:nth-child(2){top:27px;width:50px;left:4px}.latte-art i:nth-child(3){top:37px;width:43px;left:8px}.latte-art i:nth-child(4){top:47px;width:34px;left:12px}.latte-art i:nth-child(5){top:57px;width:22px;left:18px}.latte-art i:nth-child(6){top:11px;left:27px;width:3px;height:64px;border-radius:50%;transform:rotate(-3deg)}.latte-art i:nth-child(6):after{display:none}.brew-calculator{padding:37px;background:#f4f2e4;box-shadow:0 13px 26px #61733e0c;position:relative}.brew-calculator:before{content:'';position:absolute;width:60px;height:25px;background:#c9cc9f99;top:-12px;left:calc(50% - 30px);transform:rotate(-4deg)}fieldset{padding:0;margin:0;border:0;min-width:0}legend{font-size:14px;font-weight:700;padding:0;margin-bottom:18px}.brew-methods{display:flex;gap:7px}.brew-methods label{flex:1;min-width:0;cursor:pointer;position:relative}.brew-methods input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.brew-methods span{display:flex;align-items:center;justify-content:center;border:1px solid #bcc4a8;min-height:45px;padding:10px 6px;font-size:11px;white-space:nowrap}.brew-methods input:checked+span{color:var(--paper);background:var(--ink);border-color:var(--ink)}.brew-methods input:focus-visible+span{outline:2px solid var(--ink);outline-offset:3px}.cups-control{display:flex;align-items:center;justify-content:space-between;padding-block:26px;border-bottom:1px solid var(--line);font-size:14px}.stepper{display:flex;align-items:center;gap:12px;direction:ltr}.stepper button{border:1px solid #c7ccb7;background:transparent;width:44px;height:44px;font-size:20px;display:grid;place-items:center}.stepper button:disabled{opacity:.28}.stepper output{width:20px;text-align:center;font-size:18px}.recipe-result{padding-top:25px}.recipe-result>.eyebrow{font-size:9px;color:#7c8569}.recipe-numbers{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:20px 0 27px;direction:ltr}.recipe-numbers>div{text-align:center}.recipe-numbers strong{font:400 clamp(30px,3.3vw,52px)/1 var(--display);letter-spacing:-2px;display:block}.recipe-numbers span:not(.recipe-divider){display:block;font-size:8px;letter-spacing:.6px;margin-top:10px;white-space:nowrap}.recipe-divider{color:#b6bfa4;font:italic 25px var(--display)}.recipe-meta{display:flex;justify-content:space-between;gap:12px;border-block:1px solid var(--line);padding-block:13px;font-size:10px;color:#6d775a}.recipe-result>p:last-child{font-size:12px;color:#7a806e;line-height:1.8;margin-top:20px;min-height:64px}.visit{background:var(--deep);color:var(--paper);display:grid;grid-template-columns:1.4fr 1fr;gap:18%;padding-block:85px 90px;position:relative;overflow:hidden}.visit-main .eyebrow{color:#b8c59e;margin-bottom:25px}.visit h2{font-size:clamp(50px,5.5vw,84px);margin-bottom:25px}.visit h2 span,.visit h2 em{display:block}.visit h2 em{color:#c5ccac}.visit-main>p:not(.eyebrow){font-size:14px;max-width:340px;color:#c9d0bd}.visit-main .button{margin-top:28px}.visit .visit-small{font-size:10px!important;margin-top:15px;color:#a8b797!important}.visit-details{padding-top:0;position:relative}.visit-sun{width:100px;height:100px;color:#c5ccaa;margin:0 0 25px;display:block}.visit-details h3{color:#a4b390;margin-bottom:18px;font-size:10px}.hours{padding-bottom:23px;border-bottom:1px solid #77846577}.hours>p{display:flex;justify-content:space-between;gap:24px;font-size:12px;margin-top:8px}.address{padding-top:23px}.address>p{font-size:13px;max-width:250px}.address .concept-tag{font-size:10px;color:#a4b390;margin-top:12px}.footer{padding:40px var(--gutter) 28px;background:var(--sage);overflow:hidden}.footer-top{display:flex;align-items:center;justify-content:space-between}.footer-top>p{font-size:13px}.top-link{border:1px solid #b8c1a3;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:20px}.footer-brand{font:700 clamp(64px,15.2vw,236px)/1 Arial,sans-serif;letter-spacing:-.075em;margin:28px -6px 30px;white-space:nowrap;position:relative;display:inline-block}.footer-brand>span{position:absolute;font-size:.1em;letter-spacing:0;inset-inline-end:-1.1em;top:.16em}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:30px;color:#7d856b}.footer-bottom p{font-size:9px}.footer-bottom p:nth-child(2){max-width:320px;text-align:center}dialog{background:var(--paper);color:var(--ink);padding:42px;width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 40px);border:0;box-shadow:0 20px 80px #26391b44;overflow-y:auto}dialog::backdrop{background:#263222aa;backdrop-filter:blur(5px)}dialog h2{font-size:46px;margin-top:20px}.dialog-close{position:absolute;inset-inline-end:16px;top:12px;background:transparent;font-size:30px;width:44px;height:44px;line-height:1}.dialog-sun{width:44px;height:44px}.dialog-intro{font-size:13px;color:#6e755f;margin-top:14px}.favorite-row{display:grid;grid-template-columns:1fr auto 44px;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-block:16px;font-size:15px}.favorite-row .favorite-button{color:#758262}.favorite-total{display:flex;justify-content:space-between;gap:20px;padding-block:20px;font-size:15px}.favorite-note{font-size:11px;color:#858974}.dialog-back{margin-top:20px;width:100%}.favorite-empty{padding-block:30px;color:#717a62}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,16px);opacity:0;background:var(--deep);color:#f7f4e8;font-size:13px;padding:14px 24px;box-shadow:0 5px 25px #14231522;z-index:10;max-width:calc(100vw - 32px);text-align:center;pointer-events:none}.toast.visible{transform:translate(-50%,0);opacity:1}
html[lang=he]{--display:Heebo,Arial,sans-serif}html[lang=he] .eyebrow{letter-spacing:.3px;font-size:12px}html[lang=he] h1,html[lang=he] h2,html[lang=he] h3{letter-spacing:-2.5px}html[lang=he] .hero h1{font-size:clamp(65px,7.4vw,118px);line-height:1.04;font-weight:700;letter-spacing:-4px}html[lang=he] .hero h1 em{font-weight:400;font-style:normal}html[lang=he] .hero-intro{font-size:16px;max-width:355px}html[lang=he] .hero h1 span{white-space:nowrap}html[lang=he] .button svg{transform:rotate(180deg)}html[lang=he] .story h2{font-weight:400;font-size:clamp(42px,5.1vw,77px);line-height:1.22;max-width:780px}html[lang=he] .hand-note{font-size:21px;letter-spacing:-.6px}html[lang=he] .menu-item h3{font-size:25px;letter-spacing:-.7px}html[lang=he] .daily-pick h3{font-size:40px;font-style:normal;letter-spacing:-1.5px}html[lang=he] .recipe-numbers strong{font-family:Georgia,serif}html[lang=he] .recipe-numbers span:not(.recipe-divider){font-size:10px;letter-spacing:0}html[lang=he] .visit h2 em{font-style:normal}html[lang=he] .footer-brand{letter-spacing:-.075em}html[lang=he] dialog h2{font-size:42px;letter-spacing:-2px}
@media(hover:hover){.desktop-nav a:hover:after{transform:scaleX(1)}.button-dark:hover{background:#526346}.button-cream:hover{background:#dbe0c7}.favorite-button:hover{border-color:#b0bd94}.text-link:hover{color:#879260}.language:hover,.saved-control:hover{background:#d9dfc6}.top-link:hover{background:var(--ink);color:var(--paper)}.stepper button:not(:disabled):hover{background:#e4e8d4}.hero-photo-wrap:hover .hero-photo{transform:scale(1.035)}.daily-pick:hover .saucer{transform:rotate(-18deg)}.menu-tabs button:hover{color:var(--ink)}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.hero-copy{animation:arrive .7s cubic-bezier(.23,1,.32,1) both}.hero-art{animation:arrive .85s .12s cubic-bezier(.23,1,.32,1) both}.button,.favorite-button,.language,.saved-control,.top-link,.stepper button,.brew-methods span,.toast{transition:background .22s,color .22s,opacity .22s,transform .22s,border-color .22s}.desktop-nav a:after{transition:transform .25s}.hero-photo{transition:transform .7s cubic-bezier(.2,.65,.25,1)}.saucer{transition:transform .55s cubic-bezier(.2,.65,.25,1)}.menu-item{animation:arrive .3s cubic-bezier(.23,1,.32,1) both}.menu-item:nth-child(2){animation-delay:.04s}.menu-item:nth-child(3){animation-delay:.08s}.menu-item:nth-child(4){animation-delay:.12s}.visit-sun{animation:sun-turn 90s linear infinite}dialog[open]{animation:arrive .25s cubic-bezier(.23,1,.32,1) both}@keyframes arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes seal-turn{50%{transform:rotate(7deg)}100%{transform:rotate(-11deg)}}@keyframes sun-turn{to{transform:rotate(360deg)}}}
@media(prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){.sun-seal:hover{animation:seal-turn .65s cubic-bezier(.77,0,.175,1) both}}
@media(min-width:1600px){.hero{gap:8%;padding-block:76px}.hero-photo-wrap{min-height:650px}.section{padding-inline:max(var(--gutter),calc((100vw - 1440px)/2))}}
@media(max-width:1100px){.header{gap:18px;height:94px}.desktop-nav{gap:22px}.desktop-nav a{font-size:13px}.brand{font-size:21px}.brand svg{width:28px;height:28px}.hero{gap:5%;padding-top:48px}.hero h1{letter-spacing:-4px}.hero-photo-wrap{min-height:470px}.hero-links{gap:20px}.hero-foot{margin-top:26px}.sun-seal{width:94px;height:94px;inset-inline-start:-37px;top:9px}.sun-seal svg{width:36px;height:36px}.sun-seal span{font-size:8px}.photo-caption{font-size:8px}.photo-caption span:first-child{display:none}.section{padding-block:80px}.menu{padding-top:0}.menu-grid{gap:5%;grid-template-columns:1.4fr 1fr}.daily-pick{padding-inline:20px}.menu-item{gap:10px}.menu-item p{font-size:11px}.brew-calculator{padding:26px}.brew-methods span{font-size:10px}.recipe-numbers strong{font-size:40px}.visit{gap:12%}.footer-bottom{gap:20px}html[lang=he] .hero h1{letter-spacing:-3px}}
@media(max-width:820px){:root{--gutter:32px}.header{height:88px}.desktop-nav{gap:18px}.desktop-nav a{font-size:11px}.header-actions{gap:4px}.hero{gap:6%;padding-block:43px 40px}.hero h1{font-size:65px;letter-spacing:-3.5px}.hero .eyebrow{font-size:9px;letter-spacing:.8px}.hero-intro{font-size:14px;line-height:1.7}.hero-links{gap:14px;flex-wrap:wrap;margin-top:22px}.button{gap:18px;padding-inline:19px;font-size:12px}.hero-links>.text-link{font-size:11px}.hero-photo-wrap{min-height:447px}.hero-foot{font-size:9px}.photo-caption{font-size:8px}.manifesto-strip{padding-inline:28px;gap:18px;font-size:9px}.manifesto-strip svg{width:18px;height:18px}.section{padding-block:72px}.story h2{font-size:54px}.story-bottom{gap:8%}.menu{padding-top:0}.section-heading{gap:40px;padding-top:48px;margin-bottom:35px}.section-heading>p{max-width:280px;font-size:12px}.section-heading h2{font-size:50px}.menu-grid{grid-template-columns:1.25fr 1fr;gap:5%}.menu-tabs{gap:17px}.menu-tabs button{font-size:12px}.menu-item h3{font-size:23px}.menu-item{padding-block:19px;min-height:98px}.menu-item p{font-size:10px}.menu-item .item-price{font-size:15px}.daily-pick{padding:24px 15px}.daily-pick h3{font-size:39px}.cup-scene{transform:scale(.88);margin-inline:-6px;width:200px;height:210px}.daily-pick>p:not(.eyebrow){font-size:11px}.daily-stamp{font-size:7px}.menu-bottom{flex-direction:column;align-items:flex-start;gap:2px}.brew-calculator{padding:24px 20px}.brew-methods{gap:5px}.brew-methods span{font-size:10px}.recipe-numbers strong{font-size:35px}.recipe-numbers span:not(.recipe-divider){font-size:7px;letter-spacing:0}.recipe-meta{font-size:9px}.recipe-result>p:last-child{font-size:11px}.visit{gap:10%;grid-template-columns:1.2fr 1fr}.visit h2{font-size:58px}.visit-details{padding-top:12px}.visit-sun{width:85px;height:85px}.hours>p{font-size:10px;gap:12px}.footer-bottom p{font-size:8px}html[lang=he] .hero h1{font-size:65px;letter-spacing:-2.5px}html[lang=he] .hero-intro{font-size:15px}html[lang=he] .hero .eyebrow{font-size:10px}html[lang=he] .story h2{font-size:50px}html[lang=he] .eyebrow{font-size:11px}html[lang=he] .menu-item h3{font-size:22px}html[lang=he] .daily-pick h3{font-size:36px}}
@media(max-width:620px){:root{--gutter:24px}.header{height:79px;gap:10px}.brand{font-size:21px;gap:8px}.brand svg{width:26px;height:26px}.desktop-nav{display:none}.header-actions{gap:3px}.saved-control{gap:3px}.saved-count{min-width:11px}.language{width:42px;min-width:42px;height:42px;min-height:44px;font-size:11px;border:0}.mobile-toggle{display:flex;width:40px;min-width:40px;align-items:center;justify-content:center;flex-direction:column;gap:6px;padding:5px}.mobile-toggle span{display:block;width:20px;height:1px;background:var(--ink)}.mobile-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.mobile-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav:not([hidden]){position:absolute;inset-inline:-24px;top:78px;background:var(--sage);padding:14px 24px 22px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;box-shadow:0 12px 12px #29371e08}.mobile-nav a{padding-block:12px;font-size:20px;min-height:48px}.hero{grid-template-columns:1fr;padding-top:32px;padding-bottom:30px;gap:0}.hero-copy{padding:0}.hero .eyebrow{margin-bottom:20px;font-size:9px}.hero h1{font-size:clamp(67px,17vw,92px);line-height:.96;letter-spacing:-4px;margin-bottom:20px}.hero h1 span{white-space:nowrap}.hero h1 em{display:inline}.hero h1 em:last-child:before{content:' '}.hero-intro{font-size:16px;line-height:1.65;max-width:440px}.hero-links{margin-top:24px;gap:27px;flex-wrap:nowrap}.hero-links .text-link{font-size:12px}.button{min-height:52px;padding-inline:21px;gap:22px;font-size:13px}.hero-foot{display:none}.hero-art{margin-top:36px;margin-inline:23px 0;align-self:auto}.hero-photo-wrap{aspect-ratio:4/3.7;min-height:0;border-radius:47% 47% 1px 1px}.hero-photo{object-position:center 57%}.sun-seal{inset-inline-start:-23px;top:8px;width:87px;height:87px;box-shadow:0 0 0 4px var(--sage)}.sun-seal svg{width:32px;height:32px}.sun-seal span{font-size:8px}.photo-caption{padding-top:11px;font-size:9px;justify-content:flex-end}.manifesto-strip{display:grid;grid-template-columns:1fr 20px 1fr 20px;padding:21px 24px;gap:15px 8px;font-size:9px;text-align:center}.manifesto-strip svg{width:17px;height:17px;justify-self:center}.section{padding-block:58px}.eyebrow{font-size:9px;letter-spacing:1px}.story-top{margin-bottom:24px}.bean-mark{transform:rotate(-20deg) scale(.8);padding:0 8px}.story h2{font-size:clamp(41px,10vw,56px);letter-spacing:-2px;line-height:1.15}.story-bottom{display:flex;flex-direction:column-reverse;align-items:flex-start;gap:22px;margin-top:27px}.story-bottom>div{font-size:16px;line-height:1.7}.story-end{margin-top:15px}.hand-note{font-size:20px;margin-top:12px;align-self:flex-end}.menu{padding-top:0}.section-heading{display:block;padding-top:40px;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:17px}.section-heading h2{font-size:49px;letter-spacing:-2px}.section-heading>p{font-size:16px;margin-top:20px;max-width:none}.menu-grid{grid-template-columns:1fr;gap:30px}.menu-tabs{justify-content:space-between;gap:15px}.menu-tabs button{font-size:14px;min-height:48px}.menu-item{padding-block:23px;gap:12px;min-height:110px}.menu-item h3{font-size:28px}.menu-item p{font-size:16px;line-height:1.6;margin-top:6px}.menu-item .item-price{font-size:18px}.favorite-button{width:44px;height:44px}.menu-item>div{min-width:0}.menu-item p{max-width:230px}.menu-bottom{gap:10px;margin-top:20px}.menu-bottom>p{font-size:12px}.favorites-open{font-size:13px}.daily-pick{padding:25px 27px 22px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;column-gap:5px;text-align:start;align-items:center;min-height:247px}.daily-pick>.eyebrow{grid-column:1/-1;font-size:9px;letter-spacing:1.2px}.daily-pick .cup-scene{grid-column:2;grid-row:2/4;width:170px;height:150px;transform:scale(.85);margin-block:0;margin-inline:0 -20px;justify-self:center}.daily-pick h3{grid-column:1;grid-row:2;font-size:42px;line-height:1.1;letter-spacing:-2px;align-self:end;margin-block:10px 12px}.daily-pick>p:not(.eyebrow){font-size:14px;grid-column:1;grid-row:3;max-width:150px;align-self:start}.daily-stamp{grid-column:1/-1;font-size:8px;padding-top:17px;margin-top:18px;text-align:center}.brew-calculator{padding:30px 22px}.brew-calculator legend{font-size:16px}.brew-methods span{font-size:11px;min-height:48px}.cups-control{font-size:16px;padding-block:24px}.recipe-numbers strong{font-size:43px}.recipe-numbers span:not(.recipe-divider){font-size:8px;margin-top:10px}.recipe-result>.eyebrow{font-size:9px}.recipe-meta{font-size:11px;gap:8px}.recipe-result>p:last-child{font-size:16px;line-height:1.7;margin-top:20px;min-height:0}.recipe-result{padding-top:24px}.recipe-numbers{padding-block:23px}.visit{display:block;padding-block:58px}.visit h2{font-size:58px;letter-spacing:-2.5px}.visit-main .eyebrow{font-size:9px}.visit-main>p:not(.eyebrow){font-size:16px;max-width:400px}.visit .visit-small{font-size:12px!important}.visit-main .button{margin-top:28px}.visit-details{padding-top:48px;display:grid;grid-template-columns:1fr;gap:25px}.visit-sun{position:absolute;inset-inline-end:0;bottom:0;width:70px;height:70px;opacity:.55;margin:0}.hours{padding-bottom:25px}.hours>p{font-size:14px;max-width:100%;margin-top:10px}.visit-details h3{font-size:10px;margin-bottom:15px}.address{padding-top:0}.address>p{font-size:16px;max-width:230px}.address .concept-tag{font-size:11px}.footer{padding-top:26px;padding-bottom:24px}.footer-top>p{font-size:14px}.footer-brand{font-size:clamp(58px,14.7vw,94px);letter-spacing:-.075em;margin:23px -2px 25px}.footer-brand>span{font-size:.13em;inset-inline-end:-1.1em;top:.09em}.footer-bottom{align-items:flex-start;flex-wrap:wrap;gap:13px;padding-top:20px}.footer-bottom p{font-size:10px}.footer-bottom p:nth-child(2){text-align:start;order:3;max-width:100%;font-size:10px}.footer-bottom p:nth-child(3){margin-inline-start:auto}dialog{padding:32px 23px}dialog h2{font-size:44px}.dialog-intro,.favorite-empty{font-size:16px}.favorite-row{font-size:16px}.favorite-note{font-size:12px}.dialog-back{font-size:14px}.toast{bottom:18px;width:max-content;font-size:13px;padding:14px 20px}html[lang=he] .hero h1{font-size:clamp(69px,18vw,100px);letter-spacing:-3.5px;line-height:1.05}html[lang=he] .hero h1 em{font-size:.85em}html[lang=he] .hero h1 em:last-child{display:inline}html[lang=he] .hero-intro{font-size:16px;max-width:none}html[lang=he] .hero .eyebrow{font-size:11px}html[lang=he] .story h2{font-size:43px;letter-spacing:-1.6px;line-height:1.27}html[lang=he] .hand-note{font-size:20px}html[lang=he] .menu-item h3{font-size:25px;letter-spacing:-.7px}html[lang=he] .daily-pick h3{font-size:32px;letter-spacing:-1px}html[lang=he] .daily-pick>p:not(.eyebrow){font-size:14px}html[lang=he] .eyebrow{font-size:11px}html[lang=he] .recipe-result>.eyebrow{font-size:10px}html[lang=he] .recipe-numbers span:not(.recipe-divider){font-size:10px}html[lang=he] .visit h2{font-size:55px;letter-spacing:-2px}html[lang=he] .visit-main .eyebrow{font-size:11px}html[lang=he] .brew-methods span{font-size:13px}html[lang=he] .menu-tabs button{font-size:16px}html[lang=he] .section-heading h2{font-size:46px;letter-spacing:-2px}}

[hidden]{display:none!important}
@media(max-width:620px){.language,.mobile-toggle{width:44px;min-width:44px;min-height:44px}.daily-pick>p:not(.eyebrow),html[lang=he] .daily-pick>p:not(.eyebrow){font-size:16px}}

body:has(dialog[open]){overflow:hidden}
@media(max-width:620px){dialog::backdrop{background:#263222ed;backdrop-filter:none}}

/* The coffee ritual performs the action: steam rises and the selected brewer works. */
.motion-control{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 0;background:transparent;border:0;font-size:12px;color:var(--muted);margin-top:12px}.motion-control>span:first-child{font-size:14px}.hero-foot{margin-top:14px}.motion-control:disabled{opacity:.65}
.cup-scene{isolation:isolate}.steam{position:absolute;inset-inline:0;top:9%;height:48%;z-index:4;pointer-events:none;display:flex;justify-content:center;gap:15px}.steam i{width:15px;height:95px;border-left:2px solid #f8f5eb;border-radius:50%;filter:blur(1.2px);opacity:.65;transform:rotate(12deg)}.steam i:nth-child(2){height:120px;transform:rotate(-12deg)}
.brew-technique{display:none}#brew-visual[data-technique=pour] .method-pour,#brew-visual[data-technique=press] .method-press,#brew-visual[data-technique=aero] .method-aero{display:block}
.brew-replay{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;background:none;border:0;border-bottom:1px solid var(--ink);font-size:13px}.brew-replay:before{content:'↻';font:24px Arial,sans-serif}
@media(prefers-reduced-motion:no-preference){
 .hero-photo-wrap{animation:morning-unfold 1.2s cubic-bezier(.23,1,.32,1) both}.hero-photo-wrap img{animation:morning-settle 1.6s cubic-bezier(.23,1,.32,1) both}
 .steam i{animation:morning-steam 3.2s linear infinite}.steam i:nth-child(2){animation-delay:-1.5s}.steam i:nth-child(3){animation-delay:-.7s}
 @keyframes morning-steam{0%{transform:translateY(25px) rotate(12deg) scaleX(.75);opacity:0}25%{opacity:.65}70%{opacity:.3}100%{transform:translateY(-65px) rotate(-14deg) scaleX(1.5);opacity:0}}
 @keyframes morning-unfold{from{clip-path:inset(0 0 100% 0 round 50% 50% 0 0)}to{clip-path:inset(0 0 0 0 round 50% 50% 0 0)}}
 @keyframes morning-settle{from{transform:scale(1.13)}to{transform:scale(1)}}
}
html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation:none!important;transition:none!important}html[data-motion=off] .steam{opacity:.3}
@media(prefers-reduced-motion:reduce){.steam{opacity:.3}.hero-photo-wrap,.hero-photo-wrap img{animation:none}}
@media(max-width:620px){.motion-control{font-size:12px;margin-top:8px}.hero-links{margin-top:22px}.hero-photo-wrap{animation-duration:.9s}.brew-replay{font-size:16px}}

/* The cup stays transparent. Streams and drops are behind its unfilled outline. */
#brew-liquid{transform-box:view-box;transform-origin:293px 290px;transform:scaleY(.62)}#brew-surface{transform:translateY(-39.68px);opacity:1}
#brew-kettle{transform-box:view-box;transform-origin:223px 112px}
#press-pitcher,#press-fluid{transform-box:view-box;transform-origin:190px 86px}
#aero-fluid{transform-box:view-box;transform-origin:293px 211px}
#brew-coffee-stream,#press-coffee-stream,#aero-coffee-stream{stroke-linecap:round}
.brew-replay:disabled{opacity:.5;cursor:default}

/* 03, the showpiece: the pour follows the scroll until the calculator is touched. These base
   rules are the finished, fully labelled still (no script, reduced motion). The sticky stage
   holds the title, the scene and its captions, so a pinned phone screen is one composed frame.
   The track is taller than the stage by the pin length: 45svh on a phone, one viewport on a
   desktop. The phone is designed first; app.mjs reads this geometry and never sets layout. */
.brew{background:#e4e9d5}
.brew-head .eyebrow{margin-bottom:19px}
.brew-head h2{font-size:51px;letter-spacing:-2px;max-width:290px;text-wrap:balance}
html[lang=he] .brew-head h2{font-size:47px;letter-spacing:-2px;max-width:270px}
.brew-head{margin-bottom:12px}
.brew-head>p{font-size:16px;color:#5d6750;margin-top:16px;max-width:420px}
.brew-track:after{content:'';display:block;height:45vh;height:45svh}
.brew-stage{position:sticky;top:clamp(12px,2.5svh,28px)}
.brew-scene{margin:0}
.pour-art{display:block;width:calc(100% + 2 * var(--gutter));max-width:none;height:auto;margin-inline:calc(-1 * var(--gutter));direction:ltr;overflow:visible}
.brew-line{display:block;position:relative;height:1px;background:#b9c2a2;margin-top:10px}
.brew-line i{position:absolute;inset:-.5px 0;background:var(--ink);transform:scaleX(1);transform-origin:left}
html[dir=rtl] .brew-line i{transform-origin:right}
.brew-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.brew-steps li{position:relative;padding:17px 0 0;padding-inline-end:12px;font-size:16px;line-height:1.35}
.brew-steps li:before,.brew-steps li:after{content:'';position:absolute;top:-4.5px;inset-inline-start:0;width:8px;height:8px;border-radius:50%;box-sizing:border-box}
.brew-steps li:before{border:1.5px solid var(--ink);background:#e4e9d5}
.brew-steps li:after{background:var(--ink)}
.brew-replay{margin-top:14px;align-self:flex-start}
.brew-tools{margin-top:24px}
.brew-tip{font-size:16px;color:#7a806e;margin-top:16px;line-height:1.6}
@media(prefers-reduced-motion:no-preference){
 .brew-steps li,.brew-steps li:after{transition:opacity .25s cubic-bezier(.23,1,.32,1)}
 .brew-steps[data-step="0"] li:nth-child(n+2),.brew-steps[data-step="1"] li:nth-child(3){opacity:.75}
 .brew-steps[data-step="0"] li:nth-child(n+2):after,.brew-steps[data-step="1"] li:nth-child(3):after{opacity:0}
}
@media(min-width:621px){
 .brew-head{margin-bottom:20px}
 .brew-head h2,html[lang=he] .brew-head h2{font-size:clamp(46px,4.6vw,66px);max-width:none}
 .brew-head>p{max-width:420px;font-size:15px;margin-top:14px}
 .brew-stage,.brew-tools{max-width:620px;margin-inline:auto}
 .pour-art{width:100%;margin-inline:0}
 .brew-steps li{font-size:15px}
 .brew-tip{font-size:12px}
 .daily-pick{justify-content:center}
}
@media(min-width:1024px){
 .brew{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:6%;align-items:start}
 .brew-track{grid-column:1}
 .brew-stage,.brew-tools{max-width:none;margin:0}
 .brew-head h2,html[lang=he] .brew-head h2{font-size:clamp(44px,4.2vw,60px)}
 .brew-tools{grid-column:2}
}
/* Desktop: the scene and its calculator share one pinned frame for one viewport, so the
   player is always in view when the calculator is used. Short screens scroll it unpinned. */
@media(min-width:1024px) and (min-height:700px){
 .brew{padding-block:0}
 .brew-track:after{height:100vh}
 .brew-stage{top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;padding:0}
 .pour-art{max-height:calc(100vh - 420px)}
 .brew-tools{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center}
}
@media(min-width:1024px) and (max-height:699px){
 .brew-track:after{display:none}
 .brew-stage{position:static}
}
/* Reduced motion: the finished, labelled still scrolls like any other section, no pin. */
@media(prefers-reduced-motion:reduce){
 .brew-track:after{display:none}
 .brew-stage,.brew-tools{position:static}
}
