/* Figtree body type (Ali, 23 Sep 2026). Vabedo headlines stay outlined artwork; everything that was
   outlined Coolvetica is now real text. Label sizes follow the old image heights: an outlined Coolvetica
   word was 1.2 em tall, so --h (the old image height) maps to font-size --h / 1.2. */
@font-face{font-family:'Figtree';font-style:normal;font-weight:300 900;font-display:swap;src:url('assets/fonts/figtree-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Figtree';font-style:normal;font-weight:300 900;font-display:swap;src:url('assets/fonts/figtree-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--sans:'Figtree',system-ui,-apple-system,'Segoe UI',sans-serif;font-family:var(--sans)}
body,button,input,select,textarea{font-family:var(--sans)}
[data-meal-type="cool"],.meal-type-native{font-family:var(--sans);font-synthesis:none}

/* A label that used to be an outlined image */
.tx{display:inline-block;font-family:var(--sans);font-size:calc(var(--h,24px) / 1.2);line-height:1.2;font-weight:600;letter-spacing:-.005em;white-space:nowrap;color:inherit}

/* Header navigation, menu button and menu dialog */
.nav-link{--h:26px}.nav-link .tx{font-weight:600}
.menu-control{--h:25px}.close-menu{--h:20px}.menu-top h2{--h:25px;font-size:inherit}
.folio-nav button,.folio-nav a[data-kit-nav],.folio-nav a[data-ai-nav],.folio-nav a[data-page-nav]{--h:36px}.folio-nav .tx{font-weight:700;letter-spacing:-.02em}
@media(max-width:760px){.mobile-menu,.close-menu{--h:20px}.folio-nav button,.folio-nav a[data-kit-nav],.folio-nav a[data-page-nav]{--h:36px}}
@media(max-width:900px){.folio-nav a[data-ai-nav]{--h:36px}}

/* Hero line under the headline */
.support{font-size:clamp(19px,1.05rem + .55vw,25px);line-height:1.4;font-weight:500;text-wrap:balance;max-width:34ch}
@media(max-width:760px){.support{font-size:clamp(18px,5.4vw,21px);max-width:24ch}}

/* Destination panel (built by app.js) */
.panel-close{--h:17px}.destination-panel .panel-close{--h:20px;color:var(--forest)}
#destination-description{--h:23px}.destination-copy{height:auto!important;font-weight:500;white-space:normal}
.destination-list li{--h:26px}.destination-list li>.tx{font-weight:600}
.destination-list .recipe-text{--h:28px}.destination-list .recipe-text>.tx{display:block;font-weight:700;white-space:normal}
.destination-list .recipe-meta{--h:18px}.destination-list .recipe-meta .tx{opacity:.86;font-weight:500}
.destination-panel .concept-label{--h:18px}
.destination-foot{--h:18px}#destination-note{height:auto!important;font-weight:500;white-space:normal}
@media(max-width:760px){.destination-panel .panel-close{--h:17px}.destination-list .recipe-text{--h:23px}.destination-foot{--h:15px}}
@media(max-width:360px){.destination-list .recipe-text{--h:21px}.destination-list .recipe-meta{--h:17px}}

/* Setup section */
.setup-support{--h:35px;font-size:calc(var(--h) / 1.2);line-height:1.25;font-weight:500;color:var(--cream)}
.method-heading{height:auto!important;--h:28px;font-size:calc(var(--h) / 1.2);font-weight:600;color:var(--cream);text-align:center;display:block}
.method-caption{--h:27px}.method-caption .tx{position:relative;z-index:1;color:var(--cream);font-weight:700}
.equipment-choice input:checked~.method-caption .tx{color:var(--forest)}
.selected-word{--h:22px}.selected-word .tx{color:var(--yolk);font-weight:600;height:auto}
.fridge-caption .selected-word{--h:18px}.fridge-caption .selected-word .tx{color:var(--forest)}
.fridge-choices legend{--h:34px;font-size:calc(var(--h) / 1.2);font-weight:500;color:var(--cream)}
.fridge-caption{--h:32px}.fridge-caption>.tx{color:var(--forest);font-weight:700}
#setup-result-copy{--h:27px;font-size:calc(var(--h) / 1.2);line-height:1.3;font-weight:500;color:var(--forest)}
.setup-action{--h:29px}.setup-action .tx{color:var(--cream);font-weight:700;white-space:normal;text-align:center}
#setup-pdf-note{--h:19px;font-size:calc(var(--h) / 1.2);font-weight:500}
#setup-text-version{--h:20px;font-size:calc(var(--h) / 1.2);font-weight:600}
@media(min-width:1600px){.setup-support{--h:40px}.fridge-choices legend{--h:38px}}
@media(min-width:761px) and (max-width:1100px){.setup-support{--h:27px}.fridge-choices legend{--h:26px}.fridge-caption{--h:28px}.method-heading{--h:23px}.method-caption{--h:23px}.selected-word{--h:19px}#setup-result-copy{--h:24px}.setup-action{--h:25px}}
@media(max-width:760px){.setup-support{--h:29px;text-align:center}.method-heading{--h:25px}.method-caption{--h:24px}.selected-word{--h:19px}.fridge-choices legend{--h:29px;text-align:center}.fridge-caption{--h:31px}#setup-result-copy{--h:24px}.setup-action{--h:27px}#setup-pdf-note{--h:18px}}
@media(max-width:380px){.setup-support{--h:25px}.method-heading{--h:23px}.method-caption{--h:22px}.fridge-choices legend{--h:26px}#setup-result-copy{--h:22px}.setup-action{--h:24px}}

/* Every visible link or button on a phone is at least 44px tall */
.meal-sources a,.founder-privacy a,.public-legal a,.faq-answer a,.footer-group li a,.footer-creator a{min-height:44px;display:inline-flex;align-items:center}
.setup-action{color:var(--cream)}

/* Header and menu links keep the brand colours now that they are text */
.site-header .nav-link{color:var(--cream);text-decoration:none}
.folio-nav a,.folio-nav button{color:var(--forest);text-decoration:none}
.support{max-width:none}
@media(max-width:760px){.support{max-width:24ch}}

/* Hero next step: one clear action and one gentle one */
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 26px;margin-top:clamp(20px,3.2vh,34px)}
.hero-cta{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:14px 34px;background:var(--yolk);color:var(--forest);text-decoration:none;font-weight:700;font-size:clamp(17px,.95rem + .3vw,20px);border-radius:46% 42% 40% 37% / 76% 78% 62% 75%;outline-offset:6px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s}
.hero-cta:hover{transform:translateY(-2px) rotate(-1deg);box-shadow:0 6px 0 var(--forest)}
.hero-cta:active{transform:translateY(1px) scale(.98);box-shadow:0 1px 0 var(--forest)}
.hero-link{display:inline-flex;align-items:center;min-height:44px;color:var(--forest);font-weight:600;font-size:clamp(16px,.9rem + .2vw,18px);text-decoration:underline;text-decoration-color:var(--yolk);text-decoration-thickness:3px;text-underline-offset:6px}
.hero-link:hover{text-decoration-color:var(--forest)}
@media(max-width:760px){.hero-actions{flex-direction:column;gap:6px;margin-top:22px}.hero-cta{min-width:240px}}
@media(max-height:780px) and (min-width:761px){.hero-actions{margin-top:16px}.hero-cta{min-height:52px;padding:12px 30px}}
@media(prefers-reduced-motion:reduce){.hero-cta{transition:none}.hero-cta:hover,.hero-cta:active{transform:none}}
@media(max-width:760px){.hero-copy{z-index:3}.roommate-stage{--roommate-height:204px;right:4%;bottom:34px}.hero-cta{min-width:0;padding:13px 30px}}
.menu-control{color:var(--forest)}
#setup-text-version{color:var(--forest)}
.footer-social{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;color:inherit;font-weight:600;text-decoration:underline;text-decoration-color:var(--yolk);text-decoration-thickness:2px;text-underline-offset:5px}
.kit-readable-copy{font-family:var(--sans)}
.folio-nav a[data-page-nav]{position:relative;align-self:flex-start;min-height:76px;padding:7px 0 22px;max-width:100%}
.folio-nav a[data-page-nav] path{stroke:var(--yolk);stroke-width:5;stroke-linecap:round;fill:none;opacity:0}
.folio-nav a[data-page-nav]:hover path,.folio-nav a[data-page-nav]:focus-visible path{opacity:1}
.folio-nav a[data-page-nav] svg{position:absolute;width:100%;height:14px;left:0;bottom:10px}

/* Homepage AI Chef teaser (the full example now lives on /ai-chef/) */
.ai-teaser{background:var(--cream);color:var(--forest);padding:clamp(64px,8vw,110px) 0;overflow:hidden}
.ai-teaser-inner{width:min(1180px,88%);margin:auto;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.ai-teaser-eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:17px;font-weight:700;margin:0 0 18px}
.ai-teaser-pill{background:var(--yolk);border-radius:99px;padding:3px 12px;font-size:14px}
.ai-teaser h2{margin:0;font-size:clamp(44px,5.6vw,78px);line-height:1.02;font-weight:400}.ai-teaser h2>span{display:block}
.ai-teaser-support{font-size:clamp(19px,1rem + .5vw,23px);line-height:1.45;font-weight:500;margin:22px 0 0;max-width:32ch}
.ai-teaser-points{list-style:none;padding:0;margin:22px 0 30px;display:grid;gap:10px;font-size:18px}
.ai-teaser-points li{padding-left:30px;position:relative}
.ai-teaser-points li::before{content:'';position:absolute;left:4px;top:.55em;width:12px;height:7px;border-left:2.5px solid #3e7546;border-bottom:2.5px solid #3e7546;transform:rotate(-45deg)}
.ai-teaser-art{height:min(480px,62vh);width:auto;max-width:100%;aspect-ratio:684/1500;margin:0 auto;display:block;object-fit:contain}
.ai-teaser .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:19px;border-radius:46% 42% 40% 37% / 76% 78% 62% 75%}
@media(max-width:760px){.ai-teaser-inner{grid-template-columns:1fr}.ai-teaser-art{height:320px}.ai-teaser .ai-cta{width:100%}}

/* Recipe panel rows are real links now: the free bowl on this page, the wrap and oats in the free PDF */
.destination-list .recipe-row{display:block;padding:0;min-height:0;transition:background-color .25s}
.destination-list .recipe-link{display:grid;grid-template-columns:135px minmax(0,1fr);align-items:center;gap:24px;padding:13px 28px;min-height:132px;color:inherit;text-decoration:none;outline:none}
@media(max-width:760px){.destination-list .recipe-link{grid-template-columns:98px minmax(0,1fr);gap:16px;padding:14px 21px;min-height:118px}}
@media(max-width:360px){.destination-list .recipe-link{grid-template-columns:83px minmax(0,1fr);gap:13px;padding:13px 18px;min-height:109px}}
.destination-list .recipe-row:hover{background-color:#f3bf3d22}
.destination-list .recipe-row .recipe-art{object-fit:cover;border-radius:18px}
.destination-list .recipe-text{display:block}
.destination-list .recipe-meta{display:flex;flex-wrap:wrap;gap:4px 14px}
.recipe-go{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-weight:700;font-size:15px;text-decoration:underline;text-decoration-color:var(--yolk);text-decoration-thickness:3px;text-underline-offset:5px}
.recipe-go::after{content:'→';text-decoration:none;display:inline-block;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}
.recipe-row:hover .recipe-go::after{transform:translateX(4px)}
.destination-list .recipe-link:focus-visible .recipe-go{outline:3px solid var(--tomato);outline-offset:4px}

/* The recipe menu is also the doorway to the new books and the complete bundle */
.destination-group-title{margin:0;padding:16px 28px 12px;font-family:var(--sans);font-size:15px;line-height:1.3;font-weight:700;color:var(--forest)}
.destination-list .recipe-book-row .recipe-link{min-height:146px}
.destination-list .recipe-book-art{display:flex;align-items:center;justify-content:center;width:135px;height:116px}
.destination-list .recipe-book-art img{display:block;height:112px;width:auto;max-width:none;object-fit:contain;margin:0;border-radius:3px;box-shadow:3px 4px 0 #153f2e19;transform:rotate(-5deg);transition:transform .3s ease}
.recipe-book-row:nth-child(2) .recipe-book-art img{transform:rotate(5deg)}
.recipe-book-row:hover .recipe-book-art>img,.recipe-book-row:focus-within .recipe-book-art>img{transform:rotate(0)}
.recipe-book-detail{display:block;margin-top:6px;font-size:15px;line-height:1.3;font-weight:500}
.recipe-book-price{display:block;margin-top:5px;font-size:16px;line-height:1.3;font-weight:700}
.recipe-book-price>span{font-size:14px;font-weight:500}
.recipe-book-row .recipe-go{margin-top:7px;font-size:14px}
.destination-list .recipe-book-stack{position:relative}
.destination-list .recipe-book-stack img{position:absolute;width:66px;height:88px;left:0;top:18px;transform:rotate(-12deg)}
.destination-list .recipe-book-stack img:nth-child(2){left:auto;right:0;transform:rotate(12deg)}
.destination-list .recipe-book-stack img:nth-child(3){width:78px;height:104px;left:calc(50% - 39px);top:5px;transform:rotate(-2deg)}
.recipe-bundle-row::before{background:var(--yolk)!important;opacity:.32!important}
.destination-panel #destination-note{max-width:100%}
@media(max-width:760px){
 .destination-group-title{padding:14px 21px 10px;font-size:14px}
 .destination-list .recipe-book-row .recipe-link{min-height:142px}
 .destination-list .recipe-book-art{width:98px;height:108px}
 .destination-list .recipe-book-art img{width:auto;height:100px}
 .recipe-book-detail{font-size:13px}.recipe-book-price{font-size:15px}.recipe-book-price>span{font-size:12px}
 .recipe-book-row .recipe-go{font-size:13px}
 .destination-list .recipe-book-stack img{width:51px;height:68px;top:22px}
 .destination-list .recipe-book-stack img:nth-child(3){width:63px;height:84px;left:calc(50% - 31.5px);top:10px}
}
@media(max-width:360px){.destination-group-title{padding-left:18px;padding-right:18px}.destination-list .recipe-book-art{width:83px}.destination-list .recipe-book-stack img{width:44px;height:59px}.destination-list .recipe-book-stack img:nth-child(3){width:58px;height:77px;left:calc(50% - 29px)}}
@media(prefers-reduced-motion:reduce){.destination-list .recipe-book-art img{transition:none}}

/* Homepage student partner band: same type scale as the AI teaser, painted paper facts like the questions */
.partner-band{position:relative;background:#fbe9b7;color:var(--forest);padding:clamp(80px,8vw,116px) 0 clamp(64px,8vw,104px);-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}
.partner-band-inner{width:min(1180px,88%);margin:auto;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,6vw,80px);align-items:center}
.partner-band h2{margin:0;font-size:clamp(44px,5.6vw,78px);line-height:1.02;font-weight:400}.partner-band h2>span{display:block}
.partner-band-support{font-size:clamp(19px,1rem + .5vw,23px);line-height:1.45;font-weight:500;margin:22px 0 0;max-width:34ch}
.partner-band-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:32px}
.partner-band-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:19px;border-radius:46% 42% 40% 37% / 76% 78% 62% 75%;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}
.partner-band-cta:hover{transform:translateY(-2px) rotate(-1deg);box-shadow:0 6px 0 #0b2418}
.partner-band-link{display:inline-flex;align-items:center;min-height:44px;font-weight:600;font-size:18px;color:inherit;text-decoration:underline;text-decoration-color:var(--forest);text-decoration-thickness:2px;text-underline-offset:6px}
.partner-band-link:hover{text-decoration-color:var(--tomato)}
.partner-band-facts{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.partner-fact{position:relative;isolation:isolate;display:grid;grid-template-columns:118px 1fr;align-items:center;gap:18px;padding:22px 34px 22px 28px;font-size:18px;line-height:1.4;font-weight:500}
.partner-fact::before{content:'';position:absolute;inset:0;z-index:-1;border:18px solid transparent;border-image:url('assets/faq/desktop-closed-paper.webp') 45 90 45 65 fill / 12px 28px 12px 18px / 0 stretch;filter:drop-shadow(1.2px 0 0 #143d2b) drop-shadow(-1.2px 0 0 #143d2b) drop-shadow(0 1.2px 0 #143d2b) drop-shadow(0 -1.2px 0 #143d2b) drop-shadow(4px 5px 0 #143d2b1f)}
.partner-fact:nth-child(2){margin-left:6%}.partner-fact:nth-child(3){margin-left:2%}
.partner-fact strong{font-size:44px;line-height:1;font-weight:400}
.partner-band :focus-visible{outline:3px solid var(--tomato);outline-offset:5px}
@media(max-width:900px){.partner-band-inner{grid-template-columns:1fr}.partner-fact:nth-child(n){margin-left:0}.partner-fact::before{border-image-source:url('assets/faq/mobile-closed-paper.webp')}}
@media(max-width:760px){.partner-band-cta{width:100%}.partner-fact{grid-template-columns:92px 1fr;gap:12px;padding:18px 24px 18px 22px;font-size:17px}.partner-fact strong{font-size:36px}}
@media(prefers-reduced-motion:reduce){.partner-band-cta{transition:none}.partner-band-cta:hover{transform:none}}
@media(forced-colors:active){.partner-fact{border:2px solid CanvasText}.partner-fact::before{display:none}.partner-band-cta{border:2px solid ButtonText}}

/* Header on tablets and small laptops: keep the logo whole, tighten the five links, then use the Menu button (same breakpoints as the inner pages) */
.site-header .logo{flex:none}
@media(min-width:761px) and (max-width:1380px){.desktop-nav{gap:26px}.desktop-nav .nav-link{--h:22px}}
@media(min-width:761px) and (max-width:1200px){.desktop-nav{display:none}.site-header .mobile-menu{display:flex!important;align-items:center;min-width:76px;min-height:43px;padding:8px 12px;gap:8px}.site-header .mobile-menu svg{width:18px}}
/* Community panel (6 Oct 2026): illustrations rather than book covers, so no tilt or page shadow */
.destination-list .community-art img{width:124px;height:104px;object-fit:contain;box-shadow:none;border-radius:0;transform:none}
.community-row:hover .community-art>img,.community-row:focus-within .community-art>img{transform:translateY(-3px)}
@media(max-width:760px){.destination-list .community-art img{width:92px;height:86px}}
