/* Home, AI Chef first (23 Oct 2026): hero buttons, the talking Roommate, and the AI Chef section under the hero */
.hero-cta-ai{gap:10px}
.hero-tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:99px;background:var(--forest);color:var(--cream);font-size:13px;font-weight:700;line-height:1.2}
.hero-cta-kit{background:#fff9ea;box-shadow:inset 0 0 0 2.5px var(--forest)}
.hero-cta-kit:hover{box-shadow:inset 0 0 0 2.5px var(--forest),0 6px 0 var(--forest)}
.hero-cta-kit:active{box-shadow:inset 0 0 0 2.5px var(--forest),0 1px 0 var(--forest)}
@media(min-width:761px){.support{max-width:620px;margin-inline:auto}}
/* Short desktop windows: the three actions stay on one line */
@media(max-height:780px) and (min-width:761px){.hero-actions{gap:10px 16px}.hero-cta-ai,.hero-cta-kit{padding:11px 22px;font-size:17px}}
/* Phone: one big AI button with its tag as a sticker, then two plain links, narrow and centred so they stay clear of the
   Roommate on the right (home-ai.js fits his height to the room under the button) */
@media(max-width:760px){.support{font-size:clamp(16.5px,4.6vw,19px);max-width:28ch}
  .hero-actions{flex-direction:column;gap:0;margin-top:18px}.hero-cta-ai{position:relative;width:min(262px,100%);margin-bottom:4px}
  .hero-tag{position:absolute;top:-12px;right:-6px;transform:rotate(4deg);font-size:12px;box-shadow:0 2px 0 #0b241840}
  #hero-view{min-height:650px}
  .hero-cta-kit,.hero-link{min-height:40px;min-width:0;margin-top:6px;padding:5px 16px;background:#fff9ea;box-shadow:inset 0 0 0 2px var(--forest);border-radius:99px;font-size:15.5px;font-weight:700;text-decoration:none}
  .hero-cta-kit:hover,.hero-cta-kit:active{box-shadow:inset 0 0 0 2px var(--forest);transform:none}}
/* He stays the approved art: the link and bubble sit on top of his stage and never move or mirror him */
.roommate-hello{position:absolute;inset:0;pointer-events:auto;border-radius:40% 40% 12% 12%;color:var(--forest);text-decoration:none;-webkit-tap-highlight-color:transparent}
.roommate-hello:focus-visible{outline:3px solid var(--forest);outline-offset:4px}
.roommate-bubble{position:absolute;right:-10px;bottom:calc(100% + 10px - var(--roommate-dy,0px));translate:var(--roommate-dx,0px) 0;width:max-content;max-width:215px;padding:11px 15px 12px;background:#fff9ea;border:2.5px solid var(--forest);border-radius:20px 20px 20px 20px;font-size:15px;font-weight:600;line-height:1.35;text-align:left;box-shadow:0 5px 0 #143d2b26;opacity:0;transform:translateY(8px) scale(.92);transform-origin:60% 100%;transition:opacity .25s ease,transform .4s cubic-bezier(.34,1.56,.64,1);pointer-events:none}
.roommate-bubble b{display:block;font-weight:800}
.roommate-bubble::after{content:'';position:absolute;left:var(--tail-x,58%);bottom:-9px;width:14px;height:14px;background:#fff9ea;border:solid var(--forest);border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.roommate-stage.is-talking .roommate-bubble,.roommate-hello:hover .roommate-bubble,.roommate-hello:focus-visible .roommate-bubble{opacity:1;transform:none}
@media(max-height:780px) and (min-width:761px){.roommate-bubble{max-width:190px;font-size:14px}}
/* Phone, or wherever above his head would cover the hero: beside his legs on the ground, pointing at him */
.roommate-stage.bubble-side .roommate-bubble{right:calc(100% - 10px);bottom:calc(9% - var(--roommate-dy,0px));border-radius:20px 20px 6px 20px;transform-origin:100% 100%}
.roommate-stage.bubble-side .roommate-bubble::after{left:auto;right:-9px;bottom:12px;transform:rotate(-45deg)}
.roommate-stage.no-room .roommate-bubble{display:none}
.roommate-stage.bubble-shift .roommate-bubble{right:calc(-1 * var(--bubble-shift,10px))}
.roommate-stage.bubble-short .roommate-bubble-long{display:none}
.roommate-stage.bubble-short .roommate-bubble b{display:inline}
@media(max-width:760px){.roommate-bubble{right:calc(100% - 10px);bottom:calc(9% - var(--roommate-dy,0px));max-width:158px;padding:9px 12px 10px;font-size:13.5px;border-radius:17px 17px 6px 17px;transform-origin:100% 100%}
  .roommate-bubble::after{left:auto;right:-9px;bottom:12px;transform:rotate(-45deg)}}
/* A soft glow around him while the pointer or keyboard is on him (drop-shadow follows his outline, the art is untouched) */
.roommate-placement{transition:filter .35s ease}
.roommate-stage.is-near .roommate-placement{filter:drop-shadow(0 0 7px #f6c43bd9) drop-shadow(0 0 18px #f6c43b8c)}
@media(prefers-reduced-motion:reduce){.roommate-bubble{opacity:1;transform:none;transition:none}.roommate-placement{transition:none}}
@media(forced-colors:active){.roommate-bubble{border-color:CanvasText}.roommate-bubble::after{display:none}}

.home-ai{position:relative;background:var(--cream);color:var(--forest);padding:clamp(84px,9vw,128px) 0 clamp(80px,9vw,120px);overflow:hidden;scroll-margin-top:0}
.home-ai::before{content:'';position:absolute;top:-1px;left:0;right:0;height:36px;background:url('assets/ai/wave.webp') center top/100% 100% no-repeat;pointer-events:none}
.home-ai-inner{width:min(1180px,88%);margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,5vw,72px);align-items:center}
.home-ai h2{margin:0;font-size:clamp(44px,5.2vw,74px);line-height:1.04;font-weight:400;outline-offset:8px}.home-ai h2>span{display:block}
.home-ai-support{font-size:clamp(18px,1rem + .45vw,22px);line-height:1.45;font-weight:500;margin:20px 0 0;max-width:36ch}
.home-fridge{margin-top:28px;padding:20px 20px 18px;border:2.5px solid var(--forest);border-radius:24px 28px 22px 26px;background:#fff9ea;box-shadow:0 6px 0 #143d2b1f}
.home-fridge-label{display:block;font-weight:800;font-size:19px}
.home-fridge-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.home-fridge-chips button{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:6px 14px;border:2px solid var(--forest);border-radius:99px;background:transparent;color:var(--forest);font:inherit;font-weight:700;font-size:15px;cursor:pointer}
.home-fridge-chips button[aria-pressed=true]{background:var(--forest);color:var(--cream)}
.home-fridge-chips button[aria-pressed=true]::before{content:'';width:10px;height:5px;margin-top:-3px;border-left:2.5px solid var(--yolk);border-bottom:2.5px solid var(--yolk);transform:rotate(-45deg)}
.home-fridge-row{display:flex;gap:8px;margin-top:14px}
.home-fridge-row input{flex:1;min-width:0;min-height:52px;padding:10px 16px;border:2px solid var(--forest);border-radius:16px;background:var(--cream);color:var(--forest);font:inherit;font-size:16px}
.home-fridge-row input::placeholder{color:#143d2bb3}
.home-fridge-go{min-height:52px;padding:10px 22px;border:0;border-radius:46% 42% 40% 37% / 76% 78% 62% 75%;background:var(--yolk);color:var(--forest);font:inherit;font-weight:800;font-size:16px;cursor:pointer;white-space:nowrap}
.home-fridge-go:hover{box-shadow:0 5px 0 var(--forest)}
.home-fridge :focus-visible{outline:3px solid var(--forest);outline-offset:3px}
.home-fridge-note{margin:10px 0 0;font-size:14px;line-height:1.4;opacity:.85}
.home-ai-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px;margin-top:26px}
.home-ai-cta{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:14px 32px;background:var(--forest);color:var(--cream);text-decoration:none;font-weight:700;font-size:18px;border-radius:46% 42% 40% 37% / 76% 78% 62% 75%;outline-offset:5px}
.home-ai-cta:hover{color:var(--yolk)}
.home-ai-link{display:inline-flex;align-items:center;min-height:44px;color:var(--forest);font-weight:600;font-size:17px;text-decoration:underline;text-decoration-color:var(--yolk);text-decoration-thickness:3px;text-underline-offset:6px}
.home-ai-screens{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,22px);align-items:start}
.home-ai-screens li:nth-child(2){margin-top:44px}
.home-ai-screens p{display:flex;gap:8px;align-items:flex-start;margin:12px 0 0;font-weight:700;font-size:16px;line-height:1.3}
.home-ai-screens b{flex:none;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--yolk);font-size:14px}
.home-ai .phone{position:relative;background:var(--forest);padding:7px;border-radius:30px;box-shadow:0 14px 0 -6px #0b241826,0 2px 0 #0b2418}
.home-ai .phone>img{display:block;width:100%;height:auto;aspect-ratio:390/844;object-fit:cover;object-position:top;border-radius:24px;background:var(--cream)}
.home-ai+.setup-section{border-top:22px solid var(--forest);margin-top:-1px;-webkit-mask:url('assets/site/wave-top.svg') top/100% 26px no-repeat,linear-gradient(#000 0 0) bottom/100% calc(100% - 25px) no-repeat;mask:url('assets/site/wave-top.svg') top/100% 26px no-repeat,linear-gradient(#000 0 0) bottom/100% calc(100% - 25px) no-repeat}
/* Narrow: the app screens come straight after the one-line explanation, before the fridge box */
@media(max-width:900px){.home-ai-inner{display:flex;flex-direction:column;align-items:stretch;gap:0}.home-ai-copy{display:contents}
  .home-ai-copy>.ai-teaser-eyebrow{order:1}.home-ai h2{order:2}.home-ai-support{order:3}.home-ai-screens{order:4;max-width:620px;margin-top:28px}.home-fridge{order:5}.home-ai-actions{order:6}}
@media(max-width:760px){.home-ai::before{height:25px;background-image:url('assets/ai/mobile-top-wave.webp')}}
@media(max-width:560px){.home-ai-screens{gap:10px}.home-ai-screens li:nth-child(2){margin-top:26px}.home-ai-screens p{font-size:13.5px;gap:6px}.home-ai-screens b{width:22px;height:22px;font-size:12px}.home-ai .phone{padding:5px;border-radius:20px}.home-ai .phone>img{border-radius:16px}
  .home-fridge{padding:16px 14px 15px}.home-fridge-row{flex-direction:column}.home-fridge-go{width:100%}.home-ai-cta{width:100%}.home-fridge-chips button{min-height:42px;padding:6px 12px}}
@media(forced-colors:active){.home-fridge,.home-fridge-chips button,.home-ai .phone{border:2px solid CanvasText}.home-fridge-chips button[aria-pressed=true]{outline:2px solid Highlight}}

/* Since AI Chef moved under the hero, the planner and partner bands meet: one band, no cream wave line between them */
.planner-peek+.partner-band{-webkit-mask:none;mask:none;margin-top:0;background:#fbe7b0;padding-top:clamp(28px,4vw,56px)}
