:root{--wine:#6e3736;--ink:#302d27;--cream:#f8f4ec;--line:#ded7ca;--sage:#e8eadf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.65 system-ui,sans-serif}a{color:inherit;text-underline-offset:.25em}a:focus-visible{outline:3px solid var(--wine);outline-offset:5px}img{display:block;max-width:100%}.banner{text-align:center;background:var(--wine);color:white;padding:7px 20px;font-size:.78rem}header{max-width:1440px;margin:auto;padding:12px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand img{width:180px;height:95px;object-fit:cover}nav{display:flex;gap:32px;align-items:center}nav a{text-decoration:none;font-size:.9rem}.shop-link{border:1px solid var(--wine);padding:10px 18px;color:var(--wine)}main{max-width:1440px;margin:auto}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:620px;align-items:center;padding:60px 5%;gap:60px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;font-weight:650;color:var(--wine);margin-bottom:20px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12}h1{font-size:clamp(2.8rem,5vw,4.8rem);letter-spacing:-.04em;margin:20px 0 26px;overflow-wrap:anywhere}h2{font-size:clamp(2rem,3vw,3rem);margin:12px 0 32px}h3{font-size:1.7rem;margin:0 0 15px}.hero p:not(.eyebrow){max-width:520px;color:#625c52}.button{display:inline-block;background:var(--wine);color:white;padding:14px 24px;text-decoration:none;margin-top:20px}.button:hover{background:#522827}figure{margin:0;position:relative}figure>img{width:100%;height:490px;object-fit:cover;border-radius:48% 48% 3px 3px}figcaption{position:absolute;bottom:20px;left:20px;background:var(--cream);padding:10px 18px;font:italic 1.15rem Georgia,serif}.section{padding:70px 5%;border-top:1px solid var(--line)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:40px}.card{display:block;text-decoration:none;background:#fffaf3;border:1px solid var(--line)}.card>img{width:100%;height:230px;object-fit:cover}.card>div{padding:24px}.card p{font-size:.92rem;color:#625c52}.card h2{font-size:1.65rem;margin:0 0 18px}.card:hover{border-color:var(--wine)}.visit{margin:45px 5% 80px;padding:45px;background:var(--sage)}footer{border-top:1px solid var(--line);padding:35px 5%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;font-size:.85rem}.notice{background:var(--sage);padding:25px 30px;margin:30px 0}.status{font-size:.8rem;color:var(--wine)}.narrow{max-width:950px;margin:auto;min-height:60vh}address{font-style:normal;overflow-wrap:anywhere}.skip{position:absolute;left:15px;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:15px}@media(max-width:1000px){.hero{gap:30px}figure>img{height:410px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){header{flex-direction:column;gap:6px;padding-bottom:22px}.brand img{height:80px;width:155px}nav{gap:18px}nav a{font-size:.8rem}.shop-link{padding:8px}.hero{grid-template-columns:1fr;padding-top:30px;gap:35px}figure>img{height:350px}.section{padding-top:45px}.grid{grid-template-columns:1fr}.card>img{height:280px}.visit{padding:28px}h1{font-size:3rem}.banner{font-size:.7rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Legal pages: readable on mobile and printable without navigation. */
.legal{max-width:980px;margin:auto;overflow-wrap:anywhere}.legal h1{font-size:clamp(2.4rem,5vw,4rem)}.legal h2{font-size:1.7rem;margin:2.5rem 0 1rem;scroll-margin-top:1rem}.legal h3{font-size:1.3rem;margin:1.8rem 0 .8rem}.legal-date{font-size:.9rem;color:#625c52}.legal-open{background:#eee5d7;border-left:4px solid var(--wine);padding:1.2rem 1.4rem;margin:1.5rem 0}.legal-toc{display:flex;flex-wrap:wrap;gap:.6rem 1.3rem;padding:1.2rem 0;border-block:1px solid var(--line);margin:2rem 0}.legal-toc a{text-decoration:underline}.legal-facts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.8fr);gap:.5rem 1.5rem}.legal-facts dt{font-weight:600}.legal-facts dd{margin:0}.withdrawal-form{border:1px solid var(--line);padding:1.5rem;background:#fffaf3}.footer-legal{flex-wrap:wrap;gap:1rem 1.5rem}.footer-legal a{text-decoration:underline}@media(max-width:600px){.legal-facts{grid-template-columns:1fr}.legal-facts dd{margin-bottom:.8rem}.legal-toc{align-items:flex-start;flex-direction:column}}@media print{body{background:white;color:black;font-size:11pt}.banner,body>header,body>footer,.skip,.legal-toc{display:none}main,.legal{max-width:none;margin:0;padding:0;border:0}.legal h1{font-size:26pt}.legal h2{font-size:16pt;break-after:avoid}.legal h3{break-after:avoid}.legal-open{background:none;border:1px solid #555}.withdrawal-form{background:none}a{color:black}.legal p{orphans:3;widows:3}}

/* Farm doodles: local vector artwork, warm colors and quiet reading surfaces. */
:root{--cream:#faf2e4;--line:#ddccb7;--sage:#e3e9d7;--pumpkin:#b65d2e;--forest:#354b39}
body{background-color:#f5e8d4;background-image:url('/images/hof-pattern.svg');background-size:440px 380px}
body>header{background:#fffaf1;border-bottom:3px solid #dbc3a3}
.banner{background:var(--forest)}
main{background:rgba(255,250,241,.48)}
.hero{background:linear-gradient(100deg,rgba(255,250,241,.97) 4%,rgba(255,250,241,.9) 36%,rgba(255,250,241,.2) 76%)}
.hero h1{color:var(--wine)}
.hero figure{padding:10px;background:#fffaf1;border:1px solid #dac3a8;border-radius:48% 48% 14px 14px;box-shadow:0 16px 40px #6e373619;transform:rotate(1.5deg)}
.hero figure>img{border-radius:48% 48% 8px 8px}
.hero figcaption{background:var(--forest);color:#fffaf1;box-shadow:0 4px 16px #302d2720;border-radius:3px;bottom:25px;left:0}
.button,.shop-link{border-radius:5px;box-shadow:0 3px 0 #50292720}
.shop-link{background:var(--wine);color:#fffaf1}
.button:hover,.shop-link:hover{background:#522827;color:white}
.section{background:#fffaf2}
#sortiment{background:#edf0e3;border-top:1px solid #cbd4bc;border-bottom:1px solid #cbd4bc}
#sortiment>.eyebrow{color:var(--forest)}
.card{border-radius:12px;overflow:hidden;background:#fffdf7;box-shadow:0 5px 18px #45341c09;border-color:#ddcfbb}
.card>div{border-top:4px solid var(--wine)}
#sortiment .card:nth-child(1)>div{border-top-color:#748767}
#sortiment .card:nth-child(2)>div{border-top-color:#c27738}
#sortiment .card:nth-child(3)>div{border-top-color:var(--wine)}
#sortiment .card:nth-child(4)>div{border-top-color:#a88a4d}
a.card:hover{box-shadow:0 8px 24px #45341c1a}
.visit{border:1px solid #d1b795;border-radius:16px;background-color:#f1dfc4;background-image:linear-gradient(90deg,#f1dfc4 0%,#f1dfc4f5 45%,#f1dfc430 100%),url('/images/hof-pattern.svg');background-size:auto,440px 380px;box-shadow:0 8px 28px #45341c0b}
.visit h2{color:var(--wine);max-width:620px}
.visit a{font-weight:600;color:#583332}
.notice{border-left:4px solid #718360;border-radius:0 8px 8px 0}
body>footer{background:var(--forest);color:#fffaf1;border-top:4px solid #b49a70}
body>footer a:focus-visible{outline-color:#fffaf1}
.legal,.narrow{background:#fffaf2}
@media(max-width:650px){body{background-size:330px 285px}.hero{background:linear-gradient(180deg,#fffaf1f5,#fffaf1de 48%,#fffaf155)}.hero figure{transform:none}.visit{background-image:linear-gradient(90deg,#f1dfc4f5,#f1dfc4df),url('/images/hof-pattern.svg')}}
@media print{body,main,.hero,.section,.legal,.narrow,.visit{background:white!important;background-image:none!important;box-shadow:none}.hero figure{transform:none;box-shadow:none}}

/* Shop pricing and the protected administration screens. */
.product-prices{padding:0;margin:1.4rem 0;list-style:none}.product-prices li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.2rem .7rem;border-top:1px solid var(--line);padding:.7rem 0}.product-prices small{width:100%;color:#625c52;font-size:.8rem}.cookie-grid img{object-fit:contain;background:white}.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin input:not([type=hidden]){font:inherit;padding:.55rem .65rem;border:1px solid #98836c;border-radius:5px;max-width:100%;width:10rem;background:white;color:var(--ink)}.admin input:focus-visible{outline:3px solid var(--wine);outline-offset:2px}.admin .button{border:0;cursor:pointer;font:inherit}.admin .login-form{max-width:440px}.login-form label{display:block;font-weight:600}.admin .login-form input{width:100%}.secondary-button{border:1px solid var(--wine);background:#fffaf1;color:var(--wine);padding:.6rem 1rem;border-radius:5px;font:inherit;cursor:pointer}.table-scroll{overflow-x:auto;margin:1.5rem 0}.price-table{width:100%;border-collapse:collapse;text-align:left;background:#fffdf7}.price-table caption{text-align:left;font-weight:600;padding:.6rem 0}.price-table th,.price-table td{padding:.85rem;border-bottom:1px solid var(--line);vertical-align:middle}.price-table thead{background:var(--sage)}.price-table tbody th{font-weight:500}.small-note{font-size:.88rem;color:#625c52}.validation-summary-errors{border-left:4px solid #a12727;background:#fff0ed;padding:1rem;color:#821c1c}.validation-summary-valid{display:none}.admin h2{margin-top:3rem}.admin input.input-validation-error{border-color:#a12727}
.order-filters{display:flex;flex-wrap:wrap;align-items:end;gap:1rem;margin:2rem 0}.order-filters label,.order-update label{display:flex;flex-direction:column;gap:.4rem}.admin select{font:inherit;padding:.55rem;border:1px solid #98836c;border-radius:5px;background:white;max-width:100%}.admin .order-filters input{width:22rem}.order-addresses{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem}.order-addresses address{font-style:normal}.order-update{max-width:500px;display:grid;gap:1rem}.order-update input{width:100%!important}
.checkout-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem;margin:1.5rem 0}.checkout-fields label{display:flex;flex-direction:column;gap:.4rem}.checkout-fields input,.checkout-fields select,.cart-quantity input{padding:.7rem;border:1px solid #98836c;border-radius:5px;font:inherit;background:#fff;max-width:100%;width:100%;box-sizing:border-box}.check-label{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0}.check-label input{width:auto!important}.checkout .button,.product-prices button{cursor:pointer;font:inherit}.checkout button[disabled]{opacity:.5;cursor:not-allowed}.checkout-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.checkout-total{background:var(--sage);padding:1rem 1.5rem;margin:1rem 0}.checkout-total strong{font-size:1.5rem}.cart-quantity{display:flex;gap:.5rem;align-items:center}.cart-quantity input{width:5rem}.checkout address{font-style:normal}.admin .checkout-fields input{width:100%}.product-prices form{width:100%;margin:.4rem 0}

/* Each row shares its bottom purchase area, independent of description length. */
.cookie-grid .cookie-card { display:flex; flex-direction:column; }
.cookie-grid .cookie-body { display:flex; flex-direction:column; flex:1; min-width:0; }
.cookie-buy { margin-top:auto; padding-top:1.2rem; display:flex; flex-direction:column; gap:.65rem; }
.cookie-buy select { width:100%; min-width:0; padding:.65rem .35rem; font:inherit; font-size:.85rem; border:1px solid #cfbda8; border-radius:5px; background:#fffdf8; }
.cookie-buy button { width:100%; }
.cookie-buy button:disabled { opacity:.55; cursor:not-allowed; }
.cart-status { position:sticky; top:0; z-index:5; box-shadow:0 3px 12px #0002; }
.cart-status[hidden] { display:none; }
.product-edit-links { display:flex; flex-wrap:wrap; gap:.7rem 1.5rem; margin-bottom:2rem; }
.product-editor { display:flex; flex-direction:column; align-items:flex-start; gap:.8rem; max-width:760px; }
.product-editor img { max-width:100%; height:240px; object-fit:contain; }
.product-editor textarea { width:100%; box-sizing:border-box; font:inherit; padding:1rem; }

/* One-page navigation with room for the sticky header at every anchor. */
:root{--header-height:120px}
html{scroll-padding-top:calc(var(--header-height) + 20px)}
.site-header{position:sticky;top:0;z-index:20;box-shadow:0 4px 20px #45341c0c}
.site-header nav{flex-wrap:wrap;justify-content:flex-end;gap:12px 20px}
.site-header nav a{white-space:nowrap;padding-block:8px}
.site-header nav a[aria-current="location"]{color:var(--wine);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
.farm-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(28px,5vw,80px);padding:80px 5%;background:#fffaf2;border-bottom:1px solid var(--line)}
.farm-section:nth-of-type(even){background:#edf0e3}
.farm-section:nth-of-type(even) figure{order:2}
.farm-section figure img{width:100%;height:420px;object-fit:cover;border-radius:20px}
.farm-section h2{color:var(--wine)}
.farm-section p:not(.eyebrow){max-width:550px}
.cart-status{top:calc(var(--header-height) + 8px)}
.skip{z-index:30}
@media(max-width:1000px){.site-header{gap:16px;padding:10px 4%}.site-header .brand img{width:125px;height:70px}.site-header nav{gap:6px 15px}.farm-section{gap:30px}}
@media(max-width:650px){:root{--header-height:190px}.site-header{flex-direction:column;gap:4px}.site-header .brand img{width:105px;height:54px}.site-header nav{justify-content:center;gap:2px 14px}.site-header nav a{font-size:.78rem;padding-block:6px}.site-header .shop-link{padding-inline:10px}.farm-section{grid-template-columns:1fr;padding:45px 5%}.farm-section:nth-of-type(even) figure{order:0}.farm-section figure img{height:280px}}
@media print{.site-header{display:none}.farm-section{break-inside:avoid}}

/* Photo collage and keyboard-accessible cookie gallery. */
.cookie-collage{display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#fffaf2;overflow:hidden;aspect-ratio:4/3}
.cookie-collage img{width:100%;height:100%;min-height:0;object-fit:contain}
.card>.cookie-collage{height:230px;aspect-ratio:auto}
.farm-section figure:has(.cookie-collage){border-radius:20px;overflow:hidden}
.farm-section figure .cookie-collage img{height:100%;border-radius:0}
.cookie-gallery{grid-column:1/-1;width:100%;min-width:0;border-top:1px solid var(--line);padding-top:40px}
.cookie-gallery h3{font-size:clamp(1.8rem,3vw,2.6rem);color:var(--wine)}
.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:28px}
.gallery-item{display:block;text-decoration:none;background:#fffdf7;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.gallery-item>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.gallery-item>span{display:flex;justify-content:space-between;gap:8px;padding:12px 14px;font-size:.9rem}
.gallery-item:hover{border-color:var(--wine);box-shadow:0 5px 18px #45341c18}
.gallery-dialog{padding:16px;border:1px solid var(--line);border-radius:14px;width:min(1050px,94vw);max-height:94dvh;background:#fffaf2;color:var(--ink)}
.gallery-dialog::backdrop{background:#161a16d9}
.gallery-dialog .gallery-close{display:flex;width:max-content;margin:0 0 12px auto}
.gallery-large{width:100%;max-height:calc(94dvh - 155px);object-fit:contain}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.gallery-controls p{margin:0;text-align:center;font-size:.9rem}
.gallery-controls button{min-width:44px;min-height:44px}
.gallery-open{overflow:hidden}
.button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;font:inherit;line-height:1.4;text-align:center;text-decoration:none;border:1px solid transparent;border-radius:5px;cursor:pointer}
.secondary-button{background:#e3e9d7;color:#354b39;border-color:#c4cfb8;box-shadow:0 2px 0 #354b3914}
.secondary-button:hover:not(:disabled){background:#d2ddc3;border-color:#9eaf8d;color:#263d2b}
.secondary-button:active:not(:disabled){background:#c4d2b2;box-shadow:none}
.button:focus-visible,.secondary-button:focus-visible{outline:3px solid var(--wine);outline-offset:3px}
.secondary-button:disabled{opacity:.55;cursor:not-allowed}
.checkout-actions{margin-top:24px;align-items:center}
.checkout-actions>.button,.checkout-actions>.secondary-button{margin:0}
.cart-quantity{align-items:stretch}
.cart-quantity .secondary-button{padding-inline:16px}
.checkout-fields.address-fields{grid-template-columns:minmax(0,1fr);width:100%;max-width:720px;gap:20px}
.checkout-fields.admin-checkout-settings{grid-template-columns:minmax(0,1fr);width:100%;max-width:800px;gap:20px}
.grouped-products .product-group-heading th{background:#f2ecdf;color:var(--wine);font-weight:700;padding:.8rem 1rem;border-top:2px solid var(--line)}
.grouped-products .product-variant-group td:first-child{padding-left:2rem}
.required-mark{color:#b12828;font-weight:700}
.bot-check{max-width:720px;margin:28px 0;padding:20px;background:var(--sage);border-radius:8px}
.bot-check>input:not([type=hidden]){display:block;width:100%;max-width:240px;font:inherit;padding:12px;border:1px solid #98836c;border-radius:5px;margin-top:8px}
.bot-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1000px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.card>.cookie-collage{height:auto;aspect-ratio:4/3}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-item>span{padding:10px;font-size:.8rem}.gallery-dialog{padding:10px}.gallery-controls p{font-size:.8rem}}
.admin .checkout-fields textarea{width:100%;box-sizing:border-box;font:inherit;padding:.7rem;border:1px solid #98836c;border-radius:5px;background:#fff;resize:vertical}.admin .checkout-fields .check-label{flex-direction:row;align-items:flex-start;flex-wrap:nowrap}.admin .checkout-fields .check-label input{flex:0 0 auto;margin-top:.3rem}
.product-overview td { vertical-align: middle; }
.product-overview td div + div { margin-top: .5rem; }
.product-editor { max-width: 800px; }
.product-pack { padding: 1rem 0; border-bottom: 1px solid #dbc8ae; }
.product-delete { margin-top: 3rem; max-width: 800px; border-top: 1px solid #dbc8ae; padding-top: 1rem; }
.admin .product-editor input:not([type=hidden]):not([type=checkbox]), .product-editor fieldset { width:100%; box-sizing:border-box; }
.product-pack > label:not(.check-label) { display:block; }
.product-pack > label:not(.check-label) input { display:block; margin-top:.5rem; }

.checkout-totals{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:.45rem 2rem;max-width:420px;margin:.5rem 0 .5rem auto;text-align:right;align-items:baseline}
.checkout-totals dt,.checkout-totals dd{margin:0}
.checkout-totals dd{font-variant-numeric:tabular-nums;white-space:nowrap}
.checkout-totals .checkout-grand-total{font-weight:700;font-size:1.5rem;border-top:1px solid #bbc7a9;padding-top:.6rem;margin-top:.35rem}
.checkout-review-actions{align-items:stretch}
@media(max-width:480px){.checkout-totals{gap:.45rem 1rem}.checkout-review-actions{flex-wrap:nowrap;gap:.6rem}.checkout-review-actions>button{flex:1;min-width:0;padding:.7rem .6rem;font-size:.9rem}}

.footer-legal .withdrawal-link{font-weight:400;text-decoration:underline;text-underline-offset:3px}
.withdrawal{max-width:1000px;margin:auto}
.withdrawal dd,.admin dd{overflow-wrap:anywhere}
.withdrawal-text{white-space:pre-wrap}
.withdrawal dt{font-weight:600;margin-top:1rem}
.withdrawal-items{display:block;max-width:800px}
.withdrawal-items textarea{display:block;width:100%;box-sizing:border-box;font:inherit;padding:.8rem;margin:.5rem 0 1.5rem}
.withdrawal .checkout-actions form{margin:0}
.product-ingredients { margin-bottom: 1rem; overflow-wrap: anywhere; } .product-ingredients summary { cursor: pointer; font-weight: 600; } .product-ingredients p { white-space: pre-line; } .ingredients-missing { font-size: .9rem; }
.publication-form select { width:100%; box-sizing:border-box; font:inherit; padding:.7rem; } .publication-form .check-label { flex-wrap:nowrap; align-items:flex-start; margin:.6rem 0; } .publication-form .check-label input { flex:0 0 auto; margin-top:.4rem; }

/* Hofladen announcement directly below the introduction. */
.farm-shop{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);margin:0 5% 64px;background:var(--sage);border:1px solid #c5d0b9;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px #354b3912;scroll-margin-top:140px}
.farm-shop-photo img{width:100%;height:100%;max-height:600px;object-fit:cover;object-position:center 40%}
.farm-shop-copy{padding:clamp(24px,4vw,52px);align-self:center;min-width:0}
.farm-shop-copy .eyebrow{color:var(--forest);margin:0 0 14px}.farm-shop-copy h2{color:var(--wine);margin:0 0 22px}.farm-shop-lead{font-size:1.22rem;font-weight:600;line-height:1.5}
.farm-shop-hours{background:#fffaf2;border-left:4px solid var(--wine);padding:20px 24px;margin:24px 0;border-radius:0 8px 8px 0}.farm-shop-hours h3{font:600 1rem/1.4 system-ui,sans-serif;margin:0 0 8px}.farm-shop-hours p{margin:0}
.farm-shop-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.farm-shop-actions .button,.farm-shop-actions .secondary-button{margin:0;text-align:center}
@media(max-width:760px){.farm-shop{grid-template-columns:1fr;margin-bottom:40px}.farm-shop-photo img{height:320px;object-position:center 28%}.farm-shop-copy{padding:26px}.farm-shop-actions{align-items:stretch;flex-direction:column}.farm-shop-hours{padding:18px}}

/* Keep the section photo alongside the text, before the full-width gallery. */
.farm-section > .cookie-gallery{order:3}
.cookie-video{grid-column:1/-1;order:3;width:100%;min-width:0;text-align:center;border-top:1px solid var(--line);padding-top:40px}
.farm-section .cookie-video p{max-width:none}
.cookie-video h3{color:var(--wine);font-size:clamp(1.8rem,3vw,2.6rem);margin-bottom:24px}
.cookie-video video{display:block;width:min(100%,420px);height:auto;aspect-ratio:9/16;max-height:80svh;object-fit:contain;margin-inline:auto;border-radius:20px;background:#302d27;box-shadow:0 8px 28px #45341c14}
@media print{.cookie-video{display:none}}
.production-collage{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px;height:500px;border-radius:20px;overflow:hidden}
.farm-section figure .production-collage img{width:100%;height:100%;min-height:0;min-width:0;object-fit:cover;border-radius:0;object-position:center 35%}
.production-collage img:first-child{grid-row:1 / 3}
@media(max-width:650px){.production-collage{height:360px;gap:6px}}

/* Two landscape views above two portrait harvest photographs. */
.pumpkin-collage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;border-radius:20px;overflow:hidden}
.farm-section figure .pumpkin-collage img{width:100%;height:auto;min-width:0;aspect-ratio:8/5;object-fit:cover;border-radius:0}
.farm-section figure .pumpkin-collage img:nth-child(n+3){aspect-ratio:3/4;object-position:center}
@media(max-width:650px){.pumpkin-collage{gap:6px}}

/* Goose flock above the chicks and the existing farm view. */
.geese-collage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;border-radius:20px;overflow:hidden}
.farm-section figure .geese-collage img{width:100%;height:auto;min-width:0;aspect-ratio:4/3;object-fit:cover;border-radius:0}
.farm-section figure .geese-collage img:first-child{grid-column:1/-1;aspect-ratio:2/1;object-position:center 65%}
@media(max-width:650px){.geese-collage{gap:6px}}
.cart-link{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}
.cart-icon{width:1.65rem;height:1.65rem;flex:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.cart-icon-basket{fill:none}
.cart-icon-items{display:none}
.cart-link.has-items .cart-icon{color:var(--wine)}
.cart-link.has-items .cart-icon-basket{fill:currentColor}
.cart-link.has-items .cart-icon-items{display:inline}
