:root{--green:#123c2b;--deep:#0a261b;--gold:#c49a49;--cream:#fbf7ee;--ink:#1d2b24;--muted:#65736a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3,.brand b{font-family:Georgia,serif;line-height:1.12}h1{font-size:clamp(3rem,6vw,6rem);letter-spacing:-.04em;margin:20px 0}h2{font-size:clamp(2rem,4vw,3.4rem);margin:10px 0}h3{font-size:1.65rem;margin:10px 0}p{line-height:1.7}.top{height:88px;padding:12px 5%;display:flex;align-items:center;justify-content:space-between;background:#fffdf8;position:sticky;top:0;z-index:10;border-bottom:1px solid #e9e4d8}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:62px;height:62px;object-fit:cover;border-radius:50%}.brand b{display:block;font-size:26px;color:var(--green)}.brand small{font-size:9px;letter-spacing:2px;color:#8b6c37}.top nav{display:flex;align-items:center;gap:23px}.top nav a{text-decoration:none;font-weight:600;font-size:14px}.outline,.subtle,.ghost{background:transparent;border:1px solid #d8d7ce;border-radius:40px;padding:10px 16px;color:var(--green)}.subtle{border:0}.hero{background:radial-gradient(circle at 85% 35%,#2f6044,var(--green) 48%,var(--deep));color:white;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:30px;padding:70px max(6%,calc((100vw - 1300px)/2));min-height:610px}.heroText{max-width:700px}.hero h1 em{color:#ebc780;font-weight:normal}.heroText>p{color:#d8e3d9;font-size:19px;max-width:530px}.eyebrow{color:var(--gold);letter-spacing:3px;font-size:11px;font-weight:800}.heroActions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.btn{display:inline-block;background:linear-gradient(120deg,#d7b36b,#a67b31);color:#18291f;text-decoration:none;font-weight:800;border:0;border-radius:40px;padding:15px 25px}.ghost{color:white;text-decoration:none;border-color:#668573}.trust{display:flex;flex-wrap:wrap;gap:20px;color:#d3dfd6;font-size:13px}.heroLogo{position:relative;text-align:center}.heroLogo img{width:min(100%,470px);border-radius:50%;box-shadow:0 28px 100px #0007}.floating{position:absolute;right:0;bottom:3%;background:#fff9eb;color:var(--green);padding:15px 22px;border-radius:18px;box-shadow:0 12px 35px #0003;font-weight:700}.section{max-width:1180px;margin:auto;padding:90px 22px}.sectionHead{display:flex;justify-content:space-between;margin-bottom:35px}.sectionHead p{color:var(--muted)}.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.plan{background:#fff;border:1px solid #e8e1d5;border-radius:26px;padding:32px;box-shadow:0 16px 40px #253c2c0b;position:relative}.plan.premium{background:#153f2e;color:white}.planTop{display:flex;flex-direction:column;align-items:start}.tag{font-size:12px;color:#946d31;background:#f8ebd3;border-radius:40px;padding:7px 12px}.premium .tag{color:#f3dba3;background:#2b6049}.price{font-size:42px;font-weight:800;color:#9b6c23}.premium .price{color:#edc778}.price small{font-size:15px;font-weight:500}.foodIcon{font-size:65px;margin:18px 0}.plan p{min-height:45px}.choose{background:var(--green);color:white;border:0;padding:13px 22px;border-radius:30px;font-weight:700}.premium .choose{background:#dfb96e;color:var(--deep)}.note{background:#f5e9d4;border-left:4px solid #bb8b42;padding:19px 22px;border-radius:12px;margin-top:25px;font-size:14px}.orderGrid{display:grid;grid-template-columns:1.3fr .7fr;gap:24px}.card,.totalCard{border-radius:26px;background:white;padding:32px;border:1px solid #e6e0d3}.card>label{display:block;font-weight:750;margin:17px 0 10px}.switch{display:flex;gap:10px}.switch button{flex:1;padding:13px 7px;background:#faf8f2;border:1px solid #e2dfd7;border-radius:13px}.switch button.selected{background:var(--green);color:white;border-color:var(--green)}.checkGrid{display:flex;gap:18px}.check{display:flex;gap:10px;align-items:center;cursor:pointer}.check input{accent-color:var(--green);width:18px;height:18px}.card input[type=date]{padding:12px;border:1px solid #dedbd2;border-radius:12px;width:100%}.muted{color:var(--muted);font-size:13px}.totalCard{background:var(--green);color:white;display:flex;flex-direction:column;justify-content:center}.total{font-size:clamp(3rem,6vw,5rem);font-weight:800;letter-spacing:-3px}.totalCard p{color:#d7e2da}.line{height:1px;background:#557565;margin:15px 0}.full{width:100%;text-align:center;margin-top:20px}.why{text-align:center}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:40px 0}.features article{background:white;padding:35px 22px;border-radius:20px}.features article span{font-size:38px}.features article p{color:var(--muted)}.why .note{text-align:left}.contact{text-align:center;background:#f4ead6;max-width:none}.contact a:not(.btn){color:#275b43}footer{background:var(--deep);color:#c6d7ca;padding:25px 5%;display:flex;justify-content:space-between;gap:15px;font-size:13px}dialog{border:0;border-radius:22px;padding:32px;width:min(94vw,560px);max-height:90vh;overflow:auto;box-shadow:0 30px 100px #0005}dialog::backdrop{background:#0a211bcc}dialog h2{font-size:32px}dialog form>label{display:block;margin:15px 0;font-size:14px;font-weight:700}dialog input:not([type=checkbox]):not([type=file]),dialog textarea{width:100%;border:1px solid #d7dcd4;border-radius:10px;padding:12px;margin-top:6px;background:#fff}dialog input[type=file]{display:block;margin-top:8px;max-width:100%}dialog textarea{min-height:75px}.close{float:right;border:0;background:#eee;padding:8px 13px;border-radius:30px}.preview{max-width:120px;max-height:120px;object-fit:cover;border-radius:12px}.consent{display:flex!important;align-items:start;gap:10px;font-weight:500!important}.status{font-size:14px;color:#a13e2c}.dayGrid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin:15px 0}.day{border:1px solid #e1e5dc;border-radius:9px;padding:8px 1px;background:#f5f7f3;font-size:12px}.day.off{background:#ffded7;color:#9b352b}.day.on{background:#d8f0d7;color:#245b2a}.day:disabled{opacity:.4}.calendarControls{display:flex;justify-content:space-between;gap:10px;align-items:center}.calendarControls button{border:1px solid #ddd;background:white;border-radius:10px;padding:8px 14px}.adminTable{width:100%;border-collapse:collapse;font-size:12px}.adminTable td,.adminTable th{border-bottom:1px solid #e8e8e8;padding:9px 6px;text-align:left}.adminTable button{border:1px solid #ccc;background:white;border-radius:8px;padding:6px}.adminWide{width:min(96vw,1050px)}.smallbtn{border:1px solid #ddd;background:white;padding:8px 13px;border-radius:10px;margin:5px}.summary{background:#f3f6ee;padding:15px;border-radius:15px}.warning{color:#a1432e}.selfieModal{max-width:230px;display:block;margin:10px auto;border-radius:12px}@media(max-width:800px){.top{height:auto;align-items:flex-start}.top nav{gap:7px;flex-wrap:wrap;justify-content:flex-end}.top nav a{display:none}.top nav button{font-size:12px;padding:8px}.brand b{font-size:20px}.brand small{font-size:7px}.brand img{width:48px;height:48px}.hero{grid-template-columns:1fr;padding:50px 7%}.heroLogo img{max-width:330px}.heroLogo{margin-top:15px}.plans,.orderGrid,.features{grid-template-columns:1fr}.section{padding:60px 18px}.floating{right:8%}dialog{padding:22px}.adminTable{font-size:11px}.adminWide{padding:12px}}

.menuShowcase{display:grid;grid-template-columns:1fr 1.15fr;gap:22px;align-items:start}.menuShowcase img{width:100%;border-radius:22px;box-shadow:0 10px 35px #123c2b22}.deliveryStats{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0}.deliveryStats span{padding:12px 16px;background:#e8f4ea;border-radius:12px}.deliveryStats b{font-size:22px;color:#123c2b}@media(max-width:800px){.menuShowcase{grid-template-columns:1fr}}

/* Interactive weekly menu */
.interactiveMenus{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:30px 0 16px}.menuPackage{background:#fff;border:1px solid #e8dac1;border-radius:24px;overflow:hidden;box-shadow:0 16px 35px #143c2b14}.largeMenu{border:2px solid #164b34}.menuPackageHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:24px 24px 14px;background:#fff9eb}.largeMenu .menuPackageHeader{background:#143c2b;color:white}.menuPackageHeader h3{margin:6px 0}.menuPackageHeader p{font-size:14px;margin:6px 0}.menuPrice{font-size:35px;font-weight:850;color:#b76a16}.largeMenu .menuPrice{color:#f1cc82}.menuPrice small{font-size:14px;font-weight:500}.menuEmoji{font-size:58px}.mealTabs{display:flex;gap:8px;padding:12px;background:#fff9eb}.largeMenu .mealTabs{background:#143c2b}.mealTab{flex:1;border:1px solid #dfd6c7;background:white;color:#183d2c;border-radius:12px;padding:13px 8px;font-weight:750;transition:background .15s,transform .15s}.mealTab:hover{transform:translateY(-1px)}.mealTab.active{background:#c45f0a;color:white;border-color:#c45f0a}.mealTab:focus-visible{outline:3px solid #c49a49;outline-offset:2px}.menuRows{padding:10px}.weeklyDish{display:grid;grid-template-columns:95px 52px 1fr;align-items:center;gap:12px;padding:11px 9px;border-bottom:1px solid #eee7da;min-height:88px}.weeklyDish:last-child{border-bottom:0}.weeklyDish:nth-child(odd){background:#f7f8f0;border-radius:10px}.dishDay{text-transform:uppercase;font-size:11px;font-weight:850;color:#164b34}.dishIcon{font-size:32px;text-align:center}.dishDetails{display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.4}.saladExtra{font-size:12px;color:#237349;font-weight:700}@media(max-width:850px){.interactiveMenus{grid-template-columns:1fr}}@media(max-width:420px){.weeklyDish{grid-template-columns:68px 38px 1fr;gap:8px}.dishDay{font-size:10px}.dishIcon{font-size:25px}.dishDetails{font-size:13px}.menuPackageHeader{padding:18px}}

/* Premium visual polish; original menu artwork is displayed without cropping or alteration */
.originalMenuArt{max-width:1180px;margin:24px auto 36px;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 22px 70px #102d1e1c;border:1px solid #e8d5b4}.originalMenuArt img{display:block;width:100%;height:auto;object-fit:contain}.originalMenuArt span{display:block;text-align:center;font-size:12px;letter-spacing:.08em;color:#6a755d;padding:12px;background:#fffaf0}.menuPackage{box-shadow:0 20px 65px #143c2b1c;transition:box-shadow .2s,transform .2s}.menuPackage:hover{box-shadow:0 28px 70px #143c2b29;transform:translateY(-3px)}.mealTab{min-height:52px;box-shadow:0 2px 6px #0000000c}.mealTab.active{background:linear-gradient(135deg,#d87417,#aa4b06);box-shadow:0 7px 17px #bc601c36}.weeklyDish{transition:background .15s}.weeklyDish:hover{background:#f5eddb}.dishDetails strong{font-size:14px}.menuPackageHeader{min-height:180px}.menuPackageHeader h3{font-size:clamp(1.7rem,2.4vw,2.2rem)}@media(max-width:600px){.originalMenuArt{border-radius:16px;margin:16px 0 24px}.originalMenuArt span{font-size:10px}.menuPackageHeader{min-height:auto}}

/* User-provided original food photos: no replacement, filters or overlays. */
.menuRows{padding:14px;background:#fffdf7}
.referenceMenu{margin:0 auto;max-width:450px;border:1px solid #e8dcc9;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 8px 24px #173e2812}
.referenceMenuTop{padding:13px 16px;display:flex;flex-direction:column;gap:5px;background:#f7f4e9;color:#153e2d}
.referenceMenuTop strong{font-size:16px}
.referenceMenuTop span{font-size:13px;color:#675839}
.referenceMenu img{display:block;width:100%;height:auto;image-rendering:auto;object-fit:contain;filter:none!important;transform:none!important}
.referenceCaption{font-size:11px;text-align:center;color:#776e5f;padding:9px;margin:0;background:#fffaf0}
@media(max-width:600px){.menuRows{padding:8px}.referenceMenuTop{padding:11px 12px}}

/* Premium readable seven-day menus; all thumbnails come from the unchanged uploaded artwork. */
.menuWeekTitle{display:flex;flex-direction:column;gap:4px;padding:14px 15px;border-radius:12px 12px 0 0;background:#f4ebd7;color:#103a28}
.menuWeekTitle span{font-weight:850;font-size:17px}.menuWeekTitle small{font-size:12px;color:#66543a}
.menuDishList{border:1px solid #e8dcc4;border-top:0;border-radius:0 0 14px 14px;overflow:hidden}
.menuDishRow{display:flex;align-items:center;gap:13px;padding:9px 10px;border-bottom:1px solid #efe6d8;background:#fffdf8;min-height:92px}
.menuDishRow:nth-child(even){background:#f7f8f0}.menuDishRow:last-child{border-bottom:0}
.menuDishPicture{flex:0 0 118px;width:118px;height:65px;border-radius:9px;background-repeat:no-repeat;background-size:118px 478px;background-position:center calc(-16px - var(--dish-index) * 66px);box-shadow:0 3px 10px #142f1e18}
.menuDishCopy{display:flex;flex-direction:column;gap:4px;min-width:0}.menuDishDay{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:850;color:#986014}
.menuDishCopy strong{font-size:13px;line-height:1.4;color:#193b2b}.dishExtra{font-size:11px;font-weight:700;color:#23734c}
.fullMenuImage{margin:14px 4px 2px;color:#245039}.fullMenuImage summary{cursor:pointer;font-size:12px;font-weight:750}.fullMenuImage img{display:block;width:min(100%,300px);height:auto;margin:12px auto;border:1px solid #e4d5bc;border-radius:10px}
@media(max-width:500px){.menuDishPicture{flex-basis:106px;width:106px;height:60px;background-size:106px 429px;background-position:center calc(-14px - var(--dish-index) * 59px)}.menuDishRow{gap:9px}.menuDishCopy strong{font-size:12px}}

/* November premium content update */
.planFoodPhoto{width:100%;height:180px;overflow:hidden;border-radius:18px;margin:20px 0 14px;background:#f3ead9;border:1px solid #e8dfce}
.planFoodPhoto img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.plan:hover .planFoodPhoto img{transform:scale(1.035)}
.contactActions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px}
.contactActions .btn{min-width:185px}
.whatsappBtn{background:#175d43;color:white}
.hero .floating{max-width:300px;line-height:1.35}
@media(max-width:600px){.planFoodPhoto{height:160px}.hero .floating{max-width:230px;font-size:13px}}

/* Final menu visual update */
.heroLogo{display:flex;align-items:center;justify-content:center;min-width:0}
.heroLogo img{display:block;width:min(100%,460px);height:auto;aspect-ratio:1/1;object-fit:contain;border-radius:50%;margin:0 auto;box-shadow:0 22px 65px #0005}
.weeklyPhotoShowcase{margin:30px 0 34px;border-radius:24px;background:#fffdf8;border:1px solid #e7dac2;overflow:hidden;box-shadow:0 15px 45px #143c2b14}
.weeklyPhotoHeading{padding:25px 30px 10px}.weeklyPhotoHeading h3{margin:8px 0}.weeklyPhotoHeading p{color:#66746b;margin:0 0 15px}
.weeklyPhotoShowcase>img{display:block;width:100%;max-width:1024px;height:auto;margin:auto;object-fit:contain}
@media(max-width:600px){.weeklyPhotoHeading{padding:20px 17px 8px}.heroLogo img{width:min(100%,350px)}}

/* Clear, aligned meal photos sourced from the customer's weekly chart. */
.menuDishRow{display:grid;grid-template-columns:124px minmax(0,1fr);gap:16px;align-items:center;min-height:130px;padding:12px}
.menuDishPicture{width:124px;height:108px;object-fit:cover;object-position:center 60%;border-radius:12px;box-shadow:0 4px 14px #103b2b22;display:block;background:none;flex:none}
.menuDishCopy strong{font-size:14px;line-height:1.45}.menuDishDay{font-size:12px}
@media(max-width:500px){.menuDishRow{grid-template-columns:105px minmax(0,1fr);gap:10px;padding:9px;min-height:112px}.menuDishPicture{width:105px;height:94px}.menuDishCopy strong{font-size:12px}}

/* Logo alignment: preserve the entire circle and center it in both placements. */
.brand img{object-fit:contain;object-position:center;flex-shrink:0}
.heroLogo{display:grid;place-items:center}
.heroLogo img{aspect-ratio:1/1;object-fit:contain;object-position:center;margin-inline:auto}
/* Food photos contain no baked-in captions; menu text is accessible separately. */
.menuDishImage img,.menuPhoto img{object-fit:contain;object-position:center}

/* True circular logo: square-cropped artwork and centered frame */
.heroLogo{display:flex!important;align-items:center!important;justify-content:center!important;overflow:visible}
.heroLogo img{display:block!important;width:min(100%,430px)!important;aspect-ratio:1!important;height:auto!important;object-fit:cover!important;object-position:center!important;border-radius:50%!important;margin:0 auto!important;box-shadow:0 22px 60px #002c1b38}
.mealDashboard{margin:14px 0 24px}.mealStats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mealStat{background:#f4f7ef;border:1px solid #dce9d8;border-radius:16px;padding:16px 12px;display:flex;flex-direction:column;gap:4px}.mealStat strong{font-size:30px;color:#12462f;font-weight:800;line-height:1.1}.mealStat span{font-size:12px;color:#526558}.mealBreakdown{background:#fffaf0;border:1px solid #eee0c5;border-radius:16px;padding:16px;margin-top:12px}.mealBreakdown p{font-size:13px;line-height:1.5;color:#59615a}.slotProgress{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #eee0c5;padding-top:10px;margin-top:10px;font-size:13px;flex-wrap:wrap}@media(min-width:650px){.mealStats{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Simple personal dashboard and explicit meal status */
.top nav #myAccount{background:#f5d78d;color:#133c2c;border:1px solid #cfa65d;font-weight:800;white-space:nowrap}
.availabilityLegend{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0 16px}
.availabilityLegend span{padding:8px 12px;border-radius:999px;font-size:13px;font-weight:700}
.legendRequired{background:#e1f3e8;color:#155735}.legendSkipped{background:#ffe2e0;color:#8b2926}.legendLocked{background:#ededed;color:#555}
.dayGrid .day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:54px;line-height:1.2}
.dayGrid .day small{font-size:10px;font-weight:750}.dayGrid .day.on{background:#dff1e4;color:#174c30;border:2px solid #3b9763}.dayGrid .day.off{background:#ffe0dc;color:#8e2725;border:2px solid #d85a51}.dayGrid .day:disabled{opacity:.45;cursor:not-allowed}
.mealConfirmDialog{max-width:480px;width:calc(100% - 28px);border:0;border-radius:20px;padding:0;box-shadow:0 24px 70px #0005}
.mealConfirmDialog::backdrop{background:#0c2019a8}.confirmInner{padding:28px}.confirmInner h2{margin:8px 0}.confirmInner p{line-height:1.65}.confirmActions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.confirmActions button{flex:1;min-width:135px}
