/* Scoped search styles. Existing brand, hero and page content remain untouched. */
.vp-search-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 0;border:0;background:transparent;color:inherit;font:inherit;font-size:12px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;cursor:pointer}
.vp-search-trigger svg{flex:none}
.vp-search-trigger:hover{opacity:.75}
.vp-search-trigger:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.header:has(>.vp-search-trigger){flex-wrap:wrap;gap:14px}
.header>.vp-search-trigger{margin-left:auto}
#menu-panel .vp-search-trigger{width:100%;justify-content:flex-start;padding:9px 0 17px;margin-bottom:12px;border-bottom:1px solid #ffffff30;font-size:17px;letter-spacing:.04em}
/* Keep space for the logo's existing desktop offset. Tablet widths use Meny. */
@media(min-width:1101px){.header:has(.vp-search-trigger){gap:24px}.header .desktop-nav:has(.vp-search-trigger){gap:clamp(16px,1.8vw,30px);margin-right:0;flex-shrink:0}}
@media(min-width:1101px) and (max-width:1320px){.header:has(.vp-search-trigger)>.menu-toggle{display:none}}
@media(max-width:1100px){.header .desktop-nav:has(.vp-search-trigger){display:none}}
html.vp-search-open{overflow:hidden}
#vp-search-dialog{box-sizing:border-box;position:fixed;inset:0;width:min(720px,calc(100% - 40px));max-width:none;max-height:min(780px,calc(100dvh - 80px));margin:clamp(24px,8vh,88px) auto auto;padding:0;border:1px solid #d4d0c6;border-radius:10px;background:#f7f5ef;color:#262c24;box-shadow:0 32px 110px #11160f40;font:400 16px/1.55 Jost,Arial,sans-serif;color-scheme:light;overflow:hidden}
#vp-search-dialog::backdrop{background:#10170f88;backdrop-filter:blur(5px)}
#vp-search-dialog *{box-sizing:border-box}
#vp-search-dialog [hidden]{display:none!important}
#vp-search-dialog button,#vp-search-dialog input{font:inherit}
#vp-search-dialog button,#vp-search-dialog a{touch-action:manipulation}
#vp-search-dialog :focus-visible{outline:2px solid #526247;outline-offset:3px}
.vp-search-shell{display:flex;flex-direction:column;max-height:inherit}
.vp-search-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:23px 28px 14px}
#vp-search-title{margin:0;font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
#vp-search-dialog .vp-search-close{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:6px 0 6px 12px;border:0;background:none;color:#52594b;cursor:pointer;font-size:13px}
.vp-search-field{display:flex;align-items:center;gap:14px;margin:0 28px;background:#fff;border:1px solid #b7bbae;border-radius:5px;padding:0 17px;flex:none}
.vp-search-field:focus-within{outline:2px solid #536349;outline-offset:2px}
#vp-search-input{width:100%;min-width:0;height:62px;padding:10px 0;background:transparent;color:#262c24;font-size:22px;border:0;outline:0;box-shadow:none}
#vp-search-input::placeholder{color:#74786f;opacity:1}
#vp-search-dialog .vp-search-clear{min-width:44px;min-height:44px;border:0;background:none;color:#62675d;cursor:pointer;font-size:13px}
.vp-search-content{padding:20px 28px 25px;overflow:auto;overscroll-behavior:contain;min-height:220px;min-width:0}
.vp-search-intro{margin:0 0 13px;font-size:14px;color:#62675d}
.vp-search-suggestions{display:flex;flex-wrap:wrap;gap:9px}
#vp-search-dialog .vp-search-suggestion{border:1px solid #d0d4c7;border-radius:4px;background:transparent;color:#303b2c;padding:10px 14px;min-height:44px;cursor:pointer;font-size:14px}
#vp-search-dialog .vp-search-suggestion:hover{background:#e6eadf;border-color:#909e83}
#vp-search-status{font-size:13px;color:#62675d;margin:0 0 12px;min-height:20px}
#vp-search-results{list-style:none;padding:0;margin:0}
.vp-search-result{display:flex;align-items:center;gap:20px;padding:17px 13px;border-top:1px solid #dddfd5;border-radius:4px;color:inherit;text-decoration:none}
.vp-search-result>span:first-child{min-width:0;flex:1}
.vp-search-result[data-selected="true"],.vp-search-result:hover,.vp-search-result:focus-visible{background:#e9ede2}
.vp-search-category{display:block;margin-bottom:4px;font-size:10px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:#536349}
.vp-search-result strong{display:block;font-size:19px;font-weight:400;line-height:1.35;overflow-wrap:anywhere}
.vp-search-description{display:block;margin-top:5px;font-size:14px;line-height:1.55;color:#62675d;overflow-wrap:anywhere}
.vp-search-arrow{font-size:23px;color:#4b5b40}
.vp-search-empty{padding:9px 0 20px;max-width:470px;font-size:17px}
#vp-search-dialog .vp-search-contact{display:inline-flex;align-items:center;gap:24px;min-height:46px;padding:11px 18px;background:#303b2c;border-radius:4px;color:#fff;text-decoration:none;font-size:14px}
.vp-search-footer{padding:14px 28px;border-top:1px solid #dddfd5;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#62675d}
.vp-search-kbd{white-space:nowrap}
@media(max-width:600px){#vp-search-dialog{width:calc(100% - 24px);margin:12px auto;max-height:calc(100dvh - 24px);border-radius:7px}.vp-search-top{padding:14px 17px 10px}.vp-search-field{margin:0 17px;padding:0 12px;gap:10px}#vp-search-input{font-size:18px;height:57px}.vp-search-content{padding:20px 17px;min-height:200px}.vp-search-result{gap:12px;padding:15px 9px}.vp-search-result strong{font-size:18px}.vp-search-footer{padding:13px 17px}.vp-search-kbd{display:none}.vp-search-suggestions{gap:8px}#vp-search-dialog .vp-search-suggestion{padding:9px 12px}}
@media(prefers-reduced-motion:no-preference){#vp-search-dialog[open]{animation:vp-search-appear .16s ease-out}@keyframes vp-search-appear{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}}
