@import url('https://fonts.googleapis.com/css2?family=DM+Mono&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');

:root { --ink:#1d231d; --soft:#657060; --cream:#fcf8ed; --lime:#d4f06b; --forest:#22563b; --line:rgba(29,35,29,.15); }
* { box-sizing:border-box; }
html { background:var(--cream); }
body { margin:0; color:var(--ink); background:var(--cream); font:16px/1.55 "DM Sans", sans-serif; }
a { color:inherit; }
.site-header, .hero, .feature-intro, .features, .closing, .site-footer { width:min(1120px, calc(100% - 48px)); margin:auto; }
.site-header { display:flex; justify-content:space-between; align-items:center; padding:27px 0; }
.brand { font-size:1.45rem; font-weight:700; letter-spacing:-.07em; text-decoration:none; }.brand span { color:var(--forest); }.back-link { color:var(--soft); font-weight:600; text-decoration:none; }
.hero { min-height:640px; display:grid; grid-template-columns:1.08fr .92fr; gap:4rem; align-items:center; padding:48px 0 80px; }
.eyebrow { margin:0 0 16px; color:var(--forest); font: .72rem/1 "DM Mono", monospace; letter-spacing:.11em; text-transform:uppercase; }
h1,h2,h3,p { margin-top:0; } h1,h2 { letter-spacing:-.055em; line-height:.98; } h1 { max-width:690px; font:700 clamp(3.6rem,8vw,7.4rem)/.9 "Playfair Display", serif; } h2 { font:600 clamp(2.55rem,5vw,5rem)/.98 "Playfair Display", serif; }
.lede { max-width:530px; margin:25px 0 30px; color:var(--soft); font-size:1.18rem; }.button { display:inline-block; border-radius:999px; padding:14px 23px; background:var(--ink); color:#fff; font-weight:700; text-decoration:none; transition:transform .2s, background .2s; }.button:hover { transform:translateY(-2px); background:var(--forest); }.platform { margin:14px 0; color:var(--soft); font-size:.83rem; }
.phone-wrap { display:grid; place-items:center; min-height:520px; background:radial-gradient(circle at 60% 32%, var(--lime), transparent 48%), #e6ead9; border-radius:48% 52% 45% 55% / 42% 44% 56% 58%; }
.phone { width:278px; height:555px; padding:9px; border:7px solid #202420; border-radius:43px; background:#202420; box-shadow:0 38px 45px rgba(29,35,29,.25); }.island { position:absolute; z-index:2; width:101px; height:25px; margin-left:77px; border-radius:999px; background:#202420; }.screen { height:100%; overflow:hidden; padding:44px 17px 14px; border-radius:29px; background:linear-gradient(155deg,#f2f4d9,#bddb9c 52%,#61875f); }.app-header span { display:block; color:#446442; font-size:.72rem; }.app-header strong { display:block; margin-top:2px; font-size:1.18rem; letter-spacing:-.05em; }.recipe-card { display:flex; min-height:151px; margin-top:15px; padding:15px; flex-direction:column; justify-content:flex-end; border-radius:18px; color:#fff; box-shadow:inset 0 -62px 45px rgba(0,0,0,.28); }.recipe-one { background:linear-gradient(160deg,transparent,rgba(0,0,0,.27)),linear-gradient(135deg,#de6744,#f0aa55); }.recipe-two { background:linear-gradient(160deg,transparent,rgba(0,0,0,.3)),linear-gradient(135deg,#566e2e,#b1c35b); }.recipe-card span { font-size:.68rem; }.recipe-card strong { font-size:1.2rem; letter-spacing:-.04em; }.recipe-card small { font-size:.68rem; }.tab-row { display:flex; justify-content:space-between; align-items:center; padding:14px 8px 0; color:#315937; }.plus { display:grid; width:33px; height:33px; place-items:center; border-radius:50%; background:var(--forest); color:white; font-size:1.35rem; }
.feature-intro { padding:100px 0 45px; border-top:1px solid var(--line); }.feature-intro h2 { max-width:720px; }
.features { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--line); }.features article { min-height:260px; padding:32px 34px 38px 0; border-bottom:1px solid var(--line); }.features article:nth-child(odd) { border-right:1px solid var(--line); padding-right:52px; }.features article:nth-child(even) { padding-left:52px; }.feature-number { color:var(--forest); font: .72rem "DM Mono",monospace; }.features h3 { margin:42px 0 12px; font-size:1.5rem; letter-spacing:-.05em; }.features p { max-width:400px; color:var(--soft); }
.closing { margin-top:106px; padding:100px 24px; border-radius:28px; background:var(--forest); color:#fff; text-align:center; }.closing .eyebrow { color:var(--lime); }.closing h2 { max-width:650px; margin:0 auto 28px; }.closing .button { background:var(--lime); color:var(--ink); }.closing .button:hover { background:#e2f69c; }.site-footer { display:flex; justify-content:space-between; padding:32px 0 48px; color:var(--soft); font-size:.86rem; }.site-footer p { margin:0; }.site-footer nav { display:flex; gap:18px; }.site-footer a { text-decoration:none; }
@media (max-width:720px) { .site-header,.hero,.feature-intro,.features,.closing,.site-footer { width:min(100% - 32px,1120px); }.hero { min-height:0; grid-template-columns:1fr; gap:2rem; padding:28px 0 64px; }.phone-wrap { min-height:470px; }.phone { transform:scale(.86); }.feature-intro { padding:72px 0 34px; }.features { grid-template-columns:1fr; }.features article,.features article:nth-child(odd),.features article:nth-child(even) { min-height:0; padding:30px 0; border-right:0; }.features h3 { margin-top:28px; }.closing { margin-top:65px; padding:72px 20px; }.site-footer { align-items:flex-start; flex-direction:column; gap:12px; } }
