:root{color-scheme:dark;--ink:#030505;--ivory:#f4f2eb;--soft:#c6cec8;--blue:#8ca8bd;--line:rgba(244,242,235,.12);--body:'Satoshi Variable','Satoshi',Arial,sans-serif;--display:'Boska','Boska Variable',Georgia,serif}

/* Branded destinations for Brevo's submission and confirmation redirects. */
.waitlist-result{min-height:100dvh;display:flex;flex-direction:column;background:#000}
.waitlist-result-header{padding:36px clamp(24px,6vw,80px)}
.waitlist-result-header a{display:inline-block;padding:8px}
.waitlist-result-header img{width:100px;height:auto}
.waitlist-result-main{width:min(100%,760px);margin:auto;padding:64px 24px 80px;text-align:center}
.waitlist-result-icon{width:48px;height:48px;margin:0 auto 28px;color:#c7b695}
.waitlist-result-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#c7b695}
.waitlist-result h1{margin:18px 0 24px;font-size:clamp(56px,8vw,88px);line-height:1.04;letter-spacing:-.035em}
.waitlist-result-message{max-width:540px;margin:0 auto;color:#e0e2dd;font-size:18px;line-height:1.65}
.waitlist-result-detail{max-width:500px;margin:18px auto 34px;color:#adb5b2;font-size:15px;line-height:1.7}
.waitlist-result-detail a,.waitlist-result-help a{text-decoration:underline;text-underline-offset:4px}
.waitlist-result-main>.solid-button{display:inline-flex}
.waitlist-result-help{margin-top:36px;color:#adb5b2;font-size:13px;line-height:1.7}
.waitlist-result-footer{display:flex;justify-content:space-between;gap:20px;max-width:1200px;width:100%;margin:auto auto 0;padding:28px clamp(24px,6vw,80px);color:#adb5b2;font-size:12px}
@media(max-width:480px){.waitlist-result-header{padding-top:24px}.waitlist-result-main{padding-top:36px}.waitlist-result-message{font-size:17px}}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--ink);color:var(--ivory);font-family:var(--body);font-size:18px;-webkit-font-smoothing:antialiased}
body:has(dialog[open]){overflow:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{color:inherit;cursor:pointer}
button,a{-webkit-tap-highlight-color:transparent}
button{border:0}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #a4c5ef;outline-offset:6px}
img{display:block;max-width:100%}
h1,h2,h3,p,figure{margin:0}
h1,h2{font-family:var(--display);font-weight:400}
button svg{pointer-events:none}
.skip-link{position:fixed;top:-100px;left:20px;z-index:50;padding:15px;background:#fff;color:#000;border-radius:12px}
.skip-link:focus{top:15px}
.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 28% 20%,rgba(89,125,154,.16),transparent 50%),radial-gradient(ellipse at 76% 60%,rgba(57,81,103,.16),transparent 52%);filter:blur(45px);animation:ambient-drift 24s ease-in-out infinite alternate}
@keyframes ambient-drift{to{transform:translate(5%,8%) scale(1.12);filter:blur(75px)}
}

.brand{display:inline-flex;align-items:center;gap:12px;font:650 17px var(--body);letter-spacing:3px}
.brand-star{color:#85b3fb;letter-spacing:0;font-size:28px;text-shadow:0 0 20px #509cff}
.glass-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:58px;padding:16px 32px;border-radius:999px;font-size:18px;font-weight:650;letter-spacing:-.27px;color:white;white-space:nowrap;background:linear-gradient(135deg,rgba(255,255,255,.21),rgba(255,255,255,.06) 50%,rgba(255,255,255,.18));border:1px solid #ffffff70;box-shadow:inset 1px 2px 2px #ffffff80,inset 0 -2px 5px #ffffff4d,0 3px 12px #0006;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .25s,box-shadow .25s,background .25s;overflow:hidden}
.glass-button>span{font-size:24px;line-height:18px;font-weight:400}
.glass-button:hover{transform:translateY(-2px);box-shadow:inset 1px 2px 2px #ffffffaa,inset 0 -2px 7px #ffffff66,0 5px 22px #8ba8cf33;background:linear-gradient(125deg,#ffffff50,#ffffff15 60%,#ffffff30)}
.glass-button:active{transform:scale(.98)}

.section{position:relative;width:100%;max-width:1400px;margin-inline:auto;padding:112px 64px}
.section-header{text-align:center;display:flex;align-items:center;flex-direction:column;gap:20px;margin-bottom:48px}
.section-header h2{font-size:58px;line-height:.98;letter-spacing:-1.5px;text-wrap:balance;max-width:1100px}
.section-header p{max-width:500px;font-size:18px;line-height:1.5;color:var(--soft);text-wrap:balance}
.hero{position:relative;padding-top:112px;isolation:isolate;max-width:1400px;margin:auto;background:radial-gradient(ellipse 55% 23% at 50% 20%,#26343b80,transparent 90%)}
.hero-header{display:flex;flex-direction:column;align-items:center;gap:20px;padding:0 30px;text-align:center;max-width:850px;margin:auto}
.iphone-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:6px 13px;border-radius:25px;background:#d8dcdf;color:#17222a;font-size:13px;font-weight:550;line-height:1;box-shadow:inset 0 1px 2px white,0 0 20px #9bb8d62a}
.iphone-badge svg{width:16px;height:18px}
.hero h1{font-size:76px;line-height:.94;letter-spacing:-2px;max-width:760px;color:var(--ivory)}
.hero h1 mark{background:#6e90ac26;color:inherit;border-radius:12px;padding:0 12px 3px 9px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero-header p{max-width:500px;font-size:18px;line-height:1.45;color:#8c8c8c;text-wrap:balance}
.hero-scene{height:1590px;position:relative;margin-top:56px}
.hero-sticky{height:950px;position:sticky;top:110px;display:flex;justify-content:center}
.hero-phone-group{position:relative;width:365px;height:750px}
.phone{position:relative;width:365px;height:750px;flex:none;filter:drop-shadow(0 35px 45px #0006)}
.phone-screen{position:absolute;left:2.6%;top:.8%;width:94.8%;height:98.4%;border-radius:55px;overflow:hidden;background:#0b0e10;isolation:isolate}
.phone-hardware{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:8;pointer-events:none;filter:brightness(.88) contrast(1.1)}
.camera-photo{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}
.phone-top{position:absolute;left:8%;right:8%;top:6.5%;display:flex;align-items:center;justify-content:space-between;z-index:3;font-size:17px;text-shadow:0 1px 5px #000}
.phone-top>span{width:30px;height:30px;border-radius:50%;background:#0003;display:grid;place-items:center;backdrop-filter:blur(10px);font-size:24px}
.phone-top strong{font-weight:650}
.scan-frame{position:absolute;top:34%;left:15%;width:70%;height:33%;z-index:3}
.scan-frame>i{position:absolute;width:34px;height:34px;border:3px solid white}
.scan-frame>i:nth-child(1){left:0;top:0;border-right:0;border-bottom:0;border-top-left-radius:24px}
.scan-frame>i:nth-child(2){right:0;top:0;border-left:0;border-bottom:0;border-top-right-radius:24px}
.scan-frame>i:nth-child(3){left:0;bottom:0;border-right:0;border-top:0;border-bottom-left-radius:24px}
.scan-frame>i:nth-child(4){right:0;bottom:0;border-left:0;border-top:0;border-bottom-right-radius:24px}
.scan-line{position:absolute;inset:10% 2% auto;height:2px;background:linear-gradient(90deg,transparent,#fff,transparent);box-shadow:0 0 18px 6px #e8f9ff66;animation:scan 3.5s ease-in-out infinite}
@keyframes scan{50%{transform:translateY(220px);opacity:.5}
}
.phone-camera{position:absolute;bottom:11%;left:12%;right:12%;display:flex;align-items:center;justify-content:space-between;z-index:3}
.phone-camera>span{font-size:25px}
.shutter{background:white;border-radius:50%;width:64px;height:64px;border:3px solid #686868;box-shadow:0 0 0 3px white;transition:transform .2s}
.shutter:hover{transform:scale(1.08)}
.phone.is-scanned .phone-camera,.phone.is-scanned .scan-frame{opacity:0}
.float-food{position:absolute;width:140px;height:140px;z-index:10;animation:float 7s ease-in-out infinite;pointer-events:none;transition:opacity .4s}
.float-food img{width:100%;height:100%;object-fit:contain}
.float-salad{left:-175px;top:135px;filter:blur(2px);rotate:-15deg}
.float-ramen{right:-135px;top:60px;rotate:10deg;animation-delay:-2s}
.float-pizza{left:-95px;top:440px;rotate:15deg;animation-delay:-4s}
.float-chocolate{right:-185px;top:375px;filter:blur(1.7px);rotate:-10deg;animation-delay:-6s}
@keyframes float{50%{transform:translateY(-15px) rotate(5deg)}
}
.nutrition-toast{position:absolute;display:flex;align-items:center;gap:13px;background:#ecefe9ed;color:#232824;border-radius:15px;padding:15px;width:160px;height:68px;font-size:13px;z-index:12;box-shadow:0 10px 40px #0003;backdrop-filter:blur(12px);opacity:0;transform:translateY(30px) scale(.8);transition:opacity .5s,transform .65s}
.nutrition-toast i{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;font-size:25px;font-style:normal;background:#c7d6fc;color:#6b7db2}
.nutrition-toast>span{display:flex;flex-direction:column}
.nutrition-toast b{font-weight:700}
.toast-protein{right:-210px;top:640px;rotate:5deg}
.toast-carbs{left:-210px;top:640px;rotate:-4deg}
.toast-carbs i{background:#c2dfc6;color:#72a47b}
.toast-sugar{left:-235px;top:815px;rotate:6deg}
.toast-sugar i{background:#f4cbe0;color:#c88ca8}
.toast-fat{right:-235px;top:815px;rotate:-5deg}
.toast-fat i{background:#e7d7bf;color:#ac947b}
.know-heading{position:absolute;left:-30px;top:785px;width:425px;font-family:var(--body);font-size:64px;line-height:1;font-weight:850;letter-spacing:-2.5px;text-align:center;opacity:0;transform:translateY(25px);transition:opacity .6s,transform .7s}
.hero-revealed .nutrition-toast,.hero-revealed .know-heading{opacity:1;transform:translateY(0) scale(1)}
.hero-revealed .float-food{opacity:0}

.food-suggestions{height:800px;padding-top:0;padding-bottom:0}
.food-stage{position:relative;height:100%;max-width:1072px;margin:auto;display:flex;align-items:center;justify-content:center}
.food-stage h2{font-size:62px;line-height:.98;text-align:center;letter-spacing:-1.5px}
dialog{background:#171e23;color:var(--ivory);border:1px solid #a7c5db33;border-radius:28px;width:min(420px,calc(100% - 40px));padding:32px;box-shadow:0 30px 100px #000b}
dialog::backdrop{background:#0009;backdrop-filter:blur(8px)}
dialog>img{width:100px;margin:0 auto 20px}
dialog h3{font-size:22px;margin-bottom:15px}
dialog p{font-size:16px;line-height:1.5;color:var(--soft)}
dialog .touch-help{font-size:14px;margin-top:15px;color:#97a9b7}
.dialog-close{position:absolute;right:16px;top:12px;background:none;font-size:28px;color:#c1c9ce;padding:4px 8px}

.meal-section{padding-bottom:112px}
.burger-stage{width:min(688px,70%);height:900px;margin:124px auto 0;position:relative;--spread:0px}
.burger-layer{position:relative;width:100%;transition:transform .15s linear;will-change:transform}
.burger-layer>img{width:100%;height:100%;object-fit:contain}
.layer-0{height:303px;z-index:4;transform:translateY(calc(var(--spread) * -1))}
.layer-1{height:198px;margin-top:-105px;z-index:3;transform:translateY(calc(var(--spread) * -.35))}
.layer-2{height:229px;margin-top:-80px;z-index:2;transform:translateY(calc(var(--spread) * .35))}
.layer-3{height:240px;margin-top:-90px;z-index:1;transform:translateY(var(--spread))}
.meal-section.in-view .ingredient-tag{opacity:1;transform:translateX(0)}


.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:900px;margin:auto}
.feature-card{position:relative;overflow:hidden;border-radius:26px;border:1px solid #a9ced01f;background:radial-gradient(ellipse at 80% 0%,#ffffff22,transparent 72%),linear-gradient(135deg,#20292eaa,#1821266b);box-shadow:inset 0 1px #ffffff12,0 25px 80px #0003;min-height:450px}
.feature-graphic{height:260px;position:relative;overflow:hidden;padding:28px 45px 0;color:#151b1c;mask-image:linear-gradient(#000 68%,transparent);-webkit-mask-image:linear-gradient(#000 68%,transparent)}
.feature-copy{padding:0 32px 32px}
.feature-copy h3{font-size:20px;font-weight:700;letter-spacing:-.4px;margin-bottom:14px;line-height:1.3}
.feature-copy p{font-size:16px;line-height:1.5;color:#c9cece}
.calorie-widget{background:#fff;border-radius:32px;padding:25px;box-shadow:0 10px 50px #fff1}
.calorie-widget>div{display:flex;justify-content:space-between;align-items:center;font-size:13px}
.calorie-widget small{background:#e5f1e2;padding:5px 7px;border-radius:20px;font-size:12px}
.calorie-widget p{font-size:32px;letter-spacing:-1.5px;margin-top:8px}
.calorie-widget b{color:#7b95a2}
.calorie-widget em{font-style:normal;color:#c6cbca;font-weight:700}
.week{display:flex;justify-content:space-between;margin:18px -20px 0;color:#d2d6d7;font-size:19px}
.week>span{display:flex;flex-direction:column;align-items:center;gap:7px;padding:10px 12px;border-radius:20px}
.week small{font-size:12px;color:#989fa5}
.week .selected{background:#ffffff1f;color:white}
.food-plan{background:#fff;border-radius:32px;padding:22px 25px;color:#181d1f;margin-top:12px}
.food-plan>div:first-child{display:flex;justify-content:space-between;font-size:13px;align-items:flex-start}
.food-plan b{font-weight:550}
.food-plan b span{font-size:12px}
.food-plan small{padding:5px 8px;background:#e4f0de;border-radius:16px;font-size:12px}
.mini-foods{display:flex;gap:6px;align-items:center;margin-top:10px}
.mini-foods img{width:43px;height:43px;object-fit:contain}
.mini-foods>span{font-size:12px;margin-left:3px}
.plan-ghost{margin-top:10px;font-size:13px;display:flex;justify-content:space-between}
.search-widget{background:white;border-radius:28px;padding:25px;font-size:13px;margin-top:0}
.search-widget>b{font-weight:550}
.search-widget>div{padding:10px;background:#f7f7f7;margin:12px 0}
.search-widget>div span{float:right}
.search-widget p{display:flex;align-items:center;gap:10px;margin-top:10px}
.search-widget p img{height:43px;width:43px}
.search-widget small{font-size:11px;color:#8e9698}
.search-widget p i{margin-left:auto;font-style:normal}
.barcode-widget{position:relative;width:100%;height:170px;margin:10px auto}
.barcode{position:absolute;inset:24px 22px;background:repeating-linear-gradient(90deg,#050908 0 2px,#abb2b32b 2px 4px,#0c0f0e 4px 6px,#abb2b32b 6px 7px,#050908 7px 12px,#abb2b32b 12px 15px,#101311 15px 16px)}
.barcode-widget>i{position:absolute;width:34px;height:34px;border:6px solid #92adbf;border-radius:20px}
.barcode-widget>i:nth-of-type(1){left:0;top:0;border-right:0;border-bottom:0}
.barcode-widget>i:nth-of-type(2){right:0;top:0;border-left:0;border-bottom:0}
.barcode-widget>i:nth-of-type(3){left:0;bottom:0;border-right:0;border-top:0}
.barcode-widget>i:nth-of-type(4){right:0;bottom:0;border-left:0;border-top:0}
.barcode-light{position:absolute;top:12px;bottom:12px;left:8%;width:2px;background:#bce1f6;box-shadow:0 0 28px 12px #bce1f64d;animation:barcode-scan 5s ease-in-out infinite}
@keyframes barcode-scan{50%{left:92%}
}

.ai-section{min-height:1250px}
.meal-demo{display:flex;flex-direction:column;align-items:center;position:relative;margin-top:60px}
.plate-scene{width:440px;height:440px;max-width:100%;position:relative}
.plate-layer{position:absolute;width:100%;height:100%;object-fit:contain;opacity:0;transform:translateY(20px) scale(.98);transition:opacity .8s,transform .8s}
.plate-layer.active{opacity:1;transform:none}
.plate-0{opacity:1;transform:none}
.meal-ingredients{display:flex;gap:16px;margin:20px 0}
.meal-total{display:flex;gap:12px;margin:18px 0 30px;opacity:0;transition:opacity .5s}
.meal-total.active{opacity:1}
.meal-total span{padding:9px 14px;border-radius:20px;background:#819aab1f;font-size:13px}

.results-section{text-align:center;min-height:850px}

.pricing-card{padding:28px 16px 32px;border:1px solid #c5d1d59c;border-radius:44px;background:radial-gradient(ellipse at 90% 0%,#ffffff12,transparent 70%),#0e151a80;min-height:490px;overflow:hidden;box-shadow:inset 0 1px 2px #ffffff20,0 25px 60px #0003}
.price-heading{padding:18px 24px 26px}
.price-heading h3{font-size:20px;font-weight:700;display:inline-block;background:#00000016;padding:7px 14px;border-radius:14px}
.price{margin:12px 0 8px;letter-spacing:-1.8px}
.price b{font-size:48px;font-weight:850}
.price span{font-size:18px;letter-spacing:-.5px;font-weight:650}
.price-heading>p:last-child{font-size:16px;font-weight:600}
.includes{padding:42px 16px 0;font-size:16px}
.includes ul{list-style:none;padding:0;margin:8px 0 0}
.includes li{position:relative;padding-left:21px;line-height:1.5;margin-bottom:4px}
.includes li:before{content:'✓';position:absolute;left:0;top:0;font-size:14px}
.plan-1{min-height:516px;background:linear-gradient(120deg,#2e3b4059,#11191e90)}
.plan-2{background:radial-gradient(ellipse at 90% 0%,#ffffff38,transparent 75%),#18202480}
.faq-list{max-width:800px;margin:auto}
.reveal{opacity:1;transform:none}
.js-motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}
.js-motion .reveal.in-view{opacity:1;transform:none}
@keyframes fade-up{from{opacity:0;transform:translateY(12px)}
to{opacity:1;transform:none}
}

@media(min-width:1500px){.hero-header{padding-top:20px}
.section-header h2{max-width:1150px}
.feature-grid{max-width:1000px}
.feature-card{min-height:460px}
}

@media(max-width:1199px){.section{padding:70px 44px}
.hero h1{font-size:70px}
.section-header h2,.cta-section h2{font-size:52px}
.feature-graphic{padding-inline:25px}
.feature-copy{padding:0 25px 28px}
.pricing-card{padding:18px 12px 28px;border-radius:34px}
.price-heading{padding-inline:10px}
.includes{padding:30px 10px 0;font-size:14px}
.price b{font-size:42px}
.price-heading>p:last-child{font-size:14px}
.food-suggestions{height:800px;padding:0 44px}
.meal-section{padding-bottom:50px}
.burger-stage{height:850px}
.hero-scene{height:1500px}
.hero-sticky{height:900px}
}

@media(max-width:809px){html{scroll-padding-top:90px}
.brand{font-size:15px;gap:8px;letter-spacing:2px}
.brand-star{font-size:25px}
.section{padding:70px 24px;max-width:600px}
.hero{padding-top:112px}
.hero-header{padding-inline:24px;gap:20px}
.iphone-badge{min-height:30px;font-size:11px;padding:6px 11px}
.iphone-badge svg{height:14px;width:13px}
.hero h1{font-size:clamp(46px,10vw,68px);letter-spacing:-1.8px;line-height:.98}
.hero h1 mark{padding:0 7px 3px}
.glass-button{font-size:16px;padding:15px 25px}
.hero-header p{font-size:16px;line-height:1.5;max-width:420px}
.hero-scene{margin-top:45px;height:1150px;overflow:clip}
.hero-sticky{position:sticky;top:100px;height:800px}
.hero-phone-group{width:280px;height:575px}
.hero-phone{width:280px;height:575px}
.hero-phone .phone-screen{border-radius:43px}
.hero-phone .phone-top{font-size:14px}
.hero-phone .phone-camera .shutter{height:48px;width:48px}
.hero-phone .scan-frame>i{border-width:2px;width:25px;height:25px}
.float-food{width:85px;height:85px}
.float-salad{left:-57px;top:100px}
.float-ramen{right:-45px;top:65px}
.float-pizza{left:-42px;top:340px}
.float-chocolate{right:-55px;top:320px}
.nutrition-toast{width:108px;height:52px;padding:10px;gap:6px;font-size:10px;border-radius:13px}
.nutrition-toast i{font-size:20px;width:27px;height:27px;border-radius:7px}
.toast-protein{right:-35px;top:570px}
.toast-carbs{left:-35px;top:570px}
.toast-sugar{left:-35px;top:720px}
.toast-fat{right:-35px;top:720px}
.know-heading{left:-15px;top:640px;width:310px;font-size:44px;letter-spacing:-1.8px}
.food-suggestions{height:700px;padding:0 12px}
.food-stage h2{font-size:44px;letter-spacing:-1px}
.section-header{gap:18px;margin-bottom:36px}
.section-header h2,.cta-section h2{font-size:44px;line-height:1;letter-spacing:-1px}
.section-header p,.cta-section>p{font-size:16px;line-height:1.5}
.meal-section{padding-bottom:0}
.burger-stage{width:78%;height:620px;margin-top:100px}
.burger-layer{height:auto;aspect-ratio:2.27}
.layer-1{aspect-ratio:3.47;margin-top:-30px}
.layer-2{aspect-ratio:3;margin-top:-20px}
.layer-3{aspect-ratio:2.8;margin-top:-20px}
.feature-grid{grid-template-columns:1fr;gap:14px;max-width:430px}
.feature-card{min-height:410px}
.feature-graphic{height:245px;padding:30px 40px 0}
.feature-copy{padding:0 25px 28px}
.feature-copy h3{font-size:20px}
.feature-copy p{font-size:15px}
.calorie-widget p{font-size:28px}
.calorie-widget{padding:23px}
.mini-foods img{width:42px;height:42px}
.week>span{padding:9px}
.ai-section{min-height:0;padding-top:80px;padding-bottom:90px}
.meal-demo{margin-top:25px}
.plate-scene{width:340px;height:340px}
.meal-ingredients{gap:12px;margin-top:0}
.meal-total{margin-bottom:24px}
.results-section{min-height:0;overflow:clip}
.pricing-card{padding:24px 16px 30px;min-height:0;border-radius:36px}
.price-heading{padding:12px 20px 25px}
.price-heading>p:last-child{font-size:16px}
.price b{font-size:48px}
.includes{padding:28px 20px 0;font-size:16px}
.phone-screen .scan-line{animation-name:scan-mobile}
@keyframes scan-mobile{50%{transform:translateY(160px);opacity:.5}
}
}

.layer-4{height:259px;margin-top:-90px;z-index:0;transform:translateY(calc(var(--spread) * 1.5))}
.layer-3{height:235px;transform:translateY(var(--spread))}

@media(max-width:809px){.layer-3{height:auto;aspect-ratio:2.92}
.layer-4{height:auto;aspect-ratio:2.65;margin-top:-20px}
.burger-stage{height:740px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{animation:none!important;transition:none!important}
.js-motion .reveal{opacity:1;transform:none}
.ambient{animation:none}
.hero-scene{height:1050px}
.hero-sticky{position:relative;top:0}
.nutrition-toast,.know-heading{opacity:1;transform:none}
.float-food{opacity:0}
}


/* ════════════════════════════════════════════════════════════════════
   v2 — COR Active: closer match to the Framer project + added components
   ════════════════════════════════════════════════════════════════════ */
.js-motion .reveal{transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1),filter .8s;transition-delay:var(--d,0ms);filter:blur(6px)}
.js-motion .reveal.in-view{filter:none}

/* ── Buttons (Framer: solid ivory pills) ── */
.solid-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 26px;border-radius:999px;background:#f4f2eb;color:#121516;font-size:16px;font-weight:600;letter-spacing:-.2px;white-space:nowrap;box-shadow:inset 0 -2px 4px #0000001a,inset 0 1px 1px #fff,0 8px 24px -8px #0009;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s,background .25s}
.solid-button>span{font-size:22px;line-height:14px;font-weight:400;transition:transform .25s}
.solid-button:hover{transform:translateY(-2px);background:#fff;box-shadow:inset 0 -2px 4px #0000001a,0 12px 30px -8px #b9d3ec55}
.solid-button:hover>span{transform:translateX(3px)}
.solid-button:active{transform:scale(.97)}

/* ── Nav + Focus Lens links ── */
.nav-bar{position:fixed;z-index:30;left:50%;top:20px;transform:translateX(-50%);width:880px;max-width:calc(100% - 48px);min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 10px 10px 26px;border:1px solid rgba(255,255,255,.12);border-radius:32px;background:radial-gradient(ellipse at 25% 0%,rgba(103,148,235,.3),transparent 50%),rgba(13,15,22,.75);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 20px 50px -10px #0009,inset 0 1px #ffffff14,0 0 35px -12px #cde8a63d}
.nav-download{font-size:14px;min-height:42px;padding:9px 18px;gap:10px}
.lens-bar{position:relative;display:flex;align-items:center;gap:6px}
.lens-link{position:relative;z-index:1;padding:10px 12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;color:#c9ced6;transition:opacity .35s ease,filter .35s ease,transform .45s cubic-bezier(.34,1.56,.64,1),color .3s}
.lens-bar.is-focusing .lens-link{opacity:.32;filter:blur(1.6px);transform:scale(.93)}
.lens-bar.is-focusing .lens-link.is-focus{opacity:1;filter:none;transform:scale(1.04);color:#fff}
.lens{position:absolute;left:0;top:0;width:0;height:0;pointer-events:none;opacity:0;transform:translate(var(--lx,0px),var(--ly,0px));width:var(--lw,0px);height:var(--lh,0px);transition:transform .5s cubic-bezier(.34,1.45,.64,1),width .5s cubic-bezier(.34,1.45,.64,1),height .5s,opacity .25s}
.lens-bar.is-focusing .lens{opacity:1}
.lens i{position:absolute;width:7px;height:7px;border:1.5px solid #e8edf3}
.lens i:nth-child(1){left:0;top:0;border-right:0;border-bottom:0}
.lens i:nth-child(2){right:0;top:0;border-left:0;border-bottom:0}
.lens i:nth-child(3){left:0;bottom:0;border-right:0;border-top:0}
.lens i:nth-child(4){right:0;bottom:0;border-left:0;border-top:0}
.menu-toggle{display:none}
.nav-bar #mobile-menu{display:none}

/* ── Hero ── */
.hero-header{gap:24px}
.hero-header p{margin-top:2px}
.hero-cta{margin-top:4px;min-height:52px;padding:14px 30px}
.iphone-badge svg{width:17px;height:17px;border-radius:5px}
.hero-phone{transition:transform .9s cubic-bezier(.22,1,.36,1)}
.hero-revealed .hero-phone{transform:scale(1.07) translateY(-14px)}
.float-food{transition:opacity .5s,filter .6s,translate .9s cubic-bezier(.22,1,.36,1)}
.hero-revealed .float-food{opacity:0;filter:blur(14px);translate:0 -40px}
.nutrition-toast{transition:opacity .6s,transform .9s cubic-bezier(.34,1.35,.64,1)}
.toast-carbs{transition-delay:.05s}.toast-protein{transition-delay:.12s}.toast-sugar{transition-delay:.19s}.toast-fat{transition-delay:.26s}
.toast-protein i{background:#d4defb;color:#5b74c4}
.know-heading{transition:opacity .7s .2s,transform .9s .2s cubic-bezier(.22,1,.36,1),filter .7s .2s;filter:blur(8px)}
.hero-revealed .know-heading{filter:none}

/* ── Phone: analysis sheet (Framer style) ── */
.analysis-sheet{position:absolute;left:3%;right:3%;bottom:2.5%;padding:12px 16px 16px;background:#f7f6f2;color:#1f2424;border-radius:28px;z-index:5;transform:translateY(130%);transition:transform .75s cubic-bezier(.22,1,.36,1),top .75s cubic-bezier(.22,1,.36,1);box-shadow:0 -10px 40px #0003;overflow:hidden;max-height:62%;-webkit-mask-image:linear-gradient(#000 82%,transparent);mask-image:linear-gradient(#000 82%,transparent)}
.phone.is-scanned .analysis-sheet{transform:translateY(0)}
.phone.is-scanned .phone-camera,.phone.is-scanned .scan-frame{opacity:0;transition:opacity .3s}
.sheet-grabber{display:block;width:38px;height:4px;border-radius:4px;background:#cfcfca;margin:0 auto 12px}
.sheet-head{display:flex;align-items:center;gap:12px}
.sheet-thumb{width:46px;height:46px;border-radius:12px;object-fit:cover}
.sheet-head b{display:block;font-size:19px;letter-spacing:-.6px}
.sheet-head small{font-size:12px;color:#5f6566}
.sheet-actions{display:flex;gap:6px;margin:14px 0 12px;font-size:13px;font-weight:600}
.sheet-actions>span{flex:1;text-align:center;padding:9px 0;border-radius:11px}
.sheet-actions>span:last-child{background:#e6e6e1}
.sheet-label{font-size:11px;font-weight:600;color:#4b5152;margin-bottom:8px}
.sheet-nutrients{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.sheet-nutrients li{display:flex;align-items:center;gap:10px;font-size:11px;color:#5f6566}
.sheet-nutrients i{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#ebebe7;font-style:normal;font-size:17px;color:#6d7374}
.sheet-nutrients .n-protein i{background:#dfe6fb;color:#5b74c4}
.sheet-nutrients .n-carbs i{background:#dcefdf;color:#5d9a69}
.sheet-nutrients span{display:flex;flex-direction:column}
.sheet-nutrients b{font-size:14px;color:#1f2424}
.scan-goal,.sheet-ai{display:none}
.how-phone.is-action .analysis-sheet{top:2.5%;max-height:none;-webkit-mask-image:none;mask-image:none;border-radius:44px;padding-top:44px}
.how-phone.is-action .sheet-grabber{display:none}
.how-phone.is-action .sheet-label,.how-phone.is-action .sheet-nutrients li:nth-child(n+3){display:none}
.how-phone.is-action .scan-goal,.how-phone.is-action .sheet-ai{display:block;animation:fade-up .6s .2s both}
.scan-goal{margin-top:14px;font-size:12px}
.scan-goal p{display:flex;justify-content:space-between}
.scan-goal>i{display:block;height:7px;border-radius:7px;background:#e3e6e2;margin:8px 0;overflow:hidden}
.scan-goal>i em{display:block;height:100%;width:71%;background:linear-gradient(90deg,#8eb79a,#6f9d7d);border-radius:7px}
.scan-goal small{font-size:10.5px;color:#666c6d}
.sheet-ai{margin-top:14px;font-size:11px}
.sheet-ai p{font-weight:700;margin-bottom:6px}
.sheet-ai div{border:1.5px solid #a9c4e6;border-radius:12px;padding:9px 10px;line-height:1.45;color:#4d5455;background:#fff}
.sheet-ai span{display:block;margin-top:9px;text-align:center;background:#ebebe7;border-radius:10px;padding:8px;font-weight:700}
.cam-thumb{width:34px;height:34px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#8aa6b8,#2b3a44);border:2px solid #ffffffaa}

/* ── Food suggestions: blurred depth + focus on hover ── */
.food-orbit{position:absolute;width:140px;height:140px;padding:0;background:none;transform:translate(-50%,-50%);z-index:2;translate:0 var(--py,0px);transition:translate .2s linear}
.food-bob{display:block;width:100%;height:100%;animation:float 7s ease-in-out infinite;animation-delay:var(--fd,0s)}
.food-bob img{width:100%;height:100%;object-fit:contain;filter:blur(var(--b,2.5px)) saturate(.9);transition:filter .45s,transform .55s cubic-bezier(.34,1.56,.64,1)}
.food-orbit:hover .food-bob img,.food-orbit:focus-visible .food-bob img,.food-orbit[aria-pressed=true] .food-bob img{filter:none;transform:scale(1.18) rotate(-6deg)}
.food-stage:has(.food-orbit:hover) .food-orbit:not(:hover) .food-bob img{filter:blur(calc(var(--b,2.5px) + 3px)) saturate(.7) brightness(.7)}
.food-hint{position:absolute;left:50%;top:100%;transform:translate(-50%,6px) scale(.9);display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:7px 12px 7px 8px;border-radius:999px;background:#f1efe8;color:#161a1b;font-size:13px;font-weight:600;opacity:0;pointer-events:none;transition:opacity .3s,transform .45s cubic-bezier(.34,1.56,.64,1);box-shadow:0 10px 30px #0006}
.food-hint em{font-style:normal;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#bfe5bd;color:#21762b;font-size:12px}
.food-orbit[data-recommendation=no] .food-hint em{background:#f5c9c9;color:#a93434}
.food-orbit:hover .food-hint,.food-orbit:focus-visible .food-hint,.food-orbit[aria-pressed=true] .food-hint{opacity:1;transform:translate(-50%,12px) scale(1)}
.food-0{left:23.92%;top:19.13%;rotate:9deg;--b:3.5px}
.food-1{left:50%;top:20%;--b:2px;--fd:-1.5s}
.food-2{left:75.67%;top:22.5%;rotate:-5deg;--b:3px;--fd:-3s}
.food-3{left:85%;top:51.38%;rotate:-5deg;--b:1.5px;--fd:-4.5s}
.food-4{left:70%;top:79%;rotate:-2deg;--b:2.5px;--fd:-2s}
.food-5{left:32%;top:79%;rotate:-2deg;--b:3px;--fd:-5s}
.food-6{left:14%;top:53.5%;rotate:-2deg;--b:2px;--fd:-6s}
.food-help{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:#ecebe5;color:#1b1f20;padding:8px 15px;font-size:13px;font-weight:600;white-space:nowrap;box-shadow:0 8px 30px #0006}

/* ── Burger labels (Framer: light pills with a thumbnail + connector) ── */
.ingredient-tag{position:absolute;top:50%;left:-150px;display:inline-flex;align-items:center;gap:9px;padding:6px 14px 6px 6px;border-radius:12px;background:#ecebe5;color:#151819;font-size:14px;font-weight:600;white-space:nowrap;box-shadow:0 10px 30px #0005;opacity:0;transform:translate(-24px,-50%);transition:opacity .6s,transform .8s cubic-bezier(.22,1,.36,1)}
.tag-thumb{width:30px;height:22px;border-radius:7px;background-size:220%;background-position:center;background-color:#d9d6cc}
.ingredient-tag i{position:absolute;left:100%;top:50%;width:70px;height:1px;background:#d9dcd6aa}
.ingredient-tag i:after{content:'';position:absolute;right:-3px;top:-3px;width:7px;height:7px;border-radius:50%;background:#f4f2eb;box-shadow:0 0 10px #fff}
.layer-1 .ingredient-tag,.layer-3 .ingredient-tag{left:auto;right:-150px;transform:translate(24px,-50%)}
.layer-1 .ingredient-tag i,.layer-3 .ingredient-tag i{left:auto;right:100%}
.layer-1 .ingredient-tag i:after,.layer-3 .ingredient-tag i:after{right:auto;left:-3px}
.meal-section.in-view .ingredient-tag{opacity:1;transform:translate(0,-50%)}
.layer-1 .ingredient-tag{transition-delay:.1s}.layer-2 .ingredient-tag{transition-delay:.2s}.layer-3 .ingredient-tag{transition-delay:.3s}.layer-4 .ingredient-tag{transition-delay:.4s}
.burger-stage{height:1050px}

/* ── How it works (sticky phone, one step at a time) ── */
.how-section{height:2400px;padding:64px}
.how-sticky{position:sticky;top:0;height:100vh;min-height:720px;display:grid;grid-template-columns:1fr 365px 1fr;align-items:center;gap:56px}
.how-left,.how-right{display:grid}
.how-left>*,.how-right>.how-desc{grid-area:1/1}
.how-left{justify-items:end;text-align:right}
.how-title{font-family:var(--body);font-size:46px;line-height:1.04;font-weight:800;letter-spacing:-1.8px;opacity:0;transform:translateY(24px);filter:blur(8px);transition:opacity .5s,transform .7s cubic-bezier(.22,1,.36,1),filter .5s}
.how-desc{max-width:300px;font-size:19px;line-height:1.45;color:#c6cec8;opacity:0;transform:translateY(18px);filter:blur(6px);transition:opacity .5s,transform .7s cubic-bezier(.22,1,.36,1),filter .5s}
.how-title.active,.how-desc.active{opacity:1;transform:none;filter:none;transition-delay:.12s}
.how-dots{display:flex;gap:8px;margin-top:30px;grid-area:2/1}
.how-dot{width:22px;height:5px;padding:0;border-radius:5px;background:#d8eaf42b;transition:width .4s cubic-bezier(.22,1,.36,1),background .3s}
.how-dot.active{width:38px;background:#e8edf3}
.how-phone{height:min(750px,calc(100vh - 110px));width:auto;aspect-ratio:365/750}
.how-phone .phone-screen{border-radius:min(55px,7.3vh)}

/* ── Feature cards ── */
.feature-card{transition:transform .5s cubic-bezier(.22,1,.36,1),border-color .4s,opacity .8s,filter .8s}
.feature-card:hover{transform:translateY(-6px);border-color:#c5dde03d}
.search-box{display:flex;justify-content:space-between;padding:10px 12px;background:#f3f3f1;border-radius:10px;margin:12px 0}
.typed{display:inline-block;overflow:hidden;white-space:nowrap;border-right:1.5px solid #333;max-width:0;animation:type 6s steps(12) infinite}
@keyframes type{0%,8%{max-width:0}40%,85%{max-width:110px;border-color:transparent}100%{max-width:0}}
.searching{display:flex;align-items:center;justify-content:center;gap:8px;color:#5c6364;margin:6px 0 4px;animation:searching 6s infinite}
.searching i{width:12px;height:12px;border-radius:50%;border:2px solid #c8cccc;border-top-color:#59656a;animation:spin .8s linear infinite}
.search-results{animation:results 6s infinite}
@keyframes searching{0%,40%{opacity:0}45%,62%{opacity:1}68%,100%{opacity:0}}
@keyframes results{0%,64%{opacity:0;transform:translateY(8px)}70%,95%{opacity:1;transform:none}100%{opacity:0}}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── AI meals ── */
.ai-icon{width:72px;height:72px;border-radius:18px;box-shadow:0 10px 40px #6e90ac44,inset 0 0 0 1px #ffffff22;margin-bottom:6px}
.meal-ingredients{display:flex;gap:10px;margin:22px 0 10px}
.ingredient{width:64px;height:64px;border-radius:16px;display:grid;place-items:center;background:#ffffff0d;border:1px solid #ffffff14;opacity:.35;transform:scale(.9);transition:opacity .5s,transform .6s cubic-bezier(.34,1.56,.64,1),background .5s}
.ingredient.active{opacity:1;transform:none;background:#f1f0eb}
.ingredient img{width:46px;height:46px;object-fit:contain}
.meal-status{display:flex;align-items:center;gap:8px;font-size:14px;color:#a8b5bf;min-height:24px}
.spinner{width:13px;height:13px;border-radius:50%;border:2px solid #ffffff2a;border-top-color:#dfe7ec;animation:spin .8s linear infinite}
.meal-status.done .spinner{display:none}
.prompt-demo{display:flex;flex-direction:column;align-items:stretch;gap:14px;width:min(400px,100%);padding:16px 16px 12px;text-align:left;border-radius:22px;background:#f7f6f2;color:#161a1b;box-shadow:0 20px 60px #0007;font-size:15px;font-weight:500;transition:transform .3s}
.prompt-demo:hover{transform:translateY(-3px)}
.prompt-tools{display:flex;align-items:center;gap:8px;font-size:12px;color:#5b6263}
.prompt-tools i{font-style:normal;display:grid;place-items:center;min-width:26px;height:26px;border-radius:13px;border:1px solid #dadad5;padding:0 8px}
.prompt-tools i:nth-child(2){border:0;padding:0}
.prompt-tools .mic{margin-left:auto}
.prompt-tools .send{background:#e4e4df;border-color:#e4e4df}

/* ── Real screens (fan) ── */
.results-section{text-align:center;min-height:850px}
.result-cards{height:430px;width:min(800px,100%);position:relative;margin:65px auto 30px}
.result-card{position:absolute;top:0;left:50%;width:290px;height:380px;border-radius:26px;overflow:hidden;border:4px solid #f4f2eb;background:#0b0e10;box-shadow:0 30px 60px #000a;transform-origin:50% 90%;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.result-card img{width:100%;height:auto;min-height:100%;object-fit:cover;object-position:top}
.result-0{transform:translateX(calc(-50% - 205px)) rotate(-11deg);top:24px;z-index:1}
.result-1{transform:translateX(-50%);z-index:2}
.result-2{transform:translateX(calc(-50% + 205px)) rotate(10deg);top:30px;z-index:3}
.results-section.in-view .result-0{animation:fan-l 1s cubic-bezier(.22,1,.36,1) both}
.results-section.in-view .result-2{animation:fan-r 1s cubic-bezier(.22,1,.36,1) both}
@keyframes fan-l{from{transform:translateX(-50%) rotate(0)}}
@keyframes fan-r{from{transform:translateX(-50%) rotate(0)}}
.result-cards:hover .result-0{transform:translateX(calc(-50% - 240px)) rotate(-14deg)}
.result-cards:hover .result-2{transform:translateX(calc(-50% + 240px)) rotate(13deg)}
.pill-link{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;background:#ffffff12;border:1px solid #ffffff1a;font-size:14px;font-weight:600;transition:background .3s}
.pill-link:hover{background:#ffffff22}

/* ── Pricing ── */
.pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:760px;margin:72px auto 0;align-items:center}
.plan-cta{width:100%;min-height:50px}
.price-tba{font-size:40px!important}
.pricing-footnote{text-align:center;color:#8d979a;font-size:14px;margin-top:28px}

/* ── FAQ: Smooth FAQ Flow ── */
.flow-list{max-width:780px;margin:auto;display:flex;flex-direction:column;gap:10px}
.flow-item{border-radius:20px;border:1px solid #ffffff1c;background:linear-gradient(160deg,#ffffff12,#ffffff05 60%);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 1px #ffffff14,0 14px 40px -18px #000c;transition:background .4s,border-color .4s,opacity .8s,transform .8s,filter .8s}
.flow-item.open{background:linear-gradient(160deg,#ffffff17,#ffffff07 60%);border-color:#ffffff26}
.flow-item h3{font:inherit;margin:0}
.flow-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;background:none;text-align:left;font-size:18px;font-weight:500;letter-spacing:-.2px;color:#f4f2eb}
.flow-icon{position:relative;flex:none;width:16px;height:16px}
.flow-icon i{position:absolute;left:0;top:7px;width:16px;height:1.6px;border-radius:2px;background:#f4f2eb;transition:transform .5s cubic-bezier(.65,0,.35,1)}
.flow-icon i:last-child{transform:rotate(90deg)}
.flow-item.open .flow-icon i:last-child{transform:rotate(180deg)}
.flow-item.open .flow-icon i:first-child{transform:rotate(180deg)}
.flow-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.65,0,.35,1)}
.flow-item.open .flow-a{grid-template-rows:1fr}
.flow-a>div{overflow:hidden}
.flow-a p{padding:0 56px 24px 24px;font-size:16px;line-height:1.6;color:#9aa4a7;opacity:0;transform:translateY(-8px);filter:blur(4px);transition:opacity .35s,transform .5s cubic-bezier(.22,1,.36,1),filter .35s}
.flow-item.open .flow-a p{opacity:1;transform:none;filter:none;transition-delay:.12s}

/* ── CTA ── */
.cta-section{display:flex;flex-direction:column;align-items:center;text-align:center;gap:22px;background:radial-gradient(ellipse 40% 60% at 50% 60%,#6e90ac1a,transparent)}
.cta-icon{position:relative;width:128px;height:128px;margin:40px 0 6px}
.app-icon{width:100%;height:100%;border-radius:30px;box-shadow:0 20px 60px #6e90ac3a,inset 0 0 0 1px #ffffff22;border:1px solid #ffffff2a}
.crown{position:absolute;width:86px;top:-50px;right:-28px;rotate:14deg;filter:drop-shadow(0 8px 14px #0008);animation:crown 4s ease-in-out infinite}
@keyframes crown{50%{transform:translateY(-6px) rotate(-4deg)}}
.cta-section h2{font-family:var(--body);font-size:52px;font-weight:800;line-height:1.02;letter-spacing:-2px;max-width:820px;text-wrap:balance}
.cta-section>p{font-size:18px;line-height:1.5;color:var(--soft);max-width:520px;text-wrap:balance}

/* ── Footer + liquid-metal wordmark ── */
.footer{padding:70px 64px 0;background:#06070a;border-top:1px solid #ffffff12;overflow:hidden}
.footer-top{display:grid;grid-template-columns:minmax(220px,360px) 180px 200px;gap:40px;max-width:1272px;margin:auto;font-size:15px;color:#a9b3b3}
.footer-brand{display:inline-block;font-size:24px;font-weight:800;letter-spacing:-.5px;color:var(--ivory);margin-bottom:12px}
.footer-about p{line-height:1.5;max-width:250px}
.footer-top h3{font-size:14px;font-weight:600;color:var(--ivory);margin-bottom:8px}
.footer-top>div{display:flex;flex-direction:column;gap:12px}
.footer-top a:hover{color:#fff}
.copyright{font-size:13px;color:#7e8b8d;max-width:1272px;margin:44px auto 0}
.footer-metal{display:block;width:min(1500px,104%);margin:10px auto 0;position:relative;left:50%;transform:translateX(-50%);aspect-ratio:4/1;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent),linear-gradient(transparent,#000 20%,#000 80%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent),linear-gradient(transparent,#000 20%,#000 80%,transparent);mask-composite:intersect}
.footer-metal video{display:block;width:100%;height:100%;object-fit:cover}

/* ── Logo preloader ── */
.preloader{position:fixed;inset:0;z-index:100;background:#040507;display:grid;place-items:center;transition:opacity .8s cubic-bezier(.65,0,.35,1),visibility .8s}
.preloader-mark{position:relative;width:min(460px,72vw);aspect-ratio:1620/320;overflow:hidden;-webkit-mask-image:radial-gradient(ellipse 60% 75% at 50% 50%,#000 60%,transparent);mask-image:radial-gradient(ellipse 60% 75% at 50% 50%,#000 60%,transparent);opacity:0;transform:translateY(26px) scale(.97);filter:brightness(.25) blur(6px);animation:pre-in 1.1s .15s cubic-bezier(.22,1,.36,1) forwards}
.preloader-mark img{width:100%;height:100%;object-fit:cover}
.preloader-shine{position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#ffffff70 50%,transparent 65%);mix-blend-mode:overlay;transform:translateX(-100%);animation:pre-shine 1.1s .7s ease-in-out forwards}
@keyframes pre-in{to{opacity:1;transform:none;filter:none}}
@keyframes pre-shine{to{transform:translateX(100%)}}
.preloader.is-done{opacity:0;visibility:hidden}
.preloader.is-done .preloader-mark{animation:pre-out .7s cubic-bezier(.65,0,.35,1) forwards}
@keyframes pre-out{from{opacity:1;transform:none;filter:none}to{opacity:0;transform:translateY(-18px) scale(1.02);filter:blur(6px)}}
.skip-preloader .preloader{display:none}
body.is-preloading{overflow:hidden}

/* ── Tablet ── */
@media(max-width:1199px){
.nav-bar{width:min(820px,calc(100% - 48px))}
.lens-link{padding:10px 8px;letter-spacing:1.2px}
.how-section{height:2200px}
.how-sticky{grid-template-columns:1fr 300px 1fr;gap:30px}
.how-phone{width:300px;height:616px}
.how-phone .phone-screen{border-radius:45px}
.how-title{font-size:38px}
.how-desc{font-size:17px}
.ingredient-tag{left:-110px}
.layer-1 .ingredient-tag,.layer-3 .ingredient-tag{right:-110px}
.ingredient-tag i{width:45px}
.footer-top{grid-template-columns:1fr 1fr 1fr}
}
@media(max-width:999px){
.nav-links{display:none}
.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:24px;height:30px;background:transparent;padding:2px}
.menu-toggle>span{width:19px;height:1.5px;background:#e6e8e9;transition:transform .25s}
.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(3px) rotate(45deg)}
.menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-3px) rotate(-45deg)}
.nav-download{margin-left:auto}
.nav-bar{flex-wrap:wrap;width:min(700px,calc(100% - 48px))}
.nav-bar #mobile-menu:not([hidden]){display:flex;width:100%;flex-direction:column;gap:2px;border-top:1px solid #ffffff1f;margin-top:8px;padding:8px 0;animation:fade-up .35s ease both}
.nav-bar #mobile-menu a{padding:11px 5px;font-size:15px;color:#d5dce1}
}

/* ── Phone ── */
@media(max-width:809px){
.nav-bar{top:16px;width:calc(100% - 32px);min-height:58px;padding:8px 14px 8px 20px;gap:12px;border-radius:30px}
.nav-download{font-size:12px;padding:8px 13px;min-height:36px;gap:6px}
.nav-download>span{font-size:17px}
.solid-button{font-size:15px}
.hero-cta{min-height:50px}
.hero-phone .analysis-sheet{padding:10px 12px 12px;border-radius:22px}
.sheet-head b{font-size:16px}.sheet-thumb{width:38px;height:38px}
.sheet-actions{margin:10px 0 8px;font-size:12px}
.sheet-nutrients i{width:28px;height:28px;font-size:14px}
.food-orbit{width:76px;height:76px}
.food-0{left:18%;top:18%}.food-1{left:50%;top:13%}.food-2{left:82%;top:20%}.food-3{left:87%;top:69%}.food-4{left:64%;top:80%}.food-5{left:30%;top:81%}.food-6{left:12%;top:31%}
.food-hint{font-size:11px}
.food-help{bottom:30px;font-size:12px}
.burger-stage{height:760px}
.ingredient-tag{left:-30px;font-size:11px;padding:4px 9px 4px 4px;gap:6px;border-radius:9px;top:62%}
.tag-thumb{width:22px;height:16px;border-radius:5px}
.ingredient-tag i{width:22px}
.layer-1 .ingredient-tag,.layer-3 .ingredient-tag{right:-30px}
.how-section{height:auto;padding:40px 24px 80px}
.how-sticky{position:relative;top:0;height:auto;min-height:0;display:flex;flex-direction:column;gap:28px}
.how-left{justify-items:center;text-align:center}
.how-title{font-size:36px}
.how-title br{display:none}
.how-right{justify-items:center;text-align:center}
.how-desc{font-size:17px}
.how-dots{justify-content:center}
.how-phone{width:280px;height:575px}
.how-phone .phone-screen{border-radius:43px}
.how-phone .phone-top{font-size:14px}
.ingredient{width:56px;height:56px}
.ingredient img{width:40px;height:40px}
.prompt-demo{font-size:14px}
.result-cards{height:300px;margin-top:45px}
.result-card{height:260px;width:190px;border-radius:20px;border-width:3px}
.result-0{transform:translateX(calc(-50% - 100px)) rotate(-10deg)}
.result-2{transform:translateX(calc(-50% + 100px)) rotate(10deg)}
.result-cards:hover .result-0{transform:translateX(calc(-50% - 110px)) rotate(-12deg)}
.result-cards:hover .result-2{transform:translateX(calc(-50% + 110px)) rotate(12deg)}
.pricing-grid{grid-template-columns:1fr;margin-top:40px;gap:18px;max-width:400px}
.flow-q{font-size:16px;padding:18px 18px}
.flow-a p{font-size:15px;padding:0 18px 20px}
.cta-section h2{font-size:38px;letter-spacing:-1.4px}
.cta-icon{width:110px;height:110px}
.crown{width:72px;top:-42px;right:-24px}
.footer{padding:50px 24px 0}
.footer-top{grid-template-columns:1fr 1fr;gap:30px;font-size:14px}
.footer-about{grid-column:1/-1}
.footer-metal{width:110%;margin-top:24px}
}
@media(prefers-reduced-motion:reduce){
.preloader{display:none}
.how-section{height:auto}
.how-sticky{position:relative;top:0;height:auto}
.ingredient-tag{opacity:1;transform:translate(0,-50%)}
.food-bob img{filter:none}
.js-motion .reveal{filter:none}
}

/* Review fixes: truthful previews, readable screens and graceful fallbacks. */
.demo-note{text-align:center;color:#a3afb5;font-size:13px;line-height:1.5;max-width:560px;margin:24px auto 0;padding-inline:20px}
.demo-note a{text-decoration:underline;text-underline-offset:3px}
.how-right .demo-note{font-size:12px;margin-top:16px;padding:0}
.screen-shot{display:block;width:100%;height:100%;padding:0;background:transparent;border-radius:inherit;cursor:zoom-in}
.screen-shot img{width:100%;height:100%;object-fit:cover;object-position:top}
.result-card:focus-within{z-index:10}
.result-card:has(.screen-shot:focus-visible){outline:2px solid #a4c5ef;outline-offset:6px}
#screen-viewer{width:min(500px,calc(100% - 24px));max-height:92dvh;padding:24px;overflow:auto}
#screen-viewer h2{font:600 20px var(--body);padding-right:30px}
#screen-viewer p{font-size:13px;margin:8px 0 20px}
#screen-viewer img{width:auto;max-width:100%;max-height:72dvh;margin:auto;border-radius:20px}
.screen-close{position:absolute;right:12px;top:12px;width:44px;height:44px;background:transparent;font-size:28px}
.preloader{display:none}
.is-preloading .preloader{display:grid}
html:not(.js-enabled) .flow-a{grid-template-rows:1fr}
html:not(.js-enabled) .flow-a p{opacity:1;transform:none;filter:none}
@media(max-width:809px){.plate-scene{width:min(340px,100%);height:auto;aspect-ratio:1}.food-hint{white-space:normal;min-width:110px;max-width:135px;justify-content:center}.how-dot{min-width:44px;min-height:44px;padding:12px;background-clip:content-box}.hero>.demo-note{margin-top:0}}
@media(max-width:380px){.nav-bar{max-width:calc(100% - 32px);gap:8px;padding:8px 10px 8px 14px}.nav-download{font-size:12px;padding:8px 12px}.nav-bar .brand,.nav-bar .menu-toggle{flex-shrink:0}}

/* Owner-requested brand refinements */
:root{--ink:#000}
html,body{background:#000}
.ambient{background:none;filter:none;animation:none}
.hero{background:none}
.brand{gap:0}
.nav-wordmark{display:block;width:78px;height:auto;max-height:24px;object-fit:contain;filter:none}
.footer{background:#000}
.footer-top{grid-template-columns:minmax(220px,360px) 150px 180px 150px}
.footer-about{align-items:flex-start}
.legal-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1272px;margin:42px auto 0;padding-top:28px;border-top:1px solid #ffffff16}
.legal-details section{scroll-margin-top:110px}
.legal-details h3{font-size:14px;font-weight:600;color:var(--ivory);margin:0 0 8px}
.legal-details p{margin:0;color:#a9b3b3;font-size:13px;line-height:1.6}
@media(max-width:900px){.footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.nav-wordmark{width:62px;max-height:24px}.footer-top{grid-template-columns:1fr 1fr}.legal-details{grid-template-columns:1fr;gap:22px;margin-top:30px;padding-top:22px}}

/* CŌR product story: editorial feature navigator + one authentic screen. */
.features-section{isolation:isolate}
.anchor-alias{display:block;position:relative;top:-110px;visibility:hidden}
.showcase-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,390px);align-items:center;gap:clamp(56px,10vw,148px);max-width:1040px;margin:76px auto 0}
.showcase-content{min-width:0;max-width:530px}
.showcase-tabs{border-top:1px solid #f4f2eb25}
.showcase-tab{display:grid;grid-template-columns:40px minmax(0,1fr) 22px;align-items:center;gap:12px;width:100%;min-height:72px;padding:15px 8px;background:transparent;border-bottom:1px solid #f4f2eb20;text-align:left;color:#929697;font-size:17px;transition:color .25s,border-color .25s}
.showcase-tab:hover,.showcase-tab.active{color:var(--ivory)}
.showcase-tab.active{border-bottom-color:#d7c6a380}
.showcase-tab-number{font-variant-numeric:tabular-nums;font-size:11px;letter-spacing:.11em;color:#818889}
.showcase-tab-arrow{justify-self:end;font-size:17px;opacity:0;transform:translate(-4px,4px);transition:opacity .25s,transform .25s}
.showcase-tab.active .showcase-tab-arrow{opacity:.8;transform:none}
.showcase-copy{min-height:236px;padding:34px 8px 0}
.showcase-copy-item[hidden]{display:none}
.showcase-eyebrow{margin-bottom:15px!important;color:#c5b393!important;font-size:11px!important;letter-spacing:.16em;text-transform:uppercase}
.showcase-copy-item h3{max-width:460px;font:400 clamp(32px,4vw,48px)/1.02 var(--display);letter-spacing:-.035em;text-wrap:balance}
.showcase-copy-item>p:last-child{max-width:430px;margin-top:18px;color:#aeb5b4;font-size:16px;line-height:1.65}
.showcase-note{padding:0 8px;color:#808889;font-size:12px;line-height:1.6}
.showcase-note span{display:block;color:#747b7b}
.showcase-stage{position:relative;isolation:isolate;display:grid;place-items:center;min-width:0;min-height:700px;overflow:hidden;border-radius:34px}
.showcase-photo-slot{position:absolute;z-index:-1;inset:4% 0 7%;overflow:hidden;border:1px solid #ffffff19;border-radius:34px;background-image:var(--showcase-background,none),radial-gradient(ellipse at 50% 34%,rgba(173,195,196,.2),transparent 40%),radial-gradient(ellipse at 78% 82%,rgba(195,174,137,.14),transparent 45%),linear-gradient(145deg,#172022,#0b0e0f 57%,#171514);background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:inset 0 1px #ffffff15,0 30px 90px #0008}
.showcase-device{justify-self:center;width:min(86%,310px);margin:0;padding:8px;border:1px solid #ffffff2b;border-radius:46px;background:linear-gradient(145deg,#ffffff12,#ffffff03 45%,#b69e7910),#080a0a;box-shadow:0 26px 90px #000a,inset 0 1px #ffffff24;position:relative;transform:translateY(-2px)}
.showcase-capture{position:relative;display:block;overflow:hidden;width:100%;aspect-ratio:.68;padding:0;border:0;border-radius:38px;background:#070908;cursor:zoom-in}
.showcase-screen{display:block;width:100%;height:100%;object-fit:cover;object-position:top;border-radius:inherit}
.showcase-capture:after{content:"";position:absolute;inset:auto 0 0;height:18%;pointer-events:none;background:linear-gradient(transparent,#050606b8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);mask-image:linear-gradient(transparent,#000 48%);opacity:.75}
.capture-zoom{position:absolute;right:14px;bottom:16px;z-index:1;display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff48;border-radius:50%;background:#080909a8;color:#f4f2eb;font-size:16px;opacity:0;transform:translateY(4px);transition:opacity .25s,transform .25s}
.showcase-capture:hover .capture-zoom,.showcase-capture:focus-visible .capture-zoom{opacity:1;transform:none}
.showcase-device figcaption{display:flex;justify-content:space-between;padding:15px 10px 5px;color:#929a99;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.showcase-device figcaption span:first-child{color:#c7b695;font-variant-numeric:tabular-nums}
.showcase-tab:focus-visible,.showcase-capture:focus-visible{outline:2px solid #d8c9aa;outline-offset:5px}
@media(max-width:800px){.showcase-layout{grid-template-columns:1fr;gap:42px;margin-top:52px}.showcase-content{max-width:590px;margin-inline:auto;width:100%}.showcase-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:0;gap:0 18px}.showcase-tab{grid-template-columns:30px minmax(0,1fr) 18px;min-height:62px;padding:12px 4px;font-size:15px;border-top:1px solid #f4f2eb20}.showcase-copy{min-height:205px;padding:28px 4px 0}.showcase-note{padding:0 4px}.showcase-stage{width:min(100%,480px);min-height:650px;margin-inline:auto}.showcase-photo-slot{inset:3% 2% 7%;border-radius:30px}.showcase-device{width:min(72%,310px)}}
@media(max-width:420px){.showcase-tabs{column-gap:10px}.showcase-tab{grid-template-columns:26px minmax(0,1fr) 12px;gap:7px;font-size:14px}.showcase-copy-item h3{font-size:35px}.showcase-copy-item>p:last-child{font-size:15px}.showcase-device{width:min(82vw,290px)}}
@media(prefers-reduced-motion:reduce){.showcase-tab,.showcase-tab-arrow,.capture-zoom{transition:none}.showcase-capture:after{backdrop-filter:none;-webkit-backdrop-filter:none}}
#screen-viewer img{width:min(390px,100%);height:min(560px,68dvh);object-fit:cover;object-position:top;max-height:none}

/* Smooth FAQ Flow visual treatment, tuned for CŌR's black canvas. */
.faq-section{isolation:isolate;overflow:hidden}
.flow-list{position:relative;isolation:isolate;gap:12px}
.flow-list:before{content:"";position:absolute;z-index:-1;inset:-38px -50px -50px;pointer-events:none;background:radial-gradient(ellipse 70% 45% at 50% 28%,rgba(202,188,163,.13),transparent 76%),radial-gradient(ellipse 52% 45% at 14% 72%,rgba(153,174,189,.08),transparent 80%);filter:blur(30px)}
.flow-item{border-color:rgba(244,242,235,.23);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035) 58%,rgba(168,181,190,.045)),rgba(15,17,18,.36);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),inset 0 -1px 0 rgba(255,255,255,.035),0 16px 42px -22px rgba(0,0,0,.8)}
.flow-item.open{border-color:rgba(225,211,184,.4);background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.055) 58%,rgba(190,172,139,.08)),rgba(17,18,19,.45);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),inset 0 0 32px rgba(220,208,184,.035),0 18px 48px -22px rgba(0,0,0,.82)}
.flow-q{min-height:72px}
.flow-a p{color:#bfc4c2}
@media(prefers-reduced-motion:reduce){.flow-item,.flow-icon i,.flow-a,.flow-a p{transition:none!important}.flow-list:before{filter:none}}

/* Frosted glass navigation and COR circle cursor */
.nav-bar{background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.025) 48%,rgba(148,177,203,.055)),rgba(14,16,19,.47);backdrop-filter:blur(30px) saturate(175%);-webkit-backdrop-filter:blur(30px) saturate(175%);border-color:rgba(255,255,255,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),inset 0 -1px 0 rgba(255,255,255,.035),0 18px 46px rgba(0,0,0,.4),0 0 28px -16px rgba(183,211,235,.45)}
html.has-custom-cursor:not(.cursor-native),html.has-custom-cursor:not(.cursor-native) *{cursor:none!important}
.custom-cursor{position:fixed;inset:0;z-index:1000;pointer-events:none;opacity:0;mix-blend-mode:difference;transition:opacity .18s ease}
.custom-cursor.is-visible{opacity:1}
.custom-cursor.is-editing{opacity:0}
.cursor-ring,.cursor-dot{position:fixed;left:0;top:0;display:block;border-radius:50%;pointer-events:none}
.cursor-ring{width:34px;height:34px;border:1px solid rgba(255,255,255,.82);background:rgba(255,255,255,.035);transition:width .24s cubic-bezier(.2,.8,.2,1),height .24s cubic-bezier(.2,.8,.2,1),background-color .24s ease,border-color .24s ease}
.cursor-dot{width:5px;height:5px;background:#fff;transition:width .18s ease,height .18s ease,opacity .18s ease}
.custom-cursor.is-hovering .cursor-ring{width:52px;height:52px;background:rgba(255,255,255,.12);border-color:#fff}
.custom-cursor.is-hovering .cursor-dot{width:4px;height:4px}
.custom-cursor.is-pressed .cursor-ring{width:27px;height:27px;background:rgba(255,255,255,.23)}
.custom-cursor.is-pressed .cursor-dot{width:7px;height:7px}
@media(prefers-reduced-motion:reduce){.custom-cursor,.cursor-ring,.cursor-dot{transition:none!important}}

/* Keep the loading moment clean: no cursor or navigation over the wordmark. */
.preloader{z-index:1200;background:#000}
.preloader-mark{width:min(300px,64vw);-webkit-mask-image:url('/assets/brand/cor-metal-wordmark.webp');-webkit-mask-mode:luminance;mask-image:url('/assets/brand/cor-metal-wordmark.webp');mask-mode:luminance;mask-size:100% 100%;mask-repeat:no-repeat;filter:brightness(2.8) blur(1px)}
.preloader-mark img{object-fit:contain;mix-blend-mode:screen;filter:drop-shadow(0 0 20px rgba(180,205,230,.16))}
body.is-preloading .nav-bar{visibility:hidden}
body.is-preloading .custom-cursor{visibility:hidden;opacity:0!important}
@media(max-width:640px){.preloader-mark{width:min(260px,68vw)}}
@keyframes pre-in{to{opacity:1;transform:none;filter:brightness(2.8)}}
@keyframes pre-out{from{opacity:1;transform:none;filter:brightness(2.8)}to{opacity:0;transform:translateY(-18px) scale(1.02);filter:brightness(2.8) blur(6px)}}

/* Compact mobile header: keep the logo and menu on one row at narrow widths. */
@media(max-width:640px){
  .nav-bar{top:12px;width:calc(100% - 24px);min-height:56px;padding:8px 14px;gap:10px;border-radius:22px;flex-wrap:wrap}
  .nav-download{display:none}
  .nav-wordmark{width:60px;max-height:22px}
  .menu-toggle{flex:0 0 36px;width:36px;height:36px;margin-left:auto;align-items:center}
}
@media(max-width:380px){
  .nav-bar{top:10px;width:calc(100% - 20px);min-height:52px;padding:7px 10px;gap:8px;border-radius:19px}
  .nav-wordmark{width:54px;max-height:20px}
  .menu-toggle{flex-basis:32px;width:32px;height:32px}
}
/* The nav uses the approved transparent white SVG wordmark. */
.nav-wordmark{mix-blend-mode:normal;filter:none}

/* Native COR screen gallery with a soft iOS-style progressive blur at the image edge. */
.results-section{min-height:0;text-align:left}
.results-section .section-header{text-align:center}
.result-cards{height:auto;width:100%;display:grid;grid-auto-flow:column;grid-auto-columns:clamp(210px,22vw,252px);gap:22px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:max(22px,calc((100vw - 1100px)/2));padding:18px max(22px,calc((100vw - 1100px)/2)) 28px;margin:42px 0 0;scrollbar-width:none}
.result-cards::-webkit-scrollbar{display:none}
.result-card{position:relative;left:auto;top:auto;z-index:auto;width:auto;height:auto;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none;transition:transform .35s ease;scroll-snap-align:start}
.result-card:hover{transform:translateY(-5px)}
.result-card img{width:100%;height:auto;min-height:0;object-fit:cover}
.screen-shot{position:relative;isolation:isolate;overflow:hidden;width:100%;height:auto;aspect-ratio:1206 / 2622;padding:5px;border:1px solid rgba(255,255,255,.24);border-radius:28px;background:linear-gradient(150deg,rgba(255,255,255,.18),rgba(255,255,255,.035) 35%,rgba(159,198,225,.12));box-shadow:0 25px 70px #000a,0 0 40px -26px rgba(180,211,235,.7);scroll-snap-align:start}
.screen-shot img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;border-radius:22px}
.screen-shot::after{content:"";position:absolute;left:6px;right:6px;bottom:6px;height:12%;pointer-events:none;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.15) 80%,rgba(0,0,0,.3));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);mask-image:linear-gradient(to bottom,transparent 0%,#000 55%,#000 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 55%,#000 100%);border-radius:0 0 21px 21px}
.screen-caption{padding:17px 4px 2px}
.screen-caption h3{font:600 16px/1.3 var(--body);color:var(--ivory);margin:0 0 7px}
.screen-caption p{font-size:13px;line-height:1.5;color:#a9b3b3;margin:0}
.result-card:focus-within{z-index:2}
.screen-shot:focus-visible{outline:2px solid #a4c5ef;outline-offset:5px}
#screen-viewer img{width:auto;height:auto;object-fit:contain}
@media(max-width:640px){.result-cards{grid-auto-columns:minmax(205px,72vw);gap:16px;padding-inline:20px;scroll-padding-inline:20px;margin-top:28px}.screen-shot{border-radius:24px}.screen-shot img{border-radius:18px}.screen-shot::after{border-radius:0 0 17px 17px}}
@media(prefers-reduced-motion:reduce){.result-card{transition:none}.result-card:hover{transform:none}}

/* Accessibility pass: keep the operating system pointer available alongside the visual cursor. */
html.has-custom-cursor,html.has-custom-cursor *{cursor:auto!important}
html.has-custom-cursor a,html.has-custom-cursor button,html.has-custom-cursor [role="button"]{cursor:pointer!important}
html.has-custom-cursor input,html.has-custom-cursor textarea,html.has-custom-cursor select,[contenteditable="true"]{cursor:text!important}
.gallery-controls{display:flex;justify-content:center;gap:12px;margin:0 auto 8px}
.gallery-control{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(244,242,235,.55);border-radius:50%;background:#121719;color:var(--ivory);font-size:28px;line-height:1}
.gallery-control:hover{background:#26343b}
.gallery-control:focus-visible{outline:3px solid #a4c5ef;outline-offset:4px}
@media(max-width:809px){.gallery-control{width:44px;height:44px}}

/* Waitlist, feature confirmations, and draft legal pages. */
.confirm-heading{max-width:900px;margin:48px auto 18px;font:600 22px/1.3 var(--body);color:var(--ivory)}
.confirm-feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:900px;margin:0 auto;padding:0;list-style:none}
.confirm-feature-list li{padding:16px 18px;border:1px solid rgba(244,242,235,.2);border-radius:16px;background:rgba(255,255,255,.04);color:#e1e4e1;font-size:15px;line-height:1.45}
.confirm-feature-list strong{display:block;margin-top:8px;color:#c6dbef;font-size:12px;letter-spacing:.08em}
.pricing-statement{text-align:center;margin:-12px auto 28px;color:#f4f2eb;font-size:22px;font-weight:600}
.price-heading .price b{font-size:30px;letter-spacing:-.8px}
.waitlist-section{padding-top:100px;padding-bottom:90px}
.waitlist-section .section-header{margin-bottom:28px}
.waitlist-section .eyebrow{color:#d1e2ed;font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.waitlist-preview{max-width:580px;margin:auto;padding:28px;border:1px solid rgba(244,242,235,.28);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.025))}
.waitlist-preview>label{display:block;margin-bottom:9px;font-size:15px;font-weight:600;color:#f4f2eb}
.waitlist-row{display:flex;gap:12px}
.waitlist-row input{min-width:0;flex:1;min-height:52px;padding:12px 15px;border:1px solid #c5d1d5;border-radius:12px;background:#101416;color:#f4f2eb;font:inherit}
.waitlist-row input::placeholder{color:#c2c9ca}
.waitlist-row input:disabled{opacity:1;color:#d1d5d4}
.waitlist-row button[disabled]{min-height:52px;opacity:.78;cursor:not-allowed}
.waitlist-status{margin-top:14px;color:#d0d5d5;font-size:13px;line-height:1.5}
.contact-section{text-align:center;padding-top:24px;padding-bottom:70px}
.contact-section h2{font-size:42px;margin-bottom:16px}
.contact-section p{color:#d1d5d4;line-height:1.6}
.contact-section a{text-decoration:underline;text-underline-offset:4px}
.footer-mark-wrap{position:relative}
.footer-motion-toggle{position:absolute;right:8%;bottom:16px;z-index:3;min-height:44px;padding:10px 16px;border:1px solid #f4f2eb;border-radius:999px;background:#090c0e;color:#f4f2eb;font:600 14px var(--body)}
.footer-motion-toggle[hidden]{display:none}
.footer-motion-toggle:disabled{opacity:1;color:#f4f2eb;background:#090c0e;cursor:default}
.legal-document{min-height:100vh;padding:120px 24px 80px;background:#000;color:#f4f2eb}
.legal-document header,.legal-document article{width:min(820px,100%);margin-inline:auto}
.legal-document header{margin-bottom:28px}
.legal-document .draft-banner{display:inline-flex;padding:8px 12px;border:1px solid #eccb73;border-radius:99px;color:#ffe39a;font-size:13px;font-weight:800;letter-spacing:.1em}
.legal-document h1{margin:22px 0 12px;font:400 clamp(42px,7vw,68px)/1 var(--display);letter-spacing:-1px}
.legal-document .last-updated{color:#d1d5d4;font-size:14px}
.legal-document article{font-size:16px;line-height:1.7;color:#e0e3e0}
.legal-document h2{margin:32px 0 10px;font:600 22px/1.3 var(--body);color:#fff}
.legal-document p,.legal-document ul{margin:0 0 14px}
.legal-document li{margin:0 0 8px}
.legal-document a{color:#d6e8f5;text-decoration:underline;text-underline-offset:3px}
.legal-top-link{display:inline-flex;margin-top:28px;min-height:44px;align-items:center}
.not-found{min-height:100vh;display:grid;place-content:center;text-align:center;padding:32px;color:var(--ivory)}
.not-found h1{font-size:clamp(48px,8vw,88px);margin-bottom:18px}
.not-found p{margin:0 auto 24px;color:#d1d5d4;max-width:480px}
.not-found a{display:inline-flex;justify-self:center}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #a4c5ef;outline-offset:4px}
@media(max-width:700px){.confirm-feature-list{grid-template-columns:1fr}.waitlist-row{flex-direction:column}.waitlist-row button{width:100%}.contact-section h2{font-size:34px}.footer-motion-toggle{right:6%;bottom:10px}}

/* Glass Material inspired surfaces: soft refraction, layered rims and reflected light. */
.features-section,.pricing-section,.waitlist-section{position:relative;isolation:isolate}
.features-section:before,.pricing-section:before,.waitlist-section:before{content:"";position:absolute;z-index:-1;inset:14% 6% 4%;pointer-events:none;background:radial-gradient(ellipse 56% 48% at 22% 35%,rgba(157,190,207,.105),transparent 74%),radial-gradient(ellipse 48% 42% at 78% 65%,rgba(208,189,153,.09),transparent 76%);filter:blur(42px)}
.feature-card,.pricing-card,.waitlist-preview,.showcase-device{backdrop-filter:blur(22px) saturate(155%) contrast(1.035);-webkit-backdrop-filter:blur(22px) saturate(155%) contrast(1.035);border-color:rgba(244,242,235,.25);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),inset 0 -1px 0 rgba(255,255,255,.035),0 24px 64px -30px rgba(0,0,0,.9)}
.feature-card{background:radial-gradient(ellipse at 12% 0%,rgba(191,217,230,.12),transparent 54%),radial-gradient(ellipse at 94% 100%,rgba(203,184,147,.09),transparent 48%),linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.018) 58%),rgba(12,15,17,.66)}
.pricing-card{background:radial-gradient(ellipse at 12% 0%,rgba(190,216,229,.12),transparent 52%),radial-gradient(ellipse at 95% 95%,rgba(207,186,145,.1),transparent 50%),linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.02) 58%),rgba(12,15,17,.7)}
.plan-1{background:radial-gradient(ellipse at 12% 0%,rgba(190,216,229,.14),transparent 54%),linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.018) 58%),rgba(12,15,17,.72)}
.plan-2{background:radial-gradient(ellipse at 12% 0%,rgba(190,216,229,.15),transparent 50%),radial-gradient(ellipse at 95% 95%,rgba(207,186,145,.14),transparent 52%),linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.025) 58%),rgba(14,17,19,.68)}
.waitlist-preview{border-color:rgba(244,242,235,.34);background:radial-gradient(ellipse at 8% 0%,rgba(187,216,232,.13),transparent 58%),radial-gradient(ellipse at 100% 100%,rgba(209,189,150,.1),transparent 56%),linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.028) 58%),rgba(13,16,18,.68);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),inset 0 -1px 0 rgba(255,255,255,.045),0 28px 70px -34px rgba(0,0,0,.95)}
.showcase-device{border-color:rgba(244,242,235,.36);background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.025) 42%,rgba(203,183,146,.1)),rgba(8,10,10,.84);box-shadow:inset 0 1px 0 rgba(255,255,255,.32),inset 0 -1px 0 rgba(255,255,255,.06),0 26px 90px #000b,0 0 44px -30px rgba(190,216,229,.7)}
.flow-item{backdrop-filter:blur(24px) saturate(155%) contrast(1.04);-webkit-backdrop-filter:blur(24px) saturate(155%) contrast(1.04)}
@media(prefers-reduced-transparency:reduce){.feature-card,.pricing-card,.waitlist-preview,.showcase-device,.flow-item,.nav-bar{backdrop-filter:none;-webkit-backdrop-filter:none;background-color:#101416}}

/* ── Apple iPhone Duo launch hero ── */
.hero-phone-group:has(.hero-duo){width:min(820px,100%);height:auto;display:flex;justify-content:center}
.hero-duo{position:relative;isolation:isolate;width:min(760px,calc(100vw - 80px));height:auto;aspect-ratio:2247/3093;flex:none;filter:drop-shadow(0 38px 60px #0009);transition:transform .9s cubic-bezier(.22,1,.36,1)}
.duo-screen-bed{position:absolute;z-index:-1;inset:3.9% 5.25% 3.8%;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:5.2%;background:#030705}
.duo-screen-bed img{display:block;width:100%;height:100%;min-width:0;object-fit:contain;object-position:center top;background:#030705}
.duo-screen-bed img+img{border-left:2px solid #090d0d;box-shadow:inset 1px 0 #ffffff10}
.duo-bezel{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:2;pointer-events:none}
.hero-revealed .hero-duo{transform:scale(1.035) translateY(-10px)}
.hero-scene:has(.hero-duo) .float-food,.hero-scene:has(.hero-duo) .nutrition-toast,.hero-scene:has(.hero-duo) .know-heading{display:none}
@media(max-width:809px){.hero-phone-group:has(.hero-duo){width:100%;height:auto}.hero-duo{width:min(620px,calc(100vw - 26px));filter:drop-shadow(0 24px 35px #0009)}}

/* Switch-on-hover feature navigator with an authentic Duo device bezel. */
.showcase-photo-slot{inset:0;border:0;border-radius:0;background-image:var(--showcase-background,none);box-shadow:none}
.showcase-tabs{display:grid;gap:10px;border:0}
.showcase-tab{position:relative;grid-template-columns:34px minmax(0,1fr) 22px;min-height:66px;padding:16px 18px;border:1px solid transparent;border-radius:14px;background:transparent;transition:color .24s ease,background-color .24s ease,border-color .24s ease,transform .24s ease}
.showcase-tab:hover,.showcase-tab.active{color:var(--ivory)}
.showcase-tab.active{border-color:#f4f2eb22;background:linear-gradient(135deg,#ffffff13,#ffffff08 60%,#c7b6950b);box-shadow:inset 0 1px #ffffff14,0 12px 30px #0005}
.showcase-tab-title{font-weight:500}
.showcase-tab-description{grid-column:2/4;display:block;max-height:0;overflow:hidden;opacity:0;color:#b5b8b5;font-size:14px;line-height:1.55;transition:max-height .32s ease,opacity .22s ease,margin .32s ease}
.showcase-tab.active .showcase-tab-description{max-height:84px;margin-top:5px;opacity:1}
.showcase-note{margin-top:24px}
.showcase-stage{overflow:visible;min-height:720px}
.showcase-photo-slot{z-index:-1;inset:8% -5% 10%;border-radius:28px;transition:background-image .35s ease}
.showcase-device{z-index:1;position:relative;display:grid;justify-items:center;align-self:center;width:min(100%,368px);margin:0;padding:0;border:0;border-radius:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;transform:none}
.showcase-phone{position:relative;width:100%;aspect-ratio:1574/2194;isolation:isolate;filter:drop-shadow(0 30px 42px #000a)}
.showcase-capture{position:absolute;z-index:0;left:18.5%;top:6%;width:63%;height:88%;aspect-ratio:auto;overflow:hidden;border:0;border-radius:0;background:#050606;cursor:zoom-in}
.showcase-screen{width:100%;height:100%;object-fit:contain;object-position:center top;border-radius:0}
.showcase-capture:after{display:none}
.showcase-bezel{position:absolute;z-index:2;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}
.showcase-device figcaption{position:relative;z-index:3;width:100%;padding:12px 8px 0}
.showcase-device figcaption span:first-child{color:#c7b695}
.showcase-tab:focus-visible,.showcase-capture:focus-visible,.showcase-device:focus-visible{outline:2px solid #d8c9aa;outline-offset:5px}
@media(max-width:800px){.showcase-layout{gap:32px}.showcase-tabs{grid-template-columns:1fr 1fr;gap:8px}.showcase-tab{grid-template-columns:28px minmax(0,1fr) 18px;padding:13px 12px;min-height:60px;font-size:14px}.showcase-tab-description{font-size:13px}.showcase-stage{min-height:600px}.showcase-photo-slot{inset:2% 4% 8%}.showcase-device{width:min(100%,360px)}}
@media(max-width:520px){.showcase-tabs{grid-template-columns:1fr;gap:5px}.showcase-tab{grid-template-columns:30px minmax(0,1fr) 18px;min-height:58px;padding:12px 14px}.showcase-tab-description{grid-column:2/4}.showcase-stage{min-height:550px}.showcase-device{width:min(100%,320px)}.showcase-photo-slot{inset:2% 0 8%}}
@media(prefers-reduced-motion:reduce){.showcase-tab,.showcase-tab-description,.showcase-photo-slot{transition:none}}
.hero-duo[aria-label*="iPhone Duo"] .duo-closed-bed{inset:6% 18.5% 6%;grid-template-columns:1fr;place-items:center;border-radius:2%;background:#030705}
.hero-duo .duo-closed-bed img{width:100%;height:100%;object-fit:contain;object-position:center;background:#030705}
.duo-closed-bed{inset:6% 18.5% 6%;grid-template-columns:1fr;place-items:center;border-radius:2%;background:#030705}
.duo-closed-bed img{width:100%;height:100%;object-fit:contain;object-position:center;background:#030705}
