@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:Manrope,system-ui,sans-serif;color:#23372f;background:#faf9f5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit}.topbar{max-width:1300px;margin:auto;padding:19px 38px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;letter-spacing:-.035em;font-size:1.2rem}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#154f40;color:#fff;font-size:.87rem;letter-spacing:-.08em}.brand-mark span{color:#eebc78}.topbar nav{display:flex;align-items:center;gap:32px}.topbar nav a{text-decoration:none;font-weight:700;font-size:.85rem}.topbar nav a:hover,footer a:hover{color:#b87837}.login-link{border:1px solid #c9d4c7;border-radius:100px;padding:12px 18px}.login-link span{margin-left:10px}main{max-width:1300px;margin:auto;padding:0 18px 55px}.hero{position:relative;isolation:isolate;overflow:hidden;border-radius:22px;min-height:625px;background:#244d3a;color:white;display:flex;align-items:center}.hero-image,.hero-shade{position:absolute;inset:0;z-index:-1}.hero-image{background-image:url('/breakfast-hero.webp');background-size:cover;background-position:center 55%}.hero-shade{background:linear-gradient(90deg,rgba(17,36,29,.89) 0%,rgba(17,36,29,.68) 40%,rgba(17,36,29,.10) 75%),linear-gradient(0deg,rgba(10,22,18,.28),transparent 35%)}.hero-content{padding:70px clamp(32px,7vw,98px);max-width:745px}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.2em;color:#f1c78d;margin:0 0 21px}.hero h1{font-size:clamp(2.7rem,5.5vw,5.25rem);line-height:1.11;letter-spacing:-.055em;margin:0 0 24px;font-weight:800}.hero-content>p:not(.eyebrow){max-width:530px;font-size:1.05rem;line-height:1.8;color:#f2efe8;margin:0}.hero-actions{display:flex;align-items:center;gap:27px;flex-wrap:wrap;margin-top:35px}.button{display:inline-flex;align-items:center;justify-content:center;gap:23px;border:0;border-radius:9px;padding:15px 21px;min-height:52px;font:inherit;font-size:.91rem;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button:disabled{opacity:.6}.button-light{background:#f4c48a;color:#213b31}.button-light:hover{background:#ffdda9}.text-link{font-size:.89rem;font-weight:700;text-decoration:none;color:white}.text-link span{margin-left:7px}.image-caption{position:absolute;right:32px;bottom:28px;font-size:.65rem;letter-spacing:.2em;color:#fff9}.intro{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding:90px clamp(15px,5vw,70px);border-bottom:1px solid #dddcd2}.intro-label{display:flex;align-items:flex-start;gap:13px;color:#a46b36;font-weight:800;font-size:.69rem;letter-spacing:.16em;padding-top:15px}.line{width:28px;height:1px;background:#a46b36;margin-top:7px;flex:none}.intro h2{font-size:clamp(1.8rem,3.4vw,3.1rem);line-height:1.2;letter-spacing:-.04em;max-width:690px;margin:0}.intro p{font-size:1rem;color:#617068;line-height:1.8;max-width:680px;margin:20px 0 0}.steps{padding:90px clamp(15px,5vw,70px)}.section-heading{max-width:650px}.eyebrow.dark{color:#a46b36;margin-bottom:12px}.section-heading h2{font-size:clamp(1.8rem,3vw,2.8rem);letter-spacing:-.045em;line-height:1.2;margin:0}.section-heading>p:last-child{color:#617068;line-height:1.7;margin:13px 0 0}.step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:38px 0 0;gap:14px}.step-grid li{position:relative;min-height:245px;background:#fff;border:1px solid #e4e6de;border-radius:15px;padding:25px 22px;display:flex;flex-direction:column;box-shadow:0 10px 25px #264c3610}.number{font-size:.75rem;font-weight:800;letter-spacing:.12em;color:#a46b36}.step-icon{display:grid;place-items:center;width:42px;height:42px;margin:22px 0 13px;background:#eaf3e9;border-radius:12px;color:#205c49;font-size:1.25rem}.step-grid h3{margin:0 0 8px;font-size:1.08rem;letter-spacing:-.02em}.step-grid p{margin:0;color:#69766d;font-size:.85rem;line-height:1.65}.closing{margin:0 clamp(0px,3vw,40px);background:#164c3d;color:#fff;border-radius:19px;padding:52px clamp(25px,5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:35px}.closing .eyebrow{margin-bottom:12px}.closing h2{font-size:clamp(1.6rem,2.7vw,2.5rem);letter-spacing:-.04em;line-height:1.2;max-width:610px;margin:0}.closing p:last-child{color:#d9e9e0;line-height:1.6;margin-bottom:0}.button-dark{background:#f4c48a;color:#213b31;white-space:nowrap}.button-dark:hover{background:#ffdda9}footer{max-width:1300px;margin:auto;padding:29px 38px 45px;display:flex;justify-content:space-between;align-items:center;gap:18px;color:#69766d;font-size:.82rem}footer div{display:flex;align-items:center;gap:20px;flex-wrap:wrap}footer strong{color:#164c3d;font-size:1rem}footer a{text-decoration:none;font-weight:700}.login-wrap{max-width:490px;padding-top:7vh}.login-card{background:white;border:1px solid #d9e5e2;border-radius:20px;padding:30px;box-shadow:0 12px 35px #193b3620}.login-card h1{margin:8px 0}.login-card p{line-height:1.5}.login-card label{display:block;font-weight:600;margin:18px 0 7px}.login-card input{width:100%;padding:13px;border:1px solid #bfd1ce;border-radius:10px;font:inherit}.login-card .button{width:100%;background:#164c3d;color:#fff}#message{color:#9b2626}@media(max-width:900px){.step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{min-height:560px}.intro{grid-template-columns:1fr;padding-block:65px;gap:20px}.intro-label{padding:0}}@media(max-width:600px){.topbar{padding:13px 19px}.brand{font-size:1rem}.brand-mark{width:39px;height:39px}.topbar nav{gap:0}.nav-about{display:none}.login-link{padding:10px 13px}.login-link span{margin-left:2px}main{padding:0 10px 30px}.hero{min-height:690px;align-items:flex-end;border-radius:17px}.hero-image{background-position:62% top}.hero-shade{background:linear-gradient(0deg,rgba(14,32,25,.97) 0%,rgba(14,32,25,.88) 31%,rgba(14,32,25,.14) 85%)}.hero-content{padding:42px 25px 62px}.hero h1{font-size:clamp(2.45rem,10vw,3.4rem)}.hero-content>p:not(.eyebrow){font-size:.94rem;line-height:1.7}.hero-actions{margin-top:25px;gap:19px}.image-caption{display:none}.intro{padding:63px 13px}.steps{padding:65px 13px}.step-grid{grid-template-columns:1fr;gap:10px;margin-top:30px}.step-grid li{min-height:0;padding:20px;display:grid;grid-template-columns:45px 1fr;column-gap:14px}.step-grid .number{grid-column:1;grid-row:1}.step-icon{grid-column:1;grid-row:2 / span 2;margin:10px 0 0}.step-grid h3{grid-column:2;grid-row:2;margin-top:5px}.step-grid p{grid-column:2;grid-row:3}.closing{margin:0;padding:32px 25px;display:block}.closing .button{margin-top:22px}footer{padding:27px 22px 40px}.login-wrap{padding-top:7vh}.login-card{padding:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.topbar>a:not(.brand){text-decoration:none;color:#164c3d;font-weight:700}.topbar .small-link{font-size:.88rem}.login-card .eyebrow{color:#a46b36}
.topbar{position:relative;z-index:10}.menu-toggle{display:none;align-items:center;gap:10px;border:1px solid #c9d4c7;border-radius:10px;background:#fff;color:#164c3d;padding:10px 13px;font:inherit;font-size:.86rem;font-weight:800;cursor:pointer}.menu-icon{display:grid;gap:4px}.menu-icon span{display:block;width:17px;height:2px;background:currentColor;border-radius:2px}@media(max-width:700px){.menu-toggle{display:inline-flex;margin-left:auto}.topbar nav{display:none;position:absolute;top:calc(100% - 2px);right:12px;left:12px;z-index:20;background:#fff;border:1px solid #e4e6de;border-radius:14px;box-shadow:0 20px 45px #23372f25;padding:10px;align-items:stretch;gap:0;flex-direction:column}.topbar nav.open{display:flex}.topbar nav a{display:block;padding:13px 15px;border-radius:8px}.topbar nav a:hover{background:#f7f5ef}.topbar nav .login-link{border:0;border-top:1px solid #e4e6de;border-radius:0;margin-top:5px;padding-top:17px;color:#164c3d}.topbar nav .login-link span{float:right}.topbar nav .nav-about{display:block}}
#content-menu{display:contents}.content-main{max-width:1000px;margin:auto;min-height:65vh;padding:48px 18px 80px}.content-header{border-bottom:1px solid #dddcd2;padding-bottom:28px;margin-bottom:26px}.content-header h1{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.05em;margin:0}.content-header>p:last-child{color:#617068}.entry-list{display:grid;gap:18px}.entry-card{background:#fff;border:1px solid #e4e6de;border-radius:15px;padding:clamp(22px,4vw,38px)}.entry-card h2{margin:0 0 18px;font-size:1.45rem}.entry-body{white-space:pre-wrap;line-height:1.8;color:#42564a}.entry-empty{background:#fff;border:1px solid #e4e6de;border-radius:15px;padding:30px;color:#617068}.topbar nav button{font:inherit;font-size:.85rem;font-weight:700;border:0;background:transparent;color:#164c3d;cursor:pointer;padding:10px}.topbar nav button:hover{color:#b87837}@media(max-width:700px){.topbar nav button{padding:13px 15px;text-align:left}}
@media(max-width:700px){.content-page .topbar{flex-wrap:wrap}.content-page .topbar nav{display:flex;position:static;flex-direction:row;flex-wrap:wrap;align-items:center;gap:2px;flex-basis:100%;padding:0;border:0;box-shadow:none;background:none}.content-page .topbar nav a,.content-page .topbar nav button{padding:8px 10px}}
.login-page{min-height:100vh;display:flex;flex-direction:column}.login-page .login-wrap{width:min(100%,490px);flex:1;padding-top:min(8vh,80px)}.login-page footer{width:100%}@media(max-width:700px){.content-page .topbar{flex-wrap:nowrap}.content-page .topbar nav{display:none;position:absolute;top:calc(100% - 2px);right:12px;left:12px;flex-direction:column;align-items:stretch;gap:0;flex-basis:auto;padding:10px;border:1px solid #e4e6de;box-shadow:0 20px 45px #23372f25;background:#fff}.content-page .topbar nav.open{display:flex}.content-page .topbar nav a,.content-page .topbar nav button{padding:13px 15px}}
.topbar nav .session-name{font-size:.82rem;font-weight:700;color:#617068;white-space:nowrap}.topbar nav .site-logout{font:inherit;font-size:.85rem;font-weight:700;background:#164c3d;color:#fff;border:0;border-radius:100px;padding:12px 17px;cursor:pointer}.topbar nav .site-logout:hover{background:#236b54;color:#fff}@media(max-width:700px){.topbar nav .session-name{padding:13px 15px}.topbar nav .site-logout{border-radius:8px;margin-top:5px;text-align:left}}
.account-page{min-height:100vh;display:flex;flex-direction:column}.account-page .topbar{width:100%}.account-main{width:min(100%,900px);flex:1;padding:38px 22px 70px}.account-heading{margin-bottom:29px}.account-heading h1{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.045em;margin:0}.account-heading>p:last-child{color:#617068;line-height:1.6}.account-card{background:#fff;border:1px solid #d9e5e2;border-radius:16px;padding:clamp(22px,4vw,34px);margin-bottom:18px}.account-card h2{font-size:1.3rem;margin:0 0 18px}.account-card label{display:block;font-size:.88rem;font-weight:700;margin:15px 0 6px}.account-card input,.account-card select{width:100%;font:inherit;padding:12px;border:1px solid #bfd1ce;border-radius:9px;background:#fff}.account-card input[readonly]{background:#f4f6f4;color:#617068}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.account-submit{background:#164c3d;color:#fff;margin-top:22px}.account-submit:disabled{opacity:.55;cursor:wait}.account-page footer{width:100%}#account-message{max-width:900px;background:#e5f4f1;color:#145f59;padding:12px 16px;border-radius:9px}#account-message.error{background:#fff3dd;color:#9b2626}@media(max-width:600px){.account-main{padding:28px 13px 55px}.account-grid{grid-template-columns:1fr}}
@media(min-width:701px) and (max-width:980px){.menu-toggle{display:inline-flex;margin-left:auto}.topbar nav{display:none;position:absolute;top:calc(100% - 2px);right:20px;z-index:20;background:#fff;border:1px solid #e4e6de;border-radius:14px;box-shadow:0 20px 45px #23372f25;padding:10px;align-items:stretch;gap:0;flex-direction:column;min-width:240px}.topbar nav.open{display:flex}.topbar nav a,.topbar nav button,.topbar nav .session-name{display:block;padding:13px 15px;text-align:left}.topbar nav .site-logout{margin-top:5px;border-radius:8px}}
.login-card form .button{margin-top:20px}
.account-main{width:min(100%,1140px)}.account-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}.account-sidebar{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #d9e5e2;border-radius:16px;padding:12px}.account-sidebar button{font:inherit;font-weight:650;text-align:left;background:transparent;border:0;border-radius:10px;color:#2b3e3d;padding:14px 15px;cursor:pointer}.account-sidebar button:hover,.account-sidebar button:focus-visible{background:#f2f7f5}.account-sidebar button.active{background:#e5f4f1;color:#116a66}.account-content{min-width:0}.account-card[hidden],#account-message[hidden]{display:none}.owned-recipes-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.owned-recipes-list li{display:flex;flex-direction:column;gap:4px;border:1px solid #d9e5e2;border-radius:10px;padding:14px}.owned-recipes-list span{color:#617068}#owned-recipes{color:#617068}
@media(max-width:700px){.account-layout{grid-template-columns:1fr;gap:16px}.account-sidebar{flex-direction:row;overflow-x:auto;white-space:nowrap;padding:7px;gap:4px}.account-sidebar button{flex:none;padding:11px 12px;font-size:.9rem}.account-card{margin-bottom:0}}

.recipe-update{align-self:flex-start;margin-top:8px;padding:10px 14px;border:0;border-radius:9px;background:#08756e;color:#fff;font:inherit;font-weight:700;cursor:pointer}.recipe-update:disabled{opacity:.55;cursor:wait}.owned-recipes-list a{overflow-wrap:anywhere}

.login-card select{width:100%;font:inherit;padding:12px;border:1px solid #bfd1ce;border-radius:9px;background:#fff}
.login-card #phone-help,.login-card #password-help{font-size:.85rem;line-height:1.5;color:#52655d;margin:8px 0 16px}
