/* Search styling copied from the feature site's final navigation and overlay. */
@font-face{font-family:'O2C Search Inter';src:url('../roadmap-assets/font-2.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'O2C Search Lato';src:url('../roadmap-assets/font-0.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'O2C Search Lato';src:url('../roadmap-assets/font-1.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
#o2c-search-root,#o2c-search-root *{box-sizing:border-box}
#o2c-search-root .o2c-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
#o2c-announcements .o2c-shared-header .o2c-search-trigger{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  width:auto;min-width:0;min-height:44px;height:auto;gap:8px;margin:0;padding:0;
  border:0;border-radius:6px;background:transparent;color:#364153;
  font:500 13px/1 'O2C Search Inter',Inter,Arial,sans-serif;
  letter-spacing:normal;text-transform:none;box-shadow:none;white-space:nowrap;
  cursor:pointer;transition:color .16s;
}
#o2c-announcements .o2c-shared-header .o2c-search-trigger:hover{color:#297d77}
#o2c-announcements .o2c-shared-header .o2c-search-trigger:focus-visible{outline:2px solid #297d77;outline-offset:4px}
#o2c-announcements .o2c-search-trigger svg{display:block;width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
#o2c-announcements .o2c-search-trigger span{display:inline;position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:nowrap}
/* The current site keeps its navigation visible on narrow screens. */
@media(max-width:950px){#o2c-announcements .o2c-shared-nav{flex-wrap:wrap}#o2c-announcements .o2c-nav-local{flex-wrap:wrap;row-gap:0}#o2c-announcements .o2c-nav-away{margin-left:auto}}
/* Modal */
html.o2c-search-open{overflow:hidden}
.o2c-search[hidden]{display:none}
.o2c-search{position:fixed;inset:0;z-index:2000;display:flex;justify-content:center;align-items:flex-start;padding:min(11vh,112px) 24px 24px;font-family:Inter,system-ui,sans-serif}
.o2c-search-backdrop{position:absolute;inset:0;background:rgba(21,32,29,.6)}
.o2c-search-dialog{position:relative;display:flex;flex-direction:column;width:100%;max-width:680px;max-height:calc(100vh - min(11vh,112px) - 24px);max-height:calc(100dvh - min(11vh,112px) - 24px);background:var(--o2c-bg,#fff);color:var(--o2c-ink,#22272A);border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.3);overflow:hidden}
.o2c-search-bar{display:flex;align-items:center;gap:10px;padding:10px 12px 10px 20px;border-bottom:1px solid var(--o2c-line,#E4E4E0);transition:box-shadow .15s cubic-bezier(.4,0,.2,1)}
.o2c-search-bar:has(.o2c-search-input:focus){border-bottom-color:var(--o2c-green,#1F3A33);box-shadow:inset 0 -1px 0 var(--o2c-green,#1F3A33)}
.o2c-search-bar>svg{width:24px;height:24px;flex:none;fill:none;stroke:var(--o2c-muted,#5B6470);stroke-width:2.2;stroke-linecap:round}
.o2c-search-input{flex:1;min-width:0;height:56px;padding:0 4px;border:0;outline:0;background:transparent;color:var(--o2c-ink,#22272A);font:500 20px/1.2 Inter,system-ui,sans-serif}
.o2c-search .o2c-search-input:is(:focus,:focus-visible){outline:none!important;box-shadow:none!important}
.o2c-search-input::placeholder{color:var(--o2c-muted,#5B6470);opacity:1}
.o2c-search-clear{display:grid;place-items:center;flex:none;width:44px;height:44px;border:0;border-radius:999px;background:var(--o2c-bg-alt,#F6F6F4);color:var(--o2c-ink,#22272A);cursor:pointer}
.o2c-search-clear[hidden]{display:none}
.o2c-search-clear svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.o2c-search-close{flex:none;min-height:44px;padding:0 18px;border:1.5px solid var(--o2c-line,#E4E4E0);border-radius:999px;background:var(--o2c-bg,#fff);color:var(--o2c-ink,#22272A);font:600 15px Inter,system-ui,sans-serif;cursor:pointer}
.o2c-search-clear:hover,.o2c-search-close:hover{background:var(--o2c-line,#E4E4E0)}
.o2c-search-clear:focus-visible,.o2c-search-close:focus-visible{outline:2px solid #1F3A33;outline-offset:2px}
.o2c-search-body{overflow-y:auto;overscroll-behavior:contain;padding:4px 12px 16px}
.o2c-search-list[hidden],.o2c-search-none[hidden]{display:none}
.o2c-search-group-title{padding:18px 14px 8px;color:var(--o2c-muted,#5B6470);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.o2c-search-option{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:16px;row-gap:3px;align-items:center;padding:13px 14px;border-radius:10px;color:var(--o2c-ink,#22272A);text-decoration:none;cursor:pointer}
.o2c-search-option:focus-visible{outline:2px solid var(--o2c-green,#1F3A33);outline-offset:-2px}
.o2c-search-option[aria-selected=true]{background:var(--o2c-bg-alt,#F6F6F4);box-shadow:inset 0 0 0 2px var(--o2c-green,#1F3A33)}
.o2c-search-title{grid-column:1;font-size:18px;font-weight:700;line-height:1.3;color:var(--o2c-ink,#22272A)}
.o2c-search-desc{grid-column:1;overflow:hidden;font-size:16px;line-height:1.45;color:var(--o2c-muted,#5B6470);white-space:nowrap;text-overflow:ellipsis}
.o2c-search-tag{grid-column:2;grid-row:1/span 2;padding:4px 10px;border:1px solid var(--o2c-line,#E4E4E0);border-radius:999px;background:var(--o2c-bg,#fff);color:var(--o2c-muted,#5B6470);font-size:13px;font-weight:600;white-space:nowrap}
.o2c-search-option mark{padding:0 1px;border-radius:3px;background:var(--o2c-lime,#D7E5A0);color:var(--o2c-ink,#22272A)}
.o2c-search-none{padding:28px 14px 16px;font-size:18px;line-height:1.5}
.o2c-search-none p{margin:0 0 6px}
.o2c-search-none p+p{font-size:16px;color:var(--o2c-muted,#5B6470)}
.o2c-search-none a{color:var(--o2c-green,#1F3A33);font-weight:600;text-decoration:underline;text-underline-offset:3px}

@media(max-width:767px){
  .o2c-search{padding:0}
  .o2c-search-dialog{max-width:none;height:100%;max-height:none;border-radius:0}
  .o2c-search-bar{padding:8px 10px 8px 14px;gap:6px}
  .o2c-search-input{font-size:18px}
  .o2c-search-close{padding:0 14px}
  .o2c-search-body{padding:4px 8px 24px}
  .o2c-search-option{grid-template-columns:minmax(0,1fr)}
  .o2c-search-tag{grid-column:1;grid-row:auto;justify-self:start;margin-top:4px}
}
@media(prefers-reduced-motion:reduce){.o2c-search-trigger{transition:none}}

/* Final feature-site palette and typography, isolated from page-specific resets. */
html body #o2c-search-root{
  --o2c-bg:#fff;--o2c-ink:#161616;--o2c-muted:#4d5056;--o2c-bg-alt:#f1f0ee;
  --o2c-line:#d5d7da;--o2c-green:#297d77;--o2c-lime:#e5f0c3;
  font:400 16px/1.65 'O2C Search Inter',Inter,Arial,sans-serif;text-align:left;
}
html body #o2c-search-root .o2c-search-input{font-family:'O2C Search Inter',Inter,Arial,sans-serif}
html body #o2c-search-root :is(.o2c-search-title,.o2c-search-desc,.o2c-search-none,.o2c-search-close){font-family:'O2C Search Lato',Lato,Arial,sans-serif}
html body #o2c-search-root .o2c-search-close{font-size:16px;line-height:1.65;font-weight:700;color:#297d77;border-color:#297d77}
html body #o2c-search-root .o2c-search-close:hover{background:#f0fdfa}
html body #o2c-search-root :is(.o2c-search-close,.o2c-search-clear):focus-visible{outline-color:#297d77}
@media(prefers-reduced-motion:reduce){#o2c-announcements .o2c-shared-header .o2c-search-trigger,.o2c-search-bar{transition:none}}
@media print{#o2c-search-root{display:none!important}}
