/* Compact header actions; leave other site buttons unchanged. */
body.sibo-site .sibo-header .sibo-header-actions { display:flex; align-items:center; gap:12px; flex-shrink:0; }
body.sibo-site .sibo-header .sibo-header-cta { min-height:40px!important; height:40px; padding:8px 16px!important; font-size:13px!important; line-height:1.4!important; gap:8px!important; white-space:nowrap; }
body.sibo-site .sibo-header .sibo-header-cta > .sibo-arrow { width:16px; height:16px; flex-basis:16px; }
body.sibo-site .sibo-header .sibo-search-toggle, body.sibo-site .sibo-search-close { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; flex:0 0 40px; padding:8px; border:0; border-radius:50%; background:transparent; color:#fff; cursor:pointer; transition:background .2s,color .2s; }
body.sibo-site .sibo-header .sibo-search-toggle:is(:hover,:focus-visible,[aria-expanded=true]), body.sibo-site .sibo-search-close:is(:hover,:focus-visible) { background:#ffffff14; color:#28c5b8; }
body.sibo-site .sibo-search-icon { display:block; flex-shrink:0; }
body.sibo-site.sibo-search-open { overflow:hidden; }
body.sibo-site.sibo-search-open .sibo-header { top:var(--sibo-header-offset); left:0; right:0; background:var(--sibo-header-surface); border:1px solid #ffffff15; border-bottom-color:transparent; border-radius:0; transform:none; -webkit-backdrop-filter:none; backdrop-filter:none; }
body.sibo-site.sibo-home.sibo-search-open .sibo-header { border-radius:0; top:var(--sibo-header-offset); left:0; right:0; }
.sibo-search-panel[hidden], .sibo-search-backdrop[hidden] { display:none!important; }
body.sibo-site .sibo-search-panel { position:absolute; top:100%; left:-1px; right:-1px; color:#fff; background:radial-gradient(ellipse at 0 100%,#009c9015,transparent 60%),var(--sibo-header-surface); border:1px solid #ffffff15; border-top:0; border-radius:0 0 16px 16px; max-height:calc(100dvh - var(--sibo-header-offset) - var(--sibo-header-height) - 18px); overflow-y:auto; overscroll-behavior:contain; box-shadow:0 24px 40px #03131430; }
body.sibo-site .sibo-search-inner { max-width:1000px; padding:24px 40px 32px; margin:0 auto; }
body.sibo-site .sibo-search-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:14px; }
body.sibo-site .sibo-search-heading h2 { font-size:20px; line-height:1.4; color:#fff; margin:0; letter-spacing:-.02em; }
body.sibo-site .sibo-search-form { display:flex; align-items:center; gap:14px; padding:5px 10px 5px 18px; background:#ffffff0d; border:1px solid #ffffff20; border-radius:8px; color:#bac8c6; }
body.sibo-site .sibo-search-form:focus-within { border-color:#009e96; box-shadow:0 0 0 2px #009e9620; }
body.sibo-site .sibo-search-form input[type=search] { min-width:0; flex:1; width:100%; height:48px; padding:8px 0; margin:0; border:0; border-radius:0; background:transparent; color:inherit; font:400 16px/1.5 var(--sibo-font-family); box-shadow:none; outline:none; }
body.sibo-site .sibo-search-panel .sibo-search-form input { color:#fff; }
body.sibo-site .sibo-search-panel .sibo-search-form input::placeholder { color:#acb9b7; opacity:1; }
body.sibo-site .sibo-search-form > button { display:flex; align-items:center; justify-content:center; flex:0 0 40px; width:40px; height:40px; padding:8px; border:0; border-radius:6px; background:#00958c; color:#fff; cursor:pointer; }
body.sibo-site .sibo-search-form > button:hover { background:#007e76; }
body.sibo-site .sibo-search-backdrop { position:fixed; inset:0; z-index:99; background:#0009; -webkit-backdrop-filter:blur(5px); backdrop-filter:blur(5px); }
body.sibo-site :is(.sibo-search-panel,.sibo-search-results) :is(a,button):focus-visible { outline:2px solid #1bb9a8; outline-offset:3px; }

/* Native WordPress search results. */
body.sibo-site .sibo-search-results { padding-block:60px 90px; min-height:50vh; }
body.sibo-site .sibo-search-results h1 { font-size:clamp(30px,3.5vw,52px); line-height:1.2; margin:0 0 24px; overflow-wrap:anywhere; }
body.sibo-site .sibo-search-results .sibo-search-form { max-width:780px; color:var(--sibo-ink); background:#edf4f1; border-color:#d5e1dc; }
body.sibo-site .sibo-search-count { margin:22px 0 32px; color:var(--sibo-muted); }
/* Search products follow the catalogue's left-image/right-copy list layout. */
body.sibo-site .sibo-search-result-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 32px; }
body.sibo-site .sibo-search-results .sibo-search-result-list .sibo-search-result { min-width:0; padding:0; border:0; border-bottom:1px solid var(--sibo-line); border-radius:0; background:transparent; box-shadow:none; }
body.sibo-site .sibo-search-result-link { display:grid; grid-template-columns:180px minmax(0,1fr); align-items:center; gap:24px; min-width:0; padding-bottom:24px; color:var(--sibo-text); text-decoration:none; }
body.sibo-site .sibo-search-result-link:focus-visible { outline-offset:6px; }
body.sibo-site .sibo-search-result-image { --sibo-image-radius:0px; display:grid; place-items:center; width:100%; aspect-ratio:1; overflow:hidden; border-radius:12px; background:#fff; }
body.sibo-site .sibo-search-result-image img { display:block; box-sizing:border-box; width:100%; height:100%; min-width:0; min-height:0; padding:14px; object-fit:contain; }
body.sibo-site .sibo-search-result-info { min-width:0; padding:0; }
/* Keep the complete name available while displaying a single-line preview. */
body.sibo-site .sibo-search-result .sibo-search-result-title { display:block; min-width:0; min-height:0; max-height:none; height:auto; margin:0 0 12px; font-size:20px; line-height:1.4; color:var(--sibo-text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; overflow-wrap:normal; -webkit-line-clamp:unset; line-clamp:unset; }
body.sibo-site .sibo-search-result-link:is(:hover,:focus-visible) .sibo-search-result-title { color:var(--sibo-accent); }
body.sibo-site .sibo-search-result .sibo-search-result-description { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-clamp:2; overflow:hidden; text-overflow:ellipsis; overflow-wrap:anywhere; white-space:normal; min-height:3.4em; max-height:3.4em; margin:0; font-size:15px; line-height:1.7; color:var(--sibo-text-muted); }
/* This is part of the one native card link, not a nested button/link. */
body.sibo-site .sibo-search-result-action { display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; min-height:44px; margin-top:16px; padding:11px 20px; border-radius:8px; background:var(--sibo-accent); color:#071b1a; font-size:14px; line-height:1.4; font-weight:600; }
body.sibo-site .sibo-search-result-link:is(:hover,:focus-visible) .sibo-search-result-action { background:var(--sibo-accent-hover,var(--sibo-accent)); }
@media (min-width:1680px) {
    body.sibo-site .sibo-search-result-list { grid-template-columns:repeat(3,minmax(0,1fr)); }
    body.sibo-site .sibo-search-result-link { grid-template-columns:160px minmax(0,1fr); }
}
@media (max-width:1000px) {
    body.sibo-site .sibo-search-result-list { gap:24px; }
    body.sibo-site .sibo-search-result-link { grid-template-columns:112px minmax(0,1fr); gap:16px; }
    body.sibo-site .sibo-search-result .sibo-search-result-title { font-size:18px; }
    body.sibo-site .sibo-search-result .sibo-search-result-description { font-size:14px; }
    body.sibo-site .sibo-search-result-action { padding-inline:14px; font-size:13px; }
}
@media (max-width:600px) {
    body.sibo-site .sibo-search-result-link { grid-template-columns:minmax(0,1fr); gap:20px; }
    body.sibo-site .sibo-search-result .sibo-search-result-title { font-size:18px; margin-bottom:12px; }
    body.sibo-site .sibo-search-result .sibo-search-result-description { font-size:15px; }
    body.sibo-site .sibo-search-result-action { min-height:44px; margin-top:18px; padding:11px 22px; font-size:14px; }
}
body.sibo-site .sibo-search-pagination { margin-top:36px; }
body.sibo-site .sibo-search-pagination .nav-links { display:flex; flex-wrap:wrap; gap:10px; }
body.sibo-site .sibo-search-pagination .page-numbers { display:inline-flex; align-items:center; justify-content:center; min-width:40px; min-height:40px; padding:7px 12px; border:1px solid var(--sibo-line); border-radius:6px; }
body.sibo-site .sibo-search-pagination .current { background:var(--sibo-teal); color:#fff; }
@media (min-width:1001px) and (max-width:1200px) {
    body.sibo-site .sibo-header .sibo-header-inner { gap:14px; }
    body.sibo-site .sibo-header .sibo-header-actions { gap:6px; }
    body.sibo-site .sibo-header .sibo-header-cta { padding-inline:12px!important; font-size:12px!important; }
    body.sibo-site .sibo-header .sibo-nav-list { gap:14px; }
}
@media (max-width:1000px) {
    body.sibo-site .sibo-header .sibo-header-actions { margin-left:auto; order:2; }
    body.sibo-site .sibo-search-result-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
    body.sibo-site .sibo-header .sibo-header-actions { gap:4px; }
    body.sibo-site .sibo-header .sibo-header-cta { min-height:36px!important; height:36px; padding:7px 10px!important; font-size:11px!important; gap:6px!important; }
    body.sibo-site .sibo-header .sibo-search-toggle { width:36px; height:40px; flex-basis:36px; }
    body.sibo-site .sibo-header .sibo-menu-toggle { width:40px; height:40px; }
    body.sibo-site.sibo-search-open .sibo-header { top:var(--sibo-header-offset); }

    body.sibo-site .sibo-search-panel { max-height:calc(100dvh - var(--sibo-header-offset) - var(--sibo-header-height) - 18px); }
    body.sibo-site .sibo-search-inner { padding:14px 20px 24px; }
    body.sibo-site .sibo-search-heading h2 { font-size:18px; }
    body.sibo-site .sibo-search-form { gap:10px; padding-left:12px; }
    body.sibo-site .sibo-search-result-list { grid-template-columns:1fr; }
    body.sibo-site .sibo-search-results { padding-block:36px 60px; }
}
@media (max-width:360px) {
    body.sibo-site .sibo-header .sibo-header-cta { width:36px; padding:7px!important; }
    body.sibo-site .sibo-header .sibo-header-cta > span { display:none; }
}
@media (prefers-reduced-motion:reduce) {
    body.sibo-site .sibo-search-toggle { transition:none; }
}

body.sibo-site.sibo-home.sibo-search-open:not(.sibo-mega-open):not(.sibo-mobile-open) .sibo-header { background:var(--sibo-header-surface); }
