:root { --cream:#f5eedf; --ink:#191810; --honey:#d89620; --sage:#52634a; --paper:#fffaf0; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--cream); color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
button, input { font:inherit; }
.site-header { height:92px; padding:0 4.5vw; display:flex; align-items:center; gap:34px; border-bottom:1px solid rgba(25,24,16,.18); background:var(--cream); position:sticky; top:0; z-index:30; }
.brand { display:flex; align-items:center; gap:12px; margin-right:auto; }
.brand-mark { width:46px; height:46px; border:1px solid; border-radius:50%; display:grid; place-items:center; font-family:Georgia,serif; font-size:14px; }
.brand strong { display:block; font-family:Georgia,serif; font-size:19px; font-weight:500; }
.brand small { display:block; font-size:9px; text-transform:uppercase; letter-spacing:.16em; margin-top:3px; }
nav { display:flex; gap:29px; font-size:13px; }
nav a, footer a { transition:opacity .2s; } nav a:hover, footer a:hover { opacity:.55; }
.menu-toggle { display:none; border:0; background:none; font-size:24px; }
.hero { min-height:calc(100vh - 92px); display:grid; grid-template-columns:1.05fr .95fr; position:relative; overflow:hidden; }
.hero-copy { padding:10vh 5vw 7vh 8vw; display:flex; flex-direction:column; justify-content:center; }
.eyebrow { font-size:10px; text-transform:uppercase; letter-spacing:.24em; font-weight:700; margin:0 0 24px; }
h1,h2 { font-family:Georgia, 'Times New Roman', serif; font-weight:400; margin:0; line-height:.95; letter-spacing:-.04em; }
h1 { font-size:clamp(62px,7.2vw,118px); }
h1 em, h2 em { font-weight:400; color:var(--honey); }
.intro { max-width:530px; font-family:Georgia,serif; font-size:18px; line-height:1.6; margin:34px 0; }
.hero-actions { display:flex; align-items:center; gap:30px; }
.button, .contact button { display:inline-block; background:var(--ink); color:var(--paper); padding:17px 25px; font-size:11px; text-transform:uppercase; letter-spacing:.14em; border:1px solid var(--ink); transition:.2s; }
.button:hover { background:var(--honey); border-color:var(--honey); }
.text-link { font-size:12px; text-transform:uppercase; letter-spacing:.11em; border-bottom:1px solid; padding-bottom:5px; }
.text-link span { margin-left:10px; }
.trust-row { display:flex; gap:25px; margin-top:60px; font-size:9px; text-transform:uppercase; letter-spacing:.14em; }
.trust-row span:before { content:'◆'; color:var(--honey); margin-right:8px; font-size:7px; }
.hero-image-wrap { position:relative; margin:28px 28px 28px 0; overflow:hidden; min-height:620px; }
.hero-image-wrap>img { width:100%; height:100%; object-fit:cover; filter:saturate(.85) contrast(.97); }
.roundel { position:absolute; top:32px; right:32px; width:120px; height:120px; border-radius:50%; background:var(--cream); border:1px solid var(--ink); display:flex; flex-direction:column; align-items:center; justify-content:center; transform:rotate(7deg); }
.roundel:after { content:'✦'; font-size:22px; margin-top:4px; }.roundel span { font-size:9px; letter-spacing:.24em; }.roundel strong { font-family:Georgia,serif; font-size:24px; }
.image-note { position:absolute; bottom:20px; left:20px; margin:0; padding:12px 16px; background:var(--cream); font:italic 16px/1.35 Georgia,serif; }
.bee { position:absolute; z-index:3; font-size:23px; animation:fly 9s ease-in-out infinite; filter:grayscale(1) contrast(1.2); }
.bee-one { left:48%; top:19%; }.bee-two { left:42%; top:62%; animation-delay:-4s; transform:scale(.75); }.bee-three { left:56%; top:78%; animation-delay:-7s; transform:scale(.55); }
@keyframes fly { 0%,100%{ translate:-15px 4px; rotate:-8deg } 35%{ translate:30px -22px; rotate:12deg } 70%{ translate:10px 18px; rotate:-4deg } }
.marquee { background:var(--ink); color:var(--cream); padding:13px 0; overflow:hidden; white-space:nowrap; font:11px/1 Arial,sans-serif; letter-spacing:.18em; }.marquee div { animation:scroll 25s linear infinite; width:max-content; }@keyframes scroll { to { transform:translateX(-50%); } }
.section { padding:120px 8vw; }
.story { display:grid; grid-template-columns:1fr 1fr; gap:10vw; }.story h2,.shop h2,.contact h2 { font-size:clamp(45px,5vw,78px); }.story-copy { padding-top:40px; max-width:560px; }.story-copy p { font:18px/1.7 Georgia,serif; color:#48453b; }.story-copy .text-link { display:inline-block; margin-top:20px; }.story-gallery { grid-column:1/-1; display:grid; grid-template-columns:1fr 1.45fr; gap:18px; margin-top:20px; }.story-gallery figure { margin:0; position:relative; overflow:hidden; height:560px; }.story-gallery img { width:100%; height:100%; object-fit:cover; display:block; }.story-gallery figcaption { position:absolute; bottom:15px; left:15px; background:var(--cream); padding:10px 13px; font:italic 14px Georgia,serif; }
.shop { background:var(--paper); }.section-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:50px; }.section-heading>p { font:15px/1.6 Georgia,serif; color:#595448; }
.stock-note { display:flex; align-items:center; gap:24px; margin:-18px 0 18px; padding:16px 20px; background:#f0e3c8; border-left:4px solid var(--honey); }.stock-note span { text-transform:uppercase; letter-spacing:.14em; font-size:9px; font-weight:700; }.stock-note p { margin:0; font:14px Georgia,serif; }.order-note { max-width:760px; margin:0 0 35px; color:#595448; font:15px/1.55 Georgia,serif; }.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:30px 18px; }.product-card { display:flex; flex-direction:column; }.product-image { height:340px; position:relative; overflow:hidden; background:#e6dcc9; }.product-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }.product-card:hover img { transform:scale(1.035); }.product-image span { position:absolute; left:12px; top:12px; background:var(--paper); padding:8px 10px; font-size:8px; text-transform:uppercase; letter-spacing:.12em; }.product-info { display:flex; justify-content:space-between; gap:12px; padding:19px 2px 10px; }.product-info h3 { font:18px Georgia,serif; margin:0 0 5px; }.product-info p { font-size:10px; text-transform:uppercase; letter-spacing:.08em; color:#716c62; margin:0; }.product-info>strong { white-space:nowrap; font:17px Georgia,serif; }.product-description { margin:0 2px 12px; min-height:48px; color:#625d52; font:14px/1.45 Georgia,serif; }.availability { margin:auto 2px 12px; color:var(--sage); font-size:9px; text-transform:uppercase; letter-spacing:.13em; font-weight:700; }.availability:before { content:'●'; margin-right:7px; color:#698354; }.availability.sold-out { color:#8e4639; }.availability.sold-out:before { color:#8e4639; }.message-actions { display:grid; grid-template-columns:1fr 1fr; gap:7px; }.message-actions a, .sold-out-button { display:grid; place-items:center; min-height:44px; border:1px solid var(--ink); padding:11px 8px; text-align:center; text-transform:uppercase; font-size:8px; line-height:1.35; letter-spacing:.1em; transition:.2s; }.message-actions a:hover { background:var(--ink); color:var(--paper); }.sold-out-button { border-color:#a8a398; color:#89847a; }
.harvest-banner { min-height:620px; position:relative; overflow:hidden; display:grid; place-items:center; text-align:center; color:var(--paper); }.harvest-banner:after { content:''; position:absolute; inset:0; background:rgba(20,16,8,.42); }.harvest-banner img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 48%; }.harvest-banner>div { position:relative; z-index:1; }.harvest-banner h2 { font-size:clamp(54px,7vw,100px); }.harvest-banner .eyebrow { color:var(--paper); }
.values { display:grid; grid-template-columns:1fr 1fr; background:var(--sage); color:var(--paper); }.values-image { min-height:700px; }.values-image img, .values-image video { width:100%; height:100%; object-fit:cover; display:block; }.values-copy { padding:11vw 9vw; }.values-copy h2 { font-size:clamp(48px,5vw,76px); }.values-copy p:not(.eyebrow) { font:17px/1.7 Georgia,serif; color:#e8e5d9; margin:35px 0; }.values-copy ul { list-style:none; padding:0; margin:0; border-top:1px solid rgba(255,255,255,.3); }.values-copy li { padding:19px 0; border-bottom:1px solid rgba(255,255,255,.3); font:16px Georgia,serif; }.values-copy li span { display:inline-block; width:45px; font:9px Arial,sans-serif; opacity:.65; }
.contact { text-align:center; }.contact h2 { margin-bottom:42px; }.contact form { display:flex; max-width:550px; margin:auto; border-bottom:1px solid; }.contact input { flex:1; background:none; border:0; padding:15px 2px; outline:none; }.contact button { border:0; cursor:pointer; }.fine-print { font-size:9px; text-transform:uppercase; letter-spacing:.1em; margin-top:16px; }
footer { background:var(--ink); color:var(--cream); padding:70px 8vw 35px; display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:50px; position:relative; }.footer-brand { align-self:start; }.footer-brand .brand-mark { border-color:var(--honey); color:var(--honey); } footer h4 { color:var(--honey); text-transform:uppercase; letter-spacing:.18em; font-size:9px; margin:0 0 17px; } footer p, footer a { display:block; font:14px/1.8 Georgia,serif; margin:0; }.copyright { grid-column:1/-1; border-top:1px solid rgba(255,255,255,.2); padding-top:25px; margin-top:30px; font:9px Arial,sans-serif; text-transform:uppercase; letter-spacing:.12em; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:900px) { .site-header { height:72px; padding:0 20px; }.brand strong{font-size:16px}.brand small{display:none}.brand-mark{width:38px;height:38px}.menu-toggle{display:block;order:2}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--cream);padding:25px;flex-direction:column;border-bottom:1px solid}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:80px 25px 50px}.hero-image-wrap{margin:0 20px 20px;min-height:500px}.bee{display:none}.trust-row{flex-wrap:wrap;margin-top:40px}.story{grid-template-columns:1fr;gap:25px}.story-gallery{grid-column:auto;grid-template-columns:1fr 1fr;gap:12px}.story-gallery figure{height:410px}.section{padding:85px 25px}.story-copy{padding-top:0}.section-heading{display:block}.section-heading>p{margin-top:25px}.product-grid{grid-template-columns:1fr 1fr}.values{grid-template-columns:1fr}.values-image{min-height:500px}.values-copy{padding:85px 30px}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.product-image{height:300px}.harvest-banner{min-height:520px} }
@media (max-width:560px) { h1{font-size:58px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-image-wrap{min-height:430px}.roundel{width:92px;height:92px;right:18px;top:18px}.roundel strong{font-size:18px}.story-gallery{grid-template-columns:1fr}.story-gallery figure{height:430px}.stock-note{align-items:flex-start;flex-direction:column;gap:8px}.product-grid{grid-template-columns:1fr}.product-image{height:410px}.contact form{display:block;border:0}.contact input{width:100%;border-bottom:1px solid;margin-bottom:10px}.contact button{width:100%}footer{grid-template-columns:1fr}.footer-brand{grid-column:auto}.copyright{grid-column:auto} }
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; animation:none!important; transition:none!important; } }
