/* Earthy Essentials: cream paper, deep moss, turmeric and clay. Arches on the hero are the one signature; everything else stays quiet. */
:root{
  --cream:#f6f1e6;--paper:#fbf8f1;--field:#fffdf8;--sand:#e9e0cc;--line:#ddd2ba;
  --ink:#2a251c;--muted:#6b6050;
  --moss:#35432d;--moss-d:#27331f;--haldi:#c9962b;--clay:#9c4630;--err:#a32a22;
  --brand:var(--moss);--pill:4px;--r:4px;
  --serif:"Cormorant Garamond",Georgia,serif;--sans:Karla,system-ui,sans-serif;
  color-scheme:light;box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-padding-top:84px;scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;color:var(--ink);font:16px/1.65 var(--sans);background-color:var(--cream);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .17 0 0 0 0 .14 0 0 0 0 .1 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
::selection{background:var(--haldi);color:var(--ink)}
h1,h2,h3,h4,.logo,.nm,.fn{font-family:var(--serif);margin:0}
h1,h2{font-weight:500;letter-spacing:-.01em}
h3,h4,.logo,.nm,.fn{font-weight:600}
button{font:inherit;cursor:pointer;border:0;color:inherit;background:none}
a{color:inherit}
:focus-visible{outline:2px solid var(--moss);outline-offset:3px;border-radius:3px}
.wrap{max-width:1160px;margin:auto;padding:0 24px}

/* ---------- Announcement + header ---------- */
.ann{background:var(--moss-d);color:#efe6d0;text-align:center;font-size:14px;padding:9px 20px;letter-spacing:.01em}
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:rgba(246,241,230,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:20px;height:72px}
.logo{font-size:29px;color:var(--moss);text-decoration:none;white-space:nowrap;letter-spacing:.005em}
.navl{display:flex;gap:2px;margin-left:16px}
.navlink{padding:8px 14px;border-radius:var(--r);font-weight:500;color:var(--ink)}
.navlink:hover{background:var(--sand)}
.navr{display:flex;align-items:center;gap:10px;margin-left:auto}
.acctbtn{border:1px solid var(--line);padding:8px 16px;border-radius:var(--r);font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--paper)}
.acctbtn:hover{border-color:var(--moss)}
.cartbtn{background:var(--moss);color:var(--paper);padding:9px 18px;border-radius:var(--r);font-weight:700}
.cartbtn:hover{background:var(--moss-d)}
.cartbtn b{background:var(--haldi);color:var(--ink);border-radius:99px;padding:0 8px;margin-left:8px;font-size:13px}
@media(max-width:720px){.navl{display:none}}
@media(max-width:480px){.logo{font-size:23px}.nav{gap:8px;height:64px}.cartbtn{padding:8px 13px}.acctbtn{padding:7px 12px;max-width:96px}.navr{gap:6px}.wrap{padding:0 18px}}

/* ---------- Buttons ---------- */
.cta{display:inline-block;background:var(--moss);color:var(--paper);padding:14px 30px;border-radius:var(--r);font-weight:700;text-decoration:none;transition:background .15s}
.cta:hover{background:var(--moss-d)}
.cta2{display:inline-block;border:1px solid var(--moss);color:var(--moss);padding:13px 28px;border-radius:var(--r);font-weight:700;text-decoration:none;transition:.15s}
.cta2:hover{background:var(--moss);color:var(--paper)}
.full{width:100%;background:var(--moss);color:var(--paper);padding:14px;border-radius:var(--r);font-weight:700;margin-top:12px;transition:background .15s}
.full:hover{background:var(--moss-d)}
.full:disabled{opacity:.5;cursor:default}
.ghost{display:block;text-align:center;border:1px solid var(--line);border-radius:var(--r);padding:12px;margin-top:10px;text-decoration:none;color:var(--ink);background:var(--paper)}
.ghost:hover{border-color:var(--moss)}
.linkbtn{background:none;color:var(--moss);text-decoration:underline;font-size:inherit;padding:0}

/* ---------- Hero ---------- */
.hero{padding:clamp(36px,6vw,80px) 0 0}
.hero-in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,5vw,72px);align-items:end}
.hero-t{padding-bottom:clamp(28px,6vw,76px)}
.hero h1{font-size:clamp(44px,6.8vw,80px);line-height:1;max-width:10.5em}
.hero p{max-width:30em;color:var(--muted);font-size:18px;margin:22px 0 30px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.shelf{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:clamp(8px,1.6vw,16px);height:clamp(280px,38vw,450px);padding-bottom:14px}
.shelf::after{content:"";position:absolute;left:-4%;right:-4%;bottom:0;height:14px;background:var(--sand);border-radius:3px 3px 0 0;box-shadow:inset 0 2px 0 rgba(255,255,255,.55)}
.arch{position:relative;flex:1 1 0;max-width:190px;border-radius:999px 999px 0 0;overflow:hidden;display:block}
.arch:nth-child(1){height:72%}.arch:nth-child(2){height:100%}.arch:nth-child(3){height:60%}
.arch:not([style]){background:var(--sand)}
.cap{position:absolute;left:10px;right:10px;bottom:20px;text-align:center;font-family:var(--serif);font-weight:600;font-size:19px;line-height:1.1;color:#fffaf0;text-shadow:0 1px 10px rgba(30,20,10,.35)}
@media(max-width:820px){.hero-in{grid-template-columns:1fr}.hero-t{padding-bottom:8px}.shelf{height:280px}.cap{font-size:16px}}

/* ---------- Tiles (used when a product has no photo yet) ---------- */
.pic,.t,.arch,.pdp-pic{background:linear-gradient(165deg,var(--a,#e8dcc4),var(--b,#d9caac));background:linear-gradient(165deg,color-mix(in srgb,var(--a,#e8dcc4) 55%,#eadfc8),color-mix(in srgb,var(--b,#d9caac) 55%,#c4b490))}
.pic:not([style*="url("])::before,.arch:not([style*="url("])::before,.pdp-pic:not([style*="url("])::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(255,255,255,.08) 0 1px,transparent 1px 9px);pointer-events:none}
.mono{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--serif);font-weight:500;font-size:clamp(84px,11vw,132px);line-height:1;color:rgba(255,252,244,.8);pointer-events:none}
.t{font-family:var(--serif);font-weight:600;font-size:30px;color:rgba(255,252,244,.88)}

/* ---------- Trust ---------- */
.trustbar{margin-top:clamp(40px,6vw,72px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,253,248,.5)}
.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding-top:26px;padding-bottom:26px}
.trust>div{display:flex;gap:14px;align-items:flex-start}
.trust svg{flex:none;width:28px;height:28px;margin-top:2px;stroke:var(--moss);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.trust b{display:block;font-family:var(--serif);font-weight:600;font-size:20px;line-height:1.2}
.trust span{color:var(--muted);font-size:15px}
@media(max-width:700px){.trust{grid-template-columns:1fr;gap:18px}}

/* ---------- Collection ---------- */
.shop-head{display:flex;align-items:baseline;gap:16px;margin:clamp(40px,6vw,64px) 0 18px}
.sec{font-size:clamp(34px,4.6vw,48px)}
.tools{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 24px;border-bottom:1px solid var(--line);margin-bottom:36px}
.chips{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;margin-bottom:-1px}
.chips::-webkit-scrollbar{display:none}
.chip{border:1px solid var(--line);background:var(--paper);padding:6px 16px;border-radius:var(--r);white-space:nowrap}
.chip:hover{border-color:var(--moss)}
.chip.on{background:var(--moss);color:var(--paper);border-color:var(--moss)}
#chips .chip{border:0;border-bottom:2px solid transparent;border-radius:0;background:none;color:var(--muted);font-weight:500;padding:12px 4px;margin-right:20px}
#chips .chip:hover{color:var(--ink)}
#chips .chip.on{color:var(--ink);border-bottom-color:var(--moss);background:none}
.tool-r{display:flex;gap:10px;padding-bottom:10px}
.tool-r input{width:210px;padding:9px 14px}
.tool-r select{width:auto;padding:9px 12px}
@media(max-width:620px){.tool-r{width:100%}.tool-r input{flex:1 1 0;width:auto;min-width:0}.tool-r select{flex:0 1 160px;min-width:0;max-width:48%}}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:40px 18px;padding-bottom:84px}
@media(min-width:900px){.grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:56px 28px}}
.grid>p{grid-column:1/-1}
.card{display:flex;flex-direction:column}
.pic{position:relative;display:block;aspect-ratio:4/5;border-radius:3px;overflow:hidden}
.off{position:absolute;left:10px;top:10px;background:var(--clay);color:#fff8ee;font-weight:700;font-size:12px;padding:3px 9px;border-radius:2px;z-index:1}
.info{padding:16px 0 0;display:flex;flex-direction:column;gap:2px;flex:1}
.nm{font-size:23px;line-height:1.15;color:var(--ink);text-decoration:none}
.nm:hover{color:var(--moss);text-decoration:underline;text-underline-offset:3px}
.info small{color:var(--muted);font-size:14px}
.price{font-weight:700;font-size:17px;margin:8px 0 12px}
.price.sale{color:var(--clay)}
.price s{color:var(--muted);font-weight:400;font-size:14px;margin-left:8px}
.saletag{color:var(--clay);font-size:14px;font-weight:700;margin:-6px 0 12px}
.add{margin-top:auto;width:100%;border:1px solid var(--moss);color:var(--moss);padding:10px;border-radius:var(--r);font-weight:700;transition:.15s}
.add:hover{background:var(--moss);color:var(--paper)}

/* ---------- Story ---------- */
.story{background:#ece3cf;padding:clamp(56px,8vw,104px) 0}
.story-in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,6vw,80px);align-items:start}
.story h2{font-size:clamp(34px,4.8vw,54px);line-height:1.05;max-width:10em}
.story p{font-size:18px;max-width:31em;margin:0}
@media(max-width:760px){.story-in{grid-template-columns:1fr}}

/* ---------- Footer ---------- */
footer{background:var(--moss-d);color:#e3d9c2;padding:58px 0 26px;font-size:15px}
.fgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}
.fn{font-size:30px;color:var(--paper);margin-bottom:8px}
.fgrid p{margin:0;max-width:24em;color:#cfc4a9}
footer h4{font-size:21px;color:var(--paper);margin-bottom:12px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
footer li a,footer li button{color:#e3d9c2;text-decoration:none;padding:0;text-align:left}
footer li a:hover,footer li button:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.fbar{margin-top:44px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);font-size:14px;color:#b9ae94;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 20px}
.admlink{background:none;color:#b9ae94;text-decoration:underline;font-size:14px;padding:0}
.admlink:hover{color:var(--paper)}
@media(max-width:700px){.fgrid{grid-template-columns:1fr 1fr}.fgrid>div:first-child{grid-column:1/-1}}

/* ---------- Product page ---------- */
.pdp-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,84px);padding-top:26px;padding-bottom:48px;align-items:start}
.crumbs{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;color:var(--muted)}
.crumbs a,.crumbs button{color:var(--muted);text-decoration:none;padding:0}
.crumbs a:hover,.crumbs button:hover{color:var(--moss);text-decoration:underline;text-underline-offset:3px}
.crumbs .here{color:var(--ink)}
.pdp-pic{position:sticky;top:112px;aspect-ratio:4/5;width:100%;max-width:520px;justify-self:center;border-radius:3px;overflow:hidden}
.pdp-pic .mono{font-size:clamp(130px,22vw,230px)}
.pdp-pic .off{font-size:13px;padding:4px 12px}
.pdp-info h1{font-size:clamp(38px,5.2vw,60px);line-height:1.02}
.pdp-from{color:var(--muted);margin:10px 0 0}
.pdp-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 14px;margin:26px 0 2px;font-size:30px;font-weight:700}
.pdp-price.sale{color:var(--clay)}
.pdp-price s{font-size:19px;font-weight:400;color:var(--muted)}
.pdp-sale{color:var(--clay);font-weight:700;margin:0}
.pdp-desc{max-width:33em;margin:20px 0 28px;font-size:17px}
.pdp-buy{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.pdp-share{display:flex;flex-wrap:wrap;gap:20px;margin:22px 0 0;font-size:15px}
.pdp-share a,.pdp-share button{color:var(--muted);text-decoration:underline;text-underline-offset:3px;padding:0;font-size:15px}
.pdp-share a:hover,.pdp-share button:hover{color:var(--moss)}
.pdp-facts{margin:34px 0 0;border-top:1px solid var(--line)}
.pdp-facts div{display:grid;grid-template-columns:8em 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.pdp-facts dt{color:var(--muted);font-weight:700}
.pdp-facts dd{margin:0}
.rel{padding-top:24px;padding-bottom:0}
.rel h2{font-size:clamp(30px,4vw,42px);margin:0 0 28px}
.pdp-miss{padding-top:90px;padding-bottom:110px;text-align:center}
.pdp-miss h2{font-size:38px;margin-bottom:8px}
.pdp-miss p{margin:0 0 24px}
@media(max-width:820px){.pdp-in{grid-template-columns:1fr}.pdp-pic{position:relative;top:0;max-width:360px}}

/* ---------- Bag drawer ---------- */
.ov{position:fixed;inset:0;background:rgba(42,37,28,.5);z-index:40;display:none}.ov.show{display:block}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(430px,100%);background:var(--paper);z-index:50;transform:translateX(100%);transition:.3s;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.drawer.show{transform:none;box-shadow:-20px 0 60px rgba(42,37,28,.18)}
.dh{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}.dh h3{font-size:28px}
.db{flex:1;overflow:auto;padding:8px 20px}
.row{display:flex;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.row .t{position:relative;width:56px;height:68px;display:grid;place-items:center;border-radius:3px;flex:none;overflow:hidden}
.row .m{flex:1;line-height:1.35}
.row .m a{text-decoration:none;font-weight:700}.row .m a:hover{text-decoration:underline;text-underline-offset:3px}
.qty{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--r);padding:0 4px;background:var(--paper)}
.qty button{width:32px;height:32px;font-size:18px}
.qty span{min-width:1.4em;text-align:center;font-weight:700}
.df{padding:16px 20px;border-top:1px solid var(--line);background:var(--cream)}
.ln{display:flex;justify-content:space-between;margin:3px 0;font-size:15px}.ln.tot{font-weight:700;font-size:18px;margin-top:8px}

/* ---------- Modal, forms, checkout ---------- */
.modal{position:fixed;inset:0;z-index:60;display:none;align-items:flex-end;justify-content:center;padding-top:env(safe-area-inset-top,0px)}
.modal.show{display:flex}
.sheet{background:var(--paper);width:min(560px,100%);max-height:94vh;overflow:auto;border-radius:14px 14px 0 0;padding:24px 22px calc(28px + env(safe-area-inset-bottom,0px));box-shadow:0 30px 80px rgba(42,37,28,.3)}
.sheet h3{font-size:31px}
.sheet h4{font-size:23px;margin:24px 0 4px}
@media(min-width:700px){.modal{align-items:center}.sheet{border-radius:10px}}
label{display:block;font-size:14px;color:var(--muted);margin:12px 0 4px;font-weight:500}
input,textarea,select{width:100%;padding:11px 14px;border:1px solid var(--line);border-radius:6px;background:var(--field);color:var(--ink);font:inherit}
input:focus,textarea:focus,select:focus{border-color:var(--moss);outline:2px solid rgba(53,67,45,.18);outline-offset:0}
input[type=checkbox]{width:auto}
input[type=color]{padding:2px;height:44px}
label.chk{display:flex;gap:8px;align-items:center;color:var(--ink);margin-top:14px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pay{display:grid;gap:10px;margin:8px 0}
.opt{border:1px solid var(--line);background:var(--field);border-radius:8px;padding:12px 16px;text-align:left;display:flex;justify-content:space-between;gap:10px;align-items:center}
.opt:hover{border-color:var(--moss)}
.opt.on{border-color:var(--moss);box-shadow:inset 0 0 0 1px var(--moss)}
.opt small{color:var(--muted);display:block}
.upi{border:1px dashed var(--moss);border-radius:10px;padding:16px;text-align:center;margin:12px 0;background:var(--field)}
#qr{display:inline-block;background:#fff;padding:10px;border-radius:8px;margin:8px 0}
.upi a{display:block;background:var(--moss);color:var(--paper);border-radius:var(--r);padding:12px;font-weight:700;text-decoration:none;margin-top:6px}
.err{color:var(--err);font-size:14px;min-height:20px;margin-top:6px}
.ok{text-align:center;padding:10px 0}.ok .big{font-size:56px}.ok h2{font-size:36px}
.sm{font-size:14px;color:var(--muted)}
.ord{border:1px solid var(--line);background:var(--field);border-radius:8px;padding:10px 14px;margin:8px 0;font-size:14px}
.ord .ln{font-size:15px}
.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--paper);padding:10px 22px;border-radius:var(--r);z-index:90;opacity:0;pointer-events:none;transition:.3s;font-weight:500}.toast.show{opacity:1}

/* ---------- Admin ---------- */
.adm table{width:100%;border-collapse:collapse;min-width:560px}
.adm td,.adm th{padding:10px 6px;border-bottom:1px solid var(--line);text-align:left;font-size:14px;vertical-align:top}
.adm th{color:var(--muted);font-weight:700}
.adm select{padding:4px;font-size:13px;width:auto;border-radius:6px}
.adm .del{color:var(--err);font-size:13px}
.tabs{display:flex;gap:8px;margin:14px 0;overflow-x:auto}

/* ---------- Affiliate program ---------- */
.affb{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.affstats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 6px}
.affstat{border:1px solid var(--line);background:var(--field);border-radius:8px;padding:10px 12px}
.affstat b{display:block;font-size:19px;line-height:1.2}
.affstat span{font-size:13px;color:var(--muted);line-height:1.3;display:block;margin-top:2px}
.adm input.rt{width:78px;padding:6px 8px;display:inline-block}
