
:root{
  --cream:#fff8ed; --cream-2:#f6eddf; --leaf:#24543d; --leaf-2:#18392b; --sage:#79956d; --mint:#e8f2df; --tomato:#cf5b3f; --honey:#dfa840; --olive:#6e7f3f; --ink:#202018; --muted:#6d675d; --line:#e7dccb; --card:#fffdf8; --shadow:0 24px 70px rgba(32,32,24,.12); --radius:26px; --radius-sm:16px; --max:1200px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--ink);background:linear-gradient(180deg,var(--cream),#fffdf8 45%,#fbf5eb);line-height:1.65} a{color:inherit} img{max-width:100%;display:block}.skip-link{position:absolute;left:-999px;top:auto}.skip-link:focus{left:1rem;top:1rem;z-index:999;background:white;padding:.7rem 1rem;border-radius:1rem}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem clamp(1rem,3vw,2.2rem);backdrop-filter:saturate(160%) blur(18px);background:rgba(255,248,237,.86);border-bottom:1px solid rgba(36,84,61,.1)}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,var(--leaf),#376e50);color:#fff;font-weight:900;letter-spacing:.04em;box-shadow:0 12px 28px rgba(36,84,61,.2)}.brand strong{display:block;font-family:Georgia,serif;font-size:1.05rem;line-height:1.1}.brand small{display:block;color:var(--muted);font-size:.78rem;margin-top:.12rem}.main-nav{display:flex;align-items:center;gap:.2rem}.main-nav a{text-decoration:none;color:#342f28;padding:.7rem .9rem;border-radius:999px;font-weight:750;font-size:.93rem}.main-nav a:hover,.main-nav a.active{background:var(--mint);color:var(--leaf)}.menu-toggle{display:none;border:0;background:var(--leaf);border-radius:14px;width:44px;height:44px;padding:10px;cursor:pointer}.menu-toggle span{display:block;height:2px;background:#fff;margin:5px 0;border-radius:2px}.container{max-width:var(--max);margin:0 auto;padding:clamp(2rem,5vw,5rem) clamp(1rem,3vw,2rem)}.hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(320px,.96fr);gap:clamp(2rem,5vw,4rem);align-items:center;max-width:calc(var(--max) + 80px);margin:0 auto;padding:clamp(3rem,7vw,6rem) clamp(1rem,4vw,3rem)}.hero:before{content:"";position:absolute;inset:8% 0 auto 55%;height:420px;border-radius:999px;background:radial-gradient(circle,rgba(223,168,64,.25),transparent 65%);z-index:-1}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.14em;font-size:.77rem;font-weight:900;color:var(--tomato);margin-bottom:.75rem}.eyebrow:before{content:"";width:34px;height:2px;background:var(--honey)}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;color:#1e2b20;margin:0 0 1rem}h1{font-size:clamp(2.65rem,7vw,5.6rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.035em}h3{font-size:1.35rem}p{margin:0 0 1rem;color:#4e493f}.lead{font-size:clamp(1.05rem,2vw,1.28rem);color:#413b34;max-width:68ch}.hero-actions,.section-actions{display:flex;gap:.85rem;flex-wrap:wrap;margin-top:1.4rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none;border:1px solid transparent;border-radius:999px;padding:.9rem 1.25rem;font-weight:900;cursor:pointer;transition:.2s ease}.btn.primary{background:linear-gradient(135deg,var(--tomato),#b8452b);color:white;box-shadow:0 12px 30px rgba(207,91,63,.25)}.btn.secondary{background:white;color:var(--leaf);border-color:rgba(36,84,61,.18)}.btn:hover{transform:translateY(-1px)}.hero-card{background:#fff;border:1px solid rgba(36,84,61,.12);box-shadow:var(--shadow);border-radius:calc(var(--radius) + 8px);padding:1rem;overflow:hidden}.hero-image{width:100%;height:min(520px,56vw);min-height:320px;object-fit:contain;object-position:center;border-radius:var(--radius);clip-path:inset(0 round var(--radius));background:#fff}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-top:1rem}.metric{background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:18px;padding:1rem}.metric strong{display:block;font-size:1.45rem;color:var(--leaf)}.metric span{font-size:.85rem;color:var(--muted);font-weight:800}.section-head{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1.6rem}.section-head p{max-width:760px}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.feature-card,.product-card,.article-card,.value-card,.process-card{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.35rem;box-shadow:0 12px 36px rgba(32,32,24,.06)}.feature-card:before,.product-card:before,.article-card:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,var(--leaf),var(--honey),var(--tomato))}.feature-card h3,.product-card h3,.article-card h3{margin-top:.4rem}.chip-row,.filter-row,.contact-chips{display:flex;gap:.55rem;flex-wrap:wrap}.chip,.product-tag,.category-tag{display:inline-flex;align-items:center;border-radius:999px;background:var(--mint);color:var(--leaf);padding:.35rem .62rem;font-size:.78rem;font-weight:900;text-decoration:none}.product-card{text-decoration:none;display:flex;flex-direction:column;min-height:245px}.product-card h3{font-size:1.12rem}.product-card p{font-size:.93rem}.product-meta{margin-top:auto;display:flex;gap:.45rem;flex-wrap:wrap}.product-meta span{font-size:.75rem;font-weight:900;color:#594f40;background:#f5ebdc;border:1px solid var(--line);border-radius:999px;padding:.25rem .5rem}.article-card{text-decoration:none;min-height:190px}.filters{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1rem;box-shadow:0 10px 30px rgba(32,32,24,.05);margin-bottom:1.2rem}.search-input{width:100%;border:1px solid var(--line);border-radius:18px;padding:1rem 1.1rem;font:inherit;margin-bottom:.8rem;background:#fffaf2}.filter-btn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.55rem .75rem;font-weight:900;color:#4f493f;cursor:pointer}.filter-btn.active,.filter-btn:hover{background:var(--leaf);border-color:var(--leaf);color:#fff}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:2rem;align-items:center}.panel{background:linear-gradient(160deg,#fffdf8,#f8efdf);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.4rem,4vw,2.4rem);box-shadow:var(--shadow)}.soft-section{background:linear-gradient(135deg,#edf5e6,#fff7e8);border-top:1px solid rgba(36,84,61,.1);border-bottom:1px solid rgba(36,84,61,.1)}.list-check{display:grid;gap:.75rem;margin:1rem 0 0;padding:0;list-style:none}.list-check li{padding-left:2rem;position:relative}.list-check li:before{content:"✓";position:absolute;left:0;top:.05rem;background:var(--leaf);color:#fff;width:1.32rem;height:1.32rem;border-radius:50%;display:grid;place-items:center;font-size:.8rem;font-weight:900}.breadcrumb{font-size:.9rem;color:var(--muted);margin-bottom:1rem}.breadcrumb a{color:var(--leaf);font-weight:900;text-decoration:none}.product-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.detail-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.detail-table th,.detail-table td{text-align:left;padding:.9rem 1rem;border-bottom:1px solid var(--line);vertical-align:top}.detail-table th{width:32%;background:#fff6e8;color:var(--leaf)}.detail-table tr:last-child th,.detail-table tr:last-child td{border-bottom:0}.faq-section{max-width:var(--max);margin:0 auto;padding:clamp(2rem,5vw,5rem) clamp(1rem,3vw,2rem)}.faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.faq-grid details{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem}.faq-grid summary{font-weight:900;cursor:pointer;color:var(--leaf)}.contact-panel{max-width:var(--max);margin:clamp(2rem,5vw,4rem) auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:1.5rem;padding:clamp(1rem,3vw,2rem);background:linear-gradient(135deg,var(--leaf-2),var(--leaf));color:#fff;border-radius:calc(var(--radius) + 10px);box-shadow:var(--shadow)}.contact-panel h2,.contact-panel p,.contact-panel a,.contact-panel .eyebrow{color:#fff}.contact-panel .eyebrow:before{background:var(--honey)}.contact-chips a,.contact-chips span{display:inline-flex;border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:.45rem .7rem;text-decoration:none;font-weight:850;background:rgba(255,255,255,.08)}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);padding:1rem}.contact-form label{font-size:.84rem;font-weight:900;color:#fff}.contact-form input,.contact-form textarea{width:100%;margin-top:.32rem;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.94);border-radius:14px;padding:.82rem .9rem;font:inherit;color:var(--ink)}.contact-form .full,.contact-form button,.form-note{grid-column:1/-1}.form-note{font-size:.78rem;color:rgba(255,255,255,.78);margin:0}.hp-field{display:none!important}.thank-you-modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.32);padding:1rem}.thank-you-modal.show{display:flex}.thank-you-modal div{background:#fff;border-radius:24px;padding:1.6rem 2rem;text-align:center;box-shadow:var(--shadow);color:var(--leaf);font-size:1.1rem}.site-footer{background:#1b2b21;color:#fff;margin-top:3rem}.footer-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.4fr .8fr 1fr .8fr;gap:1.5rem;padding:3rem 1.2rem}.footer-grid p,.footer-grid a{color:rgba(255,255,255,.78)}.footer-grid a{display:block;text-decoration:none;margin:.22rem 0}.footer-grid h3{font-family:inherit;font-size:1rem;color:#fff;letter-spacing:.05em;text-transform:uppercase}.footer-brand .brand-mark{background:linear-gradient(135deg,var(--honey),var(--tomato))}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:1rem;text-align:center;color:rgba(255,255,255,.68);font-size:.86rem}.notice{border-left:5px solid var(--honey);padding:1rem 1.1rem;background:#fff8e9;border-radius:14px;margin:1rem 0}.article-body h2,.product-body h2{margin-top:2rem}.article-body ul,.product-body ul{padding-left:1.2rem}.article-body li,.product-body li{margin:.45rem 0}.toc{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1rem;margin:1.2rem 0}.toc a{display:inline-flex;margin:.25rem .6rem .25rem 0;color:var(--leaf);font-weight:900}.no-results{display:none;text-align:center;padding:2rem;border:1px dashed var(--line);border-radius:var(--radius);background:#fff}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-top:1.2rem}.stat-strip div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem}.stat-strip strong{display:block;color:var(--tomato);font-size:1.6rem}.mini-callout{background:linear-gradient(135deg,#fff,#f7eddf);border:1px solid var(--line);border-radius:22px;padding:1.2rem;margin:1rem 0}.two-col-list{columns:2;column-gap:2rem}.two-col-list li{break-inside:avoid;margin-bottom:.55rem}
@media (max-width:980px){.main-nav{position:absolute;right:1rem;top:70px;display:none;flex-direction:column;align-items:stretch;width:min(320px,calc(100vw - 2rem));background:#fff;border:1px solid var(--line);border-radius:20px;padding:.6rem;box-shadow:var(--shadow)}.main-nav.open{display:flex}.menu-toggle{display:block}.hero,.split,.contact-panel,.product-detail-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.hero-image{height:380px}.section-head{display:block}.stat-strip{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.brand small{display:none}.card-grid,.faq-grid,.footer-grid,.metric-row,.stat-strip{grid-template-columns:1fr}.contact-form{grid-template-columns:1fr}.container{padding-left:1rem;padding-right:1rem}.hero{padding-top:2.2rem}.hero-image{height:290px;min-height:0}h1{font-size:2.55rem}.two-col-list{columns:1}.product-card{min-height:auto}}
/* Deployment: supplied logo image replaces the legacy text mark. */
.brand img.brand-mark{width:50px;height:50px;max-width:50px;object-fit:contain;border-radius:0;background:transparent;box-shadow:none;color:transparent;letter-spacing:normal}
.footer-brand img.brand-mark{width:50px;height:50px;max-width:50px;object-fit:contain;border-radius:0;background:transparent;box-shadow:none}


/* Final image-corner correction: keep the rendered artwork and the rounded box identical. */
.hero-card{display:flex;align-items:center;justify-content:center;background:#fff;overflow:hidden}
.hero-card .hero-image{
  display:block;
  width:auto!important;
  max-width:100%;
  height:auto!important;
  max-height:min(720px,78vh);
  min-height:0!important;
  margin:0 auto;
  object-fit:unset;
  object-position:unset;
  border-radius:var(--radius);
  clip-path:inset(0 round var(--radius));
  overflow:hidden;
  background:#fff;
}

/* Animated form-submission state and success confirmation. */
.ajax-form.is-submitting{pointer-events:none}
.ajax-form.is-submitting input,.ajax-form.is-submitting textarea{opacity:.72}
.ajax-form button[type="submit"]{position:relative;overflow:hidden;transition:transform .2s ease,filter .2s ease,opacity .2s ease}
.ajax-form button[type="submit"].is-loading{padding-left:3rem;filter:saturate(.85);cursor:wait}
.ajax-form button[type="submit"].is-loading:before{
  content:"";position:absolute;left:1.15rem;width:1.05rem;height:1.05rem;border:2px solid rgba(255,255,255,.45);
  border-top-color:#fff;border-radius:50%;animation:formSpin .75s linear infinite
}
.thank-you-modal{background:rgba(16,34,24,.52);backdrop-filter:blur(7px);opacity:0;visibility:hidden;display:flex;transition:opacity .28s ease,visibility .28s ease}
.thank-you-modal.show{opacity:1;visibility:visible}
.thank-you-modal>div{position:relative;min-width:min(440px,calc(100vw - 2rem));padding:5.4rem 2rem 2rem;transform:translateY(22px) scale(.92);opacity:0;overflow:hidden}
.thank-you-modal.show>div{animation:successCard .65s cubic-bezier(.2,.9,.25,1.2) forwards}
.thank-you-modal>div:before{
  content:"";position:absolute;top:1.35rem;left:50%;width:58px;height:58px;transform:translateX(-50%);
  border-radius:50%;background:var(--leaf);box-shadow:0 0 0 10px rgba(36,84,61,.12)
}
.thank-you-modal>div:after{
  content:"";position:absolute;top:2.05rem;left:50%;width:24px;height:13px;border-left:4px solid #fff;border-bottom:4px solid #fff;
  transform:translateX(-50%) rotate(-45deg) scale(0);transform-origin:center;animation:none
}
.thank-you-modal.show>div:after{animation:successCheck .45s .35s cubic-bezier(.2,.9,.3,1.35) forwards}
.thank-you-modal .success-spark{position:absolute;top:2.95rem;left:50%;width:7px;height:7px;border-radius:50%;background:var(--honey);opacity:0}
.thank-you-modal.show .success-spark{animation:sparkBurst .8s .25s ease-out forwards}
.thank-you-modal .spark-1{--x:-82px;--y:-32px}.thank-you-modal .spark-2{--x:78px;--y:-28px}.thank-you-modal .spark-3{--x:-66px;--y:48px}.thank-you-modal .spark-4{--x:70px;--y:45px}
@keyframes formSpin{to{transform:rotate(360deg)}}
@keyframes successCard{to{transform:translateY(0) scale(1);opacity:1}}
@keyframes successCheck{to{transform:translateX(-50%) rotate(-45deg) scale(1)}}
@keyframes sparkBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}35%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1.25)}}
@media (prefers-reduced-motion:reduce){.ajax-form button[type="submit"].is-loading:before,.thank-you-modal.show>div,.thank-you-modal.show>div:after,.thank-you-modal.show .success-spark{animation-duration:.01ms!important;animation-delay:0s!important}}
