:root {
    --farm-green:#30482f;
    --farm-hover:#223522;
    --farm-text:#252820;
    --farm-muted:#62665b;
    --farm-bg:#faf8f2;
    --farm-surface:#f0efe5;
    --farm-card:#fffdf7;
    --farm-border:#dcddcf;
    --farm-clay:#a2583c;
    --farm-radius:6px;
    --farm-width:1240px;
    --farm-heading:'Crimson Pro',Georgia,serif;
    --farm-body:Cabin,Arial,sans-serif
}


* {
    box-sizing:border-box
}

html {
    scroll-padding-top:30px
}

body.farm-theme,.editor-styles-wrapper {
    margin:0;
    background:var(--farm-bg);
    color:var(--farm-text);
    font:400 17px/1.65 var(--farm-body)
}

.farm-theme img {
    max-width:100%;
    height:auto;
    vertical-align:middle
}

.farm-theme a {
    color:inherit;
    text-underline-offset:5px
}

.farm-theme a:hover {
    color:var(--farm-clay)
}

.farm-theme :focus-visible {
    outline:3px solid var(--farm-clay);
    outline-offset:5px
}

.farm-theme h1,.farm-theme h2,.farm-theme h3,.editor-styles-wrapper h1,.editor-styles-wrapper h2,.editor-styles-wrapper h3 {
    font-family:var(--farm-heading);
    font-weight:600;
    line-height:1.08;
    letter-spacing:-.025em;
    color:var(--farm-text);
    margin:0 0 22px
}

.farm-theme h1 {
    font-size:clamp(42px,5.5vw,78px)
}

.farm-theme h2 {
    font-size:clamp(32px,3.2vw,46px)
}

.farm-theme h3 {
    font-size:29px
}

.farm-theme p {
    margin:0 0 20px
}

.farm-shell {
    width:min(var(--farm-width),calc(100% - 64px));
    margin-inline:auto
}

.farm-section {
    padding-block:88px
}

.farm-eyebrow {
    font:600 12px/1.5 var(--farm-body)!important;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--farm-muted);
    margin-bottom:20px!important
}

.farm-intro {
    font-size:20px;
    line-height:1.65;
    max-width:640px;
    color:var(--farm-muted)
}

.farm-meta {
    font-size:13px;
    color:var(--farm-muted)
}

.farm-skip {
    position:fixed;
    left:20px;
    top:-100px;
    z-index:10000;
    padding:12px 20px;
    background:var(--farm-green);
    color:#fff!important
}

.farm-skip:focus {
    top:12px
}

.farm-topline {
    background:var(--farm-green);
    color:#faf8f2;
    text-align:center;
    padding:8px 20px;
    font-size:12px;
    letter-spacing:.04em
}

.farm-topline span {
    margin-left:30px;
    opacity:.85
}

.farm-header {
    border-bottom:1px solid var(--farm-border);
    background:var(--farm-bg)
}

.farm-header-inner {
    min-height:112px;
    display:flex;
    align-items:center;
    gap:50px
}

.farm-brand {
    text-decoration:none;
    display:inline-flex;
    flex-direction:column;
    flex-shrink:0;
    align-items:center;
    line-height:1
}

.farm-brand span {
    font:600 44px/.9 var(--farm-heading);
    letter-spacing:-.04em
}

.farm-brand small {
    font-size:9px;
    letter-spacing:.28em;
    margin-top:10px
}

.farm-desktop-nav {
    margin-inline:auto
}

.farm-menu {
    list-style:none;
    display:flex;
    padding:0;
    margin:0;
    gap:32px
}

.farm-menu a {
    display:inline-flex;
    align-items:center;
    min-height:48px;
    text-decoration:none;
    font-size:14px
}

.farm-menu .current-menu-item a {
    color:var(--farm-green);
    text-decoration:underline
}

.farm-header-tools {
    display:flex;
    gap:24px;
    font-size:13px
}

.farm-header-tools>a {
    min-height:48px;
    display:flex;
    align-items:center;
    text-decoration:none;
    gap:6px
}

.farm-count {
    font-size:11px;
    min-width:20px;
    text-align:center;
    background:var(--farm-surface);
    border-radius:50%
}

.farm-mobile-nav {
    display:none
}

.farm-button,.farm-theme .wp-block-button__link,.farm-theme :is(.woocommerce,.farm-woo) a.button,.farm-theme :is(.woocommerce,.farm-woo) button.button,.farm-theme button[type=submit],.farm-theme .farm-woo .button {
    background:var(--farm-green);
    color:var(--farm-bg);
    border:1px solid var(--farm-green);
    border-radius:6px;
    font:600 14px/1.2 var(--farm-body);
    min-height:48px;
    padding:15px 25px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    cursor:pointer
}

.farm-button:hover,.farm-theme .wp-block-button__link:hover,.farm-theme button[type=submit]:hover {
    background:var(--farm-hover);
    color:#fff
}

.farm-theme .is-style-outline .wp-block-button__link {
    background:transparent;
    color:var(--farm-green)
}

.farm-theme .wp-block-buttons {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px
}

.farm-page-blocks>.wp-block-group {
    margin-block:0
}

.farm-hero {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
    min-height:620px;
    padding:0!important;
    gap:0!important
}

.farm-hero-copy {
    padding:90px max(32px,calc((100vw - 1240px)/2)) 80px max(32px,calc((100vw - 1240px)/2));
    padding-right:50px;
    align-self:center;
    min-width:0
}

.farm-hero h1 {
    max-width:580px
}

.farm-hero .farm-intro {
    font-size:19px
}

.farm-hero-photo {
    margin:0!important;
    height:100%;
    min-height:530px;
    position:relative
}

.farm-hero-photo img {
    width:100%;
    height:100%;
    object-fit:cover;
    position:absolute;
    inset:0
}

.farm-image-note {
    font-size:11px;
    line-height:1.4;
    color:var(--farm-muted)
}

.farm-section-title {
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:24px;
    margin-bottom:35px
}

.farm-section-title h2 {
    margin-bottom:0
}

.farm-section-title>a {
    white-space:nowrap;
    font-size:14px
}

.farm-band {
    background:var(--farm-surface)
}

.farm-trust {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:35px;
    padding-block:32px
}

.farm-trust>div {
    padding-right:24px;
    border-right:1px solid var(--farm-border)
}

.farm-trust>div:last-child {
    border:0
}

.farm-trust h2 {
    font-size:25px;
    margin-bottom:10px
}

.farm-trust p {
    font-size:14px;
    color:var(--farm-muted);
    margin:0
}

.farm-story {
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:9%
}

.farm-story figure {
    margin:0
}

.farm-story img {
    width:100%;
    aspect-ratio:1/1.08;
    object-fit:cover
}

.farm-story-copy {
    max-width:480px
}

.farm-story-copy h2 {
    font-size:48px
}

.farm-quote {
    font:600 27px/1.45 var(--farm-heading)
}

.farm-cta {
    padding:65px 0;
    text-align:center;
    background:var(--farm-green);
    color:var(--farm-bg)
}

.farm-cta h2 {
    color:var(--farm-bg)
}

.farm-cta p {
    max-width:640px;
    margin-inline:auto
}

.farm-cta a {
    color:inherit
}

.farm-category-links {
    display:flex;
    flex-wrap:wrap;
    gap:12px
}

.farm-category-links a {
    padding:12px 23px;
    border:1px solid var(--farm-border);
    border-radius:6px;
    text-decoration:none;
    background:var(--farm-card)
}

.farm-articles {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:32px
}

.farm-article-card {
    min-width:0
}

.farm-card-image {
    display:block;
    overflow:hidden;
    background:var(--farm-surface);
    aspect-ratio:1.35
}

.farm-card-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .25s
}

.farm-card-image:hover img {
    transform:scale(1.025)
}

.farm-card-copy {
    padding:24px 0 15px
}

.farm-card-copy h2 {
    font-size:29px;
    line-height:1.16;
    margin-bottom:14px
}

.farm-card-copy h2 a {
    text-decoration:none
}

.farm-card-copy .farm-eyebrow {
    font-size:10px!important;
    margin-bottom:14px!important
}

.farm-card-copy>p:not(.farm-eyebrow):not(.farm-meta) {
    font-size:15px;
    color:var(--farm-muted)
}

.farm-card-copy .farm-meta {
    display:flex;
    justify-content:space-between;
    border-top:1px solid var(--farm-border);
    padding-top:16px;
    margin:20px 0 0
}

.farm-page-intro {
    padding-bottom:60px;
    max-width:850px
}

.farm-page-intro h1 {
    font-size:clamp(44px,5vw,68px)
}

.farm-reading {
    max-width:760px;
    width:calc(100% - 40px);
    margin:auto;
    font-size:19px;
    line-height:1.8;
    padding-top:55px
}

.farm-reading h2 {
    margin-top:50px
}

.farm-reading h3 {
    margin-top:35px
}

.farm-reading blockquote {
    border-left:3px solid var(--farm-clay);
    margin:35px 0;
    padding:0 0 0 25px;
    font-family:var(--farm-heading);
    font-size:28px
}

.farm-article-heading {
    padding-top:75px;
    padding-bottom:40px;
    max-width:1000px;
    text-align:center
}

.farm-article-heading .farm-intro {
    margin-inline:auto
}

.farm-article-cover img {
    width:100%;
    max-height:620px;
    object-fit:cover
}

.farm-article-cover {
    margin-block:0
}

.farm-related {
    border-top:1px solid var(--farm-border)
}

.farm-sample-note {
    background:#f0e5dc;
    color:#79412c;
    font-size:13px;
    padding:12px 16px;
    border-radius:6px
}

.farm-document {
    max-width:900px
}

.farm-footer {
    background:var(--farm-surface);
    padding:65px 0 20px;
    border-top:1px solid var(--farm-border)
}

.farm-footer-grid {
    display:grid;
    grid-template-columns:2fr 1fr 1fr;
    gap:50px
}

.farm-footer h2 {
    font:600 13px var(--farm-body);
    text-transform:uppercase;
    letter-spacing:.13em;
    margin-bottom:20px
}

.farm-footer .farm-brand {
    margin-bottom:25px
}

.farm-footer p,.farm-footer a {
    font-size:14px
}

.farm-footer .farm-menu {
    display:block
}

.farm-footer .farm-menu a {
    min-height:36px
}

.farm-footer-bottom {
    border-top:1px solid var(--farm-border);
    margin-top:45px;
    padding-top:22px;
    display:flex;
    justify-content:space-between;
    gap:20px;
    font-size:12px;
    color:var(--farm-muted)
}

.farm-footer-bottom p,.farm-footer-bottom a {
    font-size:12px
}

.farm-theme input:not([type=checkbox]):not([type=radio]):not([type=submit]),.farm-theme select,.farm-theme textarea {
    max-width:100%;
    min-height:48px;
    border:1px solid var(--farm-border);
    border-radius:6px;
    padding:10px 12px;
    background:var(--farm-card);
    color:var(--farm-text);
    font:inherit
}

.farm-theme input[type=number] {
    width:100px
}

.farm-theme label {
    font-size:14px
}

.farm-theme :is(.woocommerce,.farm-woo) ul.products {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:32px
}

.farm-theme :is(.woocommerce,.farm-woo) ul.products:before,.farm-theme :is(.woocommerce,.farm-woo) ul.products:after {
    display:none
}

.farm-theme :is(.woocommerce,.farm-woo) ul.products li.product {
    float:none;
    width:auto!important;
    margin:0!important;
    min-width:0
}

.farm-theme :is(.woocommerce,.farm-woo) ul.products li.product h2 {
    font-size:28px
}

.farm-theme :is(.woocommerce,.farm-woo) ul.products li.product a img {
    aspect-ratio:1.1;
    object-fit:cover
}

.farm-theme :is(.woocommerce,.farm-woo) ul.products li.product .price {
    color:var(--farm-green);
    font-size:17px
}

.farm-theme :is(.woocommerce,.farm-woo) div.product .product_title {
    font-size:clamp(36px,4vw,58px)
}

.farm-theme :is(.woocommerce,.farm-woo) div.product div.images img {
    aspect-ratio:1;
    object-fit:cover
}

.farm-theme :is(.woocommerce,.farm-woo) div.product p.price {
    color:var(--farm-green)
}

.farm-theme :is(.woocommerce,.farm-woo) div.product div.summary {
    padding-left:28px
}

.farm-theme .woocommerce-breadcrumb {
    font-size:12px;
    margin-bottom:35px
}

.farm-theme .woocommerce-tabs {
    padding-top:50px
}

.farm-theme :is(.woocommerce,.farm-woo) table.shop_table {
    border-color:var(--farm-border)
}

.farm-theme [data-sff-product] {
    margin-bottom:14px
}

.farm-theme [data-sff-product] h2 {
    font-size:25px
}

.farm-theme [data-sff-product] p {
    font-size:14px;
    margin-bottom:12px
}

.farm-theme [data-sff-product] dl {
    margin-block:15px;
    display:grid;
    gap:8px
}

.farm-theme [data-sff-product] dt {
    color:var(--farm-muted);
    font-size:13px
}

.farm-theme [data-sff-product] dd {
    margin:0
}

.farm-theme .sff-purchase-totals>div {
    display:flex;
    justify-content:space-between;
    gap:20px;
    background:var(--farm-surface);
    padding:12px 15px
}

.farm-theme .sff-purchase-totals dd {
    font-weight:700
}

.farm-theme .sff-free-shipping svg {
    width:18px;
    height:18px
}

.farm-theme .sff-run-schedule {
    font-size:14px
}

.farm-theme .pagination {
    margin-top:45px
}

.farm-theme .nav-links {
    display:flex;
    gap:10px;
    flex-wrap:wrap
}

.farm-theme .page-numbers {
    padding:10px 17px;
    border:1px solid var(--farm-border);
    min-height:48px
}

.farm-theme .page-numbers.current {
    background:var(--farm-green);
    color:var(--farm-bg)
}


@media(min-width:1920px) {
    .farm-hero {
    min-height:700px
}

.farm-hero-photo {
    max-height:780px
}

.farm-hero-copy {
    padding-right:80px
}


}

@media(max-width:1024px) {
    .farm-header-inner {
    gap:25px
}

.farm-menu {
    gap:20px
}

.farm-articles {
    grid-template-columns:repeat(2,minmax(0,1fr))
}

.farm-hero {
    min-height:520px
}

.farm-hero-copy {
    padding:55px 32px
}

.farm-hero-photo {
    min-height:500px
}

.farm-story {
    gap:40px
}

.farm-section {
    padding-block:65px
}

.farm-story-copy h2 {
    font-size:38px
}

.farm-theme :is(.woocommerce,.farm-woo) ul.products {
    grid-template-columns:repeat(2,minmax(0,1fr))
}


}


@media(max-width:767px) {
    .farm-shell {
    width:calc(100% - 40px)
}

.farm-topline {
    font-size:11px
}

.farm-topline span {
    display:none
}

.farm-header-inner {
    min-height:88px;
    gap:20px;
    flex-wrap:wrap;
    padding-block:15px
}

.farm-brand span {
    font-size:36px
}

.farm-brand small {
    font-size:8px
}

.farm-desktop-nav {
    display:none
}

.farm-header-tools {
    margin-left:auto;
    font-size:12px;
    gap:14px
}

.farm-mobile-nav {
    display:block;
    width:100%;
    border-top:1px solid var(--farm-border);
    padding-top:8px
}

.farm-mobile-nav summary {
    min-height:48px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:13px;
    cursor:pointer;
    list-style:none
}

.farm-mobile-nav summary::-webkit-details-marker {
    display:none
}

.farm-mobile-nav .farm-menu {
    display:block;
    padding-top:10px
}

.farm-mobile-nav .farm-menu a {
    width:100%;
    border-top:1px solid var(--farm-border)
}

.farm-hero {
    grid-template-columns:minmax(0,1fr);
    min-height:0
}

.farm-hero-copy {
    padding:50px 20px 42px
}

.farm-hero h1 {
    font-size:51px;
    max-width:430px
}

.farm-hero-photo {
    min-height:360px;
    aspect-ratio:1.12
}

.farm-section {
    padding-block:52px
}

.farm-trust {
    grid-template-columns:1fr;
    gap:22px;
    padding-block:30px
}

.farm-trust>div {
    border-right:0;
    border-bottom:1px solid var(--farm-border);
    padding:0 0 20px
}

.farm-trust>div:last-child {
    padding-bottom:0
}

.farm-section-title {
    align-items:start;
    flex-direction:column;
    gap:15px;
    margin-bottom:25px
}

.farm-articles {
    grid-template-columns:1fr;
    gap:25px
}

.farm-card-copy h2 {
    font-size:31px
}

.farm-story {
    grid-template-columns:1fr;
    gap:32px
}

.farm-story-copy {
    max-width:none
}

.farm-story-copy h2 {
    font-size:39px
}

.farm-story img {
    aspect-ratio:1.15
}

.farm-page-intro {
    padding-bottom:35px
}

.farm-article-heading {
    padding-top:45px
}

.farm-article-heading h1 {
    font-size:44px
}

.farm-intro {
    font-size:18px
}

.farm-reading {
    font-size:18px
}

.farm-article-cover {
    width:100%
}

.farm-article-cover img {
    aspect-ratio:1.2
}

.farm-footer-grid {
    grid-template-columns:1fr 1fr;
    gap:35px
}

.farm-footer-grid>div:first-child {
    grid-column:1/-1
}

.farm-footer-bottom {
    flex-direction:column;
    gap:8px
}

.farm-footer-bottom p {
    margin:0
}

.farm-theme :is(.woocommerce,.farm-woo) ul.products {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}

.farm-theme :is(.woocommerce,.farm-woo) ul.products li.product h2 {
    font-size:24px
}

.farm-theme :is(.woocommerce,.farm-woo) div.product div.summary {
    padding:0
}

.farm-theme :is(.woocommerce,.farm-woo) div.product .product_title {
    font-size:40px
}

.farm-theme :is(.woocommerce,.farm-woo) .woocommerce-result-count,.farm-theme :is(.woocommerce,.farm-woo) .woocommerce-ordering {
    float:none
}

.farm-theme :is(.woocommerce,.farm-woo) .woocommerce-ordering {
    margin-bottom:25px
}


}


@media(prefers-reduced-motion:reduce) {
    * {
    scroll-behavior:auto!important;
    transition:none!important
}


}



/* Public presentation refinements after real-device-width review. */
.farm-hero-photo {
    min-width:0
}

.farm-section-title.wp-block-group {
    display:block
}

.farm-section-title.wp-block-group h2 {
    margin-bottom:18px
}

.farm-section-title.wp-block-group .farm-eyebrow {
    margin-bottom:14px!important
}

.farm-theme .farm-woo [data-sff-part="combined"]>h2 {
    display:none
}

.farm-woo ul.products {
    padding:0;
    list-style:none
}

.farm-theme .sff-listing-status {
    font-size:12px
}

.farm-theme .sff-home-activity {
    list-style:none;
    padding:0;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px
}

.farm-theme .sff-home-activity li {
    background:var(--farm-card);
    padding:28px;
    border:1px solid var(--farm-border);
    border-radius:6px
}

.farm-theme .sff-home-activity strong {
    font-family:var(--farm-heading);
    font-size:27px
}

.farm-theme .sff-home-activity p {
    font-size:15px;
    color:var(--farm-muted);
    margin-top:12px
}

.farm-theme .sff-home-activity svg,.farm-theme .sff-home-section-link svg {
    width:18px;
    height:18px;
    vertical-align:middle
}

.farm-theme .sff-home-activity a {
    display:inline-flex;
    gap:12px;
    min-height:48px;
    align-items:center
}

.farm-cta .wp-block-button__link {
    border-color:var(--farm-bg);
    background:var(--farm-bg);
    color:var(--farm-green)
}


@media(max-width:767px) {
    .farm-theme .sff-home-activity {
    grid-template-columns:minmax(0,1fr)
}

.farm-hero h1 {
    font-size:clamp(42px,12vw,51px)
}


}



/* Preserve plugin controls while presenting a coherent product summary. */
.farm-theme .sff-selected-run {display:grid;gap:3px;padding:18px;background:var(--farm-surface);border-radius:6px}.farm-theme .sff-selected-run span{font-size:12px;color:var(--farm-muted)}.farm-theme [data-sff-part="status"] p{display:inline-block;background:var(--farm-selected,#e7eddf);color:var(--farm-green);padding:6px 12px;border-radius:4px}.farm-theme .sff-purchase-totals{gap:1px!important}.farm-theme .sff-purchase-totals>div{align-items:center}.farm-theme .sff-purchase-totals dt{font-size:15px}.farm-theme .sff-purchase-totals dd{font-size:24px}.farm-theme .sff-run-schedule{display:grid!important;grid-template-columns:1fr 1.5fr;gap:12px!important}.farm-theme .sff-run-schedule dd{font-size:14px}.farm-theme .farm-woo [data-sff-part="quantity"]{margin-top:20px}.farm-theme .farm-woo [data-sff-part="action"] button{width:100%}.farm-theme .farm-woo .product_meta{font-size:13px;margin-top:25px;padding-top:20px;border-top:1px solid var(--farm-border)}

/* Keep one availability label beneath the price; align card photographs. */
.farm-theme ul.products li.product > a > .sff-listing-status:first-child { display: none; }
.farm-theme ul.products li.product p { font-size: 14px; margin-bottom: 10px; }

@media (max-width:767px) {
 .farm-hero-photo {width:100%; max-width:100%; min-height:0; height:clamp(300px,85vw,420px); aspect-ratio:auto;}
}

/* Accessible text on the inverse CTA, and practical footer navigation targets. */
.farm-cta .farm-eyebrow { color: var(--farm-bg); }
.farm-footer .farm-menu a { min-height: 48px; }

.farm-brand .custom-logo { width:84px; height:84px; object-fit:contain; }
@media(max-width:767px) { .farm-brand .custom-logo { width:64px; height:64px; } }
