/*
Theme Name: T&J Farms Honey
Theme URI: https://tandjfarms.com/
Author: T&J Farms
Description: A modern rustic honey storefront with native WooCommerce support and an editable farm homepage.
Version: 1.0.5
Requires at least: 6.5
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tandj-farms-honey
*/


:root{--ink:#30372b;--cream:#f7f4eb;--gold:#b97923;--olive:#3e4936;--line:#d9d7ca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.06}h1{font-size:clamp(62px,6.7vw,108px);letter-spacing:-3px}h2{font-size:clamp(42px,4.5vw,66px);letter-spacing:-1.7px}h3{font-size:30px}.wrap{max-width:1320px;margin:auto;padding:0 5%}.top{background:var(--olive);color:#fff9e8;text-align:center;font-size:11px;letter-spacing:1.4px;padding:9px 16px}.nav{display:flex;align-items:center;justify-content:space-between;height:100px;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:13px}.brand img{width:72px;height:72px;object-fit:contain;mix-blend-mode:multiply}.brand span{font-family:Georgia,serif;font-size:24px;letter-spacing:-.7px}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:2.1px;margin-top:3px}.navlinks{display:flex;gap:32px;font-size:13px}.navlinks a:hover{color:var(--gold)}.shoplink{border:1px solid var(--ink);padding:9px 19px;font-size:12px}.hero{display:grid;grid-template-columns:1.03fr 1fr;min-height:625px;align-items:center;padding-top:38px;padding-bottom:55px;gap:40px}.eyebrow{text-transform:uppercase;letter-spacing:2.6px;font-size:10px;font-weight:600;display:block;margin-bottom:23px}.hero h1 em{font-weight:400;color:var(--gold)}.hero p{max-width:375px;margin-top:27px;color:#68705f;font-size:15px}.buttons{display:flex;gap:28px;align-items:center;margin-top:32px}.button{background:var(--olive);color:#fff;padding:14px 25px;display:inline-flex;gap:35px;font-size:12px;align-items:center}.button:hover{background:#536047}.textlink{font-size:12px;border-bottom:1px solid;padding-bottom:3px}.heroart{position:relative;background:#eae5d5;border-radius:46% 46% 3px 3px;height:520px;display:flex;justify-content:center;align-items:center;overflow:hidden;background-image:radial-gradient(ellipse at 45% 40%,#f4edde,#dfd8be)}.heroart:before{content:'';position:absolute;border:1px solid #bdb698;inset:20px;border-radius:47% 47% 2px 2px}.heroart img{width:89%;height:90%;object-fit:contain;mix-blend-mode:multiply;transform:rotate(-8deg);filter:drop-shadow(15px 20px 12px #53432925)}.stamp{position:absolute;right:13px;bottom:22px;border:1px solid #6f765e;border-radius:50%;width:105px;height:105px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:10px;line-height:1.7;letter-spacing:1px;background:#ede9d7;transform:rotate(10deg)}.hivenote{position:absolute;top:55px;right:28px;font-size:11px;letter-spacing:1.5px;writing-mode:vertical-rl}.promise{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);padding:22px 0;margin-bottom:80px;text-align:center;font-size:11px;letter-spacing:1.3px}.promise span+span{border-left:1px solid var(--line)}.sectionhead{display:flex;justify-content:space-between;align-items:end;margin-bottom:37px}.sectionhead .eyebrow{margin-bottom:14px}.filters{display:flex;gap:9px;margin-bottom:25px}.filters button{border:1px solid var(--line);background:transparent;padding:7px 18px;border-radius:20px;font-size:11px;color:var(--ink)}.filters button.active{background:var(--olive);border-color:var(--olive);color:white}.tjh-home-products{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.tjh-home-products .product .image{background:#ece9df;height:295px;position:relative;padding:20px;display:flex;align-items:center;justify-content:center}.tjh-home-products .product img{height:100%;width:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .3s}.tjh-home-products .product:hover img{transform:translateY(-5px)}.tag{position:absolute;left:13px;top:13px;font-size:9px;background:var(--cream);padding:4px 9px;letter-spacing:.7px;z-index:1}.tjh-home-products .product h3{font-size:26px;margin-top:20px}.tjh-home-products .product p{font-size:12px;color:#747965;margin-top:7px;line-height:1.6;min-height:38px}.tjh-home-products .product .bottom{display:flex;justify-content:space-between;align-items:center;margin-top:17px;border-top:1px solid var(--line);padding-top:13px;font-size:12px}.tjh-home-products .product .bottom a{border-bottom:1px solid #939883;font-size:10px}.story{margin-top:90px;background:var(--olive);color:#f7f4eb;padding:70px 0}.storygrid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.storyvisual{min-height:390px;background:#e1d5b9;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.storyvisual img{height:370px;object-fit:contain;mix-blend-mode:multiply;transform:rotate(8deg)}.storyvisual span{position:absolute;left:22px;bottom:18px;color:#4b4935;font-size:10px;letter-spacing:2px}.story p{margin:23px 0;color:#d5dacb;max-width:440px;font-size:14px}.story .eyebrow{color:#dcb877}.story .textlink{color:#ede5cd}.find{padding:80px 0}.locations{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.location{border-top:1px solid #b9bfad;padding-top:23px}.number{font-size:10px;color:#8b926f;letter-spacing:2px}.location h3{font-size:29px;margin:13px 0}.location p{font-size:13px;color:#6a715e;max-width:290px}.location a{display:inline-block;margin-top:20px;font-size:11px;border-bottom:1px solid}.faq{border-top:1px solid var(--line);padding:65px 0 85px;display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.faq .eyebrow{margin-bottom:15px}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;list-style:none;font-size:14px;display:flex;justify-content:space-between}.faq summary:after{content:'+';font-size:20px;line-height:1}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;color:#69705f;padding-top:15px}.footer{background:#e9e5d8;border-top:1px solid var(--line);padding:45px 0 20px}.footergrid{display:flex;justify-content:space-between;gap:40px}.footer h3{font-size:36px}.footer p{font-size:12px;margin-top:10px;color:#6a705f}.footerlinks{display:flex;gap:30px;font-size:12px;align-items:start}.copyright{display:flex;justify-content:space-between;font-size:10px;border-top:1px solid #d0cebd;margin-top:40px;padding-top:17px;color:#737962}.menu{display:none}.hide{display:none!important}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}@media(min-width:1550px){.hero{min-height:700px}}@media(max-width:900px){.brand span{font-size:20px}.navlinks{gap:18px}.hero{gap:20px}.heroart{height:440px}.tjh-home-products{grid-template-columns:repeat(2,1fr)}.storygrid{gap:35px}.faq{gap:35px}}@media(max-width:600px){.top{font-size:9px;letter-spacing:.5px}.nav{height:83px;gap:12px;position:relative}.brand img{width:54px;height:54px}.brand span{font-size:20px}.brand small{font-size:8px}.menu{display:block;border:0;background:none;font-size:12px}.shoplink{display:none}.navlinks{display:none;position:absolute;top:83px;left:0;right:0;padding:20px;background:var(--cream);z-index:5;border-bottom:1px solid var(--line)}.navlinks.open{display:flex;flex-direction:column}.hero{grid-template-columns:1fr;padding-top:40px;gap:40px}.hero h1{font-size:68px}.heroart{height:420px}.hero p{font-size:14px}.promise{font-size:9px;letter-spacing:.4px;margin-bottom:50px}.sectionhead{gap:20px}.sectionhead .textlink{white-space:nowrap;font-size:10px}.tjh-home-products{gap:15px}.tjh-home-products .product .image{height:220px;padding:8px}.tjh-home-products .product h3{font-size:24px}.tjh-home-products .product p{font-size:11px}.tjh-home-products .product .bottom{font-size:11px;gap:8px}.story{margin-top:55px;padding:40px 0}.storygrid{grid-template-columns:1fr;gap:35px}.storyvisual{min-height:300px}.storyvisual img{height:290px}.locations{grid-template-columns:1fr;gap:30px}.find{padding:55px 0}.faq{grid-template-columns:1fr;gap:25px;padding:40px 0 55px}.footergrid{flex-direction:column;gap:25px}.footerlinks{flex-wrap:wrap;gap:20px}.copyright{gap:20px}.filters{flex-wrap:wrap}}
.heroart img{width:100%;height:100%;object-fit:cover;mix-blend-mode:normal;transform:none;filter:none}.heroart:before{z-index:1;border-color:#fff8df66;pointer-events:none}.hivenote{color:#fff9e9;z-index:2}.stamp{z-index:2}.tjh-home-products .product .image{padding:0;overflow:hidden}.tjh-home-products .product img{object-fit:cover;mix-blend-mode:normal}.tjh-home-products .product:hover img{transform:scale(1.03)}.storyvisual img{width:100%;height:410px;object-fit:cover;mix-blend-mode:normal;transform:none}.storyvisual span{color:white;text-shadow:0 1px 4px #000}@media(max-width:600px){.storyvisual img{height:330px}}
body{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.site-main{width:100%;padding-top:50px;padding-bottom:70px}.entry-title{margin-bottom:30px}.entry-content{max-width:100%;overflow-wrap:anywhere}.entry-content h2,.entry-content h3{margin:30px 0 15px}.entry-content p{margin-bottom:18px}.entry-content a{text-decoration:underline}.entry-content img{height:auto}.alignwide{max-width:100%}.alignfull{width:100%}.wp-block-image{margin:24px 0}.skip-link{position:absolute;top:-80px;left:15px;background:white;padding:12px;z-index:99999}.skip-link:focus{top:10px}.navlinks ul,.footerlinks ul{display:flex;gap:28px;list-style:none;padding:0;margin:0}.navlinks li{position:relative}.navlinks ul ul{display:none;position:absolute;top:100%;left:0;background:var(--cream);min-width:200px;padding:16px;z-index:10}.navlinks li:hover>ul,.navlinks li:focus-within>ul{display:flex;flex-direction:column;gap:12px}.custom-logo{object-fit:contain}.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none;margin:0;width:100%;clear:none}.woocommerce ul.products li.product img{height:auto;aspect-ratio:1;object-fit:cover}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:27px;padding-top:18px}.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--olive)}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--olive);color:white;font-size:13px;border-radius:0;padding:14px 22px;font-weight:500}.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:#536047;color:white}.woocommerce span.onsale{background:var(--gold);min-height:0;line-height:1.7;border-radius:0;font-size:10px;padding:5px 12px}.woocommerce div.product .product_title{font-size:56px;letter-spacing:-1.5px;margin-bottom:18px}.woocommerce div.product .summary p{margin:16px 0}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:#ede9dc;border-color:var(--line)}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--cream)}.woocommerce div.product .woocommerce-tabs .panel h2{font-size:34px;margin-bottom:20px}.woocommerce table.shop_table{border-color:var(--line);border-radius:0}.woocommerce input.input-text,.woocommerce textarea,.woocommerce select,input[type=text],input[type=email],input[type=password],input[type=search],textarea,select{border:1px solid #bbc0ae;background:#fffdf6;padding:11px;color:var(--ink);font:inherit;max-width:100%}.woocommerce .quantity .qty{padding:10px;width:75px}.woocommerce form .form-row label{font-size:12px}.woocommerce-error,.woocommerce-info,.woocommerce-message{background:#ece9de}.woocommerce #payment{background:#ede9df}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;border:1px solid var(--line)}.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:13px 18px;border-bottom:1px solid var(--line)}.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{background:var(--olive);color:white}.woocommerce-cart .cart-collaterals h2,.woocommerce-checkout h3{font-size:32px;margin:24px 0}.wc-block-components-button{background:var(--olive);color:white;border-radius:0}.wc-block-components-text-input input,.wc-block-components-textarea{border-radius:0!important}.wc-block-cart,.wc-block-checkout{color:var(--ink)}.wc-block-product{color:var(--ink)}.tjh-home-products .product .bottom .button{padding:8px 12px;color:white;border:0;text-decoration:none}.tjh-home-products .product .bottom a{text-decoration:none}.tjh-home-products .product h3 a:hover{color:var(--gold)}.theme-empty{padding:25px 0;color:#69705f}.tjh-home-products .theme-empty{grid-column:1/-1}.filter-empty{padding:20px 0;font-size:13px}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.post-nav{margin-top:30px}.site-main article+article{margin-top:45px}.site-main article .entry-title{font-size:44px}.site-main .entry-content .woocommerce{font-family:'DM Sans',sans-serif}.wp-caption{max-width:100%}.wp-caption-text{font-size:12px}.sticky{border-top:2px solid var(--gold)}.gallery-caption{font-size:12px}.bypostauthor{color:inherit}
@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.navlinks ul{gap:14px}}
@media(max-width:600px){.navlinks>ul{flex-direction:column}.navlinks ul ul{position:static}.woocommerce div.product .product_title{font-size:42px}.footerlinks ul{flex-wrap:wrap}.site-main{padding-top:35px}.woocommerce table.shop_table{font-size:12px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:23px}}

.mobile-basket{display:none}@media(max-width:600px){.mobile-basket{display:block;font-size:11px}.brand{gap:6px}.brand span{font-size:18px}.brand img{width:45px;height:45px}.nav{gap:8px}.menu{padding:5px}}


/* Preserve the original preview geometry in WordPress' flex page shell. */
body>header.wrap{width:100%;flex-shrink:0}
body>.top,body>.footer{width:100%;flex-shrink:0}
body>main{width:100%;flex-shrink:0}
.mobile-basket{display:none}
.tjh-home-products .product .image img{width:100%;height:100%;object-fit:cover}
.tjh-home-products .product .bottom a{color:var(--ink)}
@media(max-width:600px){.mobile-basket{display:inline-block;font-size:11px;border-bottom:1px solid var(--line)}body.admin-bar .navlinks{z-index:20}}

/* Native WooCommerce recommendations are a section, not a homepage grid. */
.woocommerce div.product .related.products,
.woocommerce div.product .upsells.products{display:block;clear:both;width:100%;margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}
.woocommerce div.product .related.products>h2,
.woocommerce div.product .upsells.products>h2{font-size:clamp(32px,3vw,44px);letter-spacing:-1px;margin:0 0 28px}
.woocommerce div.product .related.products ul.products,
.woocommerce div.product .upsells.products ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;width:100%;margin:0;padding:0;list-style:none}
.woocommerce div.product .related.products ul.products li.product,
.woocommerce div.product .upsells.products ul.products li.product{float:none;clear:none;width:100%;min-width:0;margin:0;display:flex;flex-direction:column;position:relative}
.woocommerce div.product .related.products li.product>a.woocommerce-LoopProduct-link,
.woocommerce div.product .upsells.products li.product>a.woocommerce-LoopProduct-link{display:block}
.woocommerce div.product .related.products li.product img,
.woocommerce div.product .upsells.products li.product img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;margin:0 0 16px}
.woocommerce div.product .related.products .woocommerce-loop-product__title,
.woocommerce div.product .upsells.products .woocommerce-loop-product__title{font-size:26px;line-height:1.15;letter-spacing:0;padding:0;margin:0 0 12px;overflow-wrap:break-word}
.woocommerce div.product .related.products li.product .price,
.woocommerce div.product .upsells.products li.product .price{font-size:14px;line-height:1.5;margin:0 0 16px}
.woocommerce div.product .related.products li.product>a.button,
.woocommerce div.product .upsells.products li.product>a.button{align-self:flex-start;margin-top:auto;line-height:1.4;white-space:normal;text-align:center;padding:12px 18px;max-width:100%}
@media(max-width:900px){.woocommerce div.product .related.products ul.products,.woocommerce div.product .upsells.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}}
@media(max-width:480px){.woocommerce div.product .related.products .woocommerce-loop-product__title,.woocommerce div.product .upsells.products .woocommerce-loop-product__title{font-size:23px}.woocommerce div.product .related.products li.product>a.button,.woocommerce div.product .upsells.products li.product>a.button{font-size:12px;padding:10px 12px}}

/* Keep the hero caption clear of the arched clipping edge. */
.heroart .hivenote{writing-mode:horizontal-tb;top:auto;right:auto;left:24px;bottom:28px;max-width:calc(100% - 158px);padding:10px 14px;background:#30372b;color:#fff9e9;font-size:12px;font-weight:600;line-height:1.5;letter-spacing:1px;z-index:2;border:1px solid #fff9e940}
@media(max-width:600px){.heroart .hivenote{left:18px;bottom:28px;max-width:calc(100% - 146px);padding:9px 11px;font-size:11px;letter-spacing:.7px}}

/* Back-in-stock email form: match the farm storefront. */
.woocommerce .cwginstock-subscribe-form{margin:24px 0;width:100%;font-family:'DM Sans',sans-serif;color:var(--ink)}
.woocommerce .cwginstock-subscribe-form .panel,
.woocommerce .cwginstock-subscribe-form .panel-primary{border:1px solid var(--line)!important;background:#fffdf6!important;border-radius:0!important;box-shadow:none!important;overflow:hidden}
.woocommerce .cwginstock-subscribe-form .panel-heading{background:var(--olive)!important;color:var(--cream)!important;border:0!important;border-radius:0!important;padding:18px 22px!important;text-align:left}
.woocommerce .cwginstock-subscribe-form .panel-heading h4,
.woocommerce .cwginstock-subscribe-form .panel-title{color:var(--cream)!important;font-family:'Libre Caslon Display',Georgia,serif!important;font-size:27px!important;font-weight:400!important;line-height:1.2!important;margin:0!important;letter-spacing:0!important}
.woocommerce .cwginstock-subscribe-form .panel-body{padding:24px!important;background:#fffdf6!important;color:var(--ink)!important}
.woocommerce .cwginstock-subscribe-form input[type=text],
.woocommerce .cwginstock-subscribe-form input[type=email]{width:100%!important;max-width:100%;height:auto!important;min-height:48px;border:1px solid #bbc0ae!important;border-radius:0!important;background:var(--cream)!important;color:var(--ink)!important;font:inherit!important;font-size:14px!important;text-align:left!important;padding:12px 14px!important;box-shadow:none!important}
.woocommerce .cwginstock-subscribe-form input::placeholder{color:#68705f;opacity:1}
.woocommerce .cwginstock-subscribe-form input[type=submit],
.woocommerce .cwginstock-subscribe-form button[type=submit],
.woocommerce .cwginstock-subscribe-form .cwgstock_button{width:100%!important;height:auto!important;background:var(--olive)!important;color:#fff9e9!important;border:1px solid var(--olive)!important;border-radius:0!important;box-shadow:none!important;padding:14px 20px!important;font:inherit!important;font-size:13px!important;font-weight:600!important;line-height:1.4!important;cursor:pointer}
.woocommerce .cwginstock-subscribe-form input[type=submit]:hover,
.woocommerce .cwginstock-subscribe-form button[type=submit]:hover{background:#536047!important;border-color:#536047!important}
.woocommerce .cwginstock-subscribe-form input:focus-visible,
.woocommerce .cwginstock-subscribe-form button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.woocommerce .cwginstock-subscribe-form input:disabled,
.woocommerce .cwginstock-subscribe-form button:disabled{opacity:.6;cursor:default}
@media(max-width:600px){.woocommerce .cwginstock-subscribe-form .panel-body{padding:18px!important}.woocommerce .cwginstock-subscribe-form .panel-heading{padding:16px 18px!important}}

/* A compact catalog heading leaves more room for the honey selection. */
.woocommerce .woocommerce-products-header .page-title{font-size:clamp(36px,4vw,54px);line-height:1.1;letter-spacing:-1px;margin:0 0 24px}
