/* Netech Product Carousel (NPC) - inherits theme fonts/colors */
.npc-wrap{
  width:100%;
  max-width:1100px;
  margin:20px auto;
  padding:10px 0;
}
.wctourism-tab {
    border: 1px solid rgba(0, 0, 0, .08);
    color: black !important;
    border: transparent;
}

.wctourism-tab.is-active {
       font-weight: 600;
       border-bottom: 4px solid var(--ast-global-color-1);
       background:transparent;
       color:var(--ast-global-color-1) !important;
}

/* Make icon white when active */
.wctourism-tab.is-active i {
    color: var(--ast-global-color-1);
}

/* Optional Hover */
.wctourism-tab:hover {
    background: white;
}
.npc-title {
  display: inline-block;
  max-width: 15ch;       /* 15 characters width */
  white-space: nowrap;   /* Prevent text wrap */
  overflow: hidden;      /* Hide extra text */
  text-overflow: ellipsis; /* Show ... */
} 

.npc-viewport{overflow:hidden;width:100%;}

.npc-viewport{position:relative;}

.npc-track{
  display:flex;
  gap:22px;
  will-change:transform;
  transform:translate3d(0,0,0);
  transition:transform 420ms ease;
  touch-action:pan-y;
  user-select:none;
}

/* Arrows (replace dots) */
.npc-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,0.15);
  background:rgba(255,255,255,0.92);
  box-shadow:0 6px 16px rgba(0,0,0,0.12);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index:3;
  padding:0;
  line-height:1;
  color: var(--ast-global-color-0, var(--wp--preset--color--primary, #1e73be));
  border-color: var(--ast-global-color-0, rgba(0,0,0,0.15));
}

.npc-arrow span{font-size:20px; font-weight:700;}

.npc-arrow:hover{
  background: var(--ast-global-color-0, var(--wp--preset--color--primary, #1e73be));
  color:#fff;
  border-color: var(--ast-global-color-0, var(--wp--preset--color--primary, #1e73be));
}

.npc-arrow:focus{outline: none;}
.npc-arrow:focus-visible{
  outline: 2px solid var(--ast-global-color-0, var(--wp--preset--color--primary, #1e73be));
  outline-offset: 2px;
}

.npc-prev{left:10px;}
.npc-next{right:10px;}

.npc-arrow:disabled{
  opacity:0.35;
  cursor:not-allowed;
}

.npc-card{
  flex:0 0 calc((100% - 44px) / 3);
  background:#fff;
  border-radius:14px;
  border:1px solid rgba(0,0,0,0.08); /* thin light border */
  box-shadow:0 6px 16px rgba(0,0,0,0.08); /* small soft shadow */
  overflow:hidden;
}

.npc-card-inner{
  display:flex;
  align-items:stretch;
  min-height:180px;
}

.npc-left{
  flex:1 1 auto;
  padding:18px 16px 16px 18px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
}

.npc-title{
  margin:0;
  font-size:17px;
  font-weight:700;
  line-height:1.15;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  color:inherit;
}

.npc-desc{
  margin:0;
  font-size:14px;
  font-weight:300;
  line-height:1.35;
  color:inherit;
  opacity:0.9;

  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Price (small + bold) */
.npc-price{
  font-size:12px;
  line-height:1.2;
  font-weight:700;
  margin-top:2px;
}

.npc-price,
.npc-price *{
  font-weight:700 !important;
}

.npc-btn{
  align-self:flex-start;
  margin-top:6px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 18px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  font-size:13px;
  letter-spacing:0.5px;

  background:var(--wp--preset--color--primary, #1e73be);
  color:#fff;
}

.npc-btn:hover{filter:brightness(0.95);}

.npc-right{flex:0 0 45%;position:relative;display:block;}

.npc-right img,
.npc-right .npc-img,
.npc-right img.npc-img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Dots */
.npc-dots{
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top:14px;
}

.npc-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  border:none;
  background:rgba(0,0,0,0.2);
  cursor:pointer;
  padding:0;
}

.npc-dot.is-active{
  background:var(--wp--preset--color--primary, #1e73be);
}

/* Tablet: 2 items */
@media (max-width: 991px){
  .npc-card{
  flex:0 0 calc((100% - 44px) / 3);
  background:#fff;
  border-radius:14px;
  border:1px solid rgba(0,0,0,0.08); /* thin light border */
  box-shadow:0 6px 16px rgba(0,0,0,0.08); /* small soft shadow */
  overflow:hidden;
}
}

/* Mobile & smallest: 1 item */
@media (max-width: 640px){
  .npc-card{
  flex:0 0 calc((100% - 44px) / 3);
  background:#fff;
  border-radius:14px;
  border:1px solid rgba(0,0,0,0.08); /* thin light border */
  box-shadow:0 6px 16px rgba(0,0,0,0.08); /* small soft shadow */
  overflow:hidden;
}
}

/* Responsive force widths (avoids theme overrides) */
@media (max-width: 991px){
  .npc-card{flex:0 0 calc((100% - 22px) / 2) !important;}
}

@media (max-width: 640px){
  .npc-wrap{padding-left:12px !important; padding-right:12px !important;}
  .npc-track{gap:0 !important;}
  .npc-card{flex:0 0 100% !important; width:100% !important; max-width:100% !important;}

  .npc-arrow{width:44px;height:44px;}
  .npc-prev{left:6px;}
  .npc-next{right:6px;}
}
