/* T08 category-scoped catalogue styles. Shared site chrome is unchanged. */
.sf-page{--sf-ink:#273c32;--sf-line:#d8ddd4;--sf-soft:#f1f2eb;color:var(--sf-ink);background:#fafaf6}
.sf-wrap{width:min(1300px,calc(100% - 96px));margin-inline:auto}
.sf-page h1,.sf-page h2,.sf-page h3,.sf-entry h2{}
.sf-page h2{margin:0 0 20px}
.sf-page p{}.sf-kicker{margin:0 0 20px!important}
.sf-breadcrumb{padding-top:30px;}.sf-breadcrumb a{text-decoration:none}
.sf-hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-block:56px 70px}
.sf-hero h1{margin:0 0 25px}.sf-hero h1 em{color:#727d65}
.sf-hero p:not(.sf-kicker){max-width:470px}.sf-hero figure{margin:0;position:relative}.sf-hero figure>img{display:block;width:100%;height:530px;object-fit:cover}
.sf-caption{margin:10px 0 0!important;color:#61705d}
.sf-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.sf-button,.sf-link{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:15px 22px;background:#314a3c;color:white!important;text-decoration:none;border:1px solid #314a3c;cursor:pointer;min-height:46px}
.sf-link{background:transparent;color:#314a3c!important;border-color:#b3bdad}
.sf-section{padding-block:72px;border-top:1px solid var(--sf-line)}.sf-heading{display:flex;gap:50px;justify-content:space-between;align-items:end;margin-bottom:32px}.sf-heading p{max-width:430px;margin:0;color:#596652}
.sf-groups{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.sf-group{color:inherit;text-decoration:none}.sf-group img{height:180px;width:100%;object-fit:contain;background:#e9ece2;display:block;transition:transform .2s}.sf-group:hover img{transform:translateY(-4px)}.sf-group h3{margin:16px 0 9px}.sf-group p{color:#62715d;margin:0}
.sf-catalogue{scroll-margin-top:120px}.sf-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;background:#edf0e6;padding:22px;margin-bottom:18px}
.sf-controls label{display:grid;gap:9px;}.sf-controls input,.sf-controls select{min-width:0;width:100%;height:46px;border:1px solid #bec9b6;border-radius:0;background:#fafbf7;color:#263d2e;padding:10px;}
.sf-count{color:#62705d;margin:20px 0}.sf-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.sf-card{background:#fff;border:1px solid #e1e4db;min-width:0;align-self:start}.sf-card[hidden]{display:none}
.sf-image{display:flex;align-items:center;justify-content:center;height:260px;background:#f0f1eb;padding:20px;position:relative}.sf-image img{max-width:100%;width:auto;height:100%;object-fit:contain}.sf-image span{position:absolute;right:10px;bottom:10px;background:white;padding:6px}
.sf-info{padding:20px}.sf-info .sf-kicker{margin-bottom:10px!important}.sf-info h3{margin:0 0 12px;overflow-wrap:anywhere}.sf-size{min-height:38px;color:#586951;overflow-wrap:anywhere}
.sf-info details{border-top:1px solid #dce2d5;margin-top:18px;padding-top:16px}.sf-info summary{cursor:pointer;min-height:30px}.sf-info dl{}.sf-info dt{color:#718066;margin-top:10px}.sf-info dd{margin:0;overflow-wrap:anywhere}.sf-info .sf-button{width:100%;padding:12px;gap:8px;margin:12px 0}.sf-note{color:#61715b}
.sf-more{display:flex;margin:30px auto 0}.sf-more[hidden]{display:none}.sf-empty{padding:35px;background:#edf0e6}
.sf-specs{display:grid;grid-template-columns:1fr 1fr;gap:36px}.sf-specs>div{border:1px solid #cdd5c6;padding:32px;background:#f1f3eb}.sf-specs h3{margin:0 0 25px}.sf-specs dl{margin:0}.sf-specs dt{margin-top:20px}.sf-specs dd{margin:7px 0;color:#57664f}
.sf-faq{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}.sf-faq details{padding:23px 0;border-bottom:1px solid #cdd5c6}.sf-faq summary{cursor:pointer;}.sf-faq p{color:#586951}
.sf-tail{background:#e6ebdd;padding:45px;display:flex;justify-content:space-between;align-items:center;gap:35px}.sf-tail h2{margin:0}.sf-related{display:flex;flex-wrap:wrap;gap:25px;margin-top:30px;}
.sf-entry{margin:42px auto;width:min(1300px,calc(100% - 96px));background:#e8ecdf;color:#283f30;padding:36px;display:grid;grid-template-columns:180px 1fr auto;gap:34px;align-items:center}.sf-entry img{width:180px;height:180px;object-fit:cover}.sf-entry h2{margin:0 0 15px}.sf-entry p{}.sf-entry .sf-kicker{margin:0 0 13px!important}
.sf-dialog{width:min(1150px,94vw);max-height:94vh;border:0;padding:25px;background:#fafbf6;color:#253d2c}.sf-dialog::backdrop{background:#17251dda}.sf-dialog header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.sf-dialog h2{margin:0}.sf-dialog button{min-width:44px;min-height:44px;background:white;border:1px solid #c4ceba;cursor:pointer}.sf-dialog img{display:block;max-width:100%;max-height:70vh;width:auto;height:auto;margin:auto;object-fit:contain}.sf-dialog p{}
.sf-page :focus-visible,.sf-entry :focus-visible,.sf-dialog :focus-visible{outline:3px solid #8a692e;outline-offset:4px}
@media(min-width:1450px){.sf-hero figure>img{height:600px}}
@media(max-width:1050px){.sf-groups{grid-template-columns:repeat(3,1fr)}.sf-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sf-hero{gap:30px}.sf-entry{grid-template-columns:140px 1fr}.sf-entry img{width:140px;height:160px}.sf-entry>a{grid-column:2}.sf-hero figure>img{height:430px}}
@media(max-width:700px){.sf-wrap,.sf-entry{width:calc(100% - 36px)}.sf-hero{grid-template-columns:1fr;padding-block:35px 42px;gap:24px}.sf-hero h1{}.sf-hero figure>img{height:380px}.sf-section{padding-block:42px}.sf-heading{display:block;margin-bottom:25px}.sf-heading p{margin-top:20px}.sf-groups{gap:20px 12px;grid-template-columns:repeat(2,1fr)}.sf-group img{height:160px}.sf-group h3{}.sf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sf-image{height:210px;padding:10px}.sf-info{padding:13px}.sf-info h3{}.sf-controls{grid-template-columns:1fr 1fr;padding:15px;gap:12px}.sf-controls label:first-child{grid-column:1/-1}.sf-specs,.sf-faq{grid-template-columns:1fr;gap:25px}.sf-specs>div{padding:23px}.sf-tail{padding:28px;display:block}.sf-tail>a{margin-top:25px}.sf-entry{grid-template-columns:1fr;padding:25px;gap:20px}.sf-entry img{width:100%;height:220px}.sf-entry>a{grid-column:auto}.sf-dialog{padding:16px}}
@media(prefers-reduced-motion:reduce){.sf-group img{transition:none}}

.sf-dialog.sf-zoomed img{max-height:none;width:100%;height:auto}.sf-dialog header>div{display:flex;gap:10px;flex-shrink:0}.sf-dialog header{position:sticky;top:-25px;background:#fafbf6;z-index:1;padding-block:10px}


/* Visual selection brief: short prompts first, detailed requirements on demand. */
.sf-planning{padding-block:48px}
.sf-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.sf-plan-card{min-width:0;background:#f4f4ee;border:1px solid #dce0d4;align-self:start}
.sf-plan-card figure{margin:0;position:relative;overflow:hidden}
.sf-plan-card figure>img{display:block;width:100%;height:280px;object-fit:contain;object-position:center;background:#e8ebe2}
.sf-plan-card figure figcaption{position:absolute;left:14px;bottom:12px;max-width:calc(100% - 28px);padding:6px 10px;background:#fffffff0;color:#4a5548;}
.sf-plan-copy{padding:26px 28px 18px}
.sf-plan-title{display:flex;align-items:center;gap:15px;margin-bottom:23px}
.sf-plan-title>span{color:#8a496e;border:1px solid #d4beca;padding:9px}
.sf-plan-title h3{margin:0}
.sf-plan-copy ol{list-style:none;padding:0;margin:0;display:grid;gap:17px}
.sf-plan-copy li{display:flex;align-items:center;gap:15px}
.sf-plan-copy li>span{color:#8a927e;width:22px}
.sf-plan-copy strong{display:block;color:#2c3c2d}
.sf-plan-copy small{display:block;color:#75806d}
.sf-plan-detail{border-top:1px solid #d8ddd0;margin-top:23px;padding-top:14px}
.sf-plan-detail summary{display:flex;justify-content:space-between;align-items:center;min-height:35px;list-style:none;cursor:pointer;}
.sf-plan-detail summary::-webkit-details-marker{display:none}
.sf-plan-detail summary::after{content:"+";font-size:20px;color:#95476d}
.sf-plan-detail[open] summary::after{content:"−"}
.sf-plan-detail dl{margin:12px 0 8px}.sf-plan-detail dt{margin-top:14px}.sf-plan-detail dd{color:#64705e;margin:6px 0 0}
.sf-plan-footnote{color:#6f7966;margin:16px 0 0!important}
.sf-faq.sf-faq-compact{grid-template-columns:1fr 2.3fr;gap:45px;padding-block:40px;align-items:start}
.sf-faq-compact h2{}
.sf-faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;align-items:start}
.sf-faq.sf-faq-compact details{padding:15px 0;min-width:0}
.sf-faq.sf-faq-compact summary{cursor:pointer}
.sf-faq.sf-faq-compact p{margin:12px 0 0}
.sf-next-step{padding-block:32px 48px}.sf-next-step .sf-tail{padding:30px 36px}.sf-next-step .sf-tail h2{}.sf-next-step .sf-tail p{margin:10px 0 0}.sf-next-step .sf-kicker{margin-bottom:12px!important}.sf-next-step .sf-related{margin-top:20px;}
@media(max-width:900px){.sf-plan-card figure>img{height:220px}.sf-plan-copy{padding:22px}.sf-plan-title h3{}.sf-plan-title{gap:10px}.sf-faq.sf-faq-compact{grid-template-columns:1fr 2fr;gap:24px}.sf-faq-list{grid-template-columns:1fr}}
@media(max-width:600px){.sf-plan-grid{grid-template-columns:1fr;gap:24px}.sf-plan-card figure>img{height:230px}.sf-planning{padding-block:32px}.sf-planning .sf-heading h2{}.sf-faq.sf-faq-compact{grid-template-columns:1fr;gap:10px;padding-block:30px}.sf-faq-compact h2{}.sf-faq-compact h2 br{display:none}.sf-next-step .sf-tail{padding:25px}.sf-next-step .sf-tail h2{}.sf-next-step{padding-block:24px 36px}}
