/* =========================================================
   Pixel Dental Supply — Brand Layer
   ========================================================= */

:root{
  --pds-ink:#04102a;
  --pds-muted:#2c3a52;
  --pds-teal:#1fa3ad;
  --pds-teal-dark:#117b84;
  --pds-sun:#ffc24a;
  --pds-sun-2:#ffb02e;
  --pds-orange:#ff9f2f;
  --pds-radius-lg:22px;
  --pds-radius-md:16px;
  --pds-radius-sm:12px;
  --pds-shadow-1:0 10px 22px rgba(4,16,42,.10);
  --pds-shadow-2:0 18px 36px rgba(4,16,42,.14);
  --pds-ring:0 0 0 4px rgba(31,163,173,.18);
}

/* Layout container */
#content.site-content{
  max-width: 1400px;
  margin: 0 auto;
  padding: 16px 18px 28px;
}

@media (max-width: 600px){
  #content.site-content{ padding: 12px 12px 22px; }
}

/* Basic typography */
body{
  color: var(--pds-ink);
}

/* =============================
   Header (PDS)
============================= */
#pds-header, #pds-header *{ box-sizing:border-box; }

#pds-header a{
  color: var(--pds-muted);
  text-decoration: none;
  background: transparent !important;
  box-shadow: none !important;
}
#pds-header a:hover{
  color: var(--pds-ink);
  text-decoration: underline;
  text-underline-offset: 3px;
  background: transparent !important;
}
#pds-header a:focus,
#pds-header a:focus-visible,
#pds-header a:active{
  color: var(--pds-ink) !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}

#pds-header button{ font: inherit; border:0; background:none; box-shadow:none; }
#pds-header button:focus,
#pds-header button:focus-visible{ outline:none !important; box-shadow:none !important; }

#pds-header{ position:relative; top:0; z-index:99999; width:100%; }

#pds-header .pds-header__accent{
  height:6px;
  background:repeating-linear-gradient(
    to right,
    var(--pds-teal) 0 26px,
    rgba(255,255,255,.9) 26px 52px,
    var(--pds-orange) 52px 78px,
    rgba(255,255,255,.9) 78px 104px
  );
}

#pds-header .pds-header__shell{
  background:
    linear-gradient(to bottom, rgba(255,255,255,.36), rgba(255,255,255,.92)),
    url("https://pixeldentalsupply.com/wp-content/uploads/footer.jpg") center/cover no-repeat;
  border-bottom:1px solid rgba(0,0,0,.12);
}

#pds-header .pds-header__row{
  max-width:1400px;
  margin:0 auto;
  padding:18px;
  display:flex;
  align-items:center;
  gap:18px;
}

#pds-header .pds-header__brand{ flex:0 0 auto; display:flex; align-items:center; line-height:0; }
#pds-header .pds-header__logo{ max-height:50px; max-width:220px; width:auto; height:auto; display:block; object-fit:contain; }
#pds-header .pds-logo-mobile{ display:none; }

#pds-header .pds-header__search{ flex:1 1 auto; display:flex; justify-content:center; margin:0; }
#pds-header .pds-searchGroup{ width:100%; max-width:640px; display:flex; position:relative; }
#pds-header .pds-searchPlaceholder{
  position:absolute;
  left:15px;
  top:50%;
  transform:translateY(-50%);
  color:rgba(4,16,42,.40);
  font-size:inherit;
  pointer-events:none;
  white-space:nowrap;
  overflow:hidden;
  z-index:1;
  line-height:1;
}
#pds-header .pds-searchInput{
  flex:1;
  height:48px;
  padding:0 14px;
  border-radius:999px 0 0 999px;
  border:1px solid rgba(0,0,0,.20);
  border-right:none;
  background:rgba(255,255,255,.96);
  color:var(--pds-ink);
  outline:none;
  -webkit-appearance:none;
  appearance:none;
}
#pds-header .pds-searchInput:focus{ border-color:rgba(31,163,173,.85); box-shadow:0 0 0 4px rgba(31,163,173,.16); }
#pds-header .pds-searchBtn{
  height:48px;
  padding:0 18px;
  border-radius:0 999px 999px 0;
  background:linear-gradient(to bottom, var(--pds-teal), var(--pds-teal-dark));
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 10px 18px rgba(4,16,42,.08);
}
#pds-header .pds-searchBtn:hover{ filter:brightness(1.05); }
#pds-header .pds-searchIcon{ width:20px; height:20px; }

#pds-header .pds-header__nav{ display:flex; align-items:center; gap:14px; }
#pds-header .pds-cta{
  padding:6px 10px;
  border:1px solid rgba(0,0,0,.18);
  border-radius:10px;
  background:rgba(255,255,255,.86);
  color: var(--pds-ink);
}
#pds-header .pds-cart{
  position:relative;
  width:46px; height:46px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.18);
  background:rgba(255,255,255,.92);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--pds-ink);
}
#pds-header .pds-cartCount{
  position:absolute;
  top:-6px; right:-6px;
  min-width:18px; height:18px;
  padding:0 5px;
  border-radius:999px;
  background:var(--pds-orange);
  color:#fff;
  font-size:11px;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}

#pds-header .pds-menuBtn{
  display:none;
  width:56px; height:56px;
  border-radius:16px;
  border:1px solid rgba(0,0,0,.18);
  background:rgba(255,255,255,.92);
  padding:14px;
  cursor:pointer;
  transition:background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}
#pds-header .pds-menuBtn span{ display:block; height:3px; width:100%; background:var(--pds-ink); border-radius:999px; margin:6px 0; transition:all 0.3s ease; transform-origin:center; }

/* Active hamburger → X */
#pds-header .pds-menuBtn[aria-expanded="true"]{ background:var(--pds-teal); border-color:var(--pds-teal); box-shadow:0 0 12px rgba(31,163,173,.4); }
#pds-header .pds-menuBtn[aria-expanded="true"] span{ background:#fff; }
#pds-header .pds-menuBtn[aria-expanded="true"] span:nth-child(1){ transform:translateY(9px) rotate(45deg); }
#pds-header .pds-menuBtn[aria-expanded="true"] span:nth-child(2){ opacity:0; }
#pds-header .pds-menuBtn[aria-expanded="true"] span:nth-child(3){ transform:translateY(-9px) rotate(-45deg); }

#pds-header .pds-mobileMenu{
  max-width:1200px;
  margin:0 auto;
  padding:0;
  background:#fff;
  border-top:1px solid rgba(4,16,42,.08);
  box-shadow:0 8px 24px rgba(4,16,42,.12);
}
#pds-header .pds-mobileMenu a{
  display:flex;
  align-items:center;
  padding:16px 20px;
  margin:0;
  background:none;
  border:none;
  border-bottom:1px solid rgba(4,16,42,.06);
  border-radius:0;
  font-weight:700;
  font-size:15px;
  letter-spacing:0.3px;
  color:var(--pds-ink) !important;
  text-decoration:none !important;
  transition:background 0.15s ease;
}
#pds-header .pds-mobileMenu a:last-child{ border-bottom:none; }
#pds-header .pds-mobileMenu a svg{
  width:20px;
  height:20px;
  margin-right:12px;
  flex-shrink:0;
  color:var(--pds-teal);
}
#pds-header .pds-mobileMenu a:hover,
#pds-header .pds-mobileMenu a:active{
  background:rgba(4,16,42,.03);
  color:var(--pds-teal-dark) !important;
}

@media (max-width:1020px){
  #pds-header .pds-header__nav{ display:none; }
  #pds-header .pds-menuBtn{ display:block; width:40px; height:40px; border-radius:10px; padding:10px; order:1; }
  #pds-header .pds-menuBtn span{ margin:4px 0; height:2.5px; }
  #pds-header .pds-menuBtn[aria-expanded="true"] span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
  #pds-header .pds-menuBtn[aria-expanded="true"] span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }
  #pds-header .pds-header__row{ flex-wrap:wrap; padding:8px 12px; gap:8px; }
  #pds-header .pds-header__brand{ flex:1 1 0; justify-content:center; order:2; min-width:0; overflow:hidden; }
  #pds-header .pds-logo-desktop{ display:none; }
  #pds-header .pds-logo-mobile{ display:block; max-height:44px; width:auto; max-width:100%; }
  #pds-header a.pds-cart{ width:40px; height:40px; border-radius:10px; order:4; border:1px solid rgba(0,0,0,.18) !important; background:rgba(255,255,255,.92) !important; }
  #pds-header .pds-cartIcon{ width:20px; height:20px; }
  #pds-header .pds-cartCount{ top:-4px; right:-4px; min-width:16px; height:16px; font-size:10px; }
  #pds-header .pds-header__search{ order:5; width:100%; justify-content:stretch; }
  #pds-header .pds-searchGroup{ max-width:100%; }
  #pds-header .pds-searchInput{ height:38px; font-size:14px; }
  #pds-header .pds-searchBtn{ height:38px; padding:0 14px; }
  #pds-header .pds-searchIcon{ width:16px; height:16px; }
}

/* =============================
   Footer (PDS v2)
============================= */
.pds-footer.v2{
  width:100%;
  background:
    linear-gradient(
      to bottom,
      rgba(255,255,255,0.965) 0%,
      rgba(255,255,255,0.72) 30%,
      rgba(255,255,255,0.28) 68%,
      rgba(255,255,255,0.06) 100%
    ),
    url("https://pixeldentalsupply.com/wp-content/uploads/footer.jpg") center/cover no-repeat;
  color: var(--pds-ink);
}
.pds-footer.v2 .pds-footer__container{ max-width:1600px; margin:0 auto; padding:10px 22px 12px; }
.pds-footer.v2 .pds-footer__grid{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:28px; align-items:center; }
.pds-footer.v2 .pds-footer__col{ min-height:96px; display:flex; flex-direction:column; justify-content:center; }
.pds-footer.v2 .pds-footer__logo{ width:165px; height:auto; display:inline-block; filter: drop-shadow(0 8px 14px rgba(0,0,0,0.10)); }
.pds-footer.v2 .pds-footer__title{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:15.5px;
  font-weight:800;
  letter-spacing:0.35px;
  color:var(--pds-ink);
  margin:0 0 10px;
  text-transform:uppercase;
}
.pds-footer.v2 .pds-footer__title::before,
.pds-footer.v2 .pds-footer__title::after{ content:""; width:34px; height:2px; border-radius:999px; opacity:0.95; }
.pds-footer.v2 .pds-footer__title::before{ background:var(--pds-teal); box-shadow:0 2px 10px rgba(31,163,173,0.18); }
.pds-footer.v2 .pds-footer__title::after{ background:var(--pds-orange); box-shadow:0 2px 10px rgba(255,159,47,0.14); }
.pds-footer.v2 a{
  display:block;
  font-size:15.25px;
  font-weight:600;
  line-height:1.7;
  color:var(--pds-muted);
  text-decoration:none;
  margin:4px 0;
  text-shadow:0 1px 0 rgba(255,255,255,0.55);
  transition: color .15s ease, transform .15s ease;
}
.pds-footer.v2 a:hover{ color:var(--pds-ink); transform:translateY(-1px); text-decoration:underline; }
.pds-footer.v2 .pds-footer__brand{ text-align:left; align-items:flex-start; }
.pds-footer.v2 .pds-footer__contact{ text-align:center; align-items:center; }
.pds-footer.v2 .pds-footer__policies{ text-align:right; align-items:flex-end; }
.pds-footer.v2 .pds-footer__bottom{
  width:100%;
  background:#168e97;
  color:#fff;
  text-align:center;
  font-size:12.75px;
  font-weight:650;
  padding:8px 10px;
  letter-spacing:0.3px;
  border-top:1px solid rgba(255,255,255,0.18);
}
@media (max-width:900px){
  .pds-footer.v2 .pds-footer__container{ padding:10px 16px 12px; }
  .pds-footer.v2 .pds-footer__grid{ grid-template-columns:1fr; gap:14px; text-align:center; }
  .pds-footer.v2 .pds-footer__col{ min-height:unset; align-items:center !important; text-align:center !important; }
  .pds-footer.v2 .pds-footer__logo{ width:150px; }
  .pds-footer.v2 .pds-footer__title{ justify-content:center; font-size:15px; }
  .pds-footer.v2 a{ font-size:15px; }
}
