/* Awestruck search response header v2: ONE LINE + brand underline (LOCKED). Scoped .aw-sr-v2 · classes asr2- · vars --asr2- · keyframes asr2- */
:where(.aw-sr-v2),:where(.aw-sr-v2) *{box-sizing:border-box;margin:0;padding:0;border:0;background:none;font:inherit;color:inherit;line-height:inherit;text-transform:none;letter-spacing:normal}
.aw-sr-v2{--asr2-ink:#FFFFFF;--asr2-text:#A9AEC2;--asr2-line:rgba(255,255,255,.12);--asr2-hover:rgba(255,255,255,.05);--asr2-ul:linear-gradient(90deg,#2743EE,#FFC531);--asr2-font:"Geist",ui-sans-serif,-apple-system,"Segoe UI",Roboto,sans-serif;
display:flex;align-items:center;gap:8px;height:52px;width:100%;font:400 14px/1.2 var(--asr2-font);color:var(--asr2-text);-webkit-font-smoothing:antialiased}
.aw-sr-v2[data-theme="light"],[data-theme="light"] .aw-sr-v2{--asr2-ink:#0A0A0A;--asr2-text:#4A5068;--asr2-line:rgba(10,10,10,.14);--asr2-hover:rgba(10,10,10,.04)}
.aw-sr-v2 .asr2-tx{flex:1;min-width:0;display:flex;align-items:baseline;gap:5px;white-space:nowrap;overflow:hidden}
.aw-sr-v2 .asr2-lb{flex:none}
.aw-sr-v2 .asr2-k,.aw-sr-v2 .asr2-lo{min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--asr2-ink)}
.aw-sr-v2 .asr2-k{flex:0 1 auto;min-width:3ch;padding-bottom:3px;background:var(--asr2-ul) left bottom/100% 2px no-repeat;animation:asr2-ul .9s .2s cubic-bezier(.2,.8,.2,1) both}
.aw-sr-v2 .asr2-lo{flex:0 0 auto;max-width:40%}
.aw-sr-v2 .asr2-ed{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:var(--asr2-ink);box-shadow:inset 0 0 0 1px var(--asr2-line);cursor:pointer;-webkit-tap-highlight-color:transparent;position:relative}
.aw-sr-v2 .asr2-ed::after{content:"";position:absolute;inset:-4px}
.aw-sr-v2 .asr2-ed:hover{background:var(--asr2-hover)}
.aw-sr-v2 .asr2-ed:focus-visible{outline:2px solid #FFC531;outline-offset:2px}
.aw-sr-v2 .asr2-ed svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@keyframes asr2-ul{from{background-size:0 2px}}
@media (max-width:359px){.aw-sr-v2{font-size:13px;gap:6px}}
@media (min-width:1024px){.aw-sr-v2{font-size:15px;height:56px}}
@media (prefers-reduced-motion:reduce){.aw-sr-v2 .asr2-k{animation:none}}

/* ===== Awestruck site integration (NOT part of the senior's file above) =====
   Host sits above the first result card (index + search-results) and is STICKY: it pins to the top
   of the scrolling results area. Mobile/tablet (<=991px): .aw-mobile-panel scrolls, same way
   #aw-pill-filter is pinned. Desktop (>=992px): the WINDOW scrolls (.right-content has
   overflow-y:auto but no fixed height there), and that overflow stops position:sticky, so while
   the line is shown (html.aw-sr-on, set by search-response-v2.js) .right-content is un-clipped
   and the line pins just below the fixed navbar (--awn-nav-h).
   The site themes with html[data-bs-theme]; the component themes with [data-theme]. */
#aw-sr2-host {
  position: sticky; top: 0; z-index: 6;
  width: 100%; margin: 0; padding: 2px 8px 6px; box-sizing: border-box;
  background: var(--bs-body-bg, #fff);
}
#package-section .aw-mobile-panel #aw-sr2-host {
  position: sticky !important; top: 0 !important; z-index: 6 !important;
  background: var(--bs-body-bg, #fff) !important;
}
/* the site adds 16-28px above the cards after a search (html.aw-searched); the line replaces it,
   so drop it while the line is shown (double class = beats those rules) and tighten the line.
   Desktop + mobile/tablet. */
html.aw-sr-on #package-section .right-content.right-content { padding-top: 0 !important; }
html.aw-sr-on #aw-sr2-host { padding-top: 0 !important; padding-bottom: 4px !important; }
@media (max-width: 991px) {
  #aw-sr2-host .aw-sr-v2 { height: 46px; }
}
@media (min-width: 992px) {
  html.aw-sr-on #package-section .right-content { overflow: visible !important; overflow-x: clip !important; }
  html.aw-sr-on #aw-sr2-host { top: var(--awn-nav-h, 76px) !important; }
  /* desktop: the pencil sits right after the text (not pushed to the far end of the line);
     a long keyword still shrinks with "..." and the pencil stays visible */
  #aw-sr2-host .aw-sr-v2 { justify-content: flex-start !important; }
  #aw-sr2-host .aw-sr-v2 .asr2-tx { flex: 0 1 auto !important; }
}
#aw-sr2-host[hidden] { display: none !important; }
html[data-bs-theme="light"] #aw-sr2-host .aw-sr-v2 {
  --asr2-ink: #0A0A0A; --asr2-text: #4A5068; --asr2-line: rgba(10,10,10,.14); --asr2-hover: rgba(10,10,10,.04);
}
/* site-wide p / b / button rules must not move the text or the pencil: one centred line */
#aw-sr2-host .aw-sr-v2 { display: flex !important; align-items: center !important; }
#aw-sr2-host .aw-sr-v2 .asr2-tx { margin: 0 !important; padding: 0 !important; align-self: center !important; line-height: 1.2 !important; }
#aw-sr2-host .aw-sr-v2 .asr2-lb,
#aw-sr2-host .aw-sr-v2 .asr2-lo { margin: 0 !important; line-height: 1.2 !important; }
#aw-sr2-host .aw-sr-v2 .asr2-k { margin: 0 !important; line-height: 1.2 !important; padding-bottom: 3px !important; }
#aw-sr2-host .aw-sr-v2 .asr2-ed {
  flex: none !important; align-self: center !important; width: 36px !important; height: 36px !important;
  min-width: 36px !important; min-height: 36px !important; max-width: none !important;
  padding: 0 !important; margin: 0 !important; border: 0 !important; border-radius: 10px !important;
  display: grid !important; place-items: center !important; line-height: 1 !important;
}
#aw-sr2-host .aw-sr-v2 .asr2-ed svg { width: 15px !important; height: 15px !important; }