@font-face{font-family:Glacial Indifference;src:url(/_astro/glacial-indifference-700.DVq2OKe3.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{color-scheme:light;--background: #faf7ff;--foreground: #16111d;--card: rgba(255, 255, 255, .82);--card-foreground: #1f1a27;--border: rgba(92, 61, 173, .12);--input: rgba(92, 61, 173, .12);--muted: #f1ebff;--muted-foreground: #655f70;--primary: #7c3aed;--primary-foreground: #ffffff;--secondary: #ede9fe;--secondary-foreground: #4c1d95;--accent: #8b5cf6;--accent-foreground: #ffffff;--ring: rgba(124, 58, 237, .3);--macro-kcal-bg: #fff4e5;--macro-kcal-fg: #92400e;--macro-protein-bg: #e8f4ff;--macro-protein-fg: #1d4ed8;--macro-carbs-bg: #ecfdf5;--macro-carbs-fg: #047857;--macro-fats-bg: #fef9c3;--macro-fats-fg: #854d0e;--shadow: 0 20px 40px rgba(66, 44, 122, .08);--radius: .25rem;--font-title: "Glacial Indifference", "Century Gothic", "Trebuchet MS", sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,rgba(167,139,250,.2),transparent 30%),var(--background);color:var(--foreground);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}.fff-shell{min-height:100vh}.fff-container{width:min(1120px,calc(100% - 2rem));margin:0 auto}.fff-card{border:1px solid var(--border);background:var(--card);color:var(--card-foreground);border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:blur(16px)}.fff-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--radius);border:1px solid transparent;padding:.8rem 1.15rem;font-size:.95rem;font-weight:600;cursor:pointer;box-shadow:none;transition:border-color .15s ease,background .15s ease,filter .15s ease}.fff-button:hover{filter:brightness(.92)}.fff-button:focus-visible,.fff-input:focus-visible,.fff-select:focus-visible{outline:3px solid var(--ring);outline-offset:2px}.fff-button-primary{background:linear-gradient(135deg,var(--primary),var(--accent));color:var(--primary-foreground)}.fff-button-secondary{background:#ffffffb8;color:var(--foreground);border-color:var(--border)}.fff-button-round{width:48px;height:48px;padding:0;flex-shrink:0;background:#fff;color:var(--foreground);border-color:var(--border)}.fff-input{width:100%;border:1px solid var(--input);background:#ffffffb3;border-radius:var(--radius);color:var(--foreground);padding:.9rem 1rem;font:inherit}.fff-select{width:100%;border:1px solid var(--input);background:#ffffffb3;border-radius:var(--radius);color:var(--foreground);padding:.9rem 1rem;font:inherit;cursor:pointer}.fff-badge{display:inline-flex;align-items:center;gap:.35rem;border-radius:var(--radius);background:var(--secondary);color:var(--secondary-foreground);padding:.45rem .75rem;font-size:.8rem;font-weight:600}.fff-badge-kcal{background:var(--macro-kcal-bg);color:var(--macro-kcal-fg)}.fff-badge-protein{background:var(--macro-protein-bg);color:var(--macro-protein-fg)}.fff-badge-carbs{background:var(--macro-carbs-bg);color:var(--macro-carbs-fg)}.fff-badge-fats{background:var(--macro-fats-bg);color:var(--macro-fats-fg)}.fff-heading{font-family:var(--font-title);letter-spacing:-.04em;line-height:1}.fff-section-title{margin:0;font-family:var(--font-title);font-size:clamp(1.75rem,3vw,2.5rem);letter-spacing:-.04em}.fff-slider{position:relative;display:flex;align-items:center;width:100%;height:24px;padding-inline:9px;box-sizing:border-box;overflow:visible;user-select:none;touch-action:none}.fff-slider-track{position:relative;height:4px;flex-grow:1;border-radius:999px;background:var(--muted)}.fff-slider-range{position:absolute;height:100%;background:var(--primary);border-radius:999px}.fff-slider-thumb{display:block;width:18px;height:18px;background:#fff;border:2px solid var(--primary);border-radius:50%;box-shadow:0 1px 4px #2021243d}.fff-slider-thumb:focus-visible{outline:3px solid var(--ring);outline-offset:2px}.fff-brand-lockup{--fff-brand-scale: clamp(.55rem, 2.2vw, 1rem);display:grid;grid-template-columns:auto 1fr;align-items:center;gap:calc(var(--fff-brand-scale) * 1.15);font-size:var(--fff-brand-scale);text-align:left}@media(max-width:799px){.fff-brand-lockup{--fff-brand-scale: clamp(.45rem, 1.8vw, .78rem)}}.fff-brand-mark{display:block;width:4.25em;height:auto}.fff-brand-lockup--mark-title .fff-brand-mark{width:3.5em}.fff-brand-text{display:grid;gap:.35em;min-width:0}.fff-brand-name{margin:0;font-family:var(--font-title);font-size:3.25em;font-weight:700;letter-spacing:-.01em;line-height:1;color:var(--foreground)}.fff-brand-lockup--mark-title .fff-brand-name{font-size:3.75em}.fff-brand-tagline{margin:0;font-family:inherit;font-size:1.35em;font-weight:400;line-height:1.35;color:var(--muted-foreground);white-space:nowrap}.fff-brand-tagline-slot{display:inline-block;overflow:hidden;vertical-align:bottom;white-space:nowrap}.fff-brand-tagline-slot.is-ready{transition:width .45s cubic-bezier(.22,1,.36,1)}.fff-brand-tagline-ending{display:inline-block;font-weight:600;color:var(--foreground);opacity:0;transform:translateY(.35em);transition:opacity .28s ease,transform .28s ease}.fff-brand-tagline-ending.is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.fff-brand-tagline-slot{transition:none}.fff-brand-tagline-ending{opacity:1;transform:none;transition:none}}.page{position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow-x:hidden;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.site-header{position:sticky;top:0;z-index:2;flex-shrink:0;width:100%;padding:.85rem clamp(1.25rem,4vw,3rem);background:#fff;border-bottom:1px solid var(--border)}.site-header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:min(100%,68rem);margin-inline:auto}.site-header-brand{--fff-brand-scale: .34rem}.lang-switcher{display:flex;align-items:center;gap:.15rem;flex-shrink:0;font-size:.8rem;font-weight:600;letter-spacing:.04em}.lang-switcher-link{padding:.35rem .55rem;border-radius:var(--radius);color:var(--muted-foreground);text-decoration:none}.lang-switcher-link:hover{color:var(--foreground)}.lang-switcher-link.is-active{color:var(--foreground);background:var(--muted)}.lang-switcher-link:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.page-body{position:relative;flex:1;display:grid;place-items:center;padding:2rem clamp(1.25rem,4vw,3rem);min-height:calc(100dvh - 4.5rem)}.page-atmosphere{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 70% 50% at 70% 18%,rgba(124,58,237,.22),transparent 55%),radial-gradient(ellipse 50% 40% at 18% 88%,rgba(139,92,246,.14),transparent 50%),linear-gradient(180deg,rgba(255,255,255,.35),transparent 40%);animation:atmosphere-drift 12s ease-in-out infinite alternate}.hero{position:relative;z-index:1;display:grid;align-items:center;justify-items:center;gap:clamp(2rem,5vw,4rem);width:min(100%,68rem)}.hero-copy{display:grid;justify-items:center;text-align:center;gap:clamp(1.25rem,3vw,1.75rem);max-width:40rem;width:100%}.hero-headline{margin:0;max-width:20ch;font-family:var(--font-title);font-size:clamp(1.75rem,5.5vw,2.75rem);font-weight:700;line-height:1.25;letter-spacing:-.02em;color:var(--foreground);text-align:inherit;white-space:normal;animation:rise .8s .05s ease-out both}.hero-headline:first-letter{text-transform:uppercase}.hero-headline .fff-brand-tagline-ending{font-weight:700;color:var(--primary)}.hero-blurb{margin:0;max-width:40ch;font-size:clamp(1rem,2.4vw,1.2rem);font-weight:400;line-height:1.55;color:var(--muted-foreground);animation:rise .8s .12s ease-out both}.hero-cta{animation:rise .8s .18s ease-out both}.hero-preview{width:min(52vw,260px);perspective:1400px;overflow:visible;animation:preview-rise 1s .2s cubic-bezier(.22,1.2,.36,1) both}.hero-preview-stage{position:relative;width:100%;aspect-ratio:472 / 1024;overflow:visible}.app-preview-card{position:absolute;inset:0;margin:0;width:100%;height:100%;transform-origin:center bottom;transform:translate(18%,3%) rotate(8deg) scale(.92);opacity:.85;pointer-events:none;z-index:0;transition:transform .85s cubic-bezier(.22,1,.36,1),opacity .55s ease}.app-preview-image{display:block;width:100%;height:100%;object-fit:cover;border-radius:2rem;box-shadow:0 0 0 1px #4c1d9514,0 18px 36px #4c1d952e;transition:box-shadow .55s ease}.app-preview-card.is-active{opacity:1;pointer-events:auto;z-index:2;transform:translate(0) rotate(0) scale(1)}.app-preview-card.is-active .app-preview-image{box-shadow:0 0 0 1px #4c1d9514,0 28px 52px #4c1d9547}.signup{position:relative;z-index:1;width:100%;padding:clamp(3.5rem,9vw,6rem) clamp(1.25rem,4vw,3rem);background:var(--secondary-foreground);color:#fff;scroll-margin-top:4.5rem}.signup-inner{width:min(100%,40rem);margin-inline:auto}.signup-form{display:grid;gap:1.35rem;width:100%}.signup-copy{display:grid;gap:.65rem}.signup-label{font-weight:700;line-height:1.15;color:#fff}.signup-subtitle{margin:0;max-width:50ch;font-size:clamp(1rem,2.2vw,1.15rem);font-weight:400;line-height:1.5;color:#ffffffd1}.signup-row{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:stretch;width:100%}.signup-restaurant{display:flex;align-items:center;gap:.75rem;margin:0;font-size:1.1rem;font-weight:500;line-height:1.3;color:#ffffffe0;cursor:pointer;user-select:none}.signup-restaurant input{width:1.55rem;height:1.55rem;margin:0;flex-shrink:0;accent-color:#fff;cursor:pointer}.signup-input{background:#fff;width:100%;min-width:0;border-color:transparent;padding:1rem 1.1rem;font-size:1rem}.signup-button{white-space:nowrap;background:#fff;color:var(--secondary-foreground);border-color:transparent;font-weight:700;padding:1rem 1.35rem}.signup-success{margin:0;font-size:1.25rem;font-weight:700;color:#fff}.signup-error{margin:0;font-size:.95rem;font-weight:500;color:#fecaca}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes preview-rise{0%{opacity:0;transform:translateY(28px) rotate(2deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes atmosphere-drift{0%{transform:scale(1) translate(0)}to{transform:scale(1.04) translate(-1.5%,1%)}}@media(min-width:800px){.hero{grid-template-columns:1fr auto;justify-items:stretch;text-align:left}.hero-copy{justify-items:start;text-align:left}.hero-headline{max-width:18ch}.hero-preview{width:min(32vw,280px)}}@media(prefers-reduced-motion:reduce){.page-atmosphere,.hero-headline,.hero-blurb,.hero-cta,.hero-preview{animation:none}.app-preview-card{transition:none}}
