/* Maruva landing (maruva.app and /uk/): the v0 layout on the app's light palette
   (apps/mobile/lib/core/theme). Legal and support pages keep style.css. */
@font-face{font-family:"Manrope";font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/manrope-cyrillic-ext.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Manrope";font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/manrope-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/manrope-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Manrope";font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/manrope-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Colour tokens: light is the default, dark follows the app's dark ramp. The
   switch sets html[data-theme]; without it the system preference applies. */
:root{--c-fbf9f3:#fbf9f3;--c-1c1917:#1c1917;--c-ffffff:#ffffff;--c-efece6:#efece6;--c-78716c:#78716c;--c-2f6f4e:#2f6f4e;--c-e8e0d4:#e8e0d4;--c-b45309:#b45309;--c-2f6f4e66:#2f6f4e66;--c-2f6f4e60:#2f6f4e60;--c-57534e:#57534e;--c-a8a29e:#a8a29e;--c-24573d:#24573d;--c-2f6f4e23:#2f6f4e23;--c-e4efe880:#e4efe880;--c-2f6f4e33:#2f6f4e33;--c-292524:#292524;--c-d6d3d1:#d6d3d1;--c-fbf8f1:#fbf8f1;--c-1c191724:#1c191724;--c-2f6f4e22:#2f6f4e22;--c-2f6f4e10:#2f6f4e10;--c-f5f5f4:#f5f5f4;--c-44403c:#44403c;--c-1c191766:#1c191766;--c-e4efe8:#e4efe8;--c-1c191709:#1c191709;--c-2f6f4e24:#2f6f4e24;--c-eef5f0f0:#eef5f0f0;--c-fffffff2:#fffffff2;--c-fefcf8f2:#fefcf8f2;--c-1c191718:#1c191718;--c-1c191715:#1c191715;--c-b4530914:#b4530914;--c-2f6f4e15:#2f6f4e15;--c-fffffff0:#fffffff0;--c-1c19171c:#1c19171c;--c-e7e5e4:#e7e5e4;--c-2f6f4e38:#2f6f4e38;--c-2f6f4e0b:#2f6f4e0b;--c-2f6f4e16:#2f6f4e16;--c-b4530908:#b4530908;--c-b4530915:#b4530915;--c-2f6f4e07:#2f6f4e07;--c-1c19171b:#1c19171b;--c-fffbeb:#fffbeb;--c-b4530922:#b4530922;--c-1c19171a:#1c19171a;--c-2f6f4e20:#2f6f4e20;--c-2f6f4e0a:#2f6f4e0a;--c-2f6f4e0c:#2f6f4e0c;--c-2f6f4e28:#2f6f4e28;--c-fafaf9:#fafaf9;--c-2f6f4e37:#2f6f4e37;--c-2f6f4e44:#2f6f4e44;--c-2f6f4e06:#2f6f4e06;--c-1c191717:#1c191717;--c-ffffffdd:#ffffffdd;--c-2f6f4e2a:#2f6f4e2a;--c-2f6f4e25:#2f6f4e25;--c-2f6f4e1a:#2f6f4e1a;--c-2f6f4e1b:#2f6f4e1b;--c-2f6f4e1c:#2f6f4e1c;--c-2f6f4e3b:#2f6f4e3b;--c-1c191726:#1c191726;--c-1c191799:#1c191799;--c-2f6f4e2b:#2f6f4e2b;--c-fbf9f3f5:#fbf9f3f5;--phone-bezel:#1c1917;}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--c-fbf9f3:#0c0a09;--c-1c1917:#f5f5f4;--c-ffffff:#1c1917;--c-efece6:#292524;--c-78716c:#a8a29e;--c-2f6f4e:#6fbf95;--c-e8e0d4:#2f2b28;--c-b45309:#c08a5e;--c-2f6f4e66:#6fbf9566;--c-2f6f4e60:#6fbf9560;--c-57534e:#d6d3d1;--c-a8a29e:#78716c;--c-24573d:#8ad0ab;--c-2f6f4e23:#6fbf9523;--c-e4efe880:#223a2d80;--c-2f6f4e33:#6fbf9533;--c-292524:#e7e5e4;--c-d6d3d1:#44403c;--c-fbf8f1:#141210;--c-1c191724:#f5f5f424;--c-2f6f4e22:#6fbf9522;--c-2f6f4e10:#6fbf9510;--c-f5f5f4:#292524;--c-44403c:#78716c;--c-1c191766:#000000bb;--c-e4efe8:#223a2d;--c-1c191709:#f5f5f409;--c-2f6f4e24:#6fbf9524;--c-eef5f0f0:#1f3328f0;--c-fffffff2:#26221ff2;--c-fefcf8f2:#1c1917f2;--c-1c191718:#f5f5f418;--c-1c191715:#00000055;--c-b4530914:#c08a5e14;--c-2f6f4e15:#6fbf9515;--c-fffffff0:#1c1917f0;--c-1c19171c:#f5f5f41c;--c-e7e5e4:#44403c;--c-2f6f4e38:#6fbf9538;--c-2f6f4e0b:#6fbf950b;--c-2f6f4e16:#6fbf9516;--c-b4530908:#c08a5e08;--c-b4530915:#c08a5e15;--c-2f6f4e07:#6fbf9507;--c-1c19171b:#f5f5f41b;--c-fffbeb:#221a12;--c-b4530922:#c08a5e22;--c-1c19171a:#00000066;--c-2f6f4e20:#6fbf9520;--c-2f6f4e0a:#6fbf950a;--c-2f6f4e0c:#6fbf950c;--c-2f6f4e28:#6fbf9528;--c-fafaf9:#141210;--c-2f6f4e37:#6fbf9537;--c-2f6f4e44:#6fbf9544;--c-2f6f4e06:#6fbf9506;--c-1c191717:#f5f5f417;--c-ffffffdd:#1c1917dd;--c-2f6f4e2a:#6fbf952a;--c-2f6f4e25:#6fbf9525;--c-2f6f4e1a:#6fbf951a;--c-2f6f4e1b:#6fbf951b;--c-2f6f4e1c:#6fbf951c;--c-2f6f4e3b:#6fbf953b;--c-1c191726:#00000099;--c-1c191799:#000000b3;--c-2f6f4e2b:#6fbf952b;--c-fbf9f3f5:#0c0a09f5;--phone-bezel:#44403c;}}
:root[data-theme=dark]{color-scheme:dark;--c-fbf9f3:#0c0a09;--c-1c1917:#f5f5f4;--c-ffffff:#1c1917;--c-efece6:#292524;--c-78716c:#a8a29e;--c-2f6f4e:#6fbf95;--c-e8e0d4:#2f2b28;--c-b45309:#c08a5e;--c-2f6f4e66:#6fbf9566;--c-2f6f4e60:#6fbf9560;--c-57534e:#d6d3d1;--c-a8a29e:#78716c;--c-24573d:#8ad0ab;--c-2f6f4e23:#6fbf9523;--c-e4efe880:#223a2d80;--c-2f6f4e33:#6fbf9533;--c-292524:#e7e5e4;--c-d6d3d1:#44403c;--c-fbf8f1:#141210;--c-1c191724:#f5f5f424;--c-2f6f4e22:#6fbf9522;--c-2f6f4e10:#6fbf9510;--c-f5f5f4:#292524;--c-44403c:#78716c;--c-1c191766:#000000bb;--c-e4efe8:#223a2d;--c-1c191709:#f5f5f409;--c-2f6f4e24:#6fbf9524;--c-eef5f0f0:#1f3328f0;--c-fffffff2:#26221ff2;--c-fefcf8f2:#1c1917f2;--c-1c191718:#f5f5f418;--c-1c191715:#00000055;--c-b4530914:#c08a5e14;--c-2f6f4e15:#6fbf9515;--c-fffffff0:#1c1917f0;--c-1c19171c:#f5f5f41c;--c-e7e5e4:#44403c;--c-2f6f4e38:#6fbf9538;--c-2f6f4e0b:#6fbf950b;--c-2f6f4e16:#6fbf9516;--c-b4530908:#c08a5e08;--c-b4530915:#c08a5e15;--c-2f6f4e07:#6fbf9507;--c-1c19171b:#f5f5f41b;--c-fffbeb:#221a12;--c-b4530922:#c08a5e22;--c-1c19171a:#00000066;--c-2f6f4e20:#6fbf9520;--c-2f6f4e0a:#6fbf950a;--c-2f6f4e0c:#6fbf950c;--c-2f6f4e28:#6fbf9528;--c-fafaf9:#141210;--c-2f6f4e37:#6fbf9537;--c-2f6f4e44:#6fbf9544;--c-2f6f4e06:#6fbf9506;--c-1c191717:#f5f5f417;--c-ffffffdd:#1c1917dd;--c-2f6f4e2a:#6fbf952a;--c-2f6f4e25:#6fbf9525;--c-2f6f4e1a:#6fbf951a;--c-2f6f4e1b:#6fbf951b;--c-2f6f4e1c:#6fbf951c;--c-2f6f4e3b:#6fbf953b;--c-1c191726:#00000099;--c-1c191799:#000000b3;--c-2f6f4e2b:#6fbf952b;--c-fbf9f3f5:#0c0a09f5;--phone-bezel:#44403c;}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .map-canvas{filter:invert(.93) hue-rotate(180deg)}}
:root[data-theme=dark] .map-canvas{filter:invert(.93) hue-rotate(180deg)}
.theme-switch{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--border);border-radius:50%;background:none;color:var(--c-57534e)}
.theme-switch:hover{color:var(--foreground)}
.theme-switch .ic-sun,:root[data-theme=dark] .theme-switch .ic-moon{display:none}
:root[data-theme=dark] .theme-switch .ic-sun{display:contents}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-switch .ic-moon{display:none}:root:not([data-theme=light]) .theme-switch .ic-sun{display:contents}}
:root {color-scheme:light; --background:var(--c-fbf9f3); --foreground:var(--c-1c1917); --card:var(--c-ffffff); --muted:var(--c-efece6); --muted-foreground:var(--c-78716c); --primary:var(--c-2f6f4e); --border:var(--c-e8e0d4); --chart-1:var(--c-2f6f4e); --amber:var(--c-b45309); --radius:.75rem; }
* {box-sizing:border-box;border-color:var(--border)}
html{scroll-behavior:smooth;scroll-padding-top:30px}
body{margin:0;background:var(--background);color:var(--foreground);font-family:"Manrope",system-ui,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
button,a,input{outline-offset:5px}
button{font:inherit;cursor:pointer}
a{text-decoration:none;color:inherit}
button{color:inherit}
button:disabled{cursor:default}
::selection{background:var(--c-2f6f4e66)}
.section-wrap{max-width:1200px;margin-inline:auto;padding-inline:36px}
.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);position:relative;z-index:2}
.brand{display:flex;align-items:center;font-size:28px;font-weight:650;letter-spacing:-1.5px;gap:8px}
.brand-mark{display:flex;align-items:center;justify-content:center;width:33px;height:37px;border:1px solid var(--c-2f6f4e60);border-radius:10px;color:var(--primary);transform:rotate(-5deg)}
.brand-period{color:var(--primary);margin-left:-8px}
.site-header nav{display:flex;gap:31px;font-size:12px;color:var(--c-57534e)}
.site-header nav a:hover{color:var(--foreground)}
.header-actions{display:flex;align-items:center;gap:24px}
.language-switch{display:flex;gap:8px;font-size:11px;align-items:center}
.language-switch a{color:var(--c-78716c);padding:5px 0}
.language-switch a[aria-current]{color:var(--foreground)}
.language-switch>span{color:var(--c-a8a29e)}
.download-pill{display:inline-flex;align-items:center;justify-content:center;gap:14px;border:0;background:var(--primary);color:var(--c-ffffff);font-size:12px;font-weight:700;padding:12px 20px;border-radius:25px;transition:background .2s,transform .2s}
.download-pill:hover{background:var(--c-24573d);transform:translateY(-2px)}
.hero{display:grid;grid-template-columns:1fr 1fr;min-height:690px;position:relative;padding-top:64px;padding-bottom:45px}
.hero-copy{position:relative;z-index:1}
.beta-pill{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--c-2f6f4e23);background:var(--c-e4efe880);padding:7px 11px;border-radius:30px;font-size:9px;color:var(--c-2f6f4e);white-space:nowrap}
.status-dot{width:5px;height:5px;border-radius:50%;background:var(--c-2f6f4e);display:inline-block;box-shadow:0 0 9px var(--c-2f6f4e33);flex-shrink:0}
.pill-divider{height:9px;width:1px;background:var(--c-2f6f4e66)}
.beta-pill>span:last-child{color:var(--c-57534e)}
h1{font-size:clamp(58px,5.7vw,76px);line-height:1.07;letter-spacing:-4px;font-weight:500;margin:28px 0 25px;position:relative}
h1>span:first-of-type{color:var(--primary)}
.headline-star{font-size:45px;font-weight:300;display:inline-block;margin-left:22px;vertical-align:top;padding-top:9px;color:var(--primary)}
.hero-description{max-width:407px;color:var(--c-57534e);font-size:14px;line-height:1.85;margin:0 0 28px}
.store-buttons{display:flex;gap:11px}
.store-button{display:flex;align-items:center;text-align:left;gap:11px;background:var(--c-1c1917);color:var(--c-ffffff);border:1px solid var(--c-1c1917);border-radius:9px;padding:10px 14px;min-width:174px;transition:transform .25s,background .25s}
.store-button:hover{transform:translateY(-3px);background:var(--c-292524)}
.store-button>span{display:flex;flex-direction:column;gap:0}
.store-button small{font-size:9px;font-weight:500}
.store-button b{font-size:17px;line-height:1.3;letter-spacing:-.3px;font-weight:650}
.store-button>svg:last-child{margin-left:auto;align-self:flex-start;margin-top:3px;width:12px}
.store-button:nth-child(2){background:var(--c-ffffff);color:var(--foreground);border-color:var(--c-d6d3d1)}
.store-button:nth-child(2):hover{background:var(--c-fbf8f1)}
.trust-line{display:flex;align-items:center;gap:6px;color:var(--c-78716c);font-size:8px;margin-top:15px}
.trust-line>svg{color:var(--primary)}
.explore-link{display:flex;gap:11px;align-items:center;margin-top:39px;font-size:11px;color:var(--c-57534e)}
.explore-link>span{display:grid;place-items:center;border:1px solid var(--c-1c191724);border-radius:50%;width:30px;height:30px}
.hero-scene{position:relative;min-width:0;margin:-30px -65px -25px -18px;isolation:isolate}
.ritual-image{object-fit:cover;object-position:65% 50%;opacity:.92;mask-image:linear-gradient(to right,transparent,#000 25%),linear-gradient(to bottom,transparent,#000 20%,#000 80%,transparent);mask-composite:intersect;z-index:-3}
.scene-glow{position:absolute;inset:40px 55px 80px;background:radial-gradient(ellipse,var(--c-2f6f4e22),transparent 67%);z-index:-2}
.orbit{position:absolute;inset:65px 30px 90px;border:1px solid var(--c-2f6f4e10);border-radius:50%;transform:rotate(-30deg);z-index:-1}
.orbit-two{inset:25px 70px 50px;transform:rotate(30deg)}
.phone-stage{position:relative;display:flex;justify-content:center;padding-top:20px;transform:rotate(8deg);margin-left:20px}
.phone{width:257px;height:494px;background:linear-gradient(130deg,var(--c-ffffff),var(--c-f5f5f4) 80%);border:5px solid var(--phone-bezel);border-radius:40px;box-shadow:0 0 0 1px var(--c-44403c),5px 7px 0 #0c0a09,20px 28px 45px var(--c-1c191766);overflow:hidden;flex-shrink:0;padding:0 13px;position:relative}
.phone-status{display:flex;justify-content:space-between;align-items:center;height:38px;font-size:10px;padding:0 5px;position:relative}
.phone-status>span:last-child{display:flex;gap:3px}
.island{position:absolute;background:#0c0a09;width:78px;height:21px;border-radius:20px;left:50%;top:6px;transform:translateX(-50%)}
.phone-greeting{padding:13px 2px 15px}
.phone-greeting>span{color:var(--c-78716c);font-size:8px}
.phone-greeting>div{display:flex;justify-content:space-between;align-items:center;margin-top:6px}
.phone-greeting h3{font-size:21px;letter-spacing:-.6px;margin:0;font-weight:500}
.avatar{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:11px;background:var(--c-e4efe8);color:var(--primary)}
.drink-tabs{display:flex;gap:3px;background:var(--c-f5f5f4);border:1px solid var(--c-1c191709);border-radius:8px;padding:4px;max-width:310px;margin-inline:auto}
.drink-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;border:0;background:none;border-radius:5px;font-size:10px;color:var(--c-57534e);padding:7px 2px;transition:background .2s}
.drink-tabs button.selected{background:var(--c-e4efe8);color:var(--c-24573d)}
.radar-chart{height:190px!important;width:100%;aspect-ratio:auto!important;min-width:0}
.phone .radar-chart{height:179px!important}
.radar-wrap{margin-inline:-11px}
.flavor-caption{font-size:8px;display:flex;justify-content:center;align-items:center;gap:5px;color:var(--c-78716c);margin-top:-3px}
.flavor-caption i{width:4px;height:4px;border-radius:50%;background:var(--primary)}
.phone-recommend{margin-top:17px;padding:11px 10px;border:1px solid var(--c-2f6f4e24);background:var(--c-eef5f0f0);border-radius:9px}
.mini-label{display:flex;justify-content:space-between;font-size:7px;letter-spacing:1px;color:var(--c-2f6f4e)}
.recommend-inner{display:flex;gap:9px;align-items:center;margin-top:10px}
.tea-icon{height:35px;width:35px;border-radius:8px;display:grid;place-items:center;background:var(--c-e4efe8);color:var(--c-2f6f4e)}
.recommend-inner b{display:block;font-size:11px;font-weight:500}
.recommend-inner small{display:block;font-size:7px;color:var(--c-57534e);margin-top:3px}
.match-score{font-size:8px;display:flex;justify-content:space-between;color:var(--primary);margin-top:10px}
.phone-nav{display:flex;justify-content:space-between;margin-top:16px;padding:0 3px}
.phone-nav>span{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--c-a8a29e)}
.phone-nav>span:first-child{color:var(--primary)}
.phone-nav small{font-size:6px}
.home-indicator{height:3px;width:75px;background:var(--c-d6d3d1);margin:12px auto 0;border-radius:3px}
.floating-note{position:absolute;display:flex;align-items:center;gap:10px;background:linear-gradient(120deg,var(--c-fffffff2),var(--c-fefcf8f2));border:1px solid var(--c-1c191718);backdrop-filter:blur(14px);padding:12px;border-radius:12px;box-shadow:0 12px 30px var(--c-1c191715)}
.coffee-note{top:103px;left:-11px;transform:rotate(-7deg)}
.floating-icon{width:34px;height:36px;display:grid;place-items:center;border-radius:9px;background:var(--c-b4530914);color:var(--c-b45309)}
.floating-note small{display:block;font-size:7px;color:var(--c-57534e);letter-spacing:.5px;margin-bottom:5px}
.floating-note b{display:block;font-size:9px;font-weight:500}
.floating-note>svg{color:var(--c-57534e);margin-left:8px}
.match-note{right:17px;bottom:186px;transform:rotate(6deg)}
.green{color:var(--c-2f6f4e);background:var(--c-2f6f4e15)}
.floating-note .green-text{color:var(--primary);display:flex;gap:4px;margin:5px 0 0;font-size:8px;letter-spacing:0}
.hero-qr{position:absolute;bottom:9px;left:80px;display:flex;align-items:center;gap:13px;background:var(--c-fffffff0);border:1px solid var(--c-1c19171c);border-radius:12px;padding:11px 15px;backdrop-filter:blur(12px);text-align:left}
.qr-code{padding:5px;background:var(--c-1c1917);border:1px solid var(--c-e7e5e4);border-radius:6px}
.hero-qr b{font-size:11px;font-weight:500}
.hero-qr small{display:block;color:var(--c-78716c);font-size:9px;margin-top:6px}
.qr-platforms{display:flex;align-items:center;gap:8px;color:var(--c-2f6f4e);font-size:9px;margin-top:10px}
.numbers{display:grid;grid-template-columns:1.2fr repeat(4,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding-block:25px;align-items:center;gap:20px}
.numbers>div{display:flex;flex-direction:column;gap:6px;padding-left:25px;border-left:1px solid var(--border)}
.numbers>.numbers-intro{border:0;padding-left:0;gap:3px}
.numbers-intro span,.numbers-intro b{font-size:12px!important;letter-spacing:0!important}
.numbers-intro span{color:var(--c-78716c)}
.numbers b{font-size:27px;letter-spacing:-1px;font-weight:500}
.numbers b>span{font-size:21px;color:var(--primary)}
.numbers small{font-size:9px;color:var(--c-78716c)}
.tour{padding-top:78px}
.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:27px}
.eyebrow{font-size:9px;font-weight:500;letter-spacing:1.9px;color:var(--c-2f6f4e);display:block}
.section-top h2{font-size:29px;letter-spacing:-1px;font-weight:450;margin:13px 0 0;line-height:1.4}
.section-top>p{max-width:250px;font-size:11px;line-height:1.8;color:var(--muted-foreground);margin:0 0 3px}
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:15px}
.feature{position:relative;border:1px solid var(--border);background:linear-gradient(130deg,var(--c-ffffff),var(--c-fbf8f1));border-radius:16px;padding:23px;overflow:hidden;grid-column:span 2;display:flex;flex-direction:column;transition:border-color .3s}
.feature:hover{border-color:var(--c-2f6f4e38)}
.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.feature-icon{width:34px;height:34px;display:grid;place-items:center;background:var(--c-2f6f4e0b);color:var(--c-2f6f4e);border:1px solid var(--c-2f6f4e16);border-radius:10px}
.feature-icon.amber{color:var(--c-b45309);background:var(--c-b4530908);border-color:var(--c-b4530915)}
.micro-tag{display:flex;align-items:center;gap:5px;font-size:7px;color:var(--c-78716c);letter-spacing:.8px}
.feature h3{font-size:18px;letter-spacing:-.5px;font-weight:500;margin:18px 0 9px;line-height:1.4}
.feature>p,.streak-card p{color:var(--c-78716c);font-size:11px;line-height:1.8;margin:0}
.flavor-preview{margin-top:23px}
.card-bottom{margin-top:auto;padding-top:19px;font-size:8px;display:flex;align-items:center;gap:6px;color:var(--c-78716c)}
.timer-card{background:linear-gradient(130deg,var(--c-ffffff),var(--c-fbf8f1))}
.timer-preview{padding-top:22px}
.timer-title{display:flex;align-items:center;gap:8px;color:var(--c-57534e);font-size:10px}
.timer-title>span{margin-left:auto;font-size:8px;color:var(--c-78716c)}
.timer-face{height:126px;width:126px;border-radius:50%;margin:17px auto 12px;padding:2px;background:conic-gradient(var(--c-2f6f4e) var(--progress),var(--c-e7e5e4) 0);box-shadow:0 0 30px var(--c-2f6f4e07)}
.timer-face>div{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;height:100%;background:var(--c-ffffff)}
.timer-number{font-size:32px;font-weight:400;letter-spacing:1px;font-variant-numeric:tabular-nums}
.timer-number em{font-style:normal;color:var(--c-78716c)}
.timer-face small{font-size:8px;color:var(--c-78716c);margin-top:4px}
.timer-step{text-align:center;color:var(--c-57534e);font-size:9px}
.step-bars{display:flex;gap:5px;justify-content:center;margin:12px auto;width:110px}
.step-bars>span{height:3px;flex:1;background:var(--c-e7e5e4);border-radius:3px}
.step-bars>span.active{background:var(--primary)}
.timer-actions{display:flex;align-items:center;justify-content:center;gap:8px}
.play-button{display:flex;justify-content:center;align-items:center;gap:8px;background:var(--c-2f6f4e);color:var(--c-ffffff);border:0;border-radius:6px;padding:8px 20px;font-size:9px;font-weight:650}
.reset-button{border:1px solid var(--c-1c19171b);border-radius:6px;padding:7px;background:transparent;color:var(--c-57534e)}
.catalog-card{background:linear-gradient(140deg,var(--c-fffbeb),var(--c-fbf8f1))}
.coffee-product{position:relative;display:flex;justify-content:center;min-height:180px;margin-top:14px;background:radial-gradient(ellipse,var(--c-b4530922),transparent 64%)}
.coffee-bag{width:104px;height:153px;background:linear-gradient(110deg,#a7956f,#d0bf9c 30%,#b1a080 85%,#7e7259);border-radius:4px 4px 12px 9px;box-shadow:8px 12px 25px var(--c-1c19171a);transform:rotate(-8deg);margin-top:10px;position:relative;clip-path:polygon(3% 0,97% 0,96% 8%,100% 96%,92% 100%,7% 100%,0 94%,5% 8%);color:#393b2e;padding:12px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:9px}
.coffee-bag>span{font-size:8px;letter-spacing:2px;font-weight:700;line-height:1.2}
.coffee-bag small{display:block;font-size:4px;letter-spacing:1px}
.coffee-bag>div{background:#f0e8d6;width:91px;padding:9px 4px;font-size:7px;letter-spacing:1px;margin:1px -5px;color:#414536;border-bottom:5px solid #7c8a5d}
.coffee-bag b{font-size:12px}
.coffee-bag>div small{margin-top:4px}
.product-match{position:absolute;right:0;top:16px;display:flex;gap:5px;background:var(--c-e4efe8);color:var(--c-2f6f4e);font-size:8px;padding:6px 8px;border:1px solid var(--c-2f6f4e22);border-radius:20px}
.product-spec>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:10px}
.product-spec b{font-size:12px;font-weight:500}
.product-spec>div>span{font-size:11px}
.product-spec small{color:var(--c-78716c);font-size:8px}
.product-spec p{font-size:8px;color:var(--c-78716c);display:flex;align-items:center;gap:7px}
.product-spec p i{width:2px;height:2px;background:var(--c-78716c);border-radius:50%}
.taste-tags{display:flex;gap:5px;margin-top:12px}
.taste-tags>span{font-size:7px!important;border:1px solid var(--c-2f6f4e20);padding:4px 8px;border-radius:4px;color:var(--c-57534e)}
.assistant-card,.shelf-card{grid-column:span 3}
.sample-chat{display:flex;align-items:flex-start;gap:12px;margin-top:13px}
.barista-avatar{flex-shrink:0;display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:var(--c-e4efe8);color:var(--primary)}
.sample-chat p{font-size:11px;line-height:1.9;color:var(--c-57534e);border-radius:0 10px 10px 10px;background:var(--c-f5f5f4);border:1px solid var(--c-2f6f4e0a);margin:0;padding:12px 15px}
.recipe-button{display:flex;align-items:center;justify-content:center;gap:9px;background:var(--c-2f6f4e0c);border:1px solid var(--c-2f6f4e28);color:var(--c-2f6f4e);padding:10px 12px;border-radius:7px;font-size:10px;margin:15px 0 10px 43px}
.recipe-button>svg:last-child{margin-left:auto}
.muted-note{display:block;color:var(--c-78716c);font-size:8px;margin-top:5px}
.assistant-card .muted-note{padding-left:43px}
.scan-preview{display:flex;align-items:center;gap:20px;padding:24px 17px;margin-top:23px;background:var(--c-fafaf9);border:1px dashed var(--c-2f6f4e37);border-radius:10px;text-align:left}
.scan-frame{position:relative;padding:12px;color:var(--c-2f6f4e);border:1px solid var(--c-2f6f4e44);border-radius:9px;background:var(--c-2f6f4e06);overflow:hidden}
.scan-frame:after{content:'';height:1px;background:var(--c-2f6f4e);position:absolute;inset:30% 0 auto;box-shadow:0 0 10px var(--c-2f6f4e);animation:scan 3s ease-in-out infinite}
.scanned .scan-frame:after{display:none}
.scan-preview b{font-size:11px;font-weight:500;display:block}
.scan-preview small{display:block;margin-top:6px;font-size:9px;color:var(--c-78716c)}
.freshness-bar{display:block;height:3px;background:linear-gradient(to right,var(--c-2f6f4e) 84%,var(--c-2f6f4e20) 84%);border-radius:3px;margin-top:12px}
.map-card{grid-column:span 3;padding-bottom:0}
.map-preview{margin:18px -23px 0;height:180px;position:relative}
.map-canvas{height:100%;width:100%;background:var(--c-fbf8f1);z-index:0}
.map-label{position:absolute;bottom:15px;left:20px;background:var(--c-fffffff0);display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--c-1c191717);border-radius:6px;font-size:8px;color:var(--c-57534e);z-index:1}
.map-canvas{object-fit:cover;object-position:center;display:block}
.map-attribution{position:absolute;right:0;bottom:0;z-index:1;font-size:7px;padding:2px 5px;background:var(--c-ffffffdd);color:var(--c-57534e)}
.map-attribution a{color:var(--c-2f6f4e)}
.streak-card{grid-column:span 3;display:flex;flex-direction:row;justify-content:space-between;align-items:center}
.streak-card>div:first-child{flex:1}
.streak-card .card-top{justify-content:flex-start;gap:13px}
.streak-button{display:flex;align-items:center;gap:8px;border:1px solid var(--c-2f6f4e2a);background:var(--c-2f6f4e0a);border-radius:8px;padding:11px 13px;font-size:12px;color:var(--primary);margin:25px 0 12px}
.streak-button>span{margin-left:20px}
.sprout-visual{display:flex;align-items:center;flex-direction:column;width:150px;position:relative;transition:transform .5s;transform-origin:bottom center}
.sprout-visual>svg{width:142px;height:165px;color:var(--c-2f6f4e);filter:drop-shadow(0 0 22px var(--c-2f6f4e25));position:relative;z-index:1}
.soil{background:radial-gradient(ellipse,#66523b 0,#3c3023 30%,transparent 70%);width:140px;height:35px;margin-top:-25px;transform:rotate(-7deg)}
.tour-note{text-align:center;color:var(--c-78716c);font-size:9px;padding-top:20px}
.philosophy{padding-top:95px;padding-bottom:75px}
.philosophy-heading{text-align:center}
.philosophy h2{font-weight:450;font-size:34px;letter-spacing:-1px;margin:14px 0}
.philosophy-heading>p{color:var(--c-78716c);font-size:12px}
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:40px}
.trust-grid>div{border-top:1px solid var(--c-2f6f4e1a);padding-top:24px}
.trust-grid svg{color:var(--primary)}
.trust-grid h3{font-size:14px;font-weight:500;margin:17px 0 9px}
.trust-grid p{font-size:11px;line-height:1.9;color:var(--c-78716c);max-width:285px}
.download-section{position:relative;overflow:hidden;border-block:1px solid var(--c-2f6f4e1b);background:radial-gradient(ellipse at bottom,var(--c-2f6f4e1c),transparent 70%);text-align:center;padding-top:55px;padding-bottom:55px}
.download-section h2{font-size:40px;letter-spacing:-1.6px;font-weight:450;line-height:1.25;margin:17px 0}
.download-section h2>span{color:var(--primary)}
.download-section p{font-size:12px;color:var(--c-78716c);margin:0 0 25px}
.download-section .store-buttons{justify-content:center}
.download-section>small{display:block;font-size:9px;color:var(--c-78716c);margin-top:17px}
.download-art{position:absolute;left:-30px;bottom:-40px;transform:rotate(25deg);pointer-events:none}
.download-art svg{width:270px;height:270px;color:var(--c-2f6f4e0b)}
footer{padding-top:40px;padding-bottom:30px}
.footer-top{display:flex;align-items:center;gap:30px}
.footer-top .brand{font-size:24px}
.footer-top .brand-mark{width:28px;height:31px}
.footer-top>p{font-size:11px;color:var(--c-78716c)}
.footer-top>a:last-child{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:11px;color:var(--c-2f6f4e)}
.footer-social{margin-left:auto;display:flex;gap:6px}
.footer-social a{display:flex;padding:5px;color:var(--c-78716c)}
.footer-social a:hover{color:var(--foreground)}
.footer-top>.footer-social+a{margin-left:0}
.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--border);margin-top:28px;padding-top:23px;color:var(--c-78716c);font-size:9px}
.footer-bottom>div{display:flex;gap:22px}
.footer-bottom a{color:var(--c-78716c);font-size:9px}
.mobile-install{display:none}
.beta-dialog{position:fixed;margin:auto;max-width:440px;width:calc(100% - 32px);padding:35px;border:1px solid var(--c-2f6f4e3b);border-radius:20px;background:var(--c-ffffff);color:var(--foreground);box-shadow:0 30px 100px var(--c-1c191726)}
.beta-dialog::backdrop{background:var(--c-1c191799);backdrop-filter:blur(9px)}
.close-dialog{position:absolute;right:15px;top:15px;border:0;background:transparent;color:var(--c-57534e);padding:5px}
.dialog-symbol{display:grid;place-items:center;background:var(--c-2f6f4e15);color:var(--primary);width:60px;height:60px;border-radius:16px;margin-bottom:25px}
.beta-dialog h2{font-size:29px;letter-spacing:-1px;line-height:1.2;margin:14px 0 18px}
.beta-dialog p{font-size:13px;line-height:1.9;color:var(--c-57534e)}
.beta-dialog .download-pill{margin-top:12px;width:100%;padding:15px}
.beta-dialog small{display:block;text-align:center;font-size:9px;margin-top:15px;color:var(--c-78716c)}
.beta-dialog>a:not(.download-pill){display:flex;align-items:center;gap:8px;color:var(--primary)}
@keyframes scan{0%,100%{top:20%}
50%{top:80%}
}
@media(min-width:1440px){.section-wrap{max-width:1280px;padding-inline:42px}
.hero{min-height:740px;padding-top:80px}
h1{font-size:82px}
.hero-description{font-size:15px}
.hero-scene{margin-top:-35px}
.phone-stage{padding-top:30px}
.phone{transform:scale(1.07);transform-origin:top center}
.hero-qr{bottom:5px}
.match-note{bottom:180px}
.coffee-note{top:120px}
}
@media(max-width:1050px){.section-wrap{padding-inline:28px}
.hero-scene{margin-right:-28px}
.hero{padding-top:50px;min-height:650px}
h1{font-size:65px}
.headline-star{font-size:36px;margin-left:10px}
.hero-description{max-width:345px;font-size:12px}
.hero .store-buttons{gap:8px}
.hero .store-button{min-width:153px;padding:9px 11px}
.hero .store-button b{font-size:15px}
.trust-line{font-size:7px}
.phone-stage{margin-left:0}
.coffee-note{left:-13px;top:100px;padding:9px}
.coffee-note b{font-size:8px}
.match-note{right:0;bottom:145px}
.hero-qr{left:40px;bottom:7px}
.section-top h2{font-size:25px}
.feature{padding:18px}
.feature h3{font-size:16px}
.feature>p{font-size:10px}
.feature .micro-tag{font-size:6px}
.map-preview{margin-inline:-18px}
.numbers>div{padding-left:17px}
.numbers{gap:12px}
.numbers small{font-size:8px}
.sprout-visual{width:110px}
.sprout-visual>svg{width:115px}
.trust-grid{gap:25px}
}
@media(max-width:760px){.section-wrap{padding-inline:22px}
.site-header{height:78px}
.site-header nav{display:none}
.header-actions{gap:17px}
.site-header .download-pill{font-size:10px;padding:10px 14px;gap:8px}
.brand{font-size:26px}
.hero{grid-template-columns:1fr;padding-top:37px;padding-bottom:30px;overflow:hidden}
.hero-copy{text-align:center}
.beta-pill{font-size:8px;padding:7px 10px}
h1{font-size:65px;letter-spacing:-3.5px;margin:27px 0 23px;line-height:1.07}
.headline-star{font-size:36px;position:absolute;margin-left:12px}
.hero-description{font-size:12px;line-height:1.85;max-width:370px;margin:0 auto 25px}
.hero .store-buttons{justify-content:center;gap:9px}
.hero .store-button{min-width:157px}
.hero .store-button b{font-size:16px}
.trust-line{justify-content:center;font-size:7px;gap:5px}
.explore-link{display:none}
.hero-scene{height:595px;margin:25px -22px -10px;min-width:0}
.ritual-image{object-position:center;opacity:.8}
.phone-stage{padding-top:25px;margin-left:0;transform:rotate(7deg)}
.phone{width:250px;height:490px}
.coffee-note{left:12px;top:120px}
.match-note{right:13px;bottom:145px}
.hero-qr{bottom:0;left:50%;transform:translateX(-50%);width:275px}
.numbers{grid-template-columns:1fr 1fr;padding-block:23px;gap:22px 12px;margin-inline:22px;padding-inline:0}
.numbers>.numbers-intro{display:none}
.numbers>div{padding-left:0;border-left:0;text-align:center}
.numbers b{font-size:28px}
.numbers small{font-size:9px}
.numbers>div:nth-child(odd){border-left:1px solid var(--border)}
.tour{padding-top:48px}
.section-top{display:block;margin-bottom:25px}
.section-top h2{font-size:29px;line-height:1.25;max-width:310px;letter-spacing:-1px;margin-top:14px}
.section-top>p{font-size:11px;max-width:310px;margin-top:14px}
.eyebrow{font-size:8px;letter-spacing:1.5px}
.bento{grid-template-columns:1fr;gap:13px}
.feature,.assistant-card,.shelf-card,.map-card,.streak-card{grid-column:auto;padding:23px}
.feature h3{font-size:21px}
.feature>p,.streak-card p{font-size:12px}
.feature .micro-tag{font-size:8px}
.flavor-preview{max-width:310px;width:100%;margin:23px auto 0}
.radar-chart{height:215px!important}
.feature .card-bottom{font-size:9px}
.timer-title{font-size:12px}
.timer-title>span{font-size:9px}
.timer-face{width:145px;height:145px}
.timer-number{font-size:37px}
.timer-step{font-size:11px}
.play-button{font-size:11px;padding:10px 25px}
.timer-actions{margin-top:17px}
.coffee-product{min-height:205px}
.coffee-bag{transform:rotate(-8deg) scale(1.12);margin-top:18px}
.product-match{font-size:10px;right:20px;top:30px}
.product-spec b{font-size:15px}
.product-spec p{font-size:9px}
.product-spec>div>span{font-size:13px}
.taste-tags>span{font-size:9px!important}
.sample-chat p{font-size:12px}
.recipe-button{font-size:10px;padding:12px}
.scan-preview{gap:15px;padding:20px 14px}
.scan-preview b{font-size:10px}
.map-card{padding-bottom:0}
.map-preview{margin-inline:-23px;height:200px}
.streak-card{min-height:260px}
.sprout-visual{width:105px}
.sprout-visual>svg{width:115px}
.streak-card h3{font-size:20px}
.streak-card .micro-tag{font-size:6px}
.streak-card p{max-width:185px;font-size:11px}
.streak-button{font-size:11px;padding:10px;gap:5px}
.streak-button>span{margin-left:8px}
.tour-note{font-size:8px;line-height:1.7;padding-inline:20px}
.philosophy{padding-block:60px 45px}
.philosophy h2{font-size:30px;line-height:1.25}
.philosophy-heading>p{font-size:11px;line-height:1.8}
.trust-grid{grid-template-columns:1fr;gap:20px;margin-top:30px}
.trust-grid>div{padding-top:20px}
.trust-grid h3{font-size:16px;margin-top:13px}
.trust-grid p{max-width:none;font-size:12px}
.download-section{padding-top:40px;padding-bottom:45px}
.download-section h2{font-size:30px;letter-spacing:-1px}
.download-section p{font-size:11px}
.download-section .store-button{min-width:150px;padding:10px;gap:8px}
.download-section .store-button b{font-size:16px}
.footer-top{flex-wrap:wrap;gap:14px}
.footer-top>p{display:none}
.footer-top>a:last-child{font-size:10px}
.footer-bottom{flex-direction:column;gap:20px;line-height:1.6}
footer{padding-bottom:105px}
.mobile-install{display:flex;position:fixed;bottom:0;left:0;right:0;padding:12px 20px calc(12px + env(safe-area-inset-bottom));align-items:center;gap:12px;border-top:1px solid var(--c-2f6f4e2b);background:var(--c-fbf9f3f5);backdrop-filter:blur(16px);z-index:20}
.mobile-install>div{display:flex;flex-direction:column;gap:2px}
.mobile-install b{font-size:12px;font-weight:600}
.mobile-install small{font-size:9px;color:var(--c-78716c)}
.mobile-install .download-pill{margin-left:auto}
.beta-dialog{padding:30px}
.hero-qr{padding:10px 13px}
.hero-qr b{font-size:11px}
}
.phone .phone-greeting{padding-top:5px;padding-bottom:8px}
.phone .phone-greeting h3{line-height:1.3}
.phone .radar-chart{height:151px!important}
.phone .phone-recommend{margin-top:11px;padding:8px 10px}
.phone .phone-nav{margin-top:11px}
.phone .home-indicator{margin-top:9px}
@media(max-width:760px){.headline-star{font-size:26px;margin-left:3px;padding-top:13px}
h1{font-size:61px}
.coffee-note{top:100px;left:8px}
.phone-stage{padding-top:35px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*::before,*::after{animation:none!important;transition:none!important}
}
/* Static-site additions: no framework, no chart or map library. */
img{display:block;max-width:100%}
svg{flex-shrink:0}
h2,h3,p{margin-top:0}
.skip{position:absolute;left:-999px;top:12px;z-index:30;background:var(--primary);color:var(--c-ffffff);padding:8px 14px;border-radius:8px;font-weight:600}
.skip:focus{left:12px}
.ritual-image{position:absolute;inset:0;width:100%;height:100%}
.radar-chart{display:block}
.radar-chart .grid{fill:none;stroke:var(--border)}
.radar-chart .labels text{fill:var(--c-78716c);font-size:10px}
.radar-chart .area{fill:var(--chart-1);fill-opacity:.22;stroke:var(--chart-1);stroke-width:1.8;stroke-linejoin:round}
.radar-chart .dot{fill:var(--c-2f6f4e)}
.ic-play,.ic-pause,.ic-timer,.ic-check,.ic-scan,.when-idle,.when-scanned{display:contents}
[data-timer]:not(.running) .ic-pause,[data-timer].running .ic-play{display:none}
.recipe-button:not(.sent) .ic-check,.recipe-button.sent .ic-timer{display:none}
.scan-preview:not(.scanned) .ic-check,.scan-preview:not(.scanned) .when-scanned,.scan-preview.scanned .ic-scan,.scan-preview.scanned .when-idle{display:none}
.scan-preview{width:100%;color:inherit}
.hero-qr{color:inherit}
.beta-dialog[open]{display:block}

/* Legal, support and 404 pages: the same chrome and tokens, plain reading column. */
.page.section-wrap{max-width:760px;padding-top:40px;padding-bottom:70px}
main.legal{max-width:none;counter-reset:sec;font-size:15px;line-height:1.75;color:var(--c-57534e)}
main.legal h1{font-size:clamp(34px,4vw,46px);letter-spacing:-1.5px;font-weight:500;line-height:1.1;margin:0 0 18px;color:var(--foreground)}
main.legal h2{font-size:22px;letter-spacing:-.5px;font-weight:500;line-height:1.25;margin:44px 0 12px;color:var(--foreground)}
main.legal h2::before{counter-increment:sec;content:counter(sec) ".";color:var(--primary);margin-right:10px}
main.legal.support h2::before{content:none}
main.legal a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}
main.legal b{color:var(--foreground);font-weight:600}
.lede{font-size:17px;line-height:1.5;max-width:34em;color:var(--foreground)}
.note{color:var(--muted-foreground);font-size:13px}
main.legal ul{padding-left:1.2em;list-style:none}
main.legal li{margin-bottom:7px;position:relative}
main.legal ul>li::before{content:"";position:absolute;left:-1.1em;top:.62em;width:.6em;height:.3em;border-radius:0 0 .3em .3em;background:var(--primary)}
main.legal ol{padding-left:1.3em}
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:22px 24px;margin:18px 0 22px}
dl.company{margin:0;display:grid;grid-template-columns:170px 1fr;gap:8px 18px}
dl.company dt{color:var(--muted-foreground)}
dl.company dd{margin:0}
@media(max-width:560px){dl.company{grid-template-columns:1fr;gap:2px 0}dl.company dd{margin-bottom:10px}}
dl.faq{display:grid;gap:12px;margin:18px 0 22px}
dl.faq div{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:18px 22px}
dl.faq dt{font-weight:600;color:var(--foreground);margin-bottom:4px}
dl.faq dd{margin:0}
.support section[lang]{margin-top:72px;scroll-margin-top:80px}
.btns{display:flex;gap:11px;flex-wrap:wrap;margin-top:24px}
.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:25px;padding:12px 20px;font-size:13px;font-weight:600;color:var(--foreground)}
.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--c-ffffff)}
main.legal .btn{text-decoration:none}
