.ctt-search-overlay[hidden]{display:none!important}
.ctt-search-overlay{position:fixed;inset:0;z-index:999999;background:#fff;color:#000;overflow-y:auto;overscroll-behavior:contain}
body.ctt-search-open{overflow:hidden}
.ctt-search-panel{box-sizing:border-box;width:min(760px,100%);margin:0 auto;padding:clamp(24px,6vw,65px) 25px 80px;font-family:inherit}
.ctt-search-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:52px}
.ctt-search-label{font-size:13px;font-weight:600;letter-spacing:.045em}
.ctt-search-close{appearance:none;border:0;background:transparent;color:#000;cursor:pointer;font:normal 34px/1 inherit;padding:0 4px}
.ctt-search-input{box-sizing:border-box;width:100%;background:transparent;border:0;border-radius:0;border-bottom:1px solid #000;outline:0;padding:12px 0 17px;color:#000;font:inherit;font-size:clamp(17px,3vw,24px)}
.ctt-search-input:focus{border-bottom-width:2px}
.ctt-search-results{margin-top:32px}
.ctt-search-result{display:block;color:#000!important;text-decoration:none!important;padding:19px 0 22px;border-bottom:1px solid #ddd}
.ctt-search-result:hover .ctt-search-title,.ctt-search-result:focus-visible .ctt-search-title{opacity:.6}
.ctt-search-meta{display:block;font-size:11px;letter-spacing:.035em;text-transform:uppercase;color:#777;margin-bottom:8px}
.ctt-search-title{display:block;font-size:clamp(17px,2.5vw,22px);line-height:1.4}
.ctt-search-hint,.ctt-search-empty{font-size:13px;color:#666}
.ctt-masthead-panel .ctt-search-menu-item{font:inherit;cursor:pointer;border:0;background:transparent;text-align:inherit}
@media(prefers-reduced-motion:no-preference){.ctt-search-overlay{animation:ctt-search-arrive .18s ease-out}@keyframes ctt-search-arrive{from{opacity:0}to{opacity:1}}}

/* v1.0.1: masthead icon alignment and mobile Safari input focus sizing */
.ctt-masthead-panel > button.ctt-search-menu-item {
  appearance:none!important;-webkit-appearance:none!important;display:inline-flex!important;
  align-items:center!important;justify-content:center!important;align-self:center!important;
  flex:0 0 16px!important;width:16px!important;height:16px!important;min-width:16px!important;
  padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;
  background:transparent!important;color:#555!important;line-height:1!important;vertical-align:middle!important;
  cursor:pointer!important;transform:none!important;
}
.ctt-masthead-panel > button.ctt-search-menu-item svg{display:block!important;width:16px!important;height:16px!important;stroke:currentColor!important;pointer-events:none}
.ctt-masthead-panel > button.ctt-search-menu-item:hover,.ctt-masthead-panel > button.ctt-search-menu-item:focus-visible{color:#111!important;text-decoration:none!important}
.ctt-search-overlay .ctt-search-input,.ctt-search-overlay input[type=search].ctt-search-input{font-size:18px!important;line-height:1.5!important;-webkit-text-size-adjust:100%;transform:none!important}
@media(max-width:680px){.ctt-search-overlay .ctt-search-input,.ctt-search-overlay input[type=search].ctt-search-input{font-size:16px!important}}

/* v1.0.3: refined optical alignment and close icon size */
.ctt-masthead-panel > button.ctt-search-menu-item {
  transform:translateY(-1px)!important;
}
.ctt-search-overlay .ctt-search-close {
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 44px!important;width:44px!important;height:44px!important;
  padding:0!important;margin:0 -8px 0 0!important;
  font-size:28px!important;line-height:1!important;
  background:transparent!important;border:0!important;cursor:pointer!important;
}
