
.osw2-search-widget { position: relative; }

.osw2-search-trigger-wrap { display:block; }
.osw2-search-icon { cursor:pointer; display:inline-block; line-height:1; }
.osw2-search-icon i { font-size:20px; }

/* Overlay */
.osw2-overlay{
  position:fixed;
  top:0; left:0;
  width:100%; height:100%;
  background:rgba(0,0,0,0.85);
  display:none;
  z-index:99999;
}

/* Close */
.osw2-close{
  position:absolute;
  top:40px;
  left:50%;
  transform:translateX(-50%);
  font-size:34px;
  color:#fff;
  cursor:pointer;
}

/* Center box */
.osw2-center{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:60%;
  max-width:700px;
}

.osw2-center form{ position:relative; width:100%; }

/* IMPORTANT: force-remove any theme/elementor focus ring and borders; keep only bottom line */
.elementor-widget-overlay_search_widget_v2 .osw2-center input,
.osw2-search-widget .osw2-center input{
  width:100%;
  background:transparent !important;

  /* kill all borders first */
  border:0 !important;
  border-radius:0 !important;

  /* keep only bottom line */
  border-bottom:1px solid #fff !important;

  /* kill focus ring/shadows coming from themes */
  outline:0 !important;
  box-shadow:none !important;
  -webkit-box-shadow:none !important;

  /* kill native appearance */
  -webkit-appearance:none !important;
  appearance:none !important;

  padding:14px 40px 14px 0;
  font-size:20px;
  color:#fff !important;
}

.elementor-widget-overlay_search_widget_v2 .osw2-center input::placeholder,
.osw2-search-widget .osw2-center input::placeholder{
  color:#fff !important;
  opacity:1;
}

/* Force same look on focus/active/hover so NOTHING changes on click */
.elementor-widget-overlay_search_widget_v2 .osw2-center input:focus,
.elementor-widget-overlay_search_widget_v2 .osw2-center input:active,
.elementor-widget-overlay_search_widget_v2 .osw2-center input:hover,
.osw2-search-widget .osw2-center input:focus,
.osw2-search-widget .osw2-center input:active,
.osw2-search-widget .osw2-center input:hover{
  border:0 !important;
  border-bottom:1px solid #fff !important;
  outline:0 !important;
  box-shadow:none !important;
  -webkit-box-shadow:none !important;
}

/* Input icon */
.osw2-input-icon{
  position:absolute;
  bottom:14px;
  right:0;
  font-size:20px;
  color:#fff;
}

/* Alignment helpers */
.elementor-widget-overlay_search_widget_v2.osw2-input-icon-align-right .osw2-input-icon{ right:0; left:auto; }
.elementor-widget-overlay_search_widget_v2.osw2-input-icon-align-right .osw2-center input{ padding-right:40px; padding-left:0; }

.elementor-widget-overlay_search_widget_v2.osw2-input-icon-align-left .osw2-input-icon{ left:0; right:auto; }
.elementor-widget-overlay_search_widget_v2.osw2-input-icon-align-left .osw2-center input{ padding-left:40px; padding-right:0; }

@media (max-width:767px){
  .osw2-center{ width:90%; }
}
