:root{
  --pb-bg:#FDFEFF;
  --pb-soft:#F1F3FA;
  --pb-text:#1E2238;
  --pb-muted:#5B6482;
  --pb-cyan:#00CFE8;
  --pb-indigo:#3F51B5;
  --pb-line:rgba(63,81,181,.10);
  --pb-shadow:0 18px 55px rgba(30,34,56,.12);
  --pb-shadow-soft:0 10px 30px rgba(30,34,56,.08);
  --pb-radius:22px;
  --pb-grad:linear-gradient(135deg,#00CFE8,#3F51B5);
}

/* SECTION HEROES */
.service-hero,.services-hero,.product-hero,.products-hero,.contact-hero,.admin-hero,
.page-hero.service,.page-hero.product,.page-hero.contact,.page-hero.admin,
.service-banner,.product-banner,.contact-banner,.admin-banner{
  background:
    radial-gradient(circle at top right, rgba(0,207,232,.10), transparent 26%),
    linear-gradient(135deg, rgba(0,207,232,.05), rgba(63,81,181,.06));
  border:1px solid var(--pb-line)!important;
  border-radius:28px!important;
  box-shadow:var(--pb-shadow-soft)!important;
  padding:30px!important;
}

/* SERVICE PAGES */
.service-grid,.services-grid,.service-list-grid,.service-cards,.our-services-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px!important;
}
@media(max-width:980px){
  .service-grid,.services-grid,.service-list-grid,.service-cards,.our-services-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:700px){
  .service-grid,.services-grid,.service-list-grid,.service-cards,.our-services-grid{
    grid-template-columns:1fr;
  }
}

.service-item,.service-card,.service-box,.service-tile,.service-module,.single-service{
  background:#fff!important;
  border:1px solid var(--pb-line)!important;
  border-radius:24px!important;
  padding:22px!important;
  box-shadow:var(--pb-shadow-soft)!important;
  position:relative;
  overflow:hidden;
}
.service-item::before,.service-card::before,.service-box::before,.service-tile::before,.service-module::before,.single-service::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:4px;
  background:var(--pb-grad);
}
.service-item h3,.service-card h3,.service-box h3,.service-tile h3,.service-module h3,.single-service h3{
  margin-top:8px;
}
.service-item ul,.service-card ul,.service-box ul,.service-tile ul,.service-module ul,.single-service ul{
  list-style:none;
  padding:0;
  margin:0;
}
.service-item li,.service-card li,.service-box li,.service-tile li,.service-module li,.single-service li{
  position:relative;
  padding-left:24px;
  margin:0 0 8px;
  color:var(--pb-text);
  font-weight:600;
}
.service-item li::before,.service-card li::before,.service-box li::before,.service-tile li::before,.service-module li::before,.single-service li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--pb-cyan);
  font-weight:900;
}

/* PRODUCT PAGES */
.product-grid,.products-grid,.shop-grid,.catalog-grid,.product-list-grid,.items-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px!important;
}
@media(max-width:1180px){
  .product-grid,.products-grid,.shop-grid,.catalog-grid,.product-list-grid,.items-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:900px){
  .product-grid,.products-grid,.shop-grid,.catalog-grid,.product-list-grid,.items-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:640px){
  .product-grid,.products-grid,.shop-grid,.catalog-grid,.product-list-grid,.items-grid{
    grid-template-columns:1fr;
  }
}

.product-card,.product-item,.shop-item,.catalog-item,.single-product,.item-card{
  background:#fff!important;
  border:1px solid var(--pb-line)!important;
  border-radius:24px!important;
  box-shadow:var(--pb-shadow-soft)!important;
  padding:18px!important;
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease;
}
.product-card:hover,.product-item:hover,.shop-item:hover,.catalog-item:hover,.single-product:hover,.item-card:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 44px rgba(30,34,56,.12)!important;
}
.product-card img,.product-item img,.shop-item img,.catalog-item img,.single-product img,.item-card img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(0,207,232,.08),rgba(63,81,181,.08));
  border:1px solid var(--pb-line);
}
.price,.product-price,.sale-price,.amount,.mrp,.our-price{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(0,207,232,.10);
  color:var(--pb-indigo)!important;
  font-weight:800!important;
}

/* CONTACT PAGES */
.contact-grid,.contact-layout,.contact-wrap,.contact-sections{
  display:grid!important;
  grid-template-columns:1.05fr .95fr;
  gap:22px!important;
}
@media(max-width:900px){
  .contact-grid,.contact-layout,.contact-wrap,.contact-sections{
    grid-template-columns:1fr;
  }
}
.contact-form,.contact-box,.contact-card,.contact-info,.contact-details,.enquiry-form,.support-form{
  background:#fff!important;
  border:1px solid var(--pb-line)!important;
  border-radius:24px!important;
  box-shadow:var(--pb-shadow-soft)!important;
  padding:24px!important;
}
.contact-info ul,.contact-details ul{
  list-style:none;
  padding:0;
  margin:0;
}
.contact-info li,.contact-details li{
  margin:0 0 10px;
  color:var(--pb-text);
  font-weight:600;
}
.map,.map-box,.location-map,iframe{
  border-radius:20px!important;
  overflow:hidden!important;
  border:1px solid var(--pb-line)!important;
  box-shadow:var(--pb-shadow-soft)!important;
}

/* ADMIN PAGES */
.admin-wrap,.admin-page,.dashboard-wrap,.dashboard-page,.panel-wrap,.crm-wrap{
  background:transparent!important;
}
.sidebar,.admin-sidebar,.dashboard-sidebar,.left-panel,.side-nav{
  background:linear-gradient(180deg,#1B2140,#12182D)!important;
  color:#fff!important;
  border-radius:24px!important;
  box-shadow:0 18px 40px rgba(16,20,36,.24)!important;
}
.sidebar a,.admin-sidebar a,.dashboard-sidebar a,.left-panel a,.side-nav a{
  color:#EAF3FF!important;
}
.admin-card,.dashboard-card,.stat-card,.metric-card,.kpi-card,.panel-card,.crm-card{
  background:#fff!important;
  border:1px solid var(--pb-line)!important;
  border-radius:24px!important;
  box-shadow:var(--pb-shadow-soft)!important;
  padding:20px!important;
}
.admin-card .value,.dashboard-card .value,.stat-card .value,.metric-card .value,.kpi-card .value{
  font-size:1.8rem;
  font-weight:900;
  color:var(--pb-indigo)!important;
}
.admin-toolbar,.dashboard-toolbar,.page-actions,.filter-bar,.toolbar{
  background:rgba(255,255,255,.92)!important;
  border:1px solid var(--pb-line)!important;
  border-radius:20px!important;
  padding:14px!important;
  box-shadow:var(--pb-shadow-soft)!important;
}
.alert,.notice,.success,.error,.warning,.info-box{
  border-radius:18px!important;
  border:1px solid var(--pb-line)!important;
  padding:14px 16px!important;
}
.success{background:rgba(0,207,232,.10)!important}
.warning{background:rgba(255,193,7,.10)!important}
.error{background:rgba(220,53,69,.08)!important}

/* COMMON CTA BAND */
.phaseb-cta{
  margin-top:26px;
  padding:24px;
  border-radius:26px;
  background:var(--pb-grad);
  color:#fff!important;
  box-shadow:0 18px 55px rgba(63,81,181,.24);
}
.phaseb-cta h2,.phaseb-cta h3,.phaseb-cta p{
  color:#fff!important;
}
.phaseb-cta .btn,.phaseb-cta a.btn{
  background:#fff!important;
  color:var(--pb-indigo)!important;
}

/* PLACEHOLDER IMAGE ENHANCER */
img[src=""],img:not([src]){
  min-height:180px;
  background:linear-gradient(135deg,rgba(0,207,232,.08),rgba(63,81,181,.08));
  border:1px dashed var(--pb-line);
  border-radius:16px;
}

/* Generic admin tables/forms tightening */
.admin-page table,.dashboard-page table,.crm-wrap table,.admin-wrap table{
  box-shadow:var(--pb-shadow-soft)!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
.admin-page input,.dashboard-page input,.crm-wrap input,.admin-page select,.dashboard-page select,.crm-wrap select,.admin-page textarea,.dashboard-page textarea,.crm-wrap textarea{
  background:#fff!important;
}

/* Optional wrappers if injected */
.phaseb-wrapper{
  width:min(100% - 28px,1380px);
  margin:auto;
}
