/* Scoped to the new search surface; established catalog and detail layouts stay intact. */
body.site-search-page { min-height:100vh; min-height:100dvh; display:flex; flex-direction:column; }
.site-search-page>.site-header-shell { width:100%; flex-shrink:0; }
.site-search-page>.site-shell { width:100%; display:flex; flex-direction:column; flex:1 0 auto; margin-block:0; }
.site-search-content { max-width:1460px; margin-inline:auto; width:100%; flex:1 0 auto; }
.site-search-page>.site-shell>footer { margin-top:auto; flex-shrink:0; }
.site-search-heading { padding:4px 0 22px; }
.site-search-heading h1 { margin:0; }
.site-search-form { display:grid; grid-template-columns:minmax(220px,1fr) 165px 180px auto; align-items:end; gap:16px; padding:22px 0; border-block:1px solid #dedee3; }
.site-search-form label { min-width:0; display:flex; flex-direction:column; gap:9px; }
.site-search-form label>span { font-size:14px; color:#6e6e73; }
.site-search-page button { font:500 16px/1.4 var(--font-system); cursor:pointer; }
.site-search-page button:focus-visible,.site-search-page a:focus-visible { outline:2px solid #42651f; outline-offset:3px; }
.site-search-page .site-search-submit { min-height:48px; padding:12px 28px; border:1px solid #8fc547; border-radius:9px; background:#8fc547; color:#101011; font-weight:600; }
.site-search-result-bar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:28px; }
.site-search-page .site-search-result-bar h2 { font-size:26px; }
.site-search-clear,.site-search-retry,.site-search-pagination button { min-height:44px; border:1px solid #dedee3; border-radius:8px; background:#fff; color:#42651f; padding:10px 16px; }
.site-search-clear:hover,.site-search-retry:hover,.site-search-pagination button:not(:disabled):hover { background:#edf4e5; }
.site-search-status { font-size:16px; line-height:1.6; margin:14px 0 22px; overflow-wrap:anywhere; color:#65656b; }
.site-search-results { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:1fr; gap:20px; }
.site-search-result { min-width:0; display:grid; grid-template-columns:132px minmax(0,1fr); gap:24px; padding:24px; background:#fff; border:1px solid #dedee3; border-radius:16px; }
.site-search-information { grid-template-columns:minmax(0,1fr); }
.site-search-result-content { min-width:0; display:flex; flex-flow:row-reverse wrap; align-content:flex-start; column-gap:16px; }
.site-search-product .site-search-result-content { align-self:start; }
.site-search-product { row-gap:0; }
.site-search-product .site-search-result-content { grid-column:2; grid-row:1; }
.site-search-copy-controls { grid-column:2; grid-row:2; justify-self:end; align-self:end; display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px; max-width:100%; }
.site-search-page .site-search-copy-button { order:2; flex:none; display:inline-flex; align-items:center; justify-content:center; width:36px; min-height:36px; padding:7px; border:1px solid #dedee3; border-radius:8px; background:#fff; color:#65656b; }
.site-search-copy-button svg { display:block; width:19px; height:19px; }
.site-search-page .site-search-copy-button:hover { border-color:#8fc547; background:#edf4e5; color:#42651f; }
.site-search-page [data-copy-state="success"] .site-search-copy-button { border-color:#8fc547; background:#8fc547; color:#101011; }
.site-search-copy-button:disabled { opacity:.55; cursor:progress; }
.site-search-copy-status { flex:1 1 auto; min-width:0; max-width:260px; color:#42651f; text-align:end; font-size:13px; line-height:1.4; overflow-wrap:anywhere; }
.site-search-copy-status:empty { display:none; }
.site-search-page [data-copy-state="success"] .site-search-copy-status { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); clip-path:inset(50%); white-space:nowrap; border:0; }
.site-search-page .site-search-copy-download { order:1; min-height:36px; padding:6px 9px; border:1px solid #dedee3; border-radius:8px; background:#fff; color:#42651f; font-size:13px; line-height:1.35; }
.site-search-result-media { grid-column:1; grid-row:1/span 2; min-width:0; display:flex; flex-direction:column; gap:4px; align-self:start; }
.site-search-result-media>.site-search-no-image { width:100%; }
.site-search-badge { flex:1 0 auto; min-width:0; max-width:100%; display:block; font:400 15px/1.5 "ZF Navigation",Impact,"Arial Narrow",sans-serif; color:#737378; letter-spacing:.025em; overflow-wrap:anywhere; }
.site-search-page .site-search-result h3 { order:1; flex:0 0 100%; min-width:0; margin:7px 0 14px; font-size:26px; line-height:1.25; overflow-wrap:anywhere; }
.site-search-result h3 a { color:#1d1d1f; text-decoration:none; }
.site-search-result h3 a:hover { color:#42651f; }
.site-search-metadata { order:2; flex:0 0 100%; min-width:0; align-self:start; margin:0; font-size:16px; line-height:1.5; }
.site-search-metadata>div { display:grid; grid-template-columns:70px minmax(0,1fr); gap:12px; padding:3px 0; }
.site-search-metadata dt { color:#737378; }
.site-search-metadata dd { margin:0; font-weight:600; overflow-wrap:anywhere; }
.site-search-match { order:-1; flex:0 1 auto; min-width:0; max-width:100%; align-self:start; color:#737378; font-size:15px; line-height:1.6; text-align:start; white-space:nowrap; overflow-x:auto; margin:0; }
.site-search-match strong { color:#414146; font-weight:500; }
.site-search-number-link { color:inherit; text-decoration:none; }
.site-search-number-link:hover { text-decoration:underline; }
.site-search-detail-link { order:3; flex:0 0 100%; align-self:end; display:inline-flex; align-items:center; min-height:44px; margin-top:12px; font-size:16px; font-weight:500; color:#42651f; }
.site-search-result-media>.site-search-detail-link { flex:none; align-self:center; justify-content:center; width:100%; margin:0; text-align:center; overflow-wrap:anywhere; }
.site-search-no-image { min-width:0; min-height:132px; align-self:start; display:grid; place-items:center; text-align:center; padding:12px; border-radius:10px; background:#fafafa; color:#818187; font-size:13px; line-height:1.5; }
.site-search-page .site-search-image { padding:0; border:0; background:#fff; border-radius:10px; align-self:start; width:132px; height:132px; cursor:zoom-in; }
.site-search-image img { display:block; width:100%; height:100%; object-fit:contain; border-radius:10px; }
.site-search-pagination { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:16px; margin:28px 0; }
.site-search-pagination span { color:#737378; font-size:15px; }
.site-search-pagination button:disabled { cursor:default; color:#aaa; }
.site-search-help { margin-top:36px; border-top:1px solid #dedee3; padding-top:28px; }
.site-search-page .site-search-help h2 { font-size:22px; }
.site-search-help p { color:#737378; font-size:15px; line-height:1.7; }
.site-search-help>div { display:flex; flex-wrap:wrap; gap:12px 26px; }
.site-search-help a { display:inline-flex; align-items:center; min-height:44px; color:#42651f; font-size:16px; }
.site-search-picture-dialog { width:min(900px,calc(100% - 32px)); max-height:calc(100dvh - 32px); padding:24px; border:1px solid #dedee3; border-radius:16px; background:#fff; color:#1d1d1f; }
.site-search-picture-dialog::backdrop { background:#000b; }
.site-search-picture-head { display:flex; align-items:start; justify-content:space-between; gap:20px; }
.site-search-page .site-search-picture-head h2 { font-size:24px; overflow-wrap:anywhere; }
.site-search-picture-head button { flex:none; min-height:44px; padding:8px 12px; border:1px solid #dedee3; border-radius:8px; background:#fff; color:#1d1d1f; }
.site-search-picture-media { display:grid; place-items:center; margin-top:20px; min-height:0; }
.site-search-picture-media img { display:block; width:100%; height:auto; max-height:calc(100dvh - 160px); object-fit:contain; }
.site-search-page [hidden] { display:none!important; }
@media(max-width:1100px) { .site-search-form { grid-template-columns:minmax(180px,1fr) 145px 160px; } .site-search-submit { grid-column:1/-1; justify-self:end; } .site-search-results { grid-template-columns:minmax(0,1fr); } }
@media(max-width:600px) {
 .site-search-copy-status { max-width:180px; font-size:12px; }
 .site-search-form { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 12px; }
 .site-search-query { grid-column:1/-1; }
 .site-search-submit { width:100%; }
 .site-search-result { grid-template-columns:90px minmax(0,1fr); gap:16px; padding:18px; }
 .site-search-information { grid-template-columns:minmax(0,1fr); }
 .site-search-page .site-search-image { width:90px; height:90px; }
 .site-search-no-image { min-height:90px; padding:8px; font-size:12px; }
 .site-search-page .site-search-result h3 { font-size:24px; }
 .site-search-metadata { font-size:15px; }
 .site-search-metadata>div { grid-template-columns:1fr; gap:0; padding-block:4px; }
 .site-search-picture-dialog { padding:16px; }
 .site-search-picture-head { flex-wrap:wrap; gap:12px; }
 .site-search-picture-head button { margin-left:auto; }
}
