:root{--g:#243E11;--o:#445B24;--c:#FDFCF1;--c2:#F4F1DC;--gold:#EAA82E;--t:#CC4919;--b:#9B6F39;--r:14px}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;scroll-padding-top:70px}
body{font:400 16px/1.6 Jost,system-ui,sans-serif;background:var(--c);color:var(--g);-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Crimson Pro',serif;font-weight:600;line-height:1.05;letter-spacing:-.01em}
a{color:inherit}button{font:inherit;cursor:pointer;border:0}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
header{position:fixed;inset:0 0 auto;z-index:20;display:flex;align-items:center;gap:20px;padding:10px max(16px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left));padding-top:calc(10px + env(safe-area-inset-top));background:rgba(36,62,17,.88);backdrop-filter:blur(10px);color:var(--c)}
.brand img{height:42px;display:block;border-radius:8px}nav{display:flex;gap:22px;margin-left:auto}nav a{text-decoration:none;font-weight:500}
.acts{display:flex;gap:8px}.ghost{background:0;color:inherit;border:1px solid rgba(253,252,241,.5);padding:8px 16px;border-radius:99px}
.solid{background:var(--gold);color:var(--g);padding:9px 18px;border-radius:99px;font-weight:600;text-decoration:none;display:inline-block}.solid b{background:var(--g);color:var(--c);border-radius:99px;padding:0 7px;margin-left:4px;font-size:13px}.big{padding:14px 28px;font-size:18px}
.hero{position:relative;height:100svh;min-height:560px;display:flex;align-items:flex-end;color:var(--c);overflow:hidden}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(36,62,17,.55),rgba(36,62,17,.25) 40%,rgba(36,62,17,.9))}
.heroTxt{position:relative;padding:0 6vw 9vh;max-width:900px}.heroTxt h1{font-size:clamp(40px,8vw,96px);margin-bottom:18px}.heroTxt p{font-size:clamp(17px,2.2vw,22px);max-width:560px;margin-bottom:28px;opacity:.92}
section{padding:clamp(56px,9vw,120px) 6vw}.tint{background:var(--c2)}.head{max-width:680px;margin-bottom:36px}.head h2,.split h2{font-size:clamp(32px,5vw,58px);margin-bottom:10px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:6vw;background:var(--g);color:var(--c)}.split p{font-size:20px;margin-bottom:24px;font-family:'Crimson Pro',serif}.steps{list-style:none;padding:0;display:grid;gap:14px}.steps li{border-left:3px solid var(--gold);padding-left:16px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px}.grid.small{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}
.card{background:#fff;border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 0 rgba(36,62,17,.12)}.card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--c2)}
.small .card img{aspect-ratio:1}.card .in{padding:18px;display:flex;flex-direction:column;gap:10px;flex:1}.card h3{font-size:26px}.card p{font-size:15px;color:var(--o)}.card .grow{flex:1}
.sizes{display:flex;flex-wrap:wrap;gap:8px}.sizes button{background:var(--c2);border:2px solid transparent;padding:8px 12px;border-radius:10px;text-align:left;line-height:1.25}.sizes button[aria-pressed=true]{border-color:var(--o);background:#fff}.sizes small{display:block;color:var(--t);font-weight:600}
.price{font-family:'Crimson Pro',serif;font-size:30px}.price s{font-size:18px;opacity:.5;margin-left:6px}.add{background:var(--g);color:var(--c);padding:12px;border-radius:10px;font-weight:600}.add:hover{background:var(--o)}
.farmer .in{text-align:left}.gallery{display:flex;gap:10px;overflow-x:auto;padding:0;scroll-snap-type:x mandatory}.gallery img{height:46vh;min-height:260px;scroll-snap-align:start;object-fit:cover}
footer{background:var(--g);color:var(--c);display:flex;gap:24px;align-items:center;padding:48px 6vw}footer img{height:80px;border-radius:12px}footer a{color:var(--gold)}
#drawer{position:fixed;inset:0;z-index:40;background:rgba(0,0,0,.5);display:flex;justify-content:flex-end}#drawer[hidden]{display:none}
.panel{background:var(--c);width:min(440px,100%);height:100%;overflow:auto;padding:24px;position:relative;animation:in .25s ease-out}@keyframes in{from{transform:translateX(30px);opacity:0}}
.x{position:absolute;right:14px;top:8px;font-size:32px;background:0}.panel h2{font-size:34px;margin-bottom:14px}.panel input,.panel textarea{width:100%;padding:12px;border:1px solid var(--b);border-radius:10px;font:inherit;margin:6px 0;background:#fff}
.row{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--c2)}.panel .solid,.panel .add{width:100%;margin-top:10px;text-align:center}.muted{color:var(--b);font-size:14px}
#toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(80px);background:var(--g);color:var(--c);padding:12px 20px;border-radius:99px;z-index:60;transition:.3s}#toast.on{transform:translateX(-50%)}
@media(max-width:760px){nav{display:none}.acts{margin-left:auto}.split{grid-template-columns:1fr}footer{flex-direction:column;text-align:center}.brand img{height:36px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
.w{display:inline-block;opacity:0;transform:translateY(.55em);animation:wi .8s cubic-bezier(.2,.7,.2,1) forwards;margin-right:.22em}@keyframes wi{to{opacity:1;transform:none}}
.hero .ghost.big{padding:13px 26px;font-size:18px;text-decoration:none;display:inline-block}
.farmrail{background:var(--c)}.track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 0 20px;margin:0 -6vw;padding-inline:6vw;scrollbar-width:thin}
.fc{flex:none;width:min(260px,70vw);aspect-ratio:3/4;position:relative;border-radius:var(--r);overflow:hidden;scroll-snap-align:start;padding:0;background:var(--o);color:var(--c);text-align:left;transition:transform .3s}.fc:hover{transform:translateY(-6px)}
.fc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.fc span{position:absolute;inset:auto 0 0;padding:44px 16px 14px;background:linear-gradient(transparent,rgba(36,62,17,.92));font-family:'Crimson Pro',serif;font-size:24px;line-height:1.1}.fc small{display:block;font:500 13px Jost;opacity:.85;margin-top:4px}
.more{display:inline-block;margin-top:8px;font-weight:600}.fCount{font-weight:600}
.chain{height:300vh;padding:0;background:var(--g);color:var(--c);--p:0}.stick{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;justify-content:center;gap:34px;padding:70px 6vw 30px;overflow:hidden}
.caps{display:grid;max-width:820px}.caps h2{grid-area:1/1;font-size:clamp(28px,5vw,56px)}.cap1{opacity:calc(1 - var(--p)*3)}.cap2{opacity:calc(var(--p)*3 - 1.4)}
.flow{display:flex;align-items:center;gap:.5em;font-size:clamp(10px,2.7vw,17px);white-space:nowrap}.flow>i,.mid i{font-style:normal;opacity:.6}.mid{display:flex;align-items:center;gap:.5em;overflow:hidden;max-width:calc((1 - var(--p))*40em);opacity:calc(1.4 - var(--p)*1.8)}
.node{border:1.5px solid rgba(253,252,241,.5);border-radius:99px;padding:.5em .9em}.node.pp{background:var(--gold);color:var(--g);border-color:var(--gold);font-weight:600;max-width:calc(var(--p)*14em);padding-inline:calc(var(--p)*.9em);opacity:calc(var(--p)*2 - .5);overflow:hidden}
.share{max-width:560px}.bar{height:14px;border-radius:99px;background:rgba(253,252,241,.18);overflow:hidden;margin-bottom:10px}.bar i{display:block;height:100%;background:var(--gold);width:calc((var(--old) + (var(--new) - var(--old))*var(--p))*1%)}.share b{font:600 40px 'Crimson Pro',serif;color:var(--gold)}
.fp{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;margin-bottom:12px}.thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}.thumbs img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}
.gallery video{height:46vh;min-height:260px;scroll-snap-align:start}
#cookie{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:50;background:var(--g);color:var(--c);padding:14px 16px;border-radius:14px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;max-width:720px;margin-inline:auto}#cookie p{flex:1;min-width:220px;font-size:14px}#cookie a{color:var(--gold)}
@media(prefers-reduced-motion:reduce){.w{opacity:1!important;transform:none!important}}

.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand em{font:italic 400 19px 'Crimson Pro',serif;opacity:.9;white-space:nowrap}
.heroTxt h1{font-size:clamp(54px,12vw,150px);line-height:.95;letter-spacing:-.02em}.heroTxt h1 .w{display:block;margin:0}.heroTxt p{font-family:'Crimson Pro',serif;font-size:clamp(20px,2.8vw,30px);max-width:640px;line-height:1.25}
@media(max-width:900px){.brand em{display:none}}
