/* Prefer local OFL fonts, then let the browser choose the system fallback. */
:root{color:#24382d;background:#faf6ed;font:16px/1.65 "Noto Sans CJK SC","Noto Sans SC",system-ui,sans-serif;--ink:#24382d;--muted:#53645a;--red:#a63224;--line:#dedbd0}
*,*::before,*::after{box-sizing:border-box}
body,figure,p,h1,h2,h3{margin:0}
html,body{height:100%;overflow:hidden}
body{display:flex;flex-direction:column}
main{min-height:0;overflow:auto;flex:1}
a{color:inherit;text-underline-offset:5px}
a:focus-visible{outline:3px solid var(--red);outline-offset:5px}
.shell{width:min(100% - 40px,1240px);margin-inline:auto}
.top,.foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:20px}
.top{border-bottom:1px solid var(--line);flex:none}
.brand{display:inline-flex;align-items:center;gap:9px;font-weight:800;font-size:20px;text-decoration:none;white-space:nowrap}
nav{display:flex;gap:clamp(14px,4vw,44px);font-size:15px}
nav a,.foot>a:last-child{text-decoration:none}
nav a:hover,.foot>a:last-child:hover{text-decoration:underline}
.skip{position:absolute;left:20px;top:8px;padding:8px;background:#faf6ed;transform:translateY(-150%);z-index:2}
.skip:focus{transform:none}
.hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;gap:clamp(28px,6vw,86px);padding-block:clamp(44px,8vw,110px)}
.eyebrow{font-size:14px;font-weight:700;letter-spacing:.1em;color:var(--muted)}
.eyebrow span{display:inline-block;width:9px;height:9px;margin-right:7px;border-radius:50%;background:var(--red)}
h1,h2{font-family:"Noto Serif CJK SC","Noto Serif SC",serif;font-weight:900;line-height:1.13;letter-spacing:-.04em}
h1{margin-block:18px 22px;font-size:clamp(48px,6.5vw,94px)}
h1 em{color:var(--red);font-style:normal}
.lead{max-width:34ch;color:var(--muted);font-size:clamp(16px,1.6vw,19px)}
.button{display:inline-flex;align-items:center;gap:22px;margin-top:27px;padding:10px 16px;background:var(--ink);color:#fff;text-decoration:none;border-radius:5px;font-weight:700;min-height:46px}
.button:hover{background:var(--red)}
.platform-line{margin-top:12px;font-size:14px;color:var(--muted)}
.platform-line span{margin-inline:4px}
.hero-preview{display:grid;justify-items:center;gap:12px;padding:clamp(20px,4vw,40px);border-radius:16px;background:#e9ede0}
.hero-preview img{display:block;width:min(100%,270px);height:auto;border:5px solid var(--ink);border-radius:24px;box-shadow:0 12px 26px #24382d25}
.hero-preview figcaption,.dishes small{color:var(--muted);font-size:13px}
.dishes img{display:block;width:100%;height:auto;object-fit:cover;background:#e7e0d1}
.workflow{border-top:1px solid var(--line);padding-block:54px 70px}
h2{font-size:clamp(32px,4vw,58px);margin-block:10px 24px}
.steps,.dishes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,4vw,42px)}
.steps{padding:0;margin:0;list-style:none}
.steps li{border-top:1px solid var(--line);padding-top:15px}
.steps li>span{font-size:14px;color:var(--red);font-weight:700;font-variant-numeric:tabular-nums}
.steps h3{font-size:22px;margin-block:5px 7px}
.steps p{color:var(--muted);max-width:34ch}
.platforms{border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:clamp(20px,5vw,64px);padding-block:48px 64px}
.platform-note{max-width:29ch;color:var(--muted)}
.platform-list{list-style:none;margin:0;padding:0}
.platform-list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:14px;padding-block:17px;border-bottom:1px solid var(--line)}
.platform-list li:first-child{border-top:1px solid var(--line)}
.platform-list h3{font-size:19px}
.platform-list p{margin-top:4px;color:var(--muted);font-size:14px}
.platform-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#e9ede0}
.platform-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.platform-status{padding:3px 8px;background:#e9ede0;border-radius:4px;font-size:12px;font-weight:700;white-space:nowrap}
.platform-status.pending{background:#f0e2d2;color:#6d4732}
.recipes{background:#edf0e5;padding-block:48px 60px}
.dishes img{aspect-ratio:3/2;border-radius:6px}
.dishes figcaption{display:grid;gap:2px;padding-top:10px}
.dishes strong{font-size:18px}
.foot{font-size:14px;color:var(--muted);flex-wrap:wrap}
@media(max-width:760px){.hero,.platforms{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.workflow,.platforms{padding-block:40px 50px}.dishes{gap:14px}}
@media(max-width:470px){.shell{width:calc(100% - 32px)}.top{flex-wrap:wrap;gap:8px;padding-block:12px}nav{gap:14px;font-size:13px}.dishes{grid-template-columns:1fr;gap:22px}.dishes img{aspect-ratio:2/1}.foot>span{order:3;width:100%}}
