/* ROXI / HEADER — estilos específicos */
.site-header {
  position:sticky;
  top:0;
  z-index:40;
  background:var(--color-white);
  border-bottom:1px solid var(--swatch-f5edf0)
}
.header-main {
  display:grid;
  grid-template-columns:205px 1fr auto;
  align-items:center;
  gap:28px;
  min-height:86px
}
.logo {
  display:inline-flex;
  align-items:center;
  position:relative;
  width:fit-content;
  color:var(--pink);
  font-family:var(--font-heading);
  font-size:var(--font-size-43);
  letter-spacing:-4px;
  font-weight:900;
  line-height:1
}
.logo .logo-x {
  letter-spacing:-5px
}
.logo b {
  font-size:var(--font-size-17);
  position:relative;
  top:-18px;
  left:0;
  letter-spacing:0
}
.logo small {
  display:block;
  font-size:var(--font-size-7);
  letter-spacing:2.15px;
  font-weight:900;
  position:absolute;
  top:43px;
  left:3px;
  color:var(--swatch-9d7184);
  white-space:nowrap
}
.searchbox {
  border:1px solid var(--swatch-f0e4e9);
  background:var(--color-surface-soft);
  border-radius:14px;
  height:49px;
  display:flex;
  gap:11px;
  align-items:center;
  padding:0 17px;
  max-width:610px;
  width:100%
}
.searchbox svg {
  flex:0 0 auto;
  color:var(--swatch-a78d9b)
}
.searchbox input {
  width:100%;
  min-width:0;
  border:0;
  background:transparent;
  outline:0;
  font-size:var(--font-size-12);
  color:var(--ink)
}
.searchbox input::placeholder {
  color:var(--swatch-a996a0)
}
.searchbox kbd {
  border-radius:5px;
  border:1px solid var(--swatch-ecdde4);
  color:var(--swatch-ad9aa5);
  font-size:var(--font-size-10);
  padding:3px 6px;
  font-family:inherit
}
.header-right {
  display:flex;
  align-items:center;
  gap:7px;
  justify-self:end
}
.header-btn {
  border:0;
  background:transparent;
  min-width:43px;
  height:43px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:var(--swatch-392e37);
  position:relative
}
.header-btn:hover,.header-btn.active {
  background:var(--pink-soft);
  color:var(--pink)
}
.icon-num {
  position:absolute;
  right:0;
  top:0;
  min-width:18px;
  height:18px;
  border-radius:50%;
  background:var(--pink);
  color:var(--color-white);
  font-size:var(--font-size-10);
  font-weight:800;
  display:grid;
  place-items:center;
  padding:0 3px
}
.mini-contact {
  font-size:var(--font-size-11);
  color:var(--swatch-6f626b);
  border-left:1px solid var(--border);
  padding-left:19px;
  margin-left:9px
}
.mini-contact strong {
  display:block;
  color:var(--ink);
  font-size:var(--font-size-12)
}
.header-nav {
  display:flex;
  gap:31px;
  align-items:center;
  min-height:47px;
  border-top:1px solid var(--swatch-f7f0f3);
  font-weight:800;
  font-size:var(--font-size-12)
}
.header-nav a,.header-nav button {
  border:0;
  background:none;
  padding:13px 0;
  cursor:pointer;
  color:var(--swatch-3c3039);
  font-weight:800;
  white-space:nowrap
}
.header-nav a:hover,.header-nav button:hover {
  color:var(--pink)
}
.nav-pink {
  color:var(--pink)!important
}
.new-pill {
  font-size:var(--font-size-8);
  color:var(--color-white);
  background:var(--pink);
  border-radius:4px;
  padding:3px 5px;
  margin-left:3px;
  vertical-align:top
}
.mobile-only,.mobile-search,.mobile-nav,.mobile-menu {
  display:none
}
