.pg .nourishment-page { --nj-ink:#302e29; --nj-muted:#615e53; --nj-sage:#596d59; --nj-paper:#fcf9f1; --nj-line:#d9d8c9; max-width:1320px; margin:auto; padding:24px; color:var(--nj-ink); background:var(--nj-paper); }
.pg .nourishment-page > section { padding:44px 0; margin:0; opacity:1; transform:none; }
.pg .nourishment-page p { font:400 18px/1.65 var(--font-human); color:var(--nj-muted); max-width:65ch; margin:12px 0 20px; }
.pg .nourishment-page h1 { font:500 clamp(42px,5vw,70px)/1.05 var(--font-editorial); letter-spacing:-.04em; margin:20px 0; max-width:14ch; }
.pg .nourishment-page h2 { font:500 clamp(30px,3vw,44px)/1.12 var(--font-editorial); letter-spacing:-.025em; max-width:26ch; margin:0 0 16px; }
.pg .nourishment-page h3 { font:750 19px/1.4 var(--font-human); margin:0 0 8px; }
.nourishment-page figure { margin:0; min-width:0; }
.nourishment-page figure img { width:100%; height:390px; object-fit:cover; border-radius:22px; }
.pg .nourishment-page figcaption { font:400 12px/1.5 var(--font-human); color:var(--nj-muted); margin-top:8px; }
.nourish-hero,.nourish-tonic,.nourish-close { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.nourish-label { font:800 14px/1.5 var(--font-human); letter-spacing:.1em; text-transform:uppercase; color:var(--nj-sage); }
.pg .nourishment-page .nourish-subtitle { font-size:17px; margin:8px 0; }
.nourish-equation { display:block; font:600 23px/1.5 var(--font-human); color:var(--nj-sage); margin-bottom:24px; }
.nourishment-page a { display:inline-flex; align-items:center; min-height:44px; color:#405d47; font:750 16px/1.5 var(--font-human); text-decoration:underline; text-underline-offset:5px; }
.nourishment-page a.nourish-button { background:#405d47; color:white; border-radius:100px; padding:14px 24px; text-decoration:none; }
.pg .nourishment-page .nourish-realise { text-align:center; border-top:1px solid var(--nj-line); }
.nourish-realise h2,.nourish-realise p { margin-left:auto!important; margin-right:auto!important; }
.nourish-glyphs { font:400 clamp(38px,6vw,70px)/1.4 var(--font-editorial); color:var(--nj-sage); display:flex; justify-content:center; gap:28px; margin:24px 0; }
.nourish-glyphs span { font-size:24px; align-self:center; color:#a69a77; }
.nourish-journey { scroll-margin-top:100px; }
.nourish-progress { display:flex; gap:18px; align-items:center; font:750 12px/1.5 var(--font-human); margin-bottom:20px; }
.nourish-progress i { position:relative; display:block; height:2px; flex:1; background:var(--nj-line); }
.nourish-progress b { position:absolute; left:0; top:-5px; width:12px; height:12px; border-radius:50%; background:var(--nj-sage); transform:translateX(-50%); transition:left .3s; }
.nourish-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:24px; }
.nourish-tabs button { border:1px solid var(--nj-line); border-radius:14px; padding:18px 12px; background:#f1efe4; color:var(--nj-ink); cursor:pointer; display:grid; justify-items:center; gap:6px; }
.nourish-tabs button[aria-selected=true] { background:var(--nj-sage); color:#fff; border-color:var(--nj-sage); }
.nourish-tabs strong { font:500 38px/1.2 var(--font-editorial); }
.nourish-tabs small { font:750 12px/1.4 var(--font-human); }
.nourish-tabs span { font:650 16px/1.4 var(--font-human); }
.nourish-phase { display:grid; grid-template-columns:1fr 1fr; gap:36px; align-items:center; animation:nourish-enter .3s ease-out; }
.nourish-phase[hidden] { display:none; }
.nourish-phase ul { padding:0; display:flex; flex-wrap:wrap; gap:8px; list-style:none; }
.nourish-phase li { font:600 15px/1.4 var(--font-human); padding:9px 12px; background:#e9edde; border-radius:8px; }
.pg .nourishment-page .nourish-system { background:#e9edde; padding:30px; border-radius:22px; }
.nourish-system ol { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; list-style:none; padding:0; margin:24px 0 0; }
.nourish-system li { border-top:1px solid #9eac96; padding-top:16px; }
.nourish-system li > span { display:block; font:600 14px/1.4 var(--font-human); color:#5b7056; margin-bottom:10px; }
.pg .nourish-system li p { font-size:16px; margin:0; }
.nourishment-page details { border:1px solid var(--nj-line); border-radius:14px; background:#fffdf7; padding:16px 20px; }
.nourishment-page summary { cursor:pointer; font:750 18px/1.5 var(--font-human); padding:4px 0; }
.pg .nourishment-page details p { font-size:16px; margin-bottom:0; }
.nourish-role-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; align-items:start; }
.nourish-day ol { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px; padding:0; list-style:none; }
.nourish-day li { border-top:3px solid #a8b59a; padding-top:16px; }
.pg .nourish-day li p { font-size:16px; }
.nourish-food-images { display:grid; grid-template-columns:1.4fr 1fr; gap:24px; }
.nourish-food-images figure:nth-child(2) { margin-top:54px; }
.nourish-food-images img { height:330px; }
.nourish-needs-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-items:start; }
.nourish-needs aside { border-left:3px solid #a8b59a; padding:0 24px; margin-top:24px; }
.pg .nourishment-page .nourish-small { font-size:14px; }
.pg .nourishment-page .nourish-close { border-top:1px solid var(--nj-line); }
.nourish-actions { display:flex; gap:12px 20px; flex-wrap:wrap; }
.nourishment-page :is(a,button,summary,[role=tabpanel]):focus-visible { outline:3px solid #9b632d; outline-offset:4px; }
@keyframes nourish-enter { from {opacity:.4;transform:translateY(6px)} to {opacity:1;transform:none} }
@media(max-width:850px) { .nourish-hero,.nourish-tonic,.nourish-close,.nourish-phase { gap:24px; } .nourish-system ol { grid-template-columns:repeat(2,minmax(0,1fr)); } .nourish-role-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .nourish-day ol { grid-template-columns:1fr; gap:4px; } .nourish-day li { border-top:0; border-left:2px solid #a8b59a; padding:4px 20px; } }
@media(max-width:600px) { .pg .nourishment-page { padding:20px; } .pg .nourishment-page > section { padding:28px 0; } .nourish-hero,.nourish-tonic,.nourish-close,.nourish-phase,.nourish-food-images,.nourish-role-grid,.nourish-needs-grid { grid-template-columns:1fr; } .nourishment-page figure img { height:270px; } .nourish-tabs { gap:6px; } .nourish-tabs button { padding:12px 4px; } .nourish-tabs span { font-size:13px; } .nourish-tabs small { font-size:10px; } .nourish-glyphs { gap:16px; } .nourish-glyphs span { font-size:16px; } .pg .nourishment-page .nourish-system { padding:22px; } .nourish-food-images figure:nth-child(2) { margin:0; } }
@media(prefers-reduced-motion:reduce) { .nourish-phase { animation:none; } .nourish-progress b { transition:none; } }
