/* Shared company navigation and search */
.family-company-menu{position:relative;display:inline-block}
.family-company-menu summary{cursor:pointer;list-style:none;white-space:nowrap}
.family-company-menu summary::-webkit-details-marker{display:none}
.family-company-menu summary::after{content:"⌄";margin-left:6px}
.family-company-list{position:absolute;top:calc(100% + 15px);left:0;width:290px;padding:10px;background:#fff;border:1px solid #d7e4ed;border-radius:9px;box-shadow:0 15px 45px #08294133;z-index:100}
body header .family-company-list a{display:block!important;padding:12px!important;color:#163f59!important;font-size:13px!important;white-space:normal;text-shadow:none!important}
.family-company-list a:hover{background:#edf5f8}
body header .family-search-open{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.family-search-open svg{width:15px;height:15px;flex:none}
.family-search-dialog{box-sizing:border-box;width:min(760px,calc(100vw - 28px));max-height:88dvh;margin:auto;padding:36px;border:1px solid #c4d9e5;border-radius:14px;background:#f6fafc;color:#173b52;box-shadow:0 25px 90px #051d3c55;font-family:Arial,sans-serif}
.family-search-dialog::backdrop{background:#061d35b8;backdrop-filter:blur(5px)}
.family-search-dialog h2{font-family:Georgia,serif;font-size:2.25rem;font-weight:400;line-height:1.2;margin:4px 35px 14px 0}
.family-search-close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:32px;line-height:1;color:#173b52;cursor:pointer;padding:8px}
.family-search-intro{font-size:.92rem;line-height:1.65}
.family-query-form{margin:26px 0 22px}
.family-query-form label{display:block;font-size:.85rem;font-weight:700;margin-bottom:12px;color:#234e67}
.family-query-row{display:flex;gap:10px}
.family-query-row input{box-sizing:border-box;min-width:0;flex:1;width:100%;border:1px solid #9ab8cc;border-radius:7px;padding:15px;color:#173b52;background:#fff;font:16px Arial,sans-serif}
.family-query-row button{border:0;border-radius:7px;padding:14px 22px;background:#14618b;color:#fff;font:700 14px Arial,sans-serif;cursor:pointer}
.family-query-row input:focus,.family-search-dialog a:focus-visible,.family-query-row button:focus-visible,.family-company-menu summary:focus-visible{outline:3px solid #2d99c8;outline-offset:3px}
.family-brand-links{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0!important}
.family-brand-links a{display:inline-block!important;padding:9px 12px!important;background:#e5eef4;color:#22516d!important;font:12px/1.5 Arial,sans-serif!important;border-radius:20px;text-decoration:none!important}
.family-suggestion{display:block;padding:15px 4px;border-bottom:1px solid #dce6ec;text-decoration:none;color:#143e58}
.family-suggestion:hover{background:#eaf3f8}
.family-suggestion strong{display:block;font:600 16px/1.4 Arial,sans-serif;margin-top:5px}
.family-result-company{display:block;font:12px/1.5 Arial,sans-serif;color:#467086;overflow-wrap:anywhere}
.family-see-all{display:block;padding-top:20px;font-size:14px;font-weight:700;color:#17618b}
.family-status{font:14px/1.7 Arial,sans-serif;color:#526f81}
body.family-search-page .review-ribbon{position:relative!important;top:auto!important}
body.family-search-page header{position:relative!important;top:auto!important;background:#e5f1f6!important}
body.family-search-page header .nav-links>a:not(.button),body.family-search-page header #navigation>a:not(.button),body.family-search-page header .family-company-menu{color:#173e56!important;text-shadow:none!important}
body.family-search-page header .license-assurance{color:#1475ad!important;text-shadow:none!important}
body.family-search-page main.family-search-main{display:block!important;position:relative;box-sizing:border-box;background:linear-gradient(150deg,#edf7fb,#f8fafb);color:#173b52;padding:65px max(6vw,20px) 90px;min-height:65vh;font-family:Arial,sans-serif}
.family-search-content{max-width:1100px;margin:auto}
.family-search-content>h1{font:400 clamp(2.4rem,5vw,4.4rem)/1.08 Georgia,serif;letter-spacing:-.03em;margin:0 0 22px}
.family-search-content>p{font-size:1rem;line-height:1.8;max-width:780px}
.family-filter{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:28px 0}
.family-filter label{font-size:.85rem;font-weight:600}
.family-filter select{font:14px Arial,sans-serif;padding:11px;border:1px solid #a6bfcd;border-radius:5px;background:#fff;color:#173b52;max-width:100%}
.family-results-heading{font:400 1.8rem/1.25 Georgia,serif!important;margin:32px 0 12px!important;color:#173b52!important}
.family-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:25px 0}
.family-result{padding:25px;background:#fff;border:1px solid #d3e3ed;border-radius:8px;box-shadow:0 7px 25px #103d5910}
.family-result h2{font:600 1.2rem/1.4 Arial,sans-serif!important;letter-spacing:0!important;margin:13px 0!important}
.family-result h2 a{color:#164b6b!important;text-decoration:none}
.family-result h2 a:hover{text-decoration:underline}
.family-result p{font:14px/1.8 Arial,sans-serif!important;color:#3e6177}
.family-result-link{display:inline-block;margin-top:15px;font-size:13px;color:#17618b!important}
.site-service-search .service-suggestions{max-height:min(68vh,650px);overflow:auto}
@media(max-width:1050px) and (min-width:761px){body .nav-links{gap:16px}body .nav-links>a{font-size:.72rem}}
@media(max-width:760px){.family-search-dialog{padding:25px 20px;max-height:90dvh}.family-search-dialog h2{font-size:1.8rem}.family-query-row button{padding:12px 15px}.family-query-row input{padding:13px 10px}.family-result-grid{grid-template-columns:1fr}.family-company-menu{display:block}.family-company-list{position:static;box-shadow:none;width:auto;margin-top:8px}.family-search-content>h1{font-size:2.6rem}body.family-search-page main.family-search-main{padding-top:36px}body.family-search-page header .mobile-toggle{color:#173e56}body.family-search-page header .nav-links{background:#eaf4f8}}
