/* Nutrition November palette pass v1 */
body.nutrition-page{overflow-x:clip}
body.nutrition-page :is(.academy-header h2,.nutrition-goal-header h2,.academy-courses h2,.nutrition-coaching-copy h2,.protein-week-label,.blu-plate-cta h3,.recipe-modal-body h2){color:#8C0D32!important}
body.nutrition-page :is(.academy-eyebrow,.nutrition-coaching-eyebrow,.academy-tagline){color:#FF5A1F!important}
body.nutrition-page :is(.nutrition-hero-link,.academy-section a:not(.btn-gold):not(.btn-outline)){color:#FF5A1F!important}
body.nutrition-page :is(.goal-btn.selected,.goal-btn:hover,.goal-btn:focus-visible){background:#FF5A1F!important;border-color:#FF5A1F!important;color:#fff!important}
/* plate metrics slate */
body.nutrition-page .your-blu-plate .blu-plate-dashboard{background:#1E2322!important;border-radius:18px;padding:22px 18px;box-shadow:inset 0 0 0 1px rgba(242,169,0,.2)}
body.nutrition-page .your-blu-plate .dash-num{color:#F2A900!important;text-shadow:0 0 14px rgba(242,169,0,.55)}
body.nutrition-page .your-blu-plate .dash-item label{color:#F7F4EB!important;opacity:.85}
body.nutrition-page .your-blu-plate .dash-goal{color:rgba(247,244,235,.7)!important}
body.nutrition-page .your-blu-plate .dash-bar{background:rgba(247,244,235,.14)!important}
body.nutrition-page .your-blu-plate .dash-bar-fill{background:linear-gradient(90deg,#F2A900,#FF5A1F)!important}
/* badges: sage = ongoing streaks, persimmon + glow = academy focus */
.shadow-glow-orange{box-shadow:0 0 0 3px rgba(255,90,31,.28),0 0 18px rgba(255,90,31,.55)}
body.nutrition-page .challenge-flip-card .flip-card-eyebrow{background:#5F7A61!important;color:#fff!important;padding:4px 12px;border-radius:999px;display:inline-block}
body.nutrition-page .academy-course-card-tag{background:#FF5A1F!important;color:#fff!important;border-radius:999px;box-shadow:0 0 0 3px rgba(255,90,31,.28),0 0 18px rgba(255,90,31,.55)}
/* coach row feathers into white footer */
body.nutrition-page section.nutrition-coaching#nutrition-coaching{background:linear-gradient(180deg,#F7F4EB 0%,#F7F4EB 55%,#fff 100%)!important}
/* Nourish section */
.nz{width:100vw;margin-left:calc(50% - 50vw);background:#F7F4EB;padding:clamp(36px,6vw,72px) 20px;box-sizing:border-box}
.nz-in{max-width:1100px;margin:0 auto;text-align:center}
.nz-eyebrow{font:700 .78rem/1 Inter,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#FF5A1F}
.nz h2{font-family:'Playfair Display',Georgia,serif;color:#8C0D32;font-size:clamp(1.8rem,4vw,2.8rem);margin:10px 0 8px}
.nz-sub{color:#1E2322;opacity:.8;max-width:560px;margin:0 auto 28px}
.nz-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;text-align:left}
.nz-card{background:#fff;border-top:4px solid #FF5A1F;border-radius:14px;padding:20px;box-shadow:0 8px 24px rgba(30,35,34,.08)}
.nz-card:nth-child(even){border-top-color:#F2A900}
.nz-ico{font-size:1.7rem}
.nz-card h3{font-family:'Playfair Display',Georgia,serif;color:#8C0D32;font-size:1.15rem;margin:8px 0 6px}
.nz-card p{color:#1E2322;font-size:.92rem;line-height:1.5;margin:0}
@media(max-width:900px){.nz-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.nz-grid{grid-template-columns:1fr}}
/* page background: no navy sides or leaf pattern */
html body.nutrition-page,html body.nutrition-page main,html body.nutrition-page .page-content{background:#efe3cd!important;background-image:none!important}
body.nutrition-page::before,body.nutrition-page::after{display:none!important}
/* Protein of the Week: cream section, warm cards */
html body.nutrition-page section.protein-week{width:100vw;margin-left:calc(50% - 50vw);box-sizing:border-box;background:#efe3cd!important;padding:clamp(36px,6vw,64px) 20px!important}
html body.nutrition-page .protein-week .protein-week-label{color:#8C0D32!important;font-family:'Playfair Display',Georgia,serif;letter-spacing:.18em}
html body.nutrition-page .protein-week .flip-card-eyebrow{color:#F2A900!important}
html body.nutrition-page .protein-week .flip-card-back{background:#1E2322!important}
html body.nutrition-page .protein-week .flip-card-back h3{color:#F7F4EB!important}
html body.nutrition-page .protein-week .protein-week-stat span{color:#F2A900!important}
html body.nutrition-page .protein-week .protein-week-stat label,html body.nutrition-page .protein-week .flip-card-why{color:#F7F4EB!important}
html body.nutrition-page .protein-week .btn-outline-small{border-color:#FF5A1F!important;color:#FF5A1F!important}
html body.nutrition-page .protein-week .btn-outline-small:hover{background:#FF5A1F!important;color:#fff!important}
html body.nutrition-page .protein-week .flip-card{box-shadow:0 14px 34px rgba(140,13,50,.22)}
html body.nutrition-page .recipe-modal{background:#F7F4EB!important;color:#1E2322!important}
html body.nutrition-page .recipe-modal :is(h2,h4,.recipe-modal-label){color:#8C0D32!important}
html body.nutrition-page .recipe-modal :is(.recipe-modal-meta,li,.protein-week-stat label){color:#1E2322!important}
html body.nutrition-page .recipe-modal .protein-week-stat span{color:#FF5A1F!important}
/* hide old goal selector + old plate builder (top plate stays) */
html body [id="nutrition-goal"],html body [id="blu-plate"],html body section:has(#plate-builder){display:none!important}
/* Academy blueprint */
.ac{width:100vw;margin-left:calc(50% - 50vw);background:#F7F4EB;padding:clamp(40px,6vw,72px) clamp(18px,5vw,64px);box-sizing:border-box;font-family:Inter,sans-serif}
.ac-in{max-width:1180px;margin:0 auto}
.ac-head{text-align:center;margin-bottom:40px}
.ac-pill{display:inline-block;background:rgba(255,90,31,.1);color:#FF5A1F;border-radius:999px;padding:6px 16px;font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.ac h2{font-family:'Playfair Display',Georgia,serif;color:#8C0D32;font-size:clamp(2rem,4.5vw,3rem);font-weight:900;margin:12px 0 0}
.ac-head p{max-width:640px;margin:14px auto 0;color:rgba(30,35,34,.8);font-size:.98rem;line-height:1.6}
.ac-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:48px}
.ac-step{position:relative;overflow:hidden;background:#fff;border:1px solid rgba(120,113,108,.2);border-radius:18px;padding:22px;box-shadow:0 1px 3px rgba(0,0,0,.06);transition:transform .3s,box-shadow .3s}
.ac-step:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(30,35,34,.12)}
.ac-num{position:absolute;right:16px;top:6px;font:900 3rem/1 ui-monospace,Menlo,monospace;color:#F7F4EB;user-select:none}
.ac-step h3{position:relative;color:#8C0D32;font-size:1rem;margin:0 0 8px}
.ac-step p{position:relative;color:#78716c;font-size:.82rem;line-height:1.55;margin:0}
.ac-cats>h3{color:#1E2322;font-size:1.25rem;font-weight:800;margin:0 0 20px}
.ac-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ac-card{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;min-height:220px;border-radius:24px;padding:24px;background:#fff;border:1px solid rgba(120,113,108,.25);text-decoration:none;transition:transform .3s,box-shadow .3s,border-color .3s}
.ac-card:hover{box-shadow:0 14px 30px rgba(30,35,34,.14)}
.ac-meta{display:flex;justify-content:space-between;align-items:center;gap:10px}
.ac-tag{border-radius:8px;padding:5px 10px;font-size:.72rem;font-weight:700}
.ac-count{font-size:.74rem;font-weight:500;color:#a8a29e}
.ac-card h4{font-size:1.25rem;font-weight:700;color:#1E2322;margin:16px 0 8px;transition:color .3s}
.ac-card p{font-size:.84rem;line-height:1.55;color:#78716c;margin:0}
.ac-foot{display:flex;justify-content:space-between;align-items:center;margin-top:22px;font-size:.8rem;font-weight:700}
.ac-dot{width:8px;height:8px;border-radius:50%;display:inline-block;position:relative}
.ac-sage .ac-tag{background:rgba(95,122,97,.12);color:#5F7A61}.ac-sage .ac-foot{color:#5F7A61}.ac-sage .ac-dot{background:#5F7A61}
.ac-sage:hover{border-color:rgba(95,122,97,.55)}.ac-sage:hover h4{color:#5F7A61}
.ac-cran .ac-tag{background:rgba(140,13,50,.1);color:#8C0D32}.ac-cran .ac-foot{color:#8C0D32}.ac-cran .ac-dot{background:#8C0D32}
.ac-cran:hover{border-color:rgba(140,13,50,.5)}.ac-cran:hover h4{color:#8C0D32}
.ac-hot{border:2px solid #FF5A1F}
.ac-hot:hover{transform:scale(1.01)}
.ac-hot::before{content:"";position:absolute;right:0;top:0;width:96px;height:96px;background:rgba(255,90,31,.06);border-bottom-left-radius:100%;pointer-events:none}
.ac-hot .ac-tag{background:#FF5A1F;color:#fff;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.ac-hot .ac-foot{color:#FF5A1F}
.ac-ping{width:8px;height:8px;position:relative;display:inline-block}
.ac-ping i{position:absolute;inset:0;border-radius:50%;background:#FF5A1F}
.ac-ping i:first-child{opacity:.75;animation:acping 1.4s cubic-bezier(0,0,.2,1) infinite}
@keyframes acping{75%,100%{transform:scale(2.4);opacity:0}}
.ac-dark{background:#1E2322;border-color:#1E2322}
.ac-dark::after{content:"";position:absolute;right:-16px;bottom:-16px;width:80px;height:80px;border-radius:50%;background:rgba(242,169,0,.12);filter:blur(14px)}
.ac-dark .ac-tag{background:rgba(242,169,0,.2);color:#F2A900}.ac-dark .ac-count{color:#78716c}
.ac-dark h4{color:#fff}.ac-dark p{color:#a8a29e}.ac-dark .ac-foot{color:#F2A900}.ac-dark .ac-dot{background:#F2A900}
.ac-dark:hover h4{color:#F2A900}
.ac-cta{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:44px}
.ac-cta a{border-radius:16px;padding:16px 32px;font-size:.88rem;font-weight:700;text-decoration:none;transition:all .25s}
.ac-cta .p{background:#8C0D32;color:#fff;box-shadow:0 4px 12px rgba(140,13,50,.3)}.ac-cta .p:hover{background:#5c0a22}
.ac-cta .s{background:#fff;color:#1E2322;border:1px solid #d6d3d1}.ac-cta .s:hover{background:#fafaf9}
@media(max-width:1000px){.ac-steps{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.ac-steps,.ac-grid{grid-template-columns:1fr}}
/* header, ribbon and footer match the page palette */
html body.nutrition-page :is(header,.site-header,.main-header,.navbar,.header,#header){background:#1E2322!important;background-image:none!important;border-bottom:1px solid rgba(242,169,0,.28)!important;box-shadow:none!important}
html body.nutrition-page :is(footer,.site-footer,.main-footer,#footer){background:#1E2322!important;background-image:none!important;border-top:1px solid rgba(242,169,0,.28)!important;color:#F7F4EB!important}
html body.nutrition-page :is(footer,.site-footer) :is(p,li,span,small){color:rgba(247,244,235,.8)!important}
html body.nutrition-page :is(footer,.site-footer) h1,html body.nutrition-page :is(footer,.site-footer) h2,html body.nutrition-page :is(footer,.site-footer) h3,html body.nutrition-page :is(footer,.site-footer) h4{color:#F2A900!important}
html body.nutrition-page :is(header,.site-header,.navbar,footer,.site-footer) a:hover,html body.nutrition-page :is(header,.site-header,.navbar) a[aria-current="page"],html body.nutrition-page :is(header,.site-header,.navbar) a.active{color:#FF5A1F!important}
html body.nutrition-page :is([class*="ribbon"],[class*="season-bar"],[class*="announce"]){background:#8C0D32!important;background-image:none!important;color:#F7F4EB!important}
/* Autumn Cookbook */
html body.nutrition-page section.nutrition-meal-library{width:100vw;margin-left:calc(50% - 50vw);box-sizing:border-box;background:#fff!important;padding:clamp(40px,6vw,72px) clamp(18px,5vw,64px)!important}
.nutrition-meal-library>*{max-width:1180px;margin-left:auto;margin-right:auto}
.nutrition-meal-library .nutrition-goal-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;text-align:left!important;border-bottom:1px solid #f0ebe3;padding-bottom:22px;margin-bottom:36px}
.nutrition-meal-library .nutrition-goal-header h2{font-family:'Playfair Display',Georgia,serif;color:#1E2322!important;font-size:clamp(1.9rem,4vw,2.6rem);margin:6px 0 0!important;text-transform:none!important}
.mlc-eyebrow{font:700 .72rem/1 Inter,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#FF5A1F}
.nutrition-meal-library .nutrition-goal-header p{max-width:420px;color:#78716c!important;font-size:.82rem;margin:0!important}
html body .meal-library-preview-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:32px!important}
html body .meal-library-card{position:relative;height:420px;overflow:hidden;border-radius:24px!important;background:#1c1917!important;box-shadow:0 10px 26px rgba(30,35,34,.2);transition:transform .5s,box-shadow .5s;padding:0!important;border:0!important}
html body .meal-library-card:hover{transform:translateY(-8px);box-shadow:0 24px 44px rgba(30,35,34,.3)}
html body .meal-library-card-photo{position:absolute!important;inset:0;height:auto!important;width:100%!important;background-size:cover!important;background-position:center!important;opacity:.88;transition:transform .7s}
html body .meal-library-card:hover .meal-library-card-photo{transform:scale(1.1)}
.meal-library-card::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,#1E2322 0%,rgba(30,35,34,.45) 45%,transparent 100%)}
html body .meal-library-card-body{position:absolute!important;inset:0;z-index:2;display:flex;flex-direction:column;padding:20px 22px 24px!important;background:none!important;color:#fff}
.meal-library-card-tags{display:flex;flex-wrap:wrap;gap:8px}
.meal-library-card-tag{background:rgba(255,255,255,.2)!important;backdrop-filter:blur(8px);color:#fff!important;border-radius:8px!important;padding:4px 10px!important;font-size:.62rem!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.meal-library-card-tag:first-child{background:#8C0D32!important}
html body .meal-library-card-body h4{margin:auto 0 0!important;font-family:'Playfair Display',Georgia,serif;font-size:1.5rem;color:#fff!important}
html body .meal-library-card-macros{display:grid!important;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);text-align:center}
.meal-library-card-macros div{background:rgba(255,255,255,.07);border-radius:12px;padding:8px 2px;font-size:.62rem;text-transform:uppercase;color:#d6d3d1}
.meal-library-card-macros b{display:block;font:700 .9rem ui-monospace,Menlo,monospace;color:#fff;text-transform:none}
.meal-library-card-macros div:first-child b{color:#F2A900}
/* locked card */
.meal-library-card.is-locked .meal-library-card-photo{opacity:.4;filter:blur(4px)}
.meal-library-card.is-locked::before{background:linear-gradient(to top,#1E2322,rgba(30,35,34,.8) 60%,rgba(30,35,34,.4))}
.is-locked .meal-library-card-tags,.is-locked .meal-library-card-macros{display:none!important}
.is-locked .meal-library-card-body{align-items:center;justify-content:center;text-align:center}
.is-locked .meal-library-card-body::before{content:"🔒";font-size:1.4rem;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,90,31,.12);border:1px solid rgba(255,90,31,.35);box-shadow:0 0 22px rgba(255,90,31,.5);animation:mlcpulse 2s infinite}
html body .is-locked .meal-library-card-body h4{margin:16px 0 0!important;font-size:1.3rem}
.is-locked .meal-library-card-body::after{content:"Unlock the full cooking directions, macro measurements and shopping lists.";max-width:210px;margin-top:8px;font-size:.78rem;color:#a8a29e}
@keyframes mlcpulse{50%{opacity:.6}}
/* CTA wall */
.mlc-cta{position:relative;overflow:hidden;margin:48px auto 0;max-width:1180px;border-radius:24px;border:1px solid rgba(255,90,31,.3);background:linear-gradient(135deg,#1E2322,#292524);padding:36px 24px;text-align:center;box-shadow:0 20px 40px rgba(0,0,0,.25)}
.mlc-cta h3{color:#fff;font-size:clamp(1.2rem,2.5vw,1.6rem);font-weight:800;margin:0}
.mlc-cta p{color:#a8a29e;font-size:.84rem;max-width:520px;margin:10px auto 0;line-height:1.6}
.mlc-cta a{display:inline-block;margin-top:22px;background:#FF5A1F;color:#fff;border-radius:12px;padding:14px 32px;font-weight:700;font-size:.9rem;text-decoration:none;box-shadow:0 0 0 3px rgba(255,90,31,.25),0 0 20px rgba(255,90,31,.5);transition:transform .2s}
.mlc-cta a:hover{transform:scale(1.05)}
@media(max-width:900px){html body .meal-library-preview-grid{grid-template-columns:1fr 1fr!important}}
@media(max-width:600px){html body .meal-library-preview-grid{grid-template-columns:1fr!important}}
