
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@500;600;700;800&family=DM+Sans:wght@400;500&display=swap');
:root{--army:#163832;--army6:#24503f;--sage:#A6AF95;--sage3:#C89B32;--sage1:#E9E6DA;--pink:#C89B32;--pink5:#F0E6CF;--cream:#F4EBDD;--ink:#1D1A18;--terra:#BF6E4A;--sagegreen:#586A42;--border:#DED8C6;--sh:0 2px 8px rgba(42,38,34,.06);}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--cream);font-size:17px;line-height:1.65}
h1,h2,h3,.btn,.logo{font-family:'Plus Jakarta Sans',sans-serif;color:var(--army);letter-spacing:-0.022em}
a{color:var(--army);text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
header{background:var(--cream);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:9}
.nav{display:flex;justify-content:space-between;align-items:center;padding:16px 0}
.logo{font-weight:700;font-size:1.25rem}
.links{display:flex;gap:26px;align-items:center;font-weight:500;font-size:.95rem}
.navt{position:absolute;top:0;left:0;width:1px;height:1px;opacity:0;pointer-events:none}
.burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;margin:-10px -8px;cursor:pointer;border-radius:8px;-webkit-tap-highlight-color:transparent}
.burger span{display:block;width:24px;height:2px;background:var(--army);border-radius:2px;transition:transform .22s ease,opacity .2s ease}
.btn{display:inline-block;background:var(--army);color:#fff;border-radius:10px;padding:11px 22px;font-weight:600;font-size:.95rem;border:0;cursor:pointer}
.btn:hover{background:var(--army6)}
.btn,.btn2{transition:background .15s ease}
a:hover{opacity:.92}
.btn2{background:var(--sage1);color:var(--army)}
.gate .logo{display:block}
.lockup{height:54px;width:auto;display:block}
.plate-ico{display:inline-block;vertical-align:-0.15em}
.a8tile{display:inline-flex;align-items:center;justify-content:center;width:88px;height:88px;border-radius:22px;background:var(--terra);color:var(--cream);font-family:'Plus Jakarta Sans';font-weight:700;font-size:2.1rem;letter-spacing:-0.03em}
.a8mark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:transparent;border:1.5px solid var(--terra);flex:0 0 22px}
.a8mark img{width:12px;height:12px;display:block}
.a8icon{display:block;width:104px;height:104px;border-radius:24px;margin:0 auto 20px}
.iconrow{display:flex;gap:28px;align-items:center;justify-content:center;margin:34px 0 6px}
.iconrow .lab{font-size:.75rem;color:#8a8377;text-align:center;margin-top:8px}
.hero{display:flex;gap:48px;align-items:center;padding:64px 0 56px}
.hero h1{font-size:clamp(2.2rem,4.5vw,3.3rem);line-height:1.04;font-weight:800;letter-spacing:-0.028em}
.hero h1 .tone2{color:var(--terra)}
.hero .art{overflow:visible}
.capcard{position:absolute;left:-26px;bottom:22px;background:var(--pink);color:var(--army);border-radius:12px;padding:13px 18px;box-shadow:var(--sh);max-width:230px}
.capcard b{display:block;font-family:'Plus Jakarta Sans';font-size:1.02rem;margin-bottom:2px}
.capcard span{font-size:.82rem;line-height:1.4}
.hero p{margin:18px 0 26px;max-width:34rem;color:#5a5148}
.hero .art{flex:0 0 40%;aspect-ratio:1;background:var(--sage);border-radius:18px;position:relative;min-width:280px;padding:1.2%;box-shadow:var(--sh)}
.hero .art:before{display:none}
.strip{background:var(--army);color:#f2ede6;padding:30px 0}
.strip .wrap{display:flex;gap:18px}
.strip .wrap>div{flex:1;padding:22px 24px;font-size:.88rem;line-height:1.5;background:var(--sage1);border-radius:12px;color:#4a4038}
.strip b{display:block;color:var(--army);font-family:'Plus Jakarta Sans';font-size:1.05rem;margin-bottom:4px}
.strip a{color:var(--army);font-weight:600}
section.wrap{padding:80px 24px 64px}
.kicker{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:600;color:var(--terra);margin-bottom:12px}
h2{font-size:1.75rem;margin:0 0 6px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:22px;margin-top:34px}
.cards2{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:var(--sh);transition:transform .18s ease,box-shadow .18s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(42,38,34,.10)}
.card .img{height:170px;background:var(--sage)}
.card .cimg{width:100%;height:170px;object-fit:cover;display:block}
.hero .art .cimg{width:100%;height:100%;object-fit:cover;border-radius:12px;display:block}
.card .img.p{background:var(--pink)}.card .img.s1{background:var(--sage1)}
.card .pad{padding:20px 22px}
.card .kicker{margin-bottom:5px}
.card h3{font-size:1.05rem;margin:6px 0 8px}
.card p{font-size:.92rem;color:#5a5148}
.tag{display:inline-block;background:var(--sagegreen);color:#fff;border-radius:999px;padding:3px 12px;font-size:.75rem;font-weight:500;margin-top:14px}
.gate{background:var(--army);border-radius:16px;padding:52px;text-align:center;color:#fff;margin-top:48px}
.gate h2{color:#fff}
.gate p{color:#e8e3da;max-width:36rem;margin:12px auto 24px}
.gate .frm{display:flex;gap:10px;justify-content:center;align-items:stretch;flex-wrap:wrap}
.gate input{padding:0 18px;height:48px;border-radius:10px;border:0;font-size:1rem;width:min(320px,100%);font-family:'DM Sans'}
.gate .btn{height:48px;display:inline-flex;align-items:center;background:var(--terra)}
.foot{border-top:1px solid var(--border);padding:40px 0 48px;font-size:.84rem;color:#8a8377;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;line-height:1.6}
.note{background:#f2f5ec;border:1px dashed var(--sage3);border-radius:10px;padding:10px 16px;font-size:.8rem;color:#8a8377;margin:20px 0}
.prose{max-width:44rem}.prose p{margin:16px 0;color:#44403c}
.prose h3{margin:26px 0 6px;font-size:1.15rem}
.prose ul{margin:12px 0;padding-left:22px;color:#44403c}.prose li{margin:6px 0}
.byline{font-size:.85rem;color:#8a8377;margin:10px 0 2px}
.src{margin-top:34px;padding-top:16px;border-top:1px solid var(--border);font-size:.82rem;color:#8a8377}
.src a{text-decoration:underline}
.card h3 a{color:inherit}
.phones{display:flex;gap:32px;justify-content:center;flex-wrap:wrap;margin-top:46px;align-items:flex-start}
.phone{text-align:left;width:266px;border:7px solid var(--ink);border-radius:28px;overflow:hidden;background:var(--cream);box-shadow:var(--sh)}
.ph-head{background:var(--army);color:#fff;padding:0 0 10px}
.ph-status{position:relative;display:flex;justify-content:space-between;align-items:center;padding:7px 14px 4px;font-size:.56rem;color:#EFE7DD;font-weight:600}
.ph-hole{position:absolute;left:50%;top:7px;transform:translateX(-50%);width:9px;height:9px;border-radius:50%;background:#161613;box-shadow:0 0 0 2px #232620}
.ph-ics{display:flex;gap:5px;align-items:center}
.ph-ics svg{display:block}
.ph-top{display:flex;justify-content:space-between;align-items:center;padding:8px 12px 0}
.ph-brand{display:flex;align-items:center;gap:7px;font-family:'Plus Jakarta Sans';font-weight:700;font-size:1.02rem}
.ph-brand img{width:20px;height:20px;border-radius:50%;flex:0 0 20px}
.ph-user{display:flex;align-items:center;gap:8px}
.ph-av{width:22px;height:22px;border-radius:50%;background:var(--sage);color:var(--army);font-size:.62rem;font-weight:700;display:flex;align-items:center;justify-content:center;font-family:'Plus Jakarta Sans'}
.ph-menu{color:#D8C9B9;font-size:.85rem;line-height:1}
.ph-homebar{width:64px;height:4px;border-radius:4px;background:#d8d3ca;margin:7px auto 6px}

.ph-head .gr{font-size:.72rem;color:#CBB79F;margin-top:2px;padding:2px 12px 0}
.ph-body{padding:14px}
.ph-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:12px 14px;margin-bottom:11px}
.ph-card .k{font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#8a8377}
.meal{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:start;font-size:.74rem;line-height:1.35;padding:7px 0;border-bottom:1px solid #f2ede4}
.meal>span:last-child{white-space:nowrap;color:#8a8377;font-size:.62rem;padding-top:2px}
.meal:last-child{border-bottom:0}.meal span:last-child{color:#8a8377;font-size:.7rem}
.ph-adapt{background:var(--sage1);border-radius:12px;padding:10px 13px;font-size:.72rem;color:var(--army)}
.ph-adapt b{display:block;font-size:.8rem}
.ph-btn{background:var(--army);color:#fff;border-radius:9px;text-align:center;padding:9px;font-size:.76rem;font-weight:700;margin-top:11px;font-family:'Plus Jakarta Sans'}
.tabs{display:flex;background:#fff;border-top:1px solid var(--border);font-size:.6rem;color:#8a8377;text-align:center}
.mth{width:42px;height:42px;border-radius:9px;object-fit:cover;flex:0 0 42px}
.mealL{display:flex;align-items:flex-start;gap:9px;min-width:0}
.pillrow{display:flex;gap:6px;margin-bottom:10px}
.pill{background:var(--sage1);color:var(--army);border-radius:999px;padding:3px 9px;font-size:.58rem;font-weight:600;white-space:nowrap}
.pill.pk{background:var(--sage3)}
.shelf{display:flex;gap:26px;justify-content:center;align-items:flex-start;margin:38px 0 8px;flex-wrap:wrap}
.shelf .tilebg{width:96px;height:96px;border-radius:24px;background:var(--army);display:flex;align-items:center;justify-content:center;box-shadow:var(--sh)}
.shelf img.raw{width:96px;height:96px;border-radius:24px;box-shadow:var(--sh)}
.shelf .lab{font-size:.68rem;color:#8a8377;text-align:center;margin-top:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:600}
.goalopt{display:flex;justify-content:space-between;align-items:center;border:1.5px solid var(--border);border-radius:10px;padding:8px 11px;margin:7px 0;font-size:.78rem}
.ctx{background:var(--sage1);border-radius:11px;padding:9px 11px;margin-bottom:9px}
.ctx .t{font-size:.72rem;color:#6b7264;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.ctx .m{font-size:.8rem;font-weight:600;color:var(--army);margin:2px 0 5px}
.chips{display:flex;gap:5px;flex-wrap:wrap}
.chip{background:#fff;border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-size:.6rem;color:#5a5148;font-weight:600}
.swapcard{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:9px;text-align:left}
.swapcard .sc-img{width:100%;height:64px;object-fit:cover;display:block}
.swapcard .sc-pad{padding:8px 10px}
.swapcard .sc-tag{display:inline-block;background:var(--sage1);color:var(--army);border-radius:999px;padding:1px 8px;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}
.swapcard .sc-tag.pk{background:var(--sage3)}
.swapcard b{display:block;font-size:.8rem;color:var(--army)}
.swapcard p{margin:3px 0 5px;font-size:.68rem;color:#6b7264;line-height:1.4}
.days{display:flex;justify-content:space-between;margin:4px 0 10px}
.day{width:26px;text-align:center;font-size:.58rem;color:#8a8377}
.day i{display:block;width:22px;height:22px;border-radius:50%;background:var(--sage1);margin:0 auto 3px;font-style:normal;line-height:22px;font-size:.62rem;color:var(--army);font-weight:700}
.day.done i{background:var(--army);color:#fff}
.day.tonight i{background:#fff;color:var(--army);box-shadow:inset 0 0 0 2px var(--army)}
.grocnote{font-size:.62rem;color:#8a8377;text-align:center;margin-top:7px;font-style:italic}
.goalopt.sel{background:var(--army);color:#fff;border-color:var(--army)}
.ring{display:flex;justify-content:center;margin:6px 0}
.tabs div{flex:1;padding:8px 2px}.tabs .on{color:var(--army);font-weight:700}
@media(max-width:760px){.cards2{grid-template-columns:1fr}.wrap{padding:0 28px}section.wrap{padding:56px 28px 48px}.hero{flex-direction:column;padding:64px 0 56px;text-align:center}.hero>div:first-child{display:flex;flex-direction:column;align-items:center}.hero p{margin-left:auto;margin-right:auto}.hero .art{flex:none;width:100%;min-width:0}.strip .wrap{flex-direction:column}.burger{display:flex}.links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--cream);border-bottom:1px solid var(--border);box-shadow:0 10px 22px rgba(42,38,34,.12);padding:6px 0;display:none}.navt:checked~.links{display:flex}.links a{padding:14px 28px;font-size:1.05rem;border-top:1px solid var(--border)}.links a:first-child{border-top:0}.links a.btn{margin:10px 28px 8px;padding:13px 22px;text-align:center;border-top:0;border-radius:10px}.navt:checked~.burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}.navt:checked~.burger span:nth-child(2){opacity:0}.navt:checked~.burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.lockup{height:42px}.gate{padding:34px 22px}.gate input{width:100%;margin:0 0 10px}.phones{gap:18px}h2.sec,section .kicker{text-align:left}}
html,body{overflow-x:clip}

h1,h2,h3,.logo{color:#163832}
.kicker{letter-spacing:.2em;color:#BF6E4A}
p,.prose p,.card p,.hero p{color:#3D3A36}
a{color:#BF6E4A}a:hover{color:#9D523A}
.card{border-radius:18px;border-color:#DED8C6}
.card .img{background:#E6C7A1}
.gate{border-radius:22px;background:#163832;background-image:radial-gradient(rgba(244,235,221,.11) 1px,transparent 1px);background-size:16px 16px}
.note{background:#EFE8DA;border:1px dashed #A6AF95;color:#3D3A36}
.hero .art{border-radius:24px;background:#E6C7A1}
.btn{border-radius:12px;color:#F4EBDD}.btn:hover{color:#F4EBDD;opacity:1}
.btn2{background:#EFE3CF;color:#163832}.btn2:hover{background:#E4D6BE;color:#163832;opacity:1}
.logo{display:flex;flex-direction:column;align-items:flex-start;gap:0;text-decoration:none}
.strap{font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:#BF6E4A;font-weight:700;margin-top:3px;line-height:1.1;padding-left:58px}
@media(max-width:760px){.strap{padding-left:47px;font-size:.54rem;letter-spacing:.18em}}
.ico{display:block;width:24px;height:24px;color:#BF6E4A;margin-bottom:9px}.ico svg{width:100%;height:100%;display:block}
.a8mark{border-color:#BF6E4A}.a8tile{background:#BF6E4A;color:#F4EBDD}
.foot{border-top:1px solid #DED8C6}
.foot:after{content:"Helping you build healthy habits that last.";display:block;width:100%;text-align:center;letter-spacing:.2em;text-transform:uppercase;font-size:.64rem;color:#3D3A36;margin-top:16px}

/* ---- contact / book page ---- */
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0}
.chip{display:inline-flex;align-items:center;gap:8px;background:var(--sage1);border:1px solid var(--border);border-radius:999px;padding:7px 15px;font-size:.85rem;font-weight:500;color:var(--army)}
.chip b{color:var(--terra);font-weight:700}
.ctabs{margin-top:38px}
.ctabs>input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.ctabbar{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--border);padding-bottom:0}
.ctabbar label{display:inline-block;padding:12px 20px;font-family:'Plus Jakarta Sans';font-weight:600;font-size:.95rem;color:#7a7166;cursor:pointer;border:1px solid transparent;border-bottom:0;border-radius:10px 10px 0 0;margin-bottom:-1px;transition:color .15s ease,background .15s ease}
.ctabbar label:hover{color:var(--army)}
#ct1:checked~.ctabbar label[for=ct1],#ct2:checked~.ctabbar label[for=ct2],#ct3:checked~.ctabbar label[for=ct3]{color:var(--army);background:var(--cream);border-color:var(--border);border-bottom:1px solid var(--cream)}
.cpane{display:none;padding:34px 0 0}
#ct1:checked~.cpanes .p1,#ct2:checked~.cpanes .p2,#ct3:checked~.cpanes .p3{display:block}
.splt{display:flex;gap:40px;align-items:flex-start}
.splt .main{flex:1;min-width:0}
.splt .side{flex:0 0 250px}
.side ul{list-style:none;margin:0;padding:0}
.side li{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:#5a5148;padding:11px 0;border-bottom:1px solid var(--border)}
.side li:last-child{border-bottom:0}
.side li b{color:var(--army);font-weight:600}
.side li:before{content:"";flex:0 0 7px;height:7px;border-radius:50%;background:var(--terra);margin-top:8px}
.calbox{border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:var(--sh);overflow:hidden;min-height:560px}
.field{margin-bottom:18px}
.field label{display:block;font-size:.82rem;font-weight:600;color:var(--army);letter-spacing:.02em;margin-bottom:7px}
.field input,.field select,.field textarea{width:100%;font-family:'DM Sans',sans-serif;font-size:.97rem;color:var(--ink);background:#fff;border:1px solid var(--border);border-radius:10px;padding:12px 14px;outline:0}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--terra)}
.field textarea{min-height:132px;resize:vertical}
.g2{display:flex;gap:18px}.g2>*{flex:1;min-width:0}
.formcard{border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:var(--sh);padding:30px}
.fnote{font-size:.78rem;color:#8a8377;margin-top:14px}
@media(max-width:860px){.splt{flex-direction:column;gap:26px}.splt .side{flex:none;width:100%}.g2{flex-direction:column;gap:0}.ctabbar label{padding:11px 14px;font-size:.88rem}.formcard{padding:22px}}

