:root{--green:#173e32;--green-2:#285748;--sage:#dce7de;--sage-light:#edf3ee;--beige:#f4f0e7;--paper:#fffefa;--ink:#1e2b26;--muted:#62716a;--line:#d6ddd7;--accent:#bd7b4b;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.section-wide{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.review-bar{height:34px;padding:0 24px;background:#102d25;color:#eaf1ec;display:flex;align-items:center;justify-content:center;gap:24px;font-size:11px;letter-spacing:.12em}.review-bar strong{color:#f4d3ac}.site-header{height:92px;padding:0 max(32px,calc((100% - var(--max))/2));background:rgba(255,254,250,.96);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.brand{display:flex;align-items:baseline;gap:16px}.brand-name{font-family:Georgia,"Yu Mincho",serif;font-size:29px;letter-spacing:.16em}.brand-sub{font-size:12px;color:var(--muted);letter-spacing:.14em}.site-header nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:700}.nav-contact{background:var(--green);color:white;padding:13px 22px;border-radius:2px}.eyebrow{margin:0 0 18px;color:var(--green-2);font:700 11px/1.4 Arial,sans-serif;letter-spacing:.2em}.eyebrow.light{color:#c9ddd3}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,"Yu Mincho",serif;font-weight:500;letter-spacing:.025em}h1{font-size:clamp(42px,5.4vw,74px);line-height:1.24;margin-bottom:26px}h2{font-size:clamp(31px,3.7vw,48px);line-height:1.35;margin-bottom:24px}h3{font-size:24px;line-height:1.45}.lead{font-size:17px;color:#4d5b55;max-width:650px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;font-size:14px;font-weight:700;letter-spacing:.04em}.button.primary{background:var(--green);color:#fff}.button.secondary{border:1px solid var(--green);color:var(--green)}.button.pale{background:#f1e8d8;color:var(--green)}.home-hero{min-height:690px;padding:70px 0 80px;display:grid;grid-template-columns:1.02fr .98fr;gap:72px;align-items:center}.home-hero .review-image{height:540px}.hero-actions{display:flex;gap:12px;margin:36px 0 40px}.hero-points{display:flex;gap:42px;margin:0}.hero-points div{border-left:2px solid var(--sage);padding-left:14px}.hero-points dt{font-size:11px;color:var(--muted);letter-spacing:.12em}.hero-points dd{margin:2px 0 0;font-size:13px;font-weight:700}.review-image{margin:0;position:relative;overflow:hidden;background:#dde6df;aspect-ratio:4/3}.review-image img{width:100%;height:100%;object-fit:cover;display:block}.review-image figcaption{position:absolute;left:12px;bottom:12px;background:rgba(17,45,37,.9);color:white;padding:7px 11px;font-size:10px;letter-spacing:.05em}.intro{padding:110px 0;border-top:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:100px}.intro-grid p{font-size:16px;color:var(--muted);padding-top:10px}.product-entry{padding:110px 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:48px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:430px;color:var(--muted);margin-bottom:8px}.entry-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:24px}.entry-card{border:1px solid var(--line);background:white;overflow:hidden}.entry-card.featured{grid-row:span 2;display:flex;flex-direction:column}.entry-card.featured .review-image{aspect-ratio:16/10}.entry-card.text-card{min-height:290px;display:flex;align-items:end}.entry-card.soft{background:var(--sage-light)}.entry-body{padding:32px}.entry-body>span{font:700 10px Arial;letter-spacing:.18em;color:var(--green-2)}.entry-body h3{margin:10px 0}.entry-body p{color:var(--muted);font-size:14px}.entry-body b{font-size:13px}.entry-body em{font-style:normal;font-size:11px;color:#7d8b84}.delivery{padding:120px 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:center}.delivery>.review-image{grid-row:span 2}.delivery-list{list-style:none;margin:0;padding:0;display:flex;gap:24px}.delivery-list li{display:flex;align-items:center;gap:10px;font-size:13px}.delivery-list b{color:var(--accent)}.service-band{background:var(--green);color:white}.service-inner{padding:100px 0;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.service-inner p{color:#d6e1dc}.final-cta{text-align:center;padding:130px 0}.final-cta p{color:var(--muted)}.site-footer{background:#102d25;color:#e9efec;padding:70px max(32px,calc((100% - var(--max))/2));display:grid;grid-template-columns:1fr 1fr;gap:50px}.footer-brand{font-family:Georgia,"Yu Mincho",serif;font-size:28px;letter-spacing:.15em}.site-footer p,.site-footer span,.site-footer small{color:#aebfb7;font-size:12px}.footer-links{display:flex;flex-direction:column;gap:8px}.site-footer small{grid-column:1/-1;border-top:1px solid #315047;padding-top:24px}.bacon-hero{padding:70px 0 85px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.bacon-hero .review-image{height:480px}.comparison{padding:95px 0;background:var(--beige);box-shadow:0 0 0 100vmax var(--beige);clip-path:inset(0 -100vmax)}.cut-tabs{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #bdc8c0;border-left:1px solid #bdc8c0}.cut-tabs button{min-height:180px;padding:22px;background:transparent;border:0;border-right:1px solid #bdc8c0;border-bottom:1px solid #bdc8c0;text-align:left;color:var(--ink);cursor:pointer;display:flex;flex-direction:column}.cut-tabs button[aria-selected=true]{background:var(--green);color:white}.cut-tabs span{font:700 11px Arial;color:var(--accent)}.cut-tabs strong{font-family:Georgia,"Yu Mincho",serif;font-size:24px;margin:18px 0 5px}.cut-tabs small{margin-top:auto;color:inherit;opacity:.72}.cut-detail{padding:115px 0;display:grid;grid-template-columns:1fr 1fr;gap:80px}.cut-visual>p{font-size:11px;color:var(--muted);margin-top:12px}.cut-copy h2{font-size:56px}.positioning{padding:18px 20px;background:var(--sage-light);font-size:13px}.fact-list{margin-top:28px;border-top:1px solid var(--line)}.fact-list>div{display:grid;grid-template-columns:125px 1fr;gap:24px;padding:17px 0;border-bottom:1px solid var(--line)}.fact-list span{font-size:12px;color:var(--muted)}.fact-list strong{font-size:13px;font-weight:600}.use-section{padding:105px 0}.use-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.use-grid article{background:var(--sage-light);padding:30px;min-height:230px}.use-grid span{color:var(--accent);font:700 12px Arial}.use-grid h3{font-size:21px;margin:34px 0 10px}.use-grid p{font-size:13px;color:var(--muted)}.review-note{font-size:11px;color:var(--muted);margin-top:16px}.terms-section{background:var(--green);color:white;padding:105px 0}.terms-section .section-heading>p{color:#c9d7d1}.term-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #5b776d;border-left:1px solid #5b776d}.term-grid div{min-height:130px;padding:24px;border-right:1px solid #5b776d;border-bottom:1px solid #5b776d}.term-grid span{display:block;color:#b9cbc4;font-size:11px}.term-grid strong{display:block;margin-top:12px;font-size:16px}.group-cta{padding:110px 0;display:flex;align-items:center;justify-content:space-between;gap:40px}.group-cta h2{margin-bottom:8px}.group-cta p{color:var(--muted)}.contact-hero{padding:75px 0 65px;border-bottom:1px solid var(--line)}.contact-hero h1{margin-bottom:15px}.contact-layout{padding:80px 0 120px;display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:start}.form-step{display:flex;gap:22px;align-items:flex-start;margin-bottom:25px}.form-step>span{width:38px;height:38px;border-radius:50%;background:var(--green);color:white;display:grid;place-items:center;font:700 11px Arial}.form-step h2{font-size:28px;margin-bottom:4px}.form-step p{font-size:13px;color:var(--muted)}.form-step.second{margin-top:64px}.purpose-grid{border:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.purpose-grid label{cursor:pointer}.purpose-grid input{position:absolute;opacity:0}.purpose-grid span{height:66px;border:1px solid var(--line);display:flex;align-items:center;padding:0 16px;font-size:13px}.purpose-grid input:checked+span{background:var(--green);color:white;border-color:var(--green)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field-grid label,.full-field{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:700}.field-grid span,.full-field span{font-size:10px;background:#e8d8c4;color:#744928;padding:1px 7px;margin-left:8px}.field-grid em,.full-field em{font-size:10px;font-style:normal;color:var(--muted);margin-left:8px}.field-grid input,.full-field input,.full-field textarea{border:1px solid var(--line);background:white;padding:15px 16px;outline:none}.field-grid input:focus,.full-field input:focus,.full-field textarea:focus{border-color:var(--green)}.full-field{margin-top:22px}.privacy-check{display:flex;gap:10px;align-items:center;font-size:12px;margin:28px 0}.submit-disabled{width:100%;border:0;background:#9aa69f;color:white;min-height:58px;font-weight:700}.form-note{text-align:center;color:var(--muted);font-size:11px;margin-top:10px}.contact-aside{background:var(--green);color:white;padding:40px;position:sticky;top:120px}.contact-aside p{font-size:13px;color:#ccd9d3}.contact-aside dl{margin:35px 0}.contact-aside dl div{border-top:1px solid #58736a;padding:18px 0}.contact-aside dt{font-size:11px;color:#b7cac2}.contact-aside dd{margin:4px 0 0;font-size:13px}.contact-aside small{color:#b7cac2}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:820px){.section-wide{width:min(100% - 36px,var(--max))}.review-bar{height:auto;min-height:30px;gap:9px;padding:6px 12px;font-size:8px;letter-spacing:.06em}.site-header{height:72px;padding:0 18px}.brand-name{font-size:23px}.brand-sub{font-size:9px}.site-header nav a:not(.nav-contact){display:none}.nav-contact{padding:10px 13px;font-size:11px}h1{font-size:38px}h2{font-size:30px}.lead{font-size:14px}.home-hero,.bacon-hero{padding:50px 0 60px;grid-template-columns:1fr;gap:34px}.home-hero .review-image,.bacon-hero .review-image{height:auto;aspect-ratio:4/3;order:-1}.hero-actions{flex-direction:column}.hero-points{flex-direction:column;gap:14px}.intro,.product-entry,.delivery,.use-section,.final-cta{padding:75px 0}.intro-grid,.delivery,.service-inner,.cut-detail,.contact-layout{grid-template-columns:1fr;gap:35px}.intro-grid{gap:15px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:15px}.entry-grid{grid-template-columns:1fr}.entry-card.featured{grid-row:auto}.delivery>.review-image{grid-row:auto}.delivery-list{flex-direction:column}.service-inner{padding:75px 0}.site-footer{padding:55px 18px;grid-template-columns:1fr}.site-footer small{grid-column:1}.comparison{padding:70px 0}.cut-tabs{grid-template-columns:repeat(5,78vw);overflow-x:auto;scroll-snap-type:x mandatory}.cut-tabs button{min-height:150px;scroll-snap-align:start}.cut-detail{padding:75px 0}.cut-copy h2{font-size:44px}.fact-list>div{grid-template-columns:95px 1fr;gap:12px}.use-grid{grid-template-columns:1fr}.term-grid{grid-template-columns:1fr 1fr}.group-cta{padding:75px 0;display:block}.group-cta .button{margin-top:20px;width:100%}.contact-hero{padding:50px 0}.contact-layout{padding:55px 0 80px}.purpose-grid{grid-template-columns:1fr 1fr}.field-grid{grid-template-columns:1fr}.contact-aside{position:static;order:-1;padding:28px}.form-step.second{margin-top:48px}}
.home-hero>*,.bacon-hero>*{min-width:0}.review-image{min-width:0;max-width:100%}.review-image img{max-width:100%}
.field-grid select{border:1px solid var(--line);background:white;padding:15px 16px;outline:none;color:var(--ink)}.field-grid select:focus{border-color:var(--green)}
.contact-hero{background:var(--green);color:white;box-shadow:0 0 0 100vmax var(--green);clip-path:inset(0 -100vmax);padding-top:105px;padding-bottom:105px}.contact-hero .eyebrow{color:#c9ddd3}.contact-hero .lead{color:#d7e2dd}.contact-layout{grid-template-columns:.62fr 1.38fr;background:var(--beige);box-shadow:0 0 0 100vmax var(--beige);clip-path:inset(0 -100vmax);padding-top:100px}.contact-form{background:white;padding:52px}.contact-aside{order:-1;position:static;background:transparent;color:var(--ink);padding:16px 30px 30px 0}.contact-aside p,.contact-aside small{color:var(--muted)}.contact-aside dl div{border-color:#c9d1cb}.contact-aside dt{color:var(--green-2)}.before-list{list-style:none;margin:32px 0;padding:0;border-top:1px solid var(--line)}.before-list li{display:flex;gap:18px;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px;font-weight:700}.before-list span{font:700 10px Arial;color:var(--accent)}
.terms-copy{max-width:820px;margin:0;padding:30px 34px;border:1px solid #5b776d;background:rgba(255,255,255,.04);font-family:Georgia,"Yu Mincho",serif;font-size:21px;line-height:1.8}.pre-submit-note{margin:28px 0 18px;padding:18px 20px;background:var(--sage-light);color:var(--muted);font-size:12px;line-height:1.8}
@media(max-width:820px){.contact-hero{background:transparent;color:var(--ink);box-shadow:none;clip-path:none;padding-top:50px;padding-bottom:50px}.contact-hero .eyebrow{color:var(--green-2)}.contact-hero .lead{color:#4d5b55}.contact-layout{grid-template-columns:1fr;background:transparent;box-shadow:none;clip-path:none;padding-top:55px}.contact-form{padding:0}.contact-aside{background:var(--green);color:white;padding:28px}.contact-aside .eyebrow{color:#c9ddd3}.contact-aside p,.contact-aside small{color:#ccd9d3}.contact-aside dl div,.before-list,.before-list li{border-color:#58736a}.contact-aside dt{color:#b7cac2}.before-list span{color:#f0c18d}}

.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:999;background:#fff;padding:.75rem}
.status-message{padding:1rem 1.2rem;border-radius:8px;margin:1rem 0}.status-message.success{background:#edf7ef;color:#174c35}.status-message.error{background:#fff1ed;color:#8b2d20}.field-error{color:#9a3327;font-size:.84rem;margin-top:.35rem}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.privacy-link{color:#174c35;text-decoration:underline}.submit-button{border:0;cursor:pointer;width:100%;margin-top:1rem}.submit-button:disabled{opacity:.55;cursor:wait}.local-only{display:block}.local-review-note{background:#fff8df;color:#564619;padding:.65rem 1rem;text-align:center;font-size:.8rem}.required-note{color:#8b2d20}.privacy-page{max-width:880px;padding-top:70px;padding-bottom:100px}.privacy-page h1{font-family:var(--font-serif);font-size:clamp(2.4rem,6vw,4rem);margin-bottom:2rem}.privacy-page h2{font-family:var(--font-serif);font-size:1.45rem;margin-top:2.4rem}.privacy-page p,.privacy-page li{line-height:1.9}.noscript-warning{padding:1rem;background:#fff1ed;color:#7a241b}.receipt-panel{background:#eef4ef;padding:2rem;border-radius:12px}.source-fields{border:0;padding:0;margin:0}.admin-shell{max-width:1200px;margin:auto;padding:2rem}.admin-table{width:100%;border-collapse:collapse;background:#fff}.admin-table th,.admin-table td{border-bottom:1px solid #dfe6df;padding:.8rem;text-align:left;vertical-align:top}.admin-table th{background:#eef4ef}.admin-meta{font-size:.78rem;color:#53655a}.admin-record{background:#fff;padding:1.5rem;margin:1rem 0;border-radius:10px}.admin-record dl{display:grid;grid-template-columns:170px 1fr}.admin-record dt,.admin-record dd{padding:.5rem;border-bottom:1px solid #eee}.admin-record dd{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:700px){.admin-record dl{grid-template-columns:1fr}.admin-record dt{font-weight:700;background:#f5f7f4}.admin-table{display:block;overflow:auto}.privacy-page{padding:42px 22px 70px}}
@media print{.local-only,.review-bar,.site-header,.site-footer{display:none!important}}
/* rev005 product pages reuse the approved rev003 palette, spacing and shell. */
.decision-section{padding:105px 0}
.product-metric-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.product-metric-grid article{min-height:150px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.product-metric-grid span,.product-metric-grid small{display:block;color:var(--muted);font-size:11px;letter-spacing:.06em}
.product-metric-grid strong{display:block;margin:15px 0 4px;font-family:Georgia,"Yu Mincho",serif;font-size:20px;font-weight:500;line-height:1.55}
.product-metric-grid--feature{grid-template-columns:1fr 1fr}
.product-metric-grid--feature article{min-height:220px;padding:42px}
.product-metric-grid--feature strong{font-size:clamp(28px,3.4vw,44px)}
.evidence-band{background:var(--beige);padding:105px 0}
.evidence-grid,.evidence-section{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.evidence-section{padding-top:105px;padding-bottom:105px}
.evidence-copy p{color:var(--muted)}
.product-note{padding:18px 20px;border-left:3px solid var(--accent);background:var(--paper);font-size:13px}
.comparison-images{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.comparison-images article{background:#fff;border:1px solid var(--line)}
.comparison-images .review-image{aspect-ratio:4/3}
.comparison-images article>div:last-child{padding:28px}
.comparison-images h3{margin:0 0 10px}
.comparison-images p{color:var(--muted);font-size:13px}
.faq-section{padding:105px 0}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:0 4px}
.faq-list summary{cursor:pointer;padding:22px 0;font-family:Georgia,"Yu Mincho",serif;font-size:17px;font-weight:600}
.faq-list details p{max-width:840px;padding:0 0 22px;color:var(--muted);font-size:14px}
@media(max-width:820px){
  .decision-section,.evidence-band,.evidence-section,.faq-section{padding-top:70px;padding-bottom:70px}
  .product-metric-grid{grid-template-columns:1fr}
  .product-metric-grid--feature{grid-template-columns:1fr}
  .product-metric-grid article,.product-metric-grid--feature article{min-height:auto;padding:24px}
  .evidence-grid,.evidence-section,.comparison-images{grid-template-columns:1fr;gap:28px}
  .comparison-images{gap:18px}
  .evidence-copy .button{width:100%}
}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.catalog-card{display:flex;min-width:0;flex-direction:column;background:#fff;border:1px solid var(--line);color:inherit;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}
.catalog-card:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(24,44,31,.1)}
.catalog-card .review-image{aspect-ratio:4/3;margin:0;overflow:hidden;background:var(--beige)}
.catalog-card .review-image img,.gallery-image img{width:100%;height:100%;object-fit:cover}
.catalog-card .entry-body{display:flex;flex:1;flex-direction:column;padding:24px}
.catalog-card .entry-body span{color:var(--muted);font-size:11px;letter-spacing:.1em}
.catalog-card .entry-body h3{margin:10px 0;font-family:Georgia,"Yu Mincho",serif;font-size:22px}
.catalog-card .entry-body p{color:var(--muted);font-size:13px;line-height:1.8}
.catalog-card .entry-body b{margin-top:auto;padding-top:14px;font-size:13px}
.feature-section{padding-top:105px}
.product-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gallery-image{aspect-ratio:4/3;margin:0;overflow:hidden;background:#fff;border:1px solid var(--line)}
.product-metric-grid strong{overflow-wrap:anywhere}
@media(max-width:1024px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.catalog-grid,.product-gallery{grid-template-columns:1fr}.feature-section{padding-top:70px}.catalog-card .entry-body{padding:20px}}

/* catalog-full-range */
.category-entry{padding:105px 0 42px;border-top:1px solid var(--line)}
.featured-products{padding-top:68px}
.category-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.category-link{min-width:0;min-height:92px;padding:20px 50px 18px 20px;border:1px solid var(--line);background:#fff;position:relative;display:flex;flex-direction:column;justify-content:center;transition:border-color .2s ease,background .2s ease}
.category-link:hover{border-color:var(--green-2);background:var(--sage-light)}
.category-link span{font-family:Georgia,"Yu Mincho",serif;font-size:18px;line-height:1.45}
.category-link small{margin-top:4px;color:var(--muted);font-size:10px;letter-spacing:.04em}
.category-link b{position:absolute;right:20px;top:50%;transform:translateY(-50%);color:var(--green-2);font-size:15px}
.catalog-more{margin-top:32px;padding:30px 32px;border:1px solid var(--line);background:var(--sage-light);display:flex;align-items:center;justify-content:space-between;gap:32px}
.catalog-more h3{margin:0 0 6px;font-size:20px}
.catalog-more p{margin:0;color:var(--muted);font-size:13px}
.catalog-more .button{flex:0 0 auto}

.directory-hero{padding:92px 0 78px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:.35fr 1.65fr;gap:70px;align-items:start}
.directory-hero h1{font-size:clamp(42px,5vw,64px);margin-bottom:20px}
.directory-hero .lead{max-width:780px}
.directory-navigation{padding:80px 0 86px}
.catalog-category{padding:92px 0;scroll-margin-top:110px;border-top:1px solid var(--line)}
.catalog-category:nth-of-type(even){background:var(--beige);box-shadow:0 0 0 100vmax var(--beige);clip-path:inset(0 -100vmax)}
.catalog-category-heading{display:grid;grid-template-columns:1fr minmax(260px,420px);gap:60px;align-items:end;margin-bottom:38px}
.catalog-category-heading h2{margin:0}
.catalog-category-heading>p{margin:0;color:var(--muted);font-size:13px}
.catalog-category-heading>p span{color:var(--green-2);font-weight:700}
.family-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.family-card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;overflow:hidden}
.family-thumb{width:100%;aspect-ratio:16/9;margin:0;background:var(--sage-light);overflow:hidden}
.family-thumb img{width:100%;height:100%;display:block;object-fit:cover}
.family-thumb--empty{display:grid;place-items:center;background:linear-gradient(145deg,#edf3ee 0%,#f4f0e7 100%);position:relative}
.family-thumb--empty::before{content:"";width:34px;height:34px;border:1px solid #b9c9bf;border-radius:50%;position:absolute}
.family-thumb--empty span{margin-top:62px;color:#72827a;font:700 8px/1 Arial,sans-serif;letter-spacing:.22em}
.family-card-body{display:flex;flex:1;min-width:0;flex-direction:column;padding:20px}
.family-card h3{margin:0 0 14px;font-size:19px;line-height:1.5;overflow-wrap:anywhere}
.family-specs{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.family-specs li{padding:8px 0;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:2px 7px;color:var(--muted);font-size:11px;line-height:1.55}
.family-specs strong{color:var(--ink);font-size:11px}
.family-actions{margin-top:auto;padding-top:18px;display:flex;flex-direction:column;gap:8px}
.family-detail,.family-inquiry{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 10px;text-align:center;font-size:11px;font-weight:700;line-height:1.45}
.family-detail{background:var(--green);color:#fff}
.family-inquiry{border:1px solid var(--green);color:var(--green)}
.family-detail-group{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--green)}
.family-detail-group>span{grid-column:1/-1;padding:5px 8px;background:var(--green);color:#fff;font-size:9px;letter-spacing:.08em}
.family-detail-group a{padding:7px 4px;border-right:1px solid var(--green);text-align:center;color:var(--green);font-size:10px;font-weight:700}
.family-detail-group a:last-child{border-right:0}
.back-to-categories{display:block;width:max-content;margin:32px 0 0 auto;color:var(--green-2);font-size:11px;font-weight:700}

@media(max-width:1100px){
  .family-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:820px){
  .category-entry{padding:72px 0 28px}
  .featured-products{padding-top:48px}
  .category-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .category-link{min-height:82px;padding:15px 34px 14px 14px}
  .category-link span{font-size:15px}
  .category-link b{right:13px}
  .catalog-more{padding:24px;display:block}
  .catalog-more h3{font-size:18px}
  .catalog-more .button{width:100%;margin-top:20px}
  .directory-hero{padding:60px 0 48px;display:block}
  .directory-hero .eyebrow{margin-bottom:28px}
  .directory-hero h1{font-size:36px}
  .directory-navigation{padding:58px 0 64px}
  .catalog-category{padding:68px 0;scroll-margin-top:84px}
  .catalog-category-heading{display:block;margin-bottom:28px}
  .catalog-category-heading>p{margin-top:12px}
  .family-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .family-card-body{padding:14px 12px 12px}
  .family-card h3{font-size:16px;margin-bottom:10px}
  .family-specs li,.family-specs strong{font-size:10px}
  .family-actions{padding-top:12px;gap:6px}
  .family-detail,.family-inquiry{min-height:38px;padding:7px 6px;font-size:9.5px}
  .family-detail-group a{font-size:9px}
}

@media(max-width:420px){
  .category-link small{font-size:8px}
  .family-thumb{aspect-ratio:3/2}
  .family-card-body{padding-inline:10px}
}


.category-compare-link{display:inline-flex;margin-top:10px;color:var(--green);font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:4px}

/* Owner-ready 37 detail pages Local Candidate 2026-08-25 */
.use-grid.owner-single{grid-template-columns:minmax(0,1fr);max-width:760px}
.use-grid.owner-single article{min-height:0}
.product-gallery.owner-single{grid-template-columns:minmax(0,760px);justify-content:start}
@media(max-width:820px){.use-grid.owner-single,.product-gallery.owner-single{max-width:none}}

/* BtoB product video UI 2026-09-03 */
.product-video-poster{background:var(--paper)}
.product-video-trigger{position:relative;display:block;width:100%;height:100%;padding:0;overflow:hidden;border:0;background:var(--paper);color:#fff;cursor:pointer}
.product-video-trigger img{display:block;width:100%;height:100%;object-fit:cover}
.product-video-play{position:absolute;left:50%;bottom:clamp(16px,3vw,28px);display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:11px 18px;border:1px solid rgba(255,255,255,.75);border-radius:2px;background:rgba(23,62,50,.92);color:#fff;font-weight:700;line-height:1.45;transform:translateX(-50%);white-space:nowrap}
.product-video-play-icon{font-size:.8em}
.product-video-modal{width:min(94vw,960px);max-width:960px;max-height:94vh;padding:0;border:0;background:transparent;color:#fff;overflow:visible}
.product-video-modal::backdrop{background:rgba(3,20,17,.84)}
.product-video-modal-panel{display:flex;max-height:92vh;flex-direction:column;align-items:center;padding:16px;background:var(--green);box-shadow:0 20px 70px rgba(0,0,0,.4)}
.product-video-modal-head{display:flex;width:100%;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px}
.product-video-modal-head h2{margin:0;color:#fff;font-size:1rem}
.product-video-close{display:inline-grid;width:44px;height:44px;flex:0 0 44px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:transparent;color:#fff;cursor:pointer;font-size:1.65rem;line-height:1}
.product-video-modal video{display:block;width:auto;max-width:100%;height:auto;max-height:calc(92vh - 84px);background:var(--paper);object-fit:contain}
.product-video-trigger:focus-visible,.product-video-close:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
@media(max-width:820px){.product-video-modal{width:calc(100vw - 24px);max-height:calc(100vh - 24px)}.product-video-modal-panel{max-height:calc(100vh - 24px);padding:12px}.product-video-modal video{max-height:calc(100vh - 92px)}}
.family-detail-group.tail-ranks{grid-template-columns:repeat(5,minmax(0,1fr))}
