/* ============================================================
   VirtualTees Global Footer
   File: /assets/css/footer.css
   ============================================================ */

:root{
  --vtf-bg:#06070a;
  --vtf-border:rgba(255,255,255,0.18);
  --vtf-text:rgba(255,255,255,0.84);
  --vtf-muted:rgba(255,255,255,0.62);
  --vtf-link:rgba(255,255,255,0.92);
  --vtf-chip:rgba(255,255,255,0.08);

  --vtf-radius:16px;
  --vtf-max:1200px;
}

.vt-footer{
  background:var(--vtf-bg);
  color:var(--vtf-text);
  border-top:1px solid var(--vtf-border);
}

.vt-footer__wrap{
  max-width:var(--vtf-max);
  margin:0 auto;
  padding:28px 16px 18px;
}

/* ============================================================
   Top Logos
   ============================================================ */
.vt-footer__logos{
  display:flex;
  gap:34px;
  justify-content:center;
  align-items:center;
  padding:10px 0 38px;
}

/* Desktop */
.vt-footer__logos img{
  height:96px;
  width:auto;
  display:block;
}

.vt-footer__logos img:first-child{ max-width:820px; }
.vt-footer__logos img:last-child{  max-width:720px; }

/* Mobile: keep side-by-side, smaller */
@media (max-width: 520px){
  .vt-footer__logos{
    gap:14px;
    padding:8px 0 18px;
    flex-direction:row;
    flex-wrap:nowrap;
  }

  .vt-footer__logos img{
    height:80px;
    max-width:46vw;
  }
}

/* ============================================================
   Main 4-column grid
   ============================================================ */
.vt-footer__grid{
  display:grid;
  grid-template-columns: 1.2fr 1fr 1fr 1fr;
  gap:34px;
  padding-bottom:28px;
}

.vt-footer__block{
  padding:0;
  min-width:0;
}

.vt-footer__title{
  font-size:13px;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:rgba(255,255,255,0.78);
  margin:0 0 12px;
}

.vt-footer__text{
  margin:0 0 14px;
  color:var(--vtf-muted);
  font-size:14px;
  line-height:1.6;
}

/* Corp */
.vt-footer__corp{
  font-size:14px;
  line-height:1.65;
  color:var(--vtf-muted);
}
.vt-footer__corp strong{
  color:var(--vtf-link);
  font-weight:750;
}
.vt-footer__corp a{
  color:var(--vtf-link);
  text-decoration:underline;
}

/* Newsletter */
.vt-footer .vt-subform{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  max-width:360px;
}

.vt-footer .vt-subform input{
  width:100%;
  padding:11px 12px;
  border-radius:12px;
  border:1px solid var(--vtf-border);
  background:rgba(255,255,255,0.06);
  color:rgba(255,255,255,0.92);
  outline:none;
}

.vt-footer .vt-subform input::placeholder{
  color:rgba(255,255,255,0.52);
}

.vt-footer .vt-subbtn{
  width:100%;
  padding:11px 14px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,0.18);
  background:rgba(255,255,255,0.14);
  color:rgba(255,255,255,0.95);
  cursor:pointer;
  font-weight:650;
}

.vt-footer .vt-subbtn:disabled{
  opacity:0.65;
  cursor:not-allowed;
}

.vt-footer__submsg{
  display:none;
  margin-top:10px;
  padding:10px 12px;
  border-radius:12px;
  font-size:14px;
  border:1px solid var(--vtf-border);
}

.vt-footer__submsg--ok{
  display:block;
  background:rgba(16,185,129,0.10);
}

.vt-footer__submsg--err{
  display:block;
  background:rgba(239,68,68,0.10);
}

/* Latest posts with thumbnail */
.vt-footer__posts{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.vt-footer__post{
  display:flex;
  gap:10px;
  align-items:flex-start;
  text-decoration:none;
  color:inherit;
}

.vt-footer__thumb{
  width:58px;
  height:44px;
  border-radius:10px;
  overflow:hidden;
  border:1px solid var(--vtf-border);
  background:rgba(255,255,255,0.06);
  flex:0 0 auto;
}

.vt-footer__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.vt-footer__post .t{
  color:var(--vtf-link);
  font-size:14px;
  font-weight:700;
  line-height:1.3;
}

.vt-footer__post .d{
  display:block;
  color:var(--vtf-muted);
  font-size:12px;
  margin-top:3px;
}

.vt-footer__post:hover .t{
  text-decoration:underline;
}

/* Social */
.vt-footer__social{
  display:flex;
  gap:10px;
  align-items:center;
  margin-top:16px;
}

.vt-footer__social a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border-radius:999px;
  background:none;
  border:none;
}

.vt-footer__social img{
  width:40px;
  height:40px;
  display:block;
}

/* Nav */
.vt-footer__links{
  display:flex;
  flex-direction:column;
  gap:9px;
}

.vt-footer__links a{
  color:var(--vtf-link);
  text-decoration:none;
  font-size:14px;
}

.vt-footer__links a:hover{
  text-decoration:underline;
}

/* ============================================================
   Wholesale section
   ============================================================ */
.vt-footer__wh-section{
  margin-top:8px;
  padding-top:20px;
  border-top:1px solid var(--vtf-border);
}

.vt-footer__wh-title{
  font-size:13px;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:rgba(255,255,255,0.78);
  margin:0 0 18px;
  text-align:center;
}

.vt-footer__wh-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:26px;
}

.vt-footer__wh-item{
  border:none;
  background:transparent;
  padding:0;
  text-align:left;
}

.vt-footer__wh-logo{
  display:block;
  width:min(225px, 100%);
  height:100px;
  margin:0 -10px 12px;
  opacity:0.95;
}

.vt-footer__wh-name{
  color:var(--vtf-link);
  font-weight:750;
  font-size:14px;
  text-decoration:none;
  display:inline-block;
}

.vt-footer__wh-name:hover{
  text-decoration:underline;
}

.vt-footer__wh-desc{
  margin:8px 0 0;
  color:var(--vtf-muted);
  font-size:13px;
  line-height:1.6;
}

/* Bottom copyright */
.vt-footer__bottom{
  max-width:var(--vtf-max);
  margin:0 auto;
  padding:14px 16px 22px;
  color:rgba(255,255,255,0.55);
  font-size:13px;
  border-top:1px solid var(--vtf-border);
}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width: 1100px){
  .vt-footer__grid{
    grid-template-columns:1.2fr 1fr;
    gap:28px;
  }

  .vt-footer__wh-grid{
    grid-template-columns:repeat(2, 1fr);
    gap:22px;
  }
}

@media (max-width: 720px){
  .vt-footer__grid{
    grid-template-columns:1fr;
    gap:24px;
  }

  .vt-footer__wh-grid{
    grid-template-columns:1fr;
    gap:0;
  }

  .vt-footer .vt-subform{
    max-width:420px;
  }

  .vt-footer__wh-item{
    padding:18px 0;
    border-top:1px solid var(--vtf-border);
  }

  .vt-footer__wh-item:first-child{
    border-top:none;
    padding-top:0;
  }
}