/* ASTurbo visual repair, 2026-11-13. Load after the existing styles.
   Scoped to observed components. No global overflow hiding. */
/* The original transparent logo contains white lettering. Keep its image and
   layout intact while giving it contrast on the white product/sticky header. */
body:has(.t-store__product-snippet) #t-header #rec1571398401 [data-elem-id="1763375998677"] > .tn-atom,
#t-header #rec1573114151 [data-elem-id="1763375998677"] > .tn-atom {
  background-color: #1b1b1b !important;
  border-radius: 4px !important;
  box-shadow: 0 0 0 5px #1b1b1b;
}
/* Product pages use the primary header on a white surface. The icon's mask
   already uses currentColor; only its inherited color and menu caption differ. */
body:has(.t-store__product-snippet) #t-header #rec1571398401 [data-elem-id="1763382513029000001"] .tn-atom,
body:has(.t-store__product-snippet) #t-header #rec1571398401 [data-elem-id="1763382513029000001"] .tn-atom__button-icon,
body:has(.t-store__product-snippet) #t-header #rec1571398401 [data-elem-id="1763382513029000001"] .tn-atom__button-text,
body:has(.t-store__product-snippet) #t-header #rec1571398401 [data-elem-id="1763385191120"] .tn-atom {
  color: #1b1b1b !important;
}
#t-header .t838__blockinput {
  position: relative !important;
  box-sizing: border-box !important;
  width: 100% !important;
}
#t-header .t838__blockinput > svg.t838__search-icon {
  position: absolute !important;
  left: 14px !important;
  right: auto !important;
  top: 50% !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  box-sizing: border-box !important;
  transform: translateY(-50%) !important;
  pointer-events: none;
}
#t-header .t838__blockinput > input.t838__input {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 36px 0 44px !important;
  /* Explicit longhands neutralize old shorthand rules. */
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 44px !important;
  padding-right: 36px !important;
  height: 42px !important;
  line-height: 42px !important;
  text-align: left !important;
  font-size: 16px !important;
  background: rgba(255,255,255,.92) !important;
  color: #20242a !important;
  -webkit-text-fill-color: #20242a !important;
  border: 1px solid rgba(255,255,255,.65) !important;
  border-radius: 8px !important;
}
#t-header .t838__blockinput > input.t838__input::placeholder {
  font-size: 14px !important;
  opacity: 1 !important;
  color: #525b66 !important;
  -webkit-text-fill-color: #525b66 !important;
}
#t-header .t838__blockinput > input.t838__input:focus {
  border-color: #ed601a !important;
  outline: 2px solid #ed601a !important;
  outline-offset: -2px;
}
/* The duplicate desktop caption sits at left:1886/1843px with width:560px.
   Desktop navigation already has a labelled Catalog button. */
@media (min-width: 1200px) {
  #rec1571398401 [data-elem-id="1763385191120"],
  #rec1573114151 [data-elem-id="1763385191120"] { display: none !important; }
}
#asturbo-catalog-search-inner {
  display: grid !important;
  grid-template-columns: 20px minmax(0,1fr) auto auto;
  gap: 10px !important;
  align-items: center !important;
  font-family: Inter,Arial,sans-serif;
}
#asturbo-catalog-search-inner > svg {
  width: 20px !important; height: 20px !important;
  margin: 0 !important; padding: 0 !important; box-sizing: border-box !important;
}
#liveCatalogSearchInput {
  min-width: 0 !important; width: 100% !important;
  box-sizing: border-box !important; font-size: 16px !important;
}
#liveCatalogCount { margin: 0 !important; }
@media (max-width: 768px) {
  #asturbo-catalog-search-inner { grid-template-columns: 20px minmax(0,1fr) auto; }
  #liveCatalogCount { grid-column: 1 / -1; box-sizing: border-box; }
}
/* T951 reserves 250px for its sidebar even when no filters were rendered.
   Reclaim that space only while the sidebar is empty. Populated filters keep
   their original layout, including if they are inserted asynchronously. */
@media (min-width: 960px) {
  #rec1704161601 .t951__sidebar:empty,
  #rec1704161601 .t951__sidebar:has(> .t951__sidebar-wrapper:only-child:empty) {
    display: none !important;
  }
  #rec1704161601 .t951__sidebar:empty ~ .t951__grid-cont,
  #rec1704161601 .t951__sidebar:has(> .t951__sidebar-wrapper:only-child:empty) ~ .t951__grid-cont,
  #rec1704161601 .t951__sidebar:empty ~ .js-store-grid-cont-preloader,
  #rec1704161601 .t951__sidebar:has(> .t951__sidebar-wrapper:only-child:empty) ~ .js-store-grid-cont-preloader {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* Keep the tablet search inside the header instead of its exported off-canvas coordinates. */
/* The local SVGs are black; the sticky header uses dark social buttons. */
#t-header #rec1573114151 [data-elem-id="1763382492751"] .tn-atom__button-icon::before,
#t-header #rec1573114151 [data-elem-id="1763382555959000003"] .tn-atom__button-icon::before { filter:brightness(0) invert(1); }
@media (min-width:640px) and (max-width:959px) {
  #t-header #rec1571398401 .t396__artboard,
  #t-header #rec1573114151 .t396__artboard { height:128px !important; }
  #t-header #rec1571398401 [data-elem-id="1763382099884000001"],
  #t-header #rec1573114151 [data-elem-id="1763382099884000001"] {
    zoom:1 !important; left:16px !important; top:78px !important;
    width:calc(100% - 32px) !important; height:42px !important;
  }
}
/* This mobile-only phone icon duplicates the visible telephone button at this breakpoint. */
@media (min-width:960px) and (max-width:1199px) {
  #t-header #rec1571398401 [data-elem-id="1763385015556000002"],
  #t-header #rec1573114151 [data-elem-id="1763385015556000002"] { display:none !important; }
}
