* {margin:0; padding:0;}p{margin:14px 0;line-height:130%; }ul{margin-left:17px; list-style:circle;}ol{margin-left:17px;}li{margin:8px 0 8px 17px;}.vam{vertical-align:middle;}.fl {float:left;}.fr {float:right;}form{margin:0;}img,a img{border:none;}.bd {border:1px solid red;}b,strong {font-weight:700;}em {font-style:italic}.dn {display:none !important;} button,[type="button"],[type="reset"],[type="submit"],[type="image"],[type="checkbox"],[type="radio"],summary {cursor: pointer;} .imgLeft {margin:0 15px 5px 0; float:left;}.imgRight {margin:0 0 5px 15px; float:right;}.imgFullWidth {width:100%}.cb {clear:both;}.cr {clear:right;}.cl {clear:left;}.c {text-align:center;}.l {text-align:left;}.r {text-align:right;}  #displayNoticeBox {position:fixed; bottom:0px; text-align:center; z-index:1000; width:100%;}#displayUserNotice,#displayUserWarning,#displayUserError,#displayDebugError {background:#74AD53 url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEUAAABFCAYAAAAcjSspAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAAVdEVYdENyZWF0aW9uIFRpbWUAMTIvNy8xNRZGxZ8AAAgRSURBVHic1Zx9jB1VGcafc3e7268V0rKWllJTUhfbKoUgkRKQohAhiJKaQDF+ITaIJILEQE3UmgKFaNUGNDWRP5TQYApia4y2AtJApIAtWMHyURBb2lLMtmhpCm13+fnHey47nb33zsw5M3fhSfaPnTnneZ99dubMe855Z5zaDKBD0gn+Z6qkiZLGJJockrRH0i5J/5a01Tl3sI365NoQZKykuZLOlXS2pDmSapJek7RX0j5JbyW6dEvqkTRBUq+kLknPSXpY0oOSHnbO7a1Qb2XEncAFwN3AfmAX8AfgGuBEoLMA1/HA5cBq4FXgMLAWuMwbXrb20gnHAzcAO4GXgWXArCImZPDXgA8Ai4EXgNeBHwOTy+D3MUojGgt8H3gNeBQ4H+guh71pzFHAGf6qeR1YAUwqgbcUcRf7q+IJ4Ox4xiANpwLrgN3A1X4wD+WKEjIB+B3wP+Cb4UzlAbjU6/kbMCOQIzj4XH91/BmYFsZSDYCjgDuB/wKXBvQPCnol0A98CxhdnKF6+DHuKmAH8JPBwcHcqUdhU/xgug/4dFGhIwHgJD8IrwS6cvbJRz44OOiA24F/AnNjhLYbQB/wuH9KZRqT2xTgZp849cWKHAkA04AngTVZT6ZcpgDfALYCs8oSORIAeoGNwIqMdplE8/wY8skyBY4UgNN8LnNVizYtCd7v5yw/qEBf6QAEzAfel9HuCuAAcEoznladfw/cn3fUHkkAHcBy4Nasyx+brN4GbGmUUjTtDywA/vVeGFh9TrLG/9TyDJS+zxbgpgbnGnYYD2wHvl6K6goBTAY2Ac943bkfqcB5/jbqSx1v2Hgx8BgwrhTlFQGYCrzo0/m+uiFFMlLgj8B9qWPDGh3jJ1QXlaK8IgAz/O0N8Bl/LMSUOdii1SmJY8MafQ/4a1aCM5LwhuzwhtyaOB5iSg2b1K5K8iQbjPJZ66dK0l86vCE7vSEbSKzohZji+80F3gSOr/MkT84HtpWkv3T4MWSbN2QvqSWLUFN8383A4jpP8sQ9wI8itVcCLEV/niFc0qBNjCkLga11nvrBcX4Uf9fNb7BFo80JQ37dpF2MKZP8A2ZO0pSLgO1R6isA0AU8kDBkO03S+BhTfP9NwCJANX9snqSNYdKrwcDAgJP0S0nJyehC59y+ikI+IukT7/yGJWsLKwoWBGAJR+JXGe1jr5Qz/S3UUZ9MvQFMCWKrAMAXU4bsBo7O6BNryhhvyokCPghUdUkWBnA6cDBlysU5+kWZ4jm2A/NrkqZL6g9mKhFYArVatqlexyrn3Oo2SeiXNL0m6ThJ/2lT0KbANsvXSEpufe6XdF0bZeySNLkmqw/Z08bAzXCHpPRq2BLn3M42atglqbcmaZz/GTEA10m6LHX4WUnL2yzlTUk9NUlOVhwTDGyidkNg33Mk/bDBqWucc4djdIWiUxKS3gglAGZLWifpOKDLOXdjgb7TJK2SlF6quNc5d3+opljUJB1U4JjiDVkvG6wlaQmwKGffbkn3SjomdeqQpOtD9JSALkkHajJDCo8pQK+kP2n4H3VLTmN+Jum0Bsdvd869XFRPSZgsaY+AC4Fni/bGCmUGaY6mxmB7L42wJytzbcFZRvL2JLBIwGxsZ77w/g62f9IKw4wBPgq81aT9tRF/UFkZ7QIB3VhafUIASQ/wSl5jgIkMrZ6l8VLIPybBHTv3GY1fU6kf2Ax8IZDssxmmgK1TdGA7js2wIOivGdIRa8rHsLXarvqBFcDKCEH35TDmoRbnngJq2ZFaaog1ZSm2k/HOgQXACxGCpmDVCaGI3mcqwZTHgZuSpkzEKqMLjysJ0qsDDdkQGjMVP2aNthdboz7riP7Y/X5zhKgathdTFPNCY6bix67m78DGvSNOfA2/zB8h7CPYNmRelJbKR5ryBLC8zpM80YMlT1GFfsAtBUw5PSZWKm7oDuGHsOqDD9d50g1uAx6IFDcGqwbIwtqYOA3iFjbFV33eDfwlyZMmno4NuKdGCjy3nVeJj1nYFOyNkMPA+UmeRg1/ge3Ejxl+tpDIO9t1lfh4IaasAh5N8zRqOAmbC6VXwoqK7MXGqMqvEh+vkClYpeQAcEaap1mHbwPPEfkyAvCVdlwlPlZuU7Bxbz0N9qVbmdKJPabuihE6MDDggAervkqkwqZ8B6vFmdCIp1XHmVgdyOcjxfYxtFRQyVXi4+QyBbgEewRf2Iwni+DLwCHg5GC1xvPdKq8SHyPTFCwneQVY1oonT7CfYrPYmHnRqFZCykCWKVjt7CPY2xxNa/rymtKBLQ1sooJXXtsBrPBnNfB3ssvUc5N2eYc3Ul+Zeo8Ae61lHfAPbLE9q30h8i7gN9hyYsNi/3cbsIz1Raz+Jr3r0KxP4SA1bH7UD3wuRGi7gE01tmBV1blv+8KmJDpegS3K3AEcG8ZSDbCixmX+qXljq0G1Sf+o4LOAp7FtgS+FM5UH4OPYrsBu4LxAjmgR3Vjp+n6sinFEXrrE9q7uwcrUVjTKVAtwlSZqOvBbb85a4MxymFvG7MQmdSv9rbweaLQNW5S3DHlHEM4E7vJp/WbgWkr4KEMqxljgq9gWZ/2zIaV9Y6F0UxLEU4HrfW5wAHuf+ef+ni+8TuNvj6U++TrsU/WlwMwKtLflSzsnyb6yc46ksySNl1U69EvaIelVWW1b/V80WtKxsk8TTZF0tKS3JT0m6SHZ13Y2OOferkhv9aakAnZImiFptqwqc4qsiqon0eyAhr7JtE1W5rXFOXeoTRr1f/7nzBSWwcPeAAAAAElFTkSuQmCC') 12px 12px no-repeat; max-width:1200px; min-height:94px; margin:5px auto; z-index:1000; position:relative;}#displayUserNotice div,#displayUserWarning div,#displayUserError div,#displayDebugError div {margin:0 0 0 93px; border-left:1px solid #fff; color:#333; font:16px Tahoma,sans-serif; min-height:74px; text-align:left; padding:10px 30px 10px 15px; text-align:left;}#displayUserWarning,#displayDebugError {background:#FFDC73 url('data:image/png;base64,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') 12px 12px no-repeat;}#displayUserWarning div {color:#444;}#displayUserError {background:#D90000 url('data:image/png;base64,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') 12px 12px no-repeat;}#displayUserCloseButton { cursor: pointer; color: #e1e1e1; border: none; border-radius: 90%; background: #605F61; font-size: 21px; font-weight: bold; display: inline-block; line-height: 0px; padding: 0px 7px 2px 6px; position: absolute; top: 5px; right: 5px; font: 15px Tahoma; width:23px; height:23px;}#displayUserCloseButton:before {content: "×";} * {margin:0; padding:0;}p{margin:14px 0;line-height:130%; }ul{margin-left:17px; list-style:circle;}ol{margin-left:17px;}li{margin:8px 0 8px 17px;}.vam{vertical-align:middle;}.fl {float:left;}.fr {float:right;}form{margin:0;}img,a img{border:none;}.bd {border:1px solid red;}b,strong {font-weight:700;}em {font-style:italic} .imgLeft {margin:0 15px 5px 0; float:left;}.imgRight {margin:0 0 5px 15px; float:right;}.imgFullWidth {width:100%}.cb {clear:both;}.cr {clear:right;}.cl {clear:left;}.c {text-align:center;}.l {text-align:left;}.r {text-align:right;}.contain::after {content: ""; clear: both; display: table;}sup { vertical-align: top; font-size: 0.7em; position: relative; top: -0.1em;} @media screen and (max-width:475px){ }  #displayNoticeBox {position:fixed; top:50%; left:50%; transform:translate(-50%,-50%); z-index:1000; text-align:center;}#displayUserNotice,#displayUserWarning,#displayUserError {background:#74AD53 url(/assets/images/messageNotice.png) 12px 12px no-repeat; max-width:700px; min-height:94px; z-index:1000; box-shadow:0 4px 20px rgba(0,0,0,0.3);}#displayUserNotice div,#displayUserWarning div,#displayUserError div {margin:0 0 0 93px; border-left:1px solid #fff; color:#fff; font-size:20px; min-height:74px; text-align:left; padding:10px 5px 10px 15px; text-align:left;}#displayUserWarning {background:#FFDC73 url(/assets/images/messageWarning.png) 12px 12px no-repeat;}#displayUserWarning div {color:#444;}#displayUserError {background:#D90000 url(/assets/images/messageError.png) 12px 12px no-repeat;} /* --------------------------------------------------------------------------- Baldwin Farm storefront theme --------------------------------------------------------------------------- Layout language: centered logo lockup,quiet uppercase nav rule,generous whitespace,editorial slab-serif headings paired with a clean sans body. Colors are pulled from the logo (#686859 warm olive-grey) with a terracotta accent for prices and calls to action. --------------------------------------------------------------------------- */ :root { --brand: #686859;  --brand-dark: #3f4038;  --brand-deep: #2b2c26; --accent: #c07a63; /* terracotta — prices,buttons */ --accent-dark: #a9634d; --ink: #262620; --ink-soft: #5c5c52; --rule: #e3e1d9; --cream: #faf9f5; --white: #fff; --font-display: "Bitter",Georgia,"Times New Roman",serif; --font-body: "Karla",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif; --wrap: 1220px; --gutter: 24px;} /* ── Base ─────────────────────────────────────────────────────────────── */ body { background: var(--white); color: var(--ink); font: 16px/1.65 var(--font-body); -webkit-font-smoothing: antialiased;} .wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter); } h1,h2,h3,h4 { font-family: var(--font-display); font-weight: 600; line-height: 1.2; color: var(--ink); }h1 { font-size: clamp(30px,4vw,44px); }h2 { font-size: clamp(24px,3vw,32px); }h3 { font-size: 20px; } a { color: var(--accent-dark); }a:hover { color: var(--accent); } /* ── Buttons ──────────────────────────────────────────────────────────── */ .btn { display: inline-block; padding: 14px 34px; border: 1px solid var(--accent); border-radius: 2px; background: var(--accent); color: var(--white); font: 600 13px/1 var(--font-body); letter-spacing: .12em; text-transform: uppercase; text-decoration: none; cursor: pointer; transition: background .18s ease,border-color .18s ease,color .18s ease;}.btn:hover { background: var(--accent-dark); border-color: var(--accent-dark); color: var(--white); }.btn:disabled,.btn[disabled] { background: #b9b9ae; border-color: #b9b9ae; cursor: not-allowed; } .btn-outline { background: transparent; color: var(--accent); }.btn-outline:hover { background: var(--accent); color: var(--white); } /* ── Announcement bar ─────────────────────────────────────────────────── */ .announceBar { background: var(--brand-dark); color: var(--white); font-size: 14px;}.announceBar .wrap { display: flex; align-items: center; gap: 18px; min-height: 46px; }.announceMsg { font-weight: 600; letter-spacing: .01em; }.announceLinks { margin-left: auto; display: flex; align-items: center; gap: 16px; }.announceBar a { color: var(--white); text-decoration: none; }.announceBar a:hover { text-decoration: underline; }.cartLink { display: inline-flex; align-items: center; gap: 7px; }.cartLink svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.6; }.cartCount { font-variant-numeric: tabular-nums; } /* Account: login link + logged-in dropdown (ported from food4life,themed for Baldwin's dark announce bar). #accountMenu is moved to <body> by JS,so it is positioned fixed and styled outside the .announceBar scope. */#accountCtl { position: relative; display: inline-flex; }#accountToggle { display: inline-flex; align-items: center; gap: 6px; color: var(--white); text-decoration: none; cursor: pointer; font-weight: 600;}#accountToggle:hover { color: var(--white); text-decoration: underline; }#accountToggle svg { display: block; } #accountMenu { position: fixed; min-width: 220px; background: var(--white); border: 1px solid var(--rule); border-radius: 10px; box-shadow: 0 10px 30px rgba(0,0,0,.16); padding: 8px; z-index: 100000; display: none; text-align: left;}#accountMenu.open { display: block; }#accountMenu::before { content: ""; position: absolute; top: -7px; right: 22px; width: 12px; height: 12px; background: var(--white); border-left: 1px solid var(--rule); border-top: 1px solid var(--rule); transform: rotate(45deg);}.tcAcctItem { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 8px; color: var(--ink); text-decoration: none; font: 15px var(--font-body); line-height: 1.2;}.tcAcctItem:hover { background: var(--cream); color: var(--accent-dark); }.tcAcctItem svg { color: var(--brand); flex: 0 0 auto; }.tcAcctItem:hover svg { color: var(--accent-dark); }.tcAcctSignout { justify-content: center; font-weight: 600; }.tcAcctDivider { height: 1px; background: var(--rule); margin: 6px 4px; } /* ── Masthead + nav ───────────────────────────────────────────────────── */ .masthead { padding: 40px 0 26px; text-align: center; }.masthead .logo { display: inline-block; }.masthead .logo img { width: 220px; height: auto; display: block; } .mainNav { border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }.mainNav ul { list-style: none; margin: 0; padding: 0; display: flex; justify-content: center; flex-wrap: wrap; gap: 6px 40px;}.mainNav li { margin: 0; }.mainNav a { display: block; padding: 18px 2px; color: var(--ink); font: 600 13px/1 var(--font-body); letter-spacing: .14em; text-transform: uppercase; text-decoration: none; border-bottom: 2px solid transparent;}.mainNav a:hover,.mainNav a.sel { color: var(--accent-dark); border-bottom-color: var(--accent); } /* ── Breadcrumbs ──────────────────────────────────────────────────────── */ .breadcrumbs { margin: 28px 0 0; font-size: 13px; font-weight: 600; color: var(--ink-soft); letter-spacing: .02em;}.breadcrumbs a { color: var(--ink); text-decoration: none; }.breadcrumbs a:hover { color: var(--accent-dark); } /* ── Page shell ───────────────────────────────────────────────────────── */ .page { padding: 34px 0 80px; }.pageHead { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; margin-bottom: 26px; }.pageHead h1 { margin: 0; }.pageIntro {color: var(--ink-soft); margin-bottom: 40px; }.pageIntro p { margin: 14px 0; } /* ── Product grid (category + home) ───────────────────────────────────── */ .productGrid { display: grid; grid-template-columns: repeat(auto-fill,minmax(230px,1fr)); gap: 44px 30px; margin: 0; padding: 0; list-style: none;}.productCard { text-align: center; }.productCard a { text-decoration: none; color: inherit; display: block; }.productCard .thumb { position: relative; background: var(--cream); overflow: hidden; aspect-ratio: 4 / 3; margin-bottom: 16px;}.productCard .thumb img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease;}.productCard a:hover .thumb img { transform: scale(1.04); }.productCard .thumbEmpty { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; color: #b6b5a8; font: 13px var(--font-body); letter-spacing: .1em; text-transform: uppercase;}.productCard .title { font: 500 16px/1.4 var(--font-body); color: var(--ink); margin-bottom: 6px; }.productCard a:hover .title { color: var(--accent-dark); }.productCard .price { font-size: 15px; color: var(--ink-soft); }.productCard .price del { margin-right: 7px; color: #a3a396; }.productCard .price ins { text-decoration: none; color: var(--accent-dark); font-weight: 600; }.soldOut { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 84px; height: 84px; border-radius: 50%; background: rgba(192,122,99,.92); color: var(--white); display: flex; align-items: center; justify-content: center; font: 600 12px/1.25 var(--font-body); letter-spacing: .06em; text-transform: uppercase; text-align: center;} /* ── Subcategory tiles ────────────────────────────────────────────────── */ .subCatGrid { display: grid; grid-template-columns: repeat(auto-fill,minmax(190px,1fr)); gap: 30px; margin: 0 0 56px; padding: 0; list-style: none;}.subCatCard { text-align: center; }.subCatCard a { text-decoration: none; color: inherit; }.subCatCard .thumb { background: var(--cream); border-radius: 50%; aspect-ratio: 1; overflow: hidden; margin: 0 auto 14px; max-width: 190px; display: flex; align-items: center; justify-content: center;}.subCatCard .thumb img { width: 100%; height: 100%; object-fit: cover; }.subCatCard .title { font: 600 15px/1.4 var(--font-body); letter-spacing: .04em; text-transform: uppercase; }.subCatCard a:hover .title { color: var(--accent-dark); } /* ── Product detail ───────────────────────────────────────────────────── */ .productLayout { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: start; margin: 32px 0 64px; }.productGallery .mainImg { background: var(--cream); }.productGallery .mainImg img { width: 100%; height: auto; display: block; }.productThumbs { display: flex; gap: 10px; margin-top: 12px; flex-wrap: wrap; }.productThumbs button { width: 74px; height: 74px; padding: 0; border: 1px solid var(--rule); background: var(--cream); cursor: pointer; overflow: hidden;}.productThumbs button.sel { border-color: var(--accent); }.productThumbs img { width: 100%; height: 100%; object-fit: cover; display: block; } .productVendor { font-size: 14px; color: var(--ink-soft); margin-bottom: 4px; }.productDetail h1 { margin: 0 0 18px; }.productPrice { font-size: 26px; color: var(--accent-dark); font-family: var(--font-display); margin-bottom: 4px; }.productPrice del { font-size: 19px; color: #a3a396; margin-right: 10px; }.productShipNote { font-size: 14px; color: var(--ink-soft); margin-bottom: 26px; }.productAvail { font-size: 14px; margin-bottom: 22px; }.productAvail .inStock { color: #4a7c46; font-weight: 600; }.productAvail .backOrder{ color: #b26a00; font-weight: 600; }.productAvail .outStock { color: #b4472f; font-weight: 600; } /* Connected model variations — boxes linking between group members; the current product's box carries .sel and gets the accent outline. */.productConnected { margin: 0 0 26px; }.productConnectedLabel { font-size: 15px; font-weight: 700; margin-bottom: 10px; }.productConnectedGrid { display: flex; flex-wrap: wrap; gap: 10px; }.productConnectedBox { display: flex; flex-direction: column; width: 108px; padding: 8px; border: 1px solid var(--rule); border-radius: 4px; background: var(--cream); text-decoration: none; color: var(--ink);}a.productConnectedBox:hover { border-color: var(--accent); }.productConnectedBox.sel { border: 2px solid var(--accent); padding: 7px; }.productConnectedImg { display: block; width: 100%; aspect-ratio: 1; background: var(--white); }.productConnectedImg img { width: 100%; height: 100%; object-fit: contain; display: block; }.productConnectedName { font-size: 13px; font-weight: 600; color: var(--accent-dark); margin-top: 7px; line-height: 1.25; }.productConnectedPrice { font-size: 14px; font-weight: 600; color: var(--accent-dark); margin-top: 3px; } .productOption { margin-bottom: 20px; }.productOptionLabel { display: block; font-size: 14px; font-weight: 600; margin-bottom: 7px; }.productOptionReq { color: var(--accent-dark); }.productOption select { min-width: 150px; padding: 11px 12px; border: 1px solid #c9c7bd; border-radius: 2px; background: var(--white); font: 15px var(--font-body); color: var(--ink);}.productOptionRadios,.productOptionCheckboxes { display: flex; flex-wrap: wrap; gap: 8px 18px; }.productOptionRadioLabel,.productOptionCheckLabel { display: inline-flex; align-items: center; gap: 7px; font-size: 15px; cursor: pointer; }.productOptionImages { display: flex; flex-wrap: wrap; gap: 10px; }.productOptionImgBtn { width: 64px; height: 64px; padding: 0; border: 1px solid var(--rule); background: var(--cream); cursor: pointer; overflow: hidden; }.productOptionImgBtn.selected { border-color: var(--accent); border-width: 2px; }.productOptionImgBtn img { width: 100%; height: 100%; object-fit: cover; display: block; }.productOption.optionError select,.productOption.optionError .productOptionImgBtn { border-color: #b4472f; } .qtyLabel { display: block; font-size: 14px; font-weight: 600; color: var(--ink); margin: 26px 0 7px; }.qtyLabel + .productBuyRow { margin-top: 0; }.productBuyRow { display: flex; align-items: stretch; gap: 12px; margin: 26px 0 10px; flex-wrap: wrap; }.productQtyInput { width: 74px; padding: 12px 10px; text-align: center; border: 1px solid #c9c7bd; border-radius: 8px; font: 15px var(--font-body); color: var(--ink);}.productBuyRow .btn { flex: 1 1 220px; }.productError { display: none; margin-top: 10px; color: #b4472f; font-size: 14px; } .productCopy { border-top: 1px solid var(--rule); padding-top: 26px; margin-top: 30px; color: var(--ink-soft); }.productCopy h2,.productCopy h3 { color: var(--ink); margin: 26px 0 10px; }.productCopy p { margin: 14px 0; }.productCopy ul,.productCopy ol { margin: 14px 0 14px 20px; } /* ── Star rating (title badge,review summary/breakdown,review cards) ──── */ .starsRow { display: inline-flex; gap: 2px; vertical-align: middle; }.starIcon { width: 16px; height: 16px; fill: var(--rule); flex-shrink: 0; }.starIcon.filled { fill: var(--accent); }.starIcon.sm { width: 13px; height: 13px; }.starsRow.lg .starIcon { width: 22px; height: 22px; } .productRatingBadge { display: inline-flex; align-items: center; gap: 8px; margin: 6px 0 10px; text-decoration: none; }.productRatingBadge:hover .starsRow { opacity: .8; }.productRatingCount { color: var(--ink-soft); font-size: 14px; } /* ── Collapsible Details / Customer Reviews sections ─────────────────────── */ .collapseSections { margin-top: 30px; border-top: 1px solid var(--rule); }.collapseSection { border-bottom: 1px solid var(--rule); }.collapseSection summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 20px 2px; cursor: pointer; list-style: none; font: 600 26px var(--font-display); color: var(--ink);}.collapseSection summary::-webkit-details-marker { display: none; }.collapseSection summary::after { content: ''; flex-shrink: 0; width: 10px; height: 10px; border-right: 2px solid var(--ink-soft); border-bottom: 2px solid var(--ink-soft); transform: rotate(45deg); transition: transform .15s ease; margin-left: auto;}.collapseSection[open] summary::after { transform: rotate(-135deg); }.collapseSummaryNote { display: flex; align-items: center; gap: 8px; font: 400 14px var(--font-body); color: var(--ink-soft); margin-left: auto; margin-right: 14px; }.collapseBody { padding: 0 2px 26px; }.collapseBody.productCopy { border-top: none; padding-top: 0; margin-top: 0; } .reviewsSummary { display: flex; flex-wrap: wrap; gap: 40px; padding-bottom: 26px; margin-bottom: 26px; border-bottom: 1px solid var(--rule); }.reviewsAvg { text-align: center; min-width: 140px; }.reviewsAvgNum { font: 700 40px var(--font-display); color: var(--ink); line-height: 1; }.reviewsAvgOf { color: var(--ink-soft); font-size: 13px; margin-top: 6px; }.reviewsBars { flex: 1 1 280px; max-width: 420px; display: flex; flex-direction: column; gap: 6px; justify-content: center; }.reviewsBarRow { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--ink-soft); }.reviewsBarLabel { display: flex; align-items: center; gap: 3px; width: 32px; flex-shrink: 0; }.reviewsBarTrack { flex: 1; height: 8px; background: var(--rule); border-radius: 2px; overflow: hidden; }.reviewsBarFill { display: block; height: 100%; background: var(--accent); }.reviewsBarCount { width: 28px; text-align: right; flex-shrink: 0; } .reviewsList { display: flex; flex-direction: column; gap: 22px; }.reviewCard { padding-bottom: 22px; border-bottom: 1px solid var(--rule); }.reviewCard:last-child { border-bottom: none; padding-bottom: 0; }.reviewCardHead { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; }.reviewDate { color: var(--ink-soft); font-size: 13px; }.reviewTitle { font: 700 15px var(--font-body); color: var(--ink); margin-bottom: 4px; }.reviewText { color: var(--ink-soft); line-height: 1.6; margin-bottom: 8px; }.reviewMeta { font-size: 13px; color: var(--ink-soft); display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }.verifiedBadge { color: var(--accent-dark); font-weight: 600; }.reviewsEmpty { color: var(--ink-soft); } /* ── Home ─────────────────────────────────────────────────────────────── */ .hero { position: relative; }.hero img { width: 100%; height: clamp(340px,48vw,640px); object-fit: cover; display: block; }.heroCard { background: var(--cream); display: flex; align-items: center; justify-content: center; height: clamp(320px,46vw,620px); text-align: center; padding: 40px;}.heroCard .inner { max-width: 640px; }.heroCard h1 { margin-bottom: 14px; }.heroCard p { color: var(--ink-soft); margin-bottom: 26px; } /* Photo hero — scrim keeps the type legible over any part of the image. */.heroPhoto { position: relative; }.heroOverlay { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; text-align: center; padding: 40px 24px; background: linear-gradient(180deg,rgba(30,32,26,.42) 0%,rgba(30,32,26,.58) 100%);}.heroInner { max-width: 660px; color: #fff; }.heroKicker { margin: 0 0 14px; font: 600 12px/1 var(--font-body); letter-spacing: .2em; text-transform: uppercase; color: rgba(255,255,255,.88);}.heroInner h1 { color: #fff; margin: 0 0 16px; text-shadow: 0 2px 18px rgba(0,0,0,.28); }.heroLede { color: rgba(255,255,255,.94); font-size: 17px; margin: 0 auto 30px; max-width: 52ch; } /* Sparse grids: center the row instead of stranding one card at the left. */.gridCentered { justify-content: center; }.gridCentered.productGrid { grid-template-columns: repeat(auto-fit,minmax(210px,250px)); }.gridCentered.subCatGrid { grid-template-columns: repeat(auto-fit,minmax(170px,200px)); } /* Alternating image/text story blocks */.splitBlock { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }.splitBlock.reverse .splitMedia { order: 2; }.splitMedia img { width: 100%; height: 100%; max-height: 460px; object-fit: cover; display: block; }.splitText h2 { margin: 0 0 14px; }.splitText p { color: var(--ink-soft); margin: 14px 0; } .valueBand { background: var(--cream); padding: 56px 0; }.valueRow { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); gap: 36px; }.valueRow li { margin: 0; }.valueRow h3 { margin: 0 0 8px; font-size: 18px; }.valueRow p { margin: 0; color: var(--ink-soft); font-size: 15px; } .ctaBand { background: var(--brand-dark); color: #fff; text-align: center; padding: 66px 0; }.ctaBand h2 { color: #fff; margin: 0 0 10px; }.ctaBand p { color: rgba(255,255,255,.82); margin: 0 auto 26px; max-width: 46ch; } .reviewCta { background: var(--cream); text-align: center; padding: 56px 0; }.reviewCta h2 { margin: 0 0 10px; }.reviewCta p { color: var(--ink-soft); margin: 0 auto 26px; max-width: 46ch; }.reviewCtaStars { display: flex; justify-content: center; gap: 6px; margin-bottom: 18px; }.reviewCtaStars svg { width: 22px; height: 22px; fill: var(--accent); } .homeSection { padding: 68px 0; }.homeSection + .homeSection { padding-top: 0; }.homeSection h2 { margin-bottom: 16px; }.homeSection .lede { max-width: 78ch; color: var(--ink-soft); }.sectionHead { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; flex-wrap: wrap; margin-bottom: 28px; }.sectionHead h2 { margin: 0; }.sectionHead a { font: 600 13px var(--font-body); letter-spacing: .1em; text-transform: uppercase; text-decoration: none; } .bandCream { background: var(--cream); } /* Seasonal growing timeline (about page) */.growCycle { list-style: none; margin: 34px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit,minmax(210px,1fr)); gap: 30px; }.growCycle li { margin: 0; padding-top: 20px; border-top: 2px solid var(--accent); }.growCycle .season { display: block; font: 600 12px/1 var(--font-body); letter-spacing: .12em; text-transform: uppercase; color: var(--accent-dark); margin-bottom: 10px; }.growCycle h3 { margin: 0 0 8px; font-size: 18px; }.growCycle p { margin: 0; color: var(--ink-soft); font-size: 15px; } .aboutLede { max-width: 62ch; font-size: 19px; line-height: 1.6; color: var(--ink); }.aboutLede + p { max-width: 72ch; color: var(--ink-soft); } .searchForm { display: flex; gap: 12px; max-width: 640px; margin: 0 0 26px; flex-wrap: wrap; }.searchForm input[type="search"] { flex: 1 1 260px; padding: 13px 16px; border: 1px solid var(--rule); border-radius: 2px; background: var(--white); color: var(--ink); font: 16px var(--font-body);}.searchForm input[type="search"]:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgba(192,122,99,.16); }.searchNote { color: var(--ink-soft); margin: 0 0 28px; }.searchResults { list-style: none; margin: 0; padding: 0; max-width: 760px; }.searchResult { padding: 22px 0; border-bottom: 1px solid var(--rule); }.searchResult:first-child { padding-top: 0; }.searchResultTitle { font: 600 20px/1.3 var(--font-display); color: var(--accent-dark); text-decoration: none; }.searchResultTitle:hover { color: var(--accent); text-decoration: underline; }.searchResultUrl { font-size: 13px; color: #8a8a7e; margin: 4px 0 0; }.searchResultSnippet { margin: 8px 0 0; color: var(--ink-soft); font-size: 15px; } /* Numbered how-to steps (growing guide) */.guideSteps { list-style: none; counter-reset: guide; margin: 30px 0 0; padding: 0; display: grid; gap: 22px; }.guideSteps li { counter-increment: guide; position: relative; padding: 0 0 22px 66px; border-bottom: 1px solid var(--rule); }.guideSteps li:last-child { border-bottom: none; padding-bottom: 0; }.guideSteps li::before { content: counter(guide); position: absolute; left: 0; top: -2px; width: 44px; height: 44px; border-radius: 50%; background: var(--accent); color: #fff; font: 600 19px/44px var(--font-display); text-align: center;}.guideSteps h3 { margin: 4px 0 6px; font-size: 19px; }.guideSteps p { margin: 0; color: var(--ink-soft); }.guideSteps p + p { margin-top: 10px; } /* Compact reference table (spacing/depth) */.guideSpecs { width: 100%; border-collapse: collapse; margin: 26px 0 0; font-size: 15px; }.guideSpecs th,.guideSpecs td { text-align: left; padding: 12px 14px; border-bottom: 1px solid var(--rule); }.guideSpecs th { width: 42%; font: 600 13px/1.3 var(--font-body); letter-spacing: .04em; text-transform: uppercase; color: var(--ink-soft); vertical-align: top; }.guideSpecs td { color: var(--ink); }.guideSpecs tr:last-child th,.guideSpecs tr:last-child td { border-bottom: none; } /* ── Footer ───────────────────────────────────────────────────────────── */ .siteFooter { background: var(--brand-dark); color: #d9d8cf; margin-top: 0; padding: 60px 0 34px; font-size: 15px; }.siteFooter a { color: #d9d8cf; text-decoration: none; }.siteFooter a:hover { color: var(--white); text-decoration: underline; }.footerCols { display: grid; grid-template-columns: repeat(auto-fit,minmax(210px,1fr)); gap: 40px; }.siteFooter h4 { color: var(--white); font-family: var(--font-body); font-size: 15px; font-weight: 600; margin-bottom: 14px; }.siteFooter ul { list-style: none; margin: 0; padding: 0; }.siteFooter li { margin: 0 0 9px; }.footerContact a { color: var(--accent); }.footerBottom { border-top: 1px solid rgba(255,255,255,.14); margin-top: 44px; padding-top: 22px; text-align: center; font-size: 13px; color: #a9a89e; } .newsletter { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; }.newsletter input { flex: 1 1 170px; padding: 11px 12px; border: 1px solid rgba(255,255,255,.25); border-radius: 2px; background: rgba(255,255,255,.06); color: var(--white); font: 15px var(--font-body);}.newsletter input::placeholder { color: rgba(255,255,255,.5); }/* Honeypot — kept in flow off-screen so bots fill it but people never see it. */.newsletter .nlHp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }.newsletterMsg { flex-basis: 100%; margin: 4px 0 0; font-size: 13px; line-height: 1.4; }.newsletterMsg:empty { margin: 0; }.newsletterMsg.isOk { color: #cfe6c0; }.newsletterMsg.isError { color: #f0b8ab; } /* ── Page banner (interior hero) ──────────────────────────────────────── */ .pageBanner { position: relative; }.pageBanner img { width: 100%; height: clamp(220px,26vw,340px); object-fit: cover; display: block; }.pageBannerOverlay { position: absolute; inset: 0; display: flex; align-items: center; background: linear-gradient(90deg,rgba(43,44,38,.78) 0%,rgba(43,44,38,.42) 60%,rgba(43,44,38,.18) 100%);}.pageBannerOverlay .wrap { width: 100%; color: #fff; }.pageBannerOverlay h1 { color: #fff; margin: 0 0 12px; text-shadow: 0 2px 18px rgba(0,0,0,.28); }.pageBannerOverlay .heroLede { margin: 0; max-width: 54ch; } /* ── Contact layout ───────────────────────────────────────────────────── */ .contactLayout { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(0,1fr); gap: 52px; align-items: start; }.contactMain h2 { margin: 0 0 10px; }.formLede { color: var(--ink-soft); margin: 0 0 26px; }.req { color: var(--accent-dark); }.opt { color: #9b9b8f; font-weight: 400; font-size: 12px; letter-spacing: 0; text-transform: none; } .formAlert { border-left: 3px solid #b4472f; background: #fdf3f0; color: #8f3826; padding: 12px 16px; margin: 0 0 22px; font-size: 15px;} /* ── Form fields ──────────────────────────────────────────────────────── */ .fieldRow { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }.field { margin-bottom: 20px; }.field label { display: block; font: 600 12px/1 var(--font-body); letter-spacing: .1em; text-transform: uppercase; color: var(--ink-soft); margin-bottom: 8px;}.field input,.field select,.field textarea { width: 100%; padding: 13px 14px; border: 1px solid var(--rule); border-radius: 2px; background: var(--white); color: var(--ink); font: 16px/1.5 var(--font-body); transition: border-color .16s ease,box-shadow .16s ease;}.field textarea { resize: vertical; min-height: 150px; }.field select { appearance: none; background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%235c5c52' d='M1 1.5 6 6.5l5-5'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; background-size: 11px; padding-right: 38px;}.field input:focus,.field select:focus,.field textarea:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgba(192,122,99,.16);}.field input.isInvalid,.field textarea.isInvalid { border-color: #b4472f; }.fieldError { display: block; margin-top: 6px; color: #b4472f; font-size: 13px; } /* Honeypot — off-screen rather than display:none,which some bots skip. */.hpField { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; } .formFoot { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; margin-top: 6px; }.formNote { margin: 0; flex: 1 1 260px; font-size: 13px; color: var(--ink-soft); } /* ── Thank-you state ──────────────────────────────────────────────────── */ .contactThanks { border: 1px solid var(--rule); background: var(--cream); padding: 44px 40px; text-align: center; }.contactThanks h2 { margin: 0 0 12px; }.contactThanks p { color: var(--ink-soft); max-width: 48ch; margin: 12px auto; }.contactThanks .btn { margin-top: 14px; }.thanksMark { width: 56px; height: 56px; margin: 0 auto 18px; border-radius: 50%; background: var(--accent); display: flex; align-items: center; justify-content: center;}.thanksMark svg { width: 28px; height: 28px; fill: none; stroke: #fff; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; } /* ── Contact aside cards ──────────────────────────────────────────────── */ .contactAside { display: grid; gap: 20px; }.contactCard { border: 1px solid var(--rule); background: var(--white); padding: 26px 26px 24px; }.contactCard h3 { margin: 0 0 16px; font-size: 18px; }.contactCard p { margin: 12px 0 0; font-size: 15px; }.contactCard p:first-of-type { margin-top: 0; }.contactCardAccent { background: var(--cream); }.muted { color: var(--ink-soft); font-size: 14px; } .contactList { list-style: none; margin: 0; padding: 0; }.contactList li { display: flex; gap: 14px; margin: 0 0 18px; font-size: 15px; }.contactList li:last-child { margin-bottom: 0; }.ci { flex: 0 0 34px; width: 34px; height: 34px; border-radius: 50%; background: var(--cream); display: flex; align-items: center; justify-content: center; }.contactCardAccent .ci { background: var(--white); }.ci svg { width: 17px; height: 17px; fill: none; stroke: var(--brand); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }.ciLabel { display: block; font: 600 11px/1 var(--font-body); letter-spacing: .1em; text-transform: uppercase; color: #9b9b8f; margin-bottom: 4px; }.contactList a { text-decoration: none; }.contactList a:hover { text-decoration: underline; } .hoursList { list-style: none; margin: 0; padding: 0; font-size: 15px; }.hoursList li { display: flex; justify-content: space-between; gap: 16px; margin: 0; padding: 9px 0; border-bottom: 1px solid var(--rule); }.hoursList li:last-child { border-bottom: none; }.hoursList span:last-child { color: var(--ink-soft); } .linkList { list-style: none; margin: 14px 0 0; padding: 0; }.linkList li { margin: 0; padding: 8px 0; border-bottom: 1px solid var(--rule); }.linkList li:last-child { border-bottom: none; }.linkList a { font-size: 15px; text-decoration: none; }.linkList a:hover { text-decoration: underline; } /* ── Responsive ───────────────────────────────────────────────────────── */ @media screen and (max-width: 900px) { .productLayout { grid-template-columns: 1fr; gap: 34px; } .splitBlock { grid-template-columns: 1fr; gap: 26px; } .splitBlock.reverse .splitMedia { order: 0; } .splitMedia img { max-height: 320px; } .contactLayout { grid-template-columns: 1fr; gap: 36px; }}@media screen and (max-width: 700px) { .masthead { padding: 26px 0 18px; } .masthead .logo img { width: 158px; } .mainNav ul { gap: 0 22px; } .mainNav a { padding: 14px 2px; font-size: 12px; letter-spacing: .1em; } .announceBar .wrap { flex-wrap: wrap; gap: 8px 14px; padding-top: 9px; padding-bottom: 9px; } .announceLinks { margin-left: 0; } .productGrid { grid-template-columns: repeat(auto-fill,minmax(150px,1fr)); gap: 32px 18px; } .page { padding: 22px 0 56px; } .homeSection { padding: 44px 0; } .fieldRow { grid-template-columns: 1fr; gap: 0; } .contactThanks { padding: 32px 22px; } .contactCard { padding: 22px 20px; } .formFoot .btn { width: 100%; text-align: center; }}