*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#171513;background:#f7f2e9;font-family:"Cormorant Garamond",Georgia,serif;font-size:18px;line-height:1.5}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.14;background-image:repeating-linear-gradient(0deg,transparent 0,transparent 5px,rgba(91,73,50,.08) 6px,transparent 7px);z-index:20}.site-header{background:#f8f1e5;border-bottom:1px solid #a86c62;position:sticky;top:0;z-index:10;box-shadow:0 3px 15px #5a47331c}.header-inner{max-width:1200px;margin:auto;padding:14px 25px;display:flex;align-items:center;justify-content:space-between}.brand{text-decoration:none;color:#111;text-align:center;line-height:1}.brand-script{display:block;font-family:"Great Vibes",cursive;font-size:42px}.brand-main{display:block;font-family:Oswald,sans-serif;font-weight:600;font-size:27px;letter-spacing:3px}.brand-main i{font-family:"Cormorant Garamond",serif;color:#a55f58;font-style:normal}.brand-sub{display:block;font:11px Oswald,sans-serif;letter-spacing:2px;color:#7d5c53;margin-top:5px}.main-nav{display:flex;gap:25px}.main-nav a{font:14px Oswald,sans-serif;letter-spacing:1.4px;text-transform:uppercase;color:#24201d;text-decoration:none}.main-nav a:hover{color:#a45f57}.menu-toggle{display:none;background:none;border:0;font-size:25px}.hero{min-height:650px;position:relative;display:grid;place-items:center;text-align:center;background:linear-gradient(#f5efe4d9,#f5efe4d9),url("../images/brand-inspiration.png") center/cover}.hero:after{content:"";position:absolute;inset:18px;border:1px solid #a86c62;pointer-events:none}.hero-content{position:relative;z-index:2;max-width:950px;padding:70px 30px}.ornament{font-size:48px;color:#a55f58}.hero-script,.story-signature{font-family:"Great Vibes",cursive;color:#111}.hero-script{font-size:105px;line-height:.85}.hero h1{font-family:Oswald,sans-serif;font-size:78px;letter-spacing:5px;margin:12px 0;color:#0c0b0a}.hero h1 span{color:#a55f58;font-family:"Cormorant Garamond",serif}.tagline{font:20px Oswald,sans-serif;letter-spacing:4px;text-transform:uppercase}.hero-copy{max-width:560px;margin:20px auto 30px}.btn{display:inline-block;padding:12px 24px;border-radius:0;text-decoration:none;font:14px Oswald,sans-serif;letter-spacing:1.6px;text-transform:uppercase;cursor:pointer;border:1px solid #a55f58}.btn-primary{background:#a55f58;color:white}.btn-primary:hover{background:#874c47}.btn-outline{background:transparent;color:#794b45}.section{max-width:1120px;margin:auto;padding:52px 25px}.paper-section{max-width:none;background:#eee5d7;border-top:1px solid #d3c4ad;border-bottom:1px solid #d3c4ad}.paper-section>*{max-width:1120px;margin-left:auto;margin-right:auto}.section-heading{text-align:center;margin-bottom:26px}.eyebrow{font:13px Oswald,sans-serif;text-transform:uppercase;letter-spacing:3px;color:#a55f58}.section-heading h2{font:600 46px "Playfair Display",serif;margin:5px 0 8px}.divider{font-size:27px;color:#a55f58}.intro{text-align:center;max-width:900px}.intro p{font-size:22px}.market-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.market-card{background:#f8f3e9;border:1px solid #d0c0a9;padding:25px;display:flex;gap:20px;align-items:center}.market-date{width:75px;min-width:75px;text-align:center;background:#a55f58;color:#fff;padding:8px}.market-date span,.market-date strong{display:block}.market-date span{font:13px Oswald,sans-serif;text-transform:uppercase}.market-date strong{font:40px Oswald,sans-serif}.market-card h3{margin:0;font-size:23px}.market-card p{margin:2px 0}.muted{color:#746b61}.center{text-align:center;margin-top:35px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.product-grid-large{grid-template-columns:repeat(4,1fr)}.product-card{background:#fffaf2;border:1px solid #d5c6b0;box-shadow:0 4px 15px #66513a14}.product-photo{aspect-ratio:1/1;background:#e8decd;overflow:hidden}.product-photo img{width:100%;height:100%;object-fit:cover}.photo-placeholder{height:100%;display:grid;place-items:center;text-align:center;color:#a55f58;font:40px "Great Vibes",cursive}.photo-placeholder span{font:14px Oswald,sans-serif}.product-info{padding:16px}.category{font:11px Oswald,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:#a55f58}.product-info h3{margin:3px 0;font-size:24px}.product-info p{margin:5px 0;color:#6e665d}.price{font:17px Oswald,sans-serif;color:#7f4c46}.quote-section{padding:52px 25px;background:#a55f58;color:white;text-align:center}.quote-section p .quote-mark{font:56px Georgia,serif;line-height:0;vertical-align:-.18em;display:inline-block}.quote-section p .quote-mark-open{margin-right:8px}.quote-section p .quote-mark-close{margin-left:8px}.quote-section p{font:32px "Playfair Display",serif;margin:0 0 16px}.quote-section span{font:13px Oswald,sans-serif;letter-spacing:2px;text-transform:uppercase}.site-footer{text-align:center;padding:55px 25px;background:#e9decd;border-top:1px solid #cdbba0}.footer-vine{color:#a55f58;letter-spacing:4px}.footer-brand{font:30px "Playfair Display",serif;margin-top:15px}.site-footer p{margin:5px}.copyright{font-size:14px;color:#746b61}.page-main{min-height:60vh}.page-hero{text-align:center;padding:90px 25px;background:#eee5d7;border-bottom:1px solid #d2c2a9}.page-hero .hero-script{font-size:75px}.page-hero h1{font:600 58px Oswald,sans-serif;letter-spacing:5px;margin:0}.page-hero p{max-width:650px;margin:15px auto}.market-list{max-width:900px;margin:auto}.market-list-item{display:flex;gap:30px;padding:30px 0;border-bottom:1px solid #cdbda6}.big-date{min-width:110px;width:110px;height:110px;text-align:center;background:#a55f58;color:white;padding:10px;display:flex;flex-direction:column;justify-content:center}.big-date span{font:15px Oswald,sans-serif;text-transform:uppercase}.big-date strong{font:48px Oswald,sans-serif;line-height:1}.big-date small{font:12px Oswald,sans-serif}.market-details h3{font-size:30px;margin:0}.market-details p{margin:3px 0}.location{font-size:19px}.text-link{color:#8c4e48;font:14px Oswald,sans-serif;text-transform:uppercase;letter-spacing:1px}.past-markets{max-width:800px;margin:auto}.past-markets div{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px dotted #b9a78d}.past-markets span{color:#756c61}.category-filter{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:40px}.category-filter a{font:13px Oswald,sans-serif;text-transform:uppercase;letter-spacing:1px;padding:8px 14px;border:1px solid #cbbca5;color:#624d46;text-decoration:none}.category-filter a.active,.category-filter a:hover{background:#a55f58;color:white}.story{max-width:850px}.story-card{text-align:center;background:#fffaf2;border:1px solid #d1c0a8;padding:44px;box-shadow:0 10px 30px #55432a12}.story-ornament{color:#a55f58;font-size:30px}.story-card h2{font:600 38px "Playfair Display",serif}.story-card p{font-size:21px}.story-signature{font-size:65px;margin-top:25px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-grid h2{font:600 38px "Playfair Display",serif}.contact-detail{margin:25px 0}.contact-detail strong,.contact-detail span{display:block}.contact-detail strong{font:13px Oswald,sans-serif;text-transform:uppercase;letter-spacing:2px;color:#a55f58}.contact-form label,.admin-form label,.login-box label{display:block;font:13px Oswald,sans-serif;text-transform:uppercase;letter-spacing:1px;margin-bottom:18px}input,textarea,select{width:100%;margin-top:7px;padding:12px;border:1px solid #cdbda7;background:#fffdf8;font:17px "Cormorant Garamond",serif}textarea{resize:vertical}.admin-main{max-width:1500px;margin:auto;padding:50px 25px}.admin-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.admin-head h1{font:48px Oswald,sans-serif;margin:0}.admin-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.admin-cards a{padding:35px;background:#fffaf2;border:1px solid #d2c0a7;text-decoration:none;color:#201d19;text-align:center}.admin-cards strong,.admin-cards span{display:block}.admin-cards strong{font:55px Oswald,sans-serif;color:#a55f58}.admin-cards span{font:14px Oswald,sans-serif;text-transform:uppercase;letter-spacing:2px}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;background:#fffaf2}.admin-table th,.admin-table td{text-align:left;padding:14px;border-bottom:1px solid #ded0ba}.admin-table th{font:13px Oswald,sans-serif;text-transform:uppercase;letter-spacing:1px;background:#e9decd}.admin-table a{color:#8b5049}.admin-form{background:#fffaf2;border:1px solid #d3c0a5;padding:30px}.save-bar{position:fixed;left:0;right:0;bottom:0;background:#fffaf2;border-top:1px solid #d3c0a5;padding:14px 25px;text-align:right;z-index:500;box-shadow:0 -4px 15px rgba(90,71,51,.15)}.save-bar .btn{margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.check{display:flex!important;gap:8px;align-items:center}.check input{width:auto;margin:0}.alert{padding:13px 18px;margin-bottom:20px;border:1px solid}.alert.success{background:#e7efe2;border-color:#aabda0}.alert.error{background:#f2dfdc;border-color:#c89b95}.alert.warning{background:#f7eed2;border-color:#d8c37a}.alert.warning p{margin:6px 0 0}.totp-qr{display:flex;justify-content:center;align-items:center;min-height:216px;padding:8px;margin:18px auto 0;background:#fff;border:1px solid #e3d6bf;width:216px}.recovery-codes{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin-top:14px}.recovery-codes code{display:block;background:#fffaf2;border:1px solid #e3d6bf;padding:8px 10px;text-align:center;letter-spacing:1px}#flash-toast-container{position:fixed;top:100px;left:50%;transform:translateX(-50%);z-index:2000;display:flex;flex-direction:column;gap:10px;width:min(480px,90vw);pointer-events:none}.flash-toast{position:relative;margin-bottom:0;padding-right:34px;box-shadow:0 8px 24px rgba(20,15,5,.22);cursor:pointer;opacity:0;transform:translateY(-12px);transition:opacity .25s ease,transform .25s ease;pointer-events:auto}.flash-toast.show{opacity:1;transform:translateY(0)}.flash-toast-close{position:absolute;top:8px;right:12px;font-size:19px;line-height:1;opacity:.55}@media(max-width:800px){#flash-toast-container{top:80px}}.login-main{display:grid;place-items:center;padding:70px 25px}.login-box{width:min(450px,100%);padding:40px;background:#fffaf2;border:1px solid #d1bea4}.login-box h1{font:38px Oswald,sans-serif}.empty-state{text-align:center;padding:35px;border:1px dashed #cdbda6;color:#70675d}@media(max-width:800px){.header-inner{padding:12px 18px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#f8f1e5;flex-direction:column;padding:20px;text-align:center;border-bottom:1px solid #a86c62}.main-nav.open{display:flex}.hero{min-height:560px}.hero-script{font-size:76px}.hero h1{font-size:54px}.market-grid,.product-grid,.product-grid-large,.contact-grid,.admin-cards{grid-template-columns:1fr}.section{padding:60px 20px}.page-hero .hero-script{font-size:60px}.page-hero h1{font-size:43px}.market-list-item{gap:18px}.big-date{min-width:85px;width:85px;height:95px}.big-date strong{font-size:40px}.story-card{padding:35px 22px}.form-grid{grid-template-columns:1fr}.admin-head{align-items:flex-start;gap:15px;flex-direction:column}.section{padding:42px 20px}}

.setup-box{max-width:520px}.setup-note{font-size:14px;color:#746b61;margin-top:20px}

/* 2026 farmhouse brand refresh */
body{background:#f8f2e8}
.site-header{background:rgba(250,246,238,.97);border-top:5px solid #2c2119;border-bottom:2px solid #aa6b62;box-shadow:0 5px 20px #4c35251f}
.header-inner{padding-top:10px;padding-bottom:10px}
.brand-script{font-size:38px}
.brand-main{font-size:24px}
.brand-sub{font-size:9px;letter-spacing:1.2px;color:#58483c}
.brand-sub b{color:#a65f58;font-size:8px}
.brand-llc{font-size:.55em;letter-spacing:1px;font-weight:500}
.main-nav a{padding:8px 2px;border-bottom:2px solid transparent}
.main-nav a:hover,.main-nav a:focus{border-bottom-color:#a45f57}
.menu-toggle{border:1px solid #a86c62;color:#241c17;padding:4px 10px}
.hero{min-height:0;display:block;text-align:left;position:relative;border-bottom:1px solid #cdb99f;background:linear-gradient(rgba(245,238,226,.5),rgba(245,238,226,.7)),repeating-linear-gradient(0deg,#f4ecdf 0,#f4ecdf 10px,#eee3d3 11px,#f7f0e5 12px)}
.hero-inner{max-width:1160px;margin:auto;padding:46px 25px 40px;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.hero-eyebrow{font:13px Oswald,sans-serif;letter-spacing:3px;text-transform:uppercase;color:#a55f58;margin:0 0 10px}
.hero h1{font:600 44px "Playfair Display",serif;margin:0 0 14px;line-height:1.14;letter-spacing:normal;color:#0c0b0a}
.hero-copy{font-size:20px;color:#3a332c;margin:0 0 22px;max-width:480px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:24px}
.hero-trust{display:flex;gap:20px;flex-wrap:wrap;font:12px Oswald,sans-serif;letter-spacing:.5px;text-transform:uppercase;color:#5c5245}
.hero-photo-wrap{position:relative}
.hero-photo-wrap img{display:block;width:100%;height:auto;border:1px solid #8c5b4d;box-shadow:0 18px 40px rgba(49,34,23,.25)}
.hero-photo-wrap:before{content:"";position:absolute;inset:-10px;border:1px solid #a86c62;pointer-events:none;z-index:-1}
.section-heading.with-action{display:flex;align-items:baseline;justify-content:space-between;gap:20px;text-align:left}
.section-heading.with-action .heading-text{text-align:left}
.strip{background:#eee5d7;border-top:1px solid #d3c4ad;border-bottom:1px solid #d3c4ad}
.strip-inner{max-width:1160px;margin:auto;padding:44px 25px;display:grid;grid-template-columns:1.3fr 1fr;gap:36px;align-items:center}
.strip h3{font:600 26px "Playfair Display",serif;margin:0 0 8px}
.strip p{font-size:18px;margin:0}
.market-card-logo{width:70px;height:70px;object-fit:contain;flex-shrink:0;background:#fff}
.quote-mark-close{margin-top:8px}
.btn{transition:transform .2s ease,background .2s ease}
.btn-primary{box-shadow:3px 3px 0 #2b211a}
.btn-primary:hover,.btn-primary:focus{transform:translateY(-1px)}
.btn-outline{background:#fffaf1}
.btn-outline:hover,.btn-outline:focus{background:#eee1d0}
.market-card{background:#fffaf1;border-color:#c8b395;border-top:4px solid #a55f58;box-shadow:0 7px 18px #4b342417}
.product-card{border-color:#cbb798;box-shadow:0 8px 22px #4d35221c;transition:transform .2s ease,box-shadow .2s ease}
.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #4d35222b}
.page-hero{padding:50px 25px;background:linear-gradient(rgba(244,236,223,.94),rgba(244,236,223,.94)),url("../images/brand-inspiration.png") center/cover;border-top:7px double #2f241c;border-bottom:7px double #a96860}
.page-hero:after{content:"♡";display:block;color:#a55f58;font-size:30px;margin-top:13px}
.story-card,.contact-form,.admin-form,.login-box{border-color:#c9b394;box-shadow:0 9px 25px #4d352218}
@media(max-width:800px){.header-inner{padding:10px 16px}.brand{text-align:left}.brand-script{font-size:31px}.brand-main{font-size:18px;letter-spacing:2px}.brand-sub{display:none}.hero{min-height:0}.hero-inner{grid-template-columns:1fr;padding:30px 20px 34px;gap:26px}.hero-photo-wrap{order:-1}.hero h1{font-size:32px}.hero-copy{font-size:18px}.section-heading.with-action{flex-direction:column;align-items:flex-start;gap:10px}.strip-inner{grid-template-columns:1fr;padding:34px 20px}}

/* Cart / checkout / product detail additions */
.product-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}
.product-photo-large{aspect-ratio:1/1}
.product-detail .price{font-size:26px;display:block;margin:10px 0}
.link-btn{background:none;border:0;padding:0;color:#8b5049;font:inherit;text-decoration:underline;cursor:pointer}
#ship-fields label{margin-bottom:14px}
@media(max-width:800px){.product-detail-grid{grid-template-columns:1fr}}

.hp-field{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}

/* Stock indicator */
.stock-note{font:14px Oswald,sans-serif;letter-spacing:.5px;color:#5c7a52;margin:6px 0 14px}
.stock-note.stock-low{color:#a55f58;font-weight:600}
.stock-badge{font:12px Oswald,sans-serif;letter-spacing:.5px;color:#8a7c6a;margin-top:2px}
.stock-badge.stock-low{color:#a55f58}

/* Full business name in login/signup hero-script needs to fit a narrow card */
.login-box .hero-script{font-size:32px;line-height:1.2;margin-bottom:6px}

/* Legal pages */
.legal-content{max-width:800px}
.legal-content h2{font:600 26px "Playfair Display",serif;margin:34px 0 10px}
.legal-content h2:first-of-type{margin-top:10px}
.legal-content p,.legal-content li{font-size:18px;line-height:1.6}
.legal-content ul{padding-left:24px}
.legal-content a{color:#8c4e48}

/* Footer social + legal links */
.footer-social{margin-top:14px;font:13px Oswald,sans-serif;letter-spacing:1.5px;text-transform:uppercase}
.footer-social a{color:#794b45;text-decoration:none}
.footer-social a:hover{text-decoration:underline}
.footer-social span{color:#b9a78d;margin:0 8px}
.footer-legal{font-size:13px;margin-top:12px}
.footer-legal a{color:#8c4e48;text-decoration:none}
.footer-legal a:hover{text-decoration:underline}

/* Product photo gallery */
.photo-thumbs{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.photo-thumb{width:64px;height:64px;object-fit:cover;border:2px solid transparent;cursor:pointer;opacity:.7}
.photo-thumb:hover{opacity:1}
.photo-thumb.active{border-color:#a55f58;opacity:1}

/* Back-in-stock notify form */
.notify-form{display:flex;gap:10px;align-items:flex-end;margin:14px 0}
.notify-form label{flex:1;margin-bottom:0}

/* Site search */
.site-search{display:flex;align-items:center}
.site-search input{width:150px;padding:6px 10px;margin:0;font-size:14px}
