/*
Theme Name: WorldGsmStore Theme
Theme URI: https://codedpro.ro
Description: Tema "Child" pentru worldgsmstore.ro
Author: Codedpro Dev S.R.L.
Author URI: https://codedpro.ro
Template: Total
Version: 1.0
*/
/* Theme overrides */
:root {
  --wgsm-blue: #0ea5e9;
  --wgsm-navy: #0f172a;
  --wgsm-emerald: #22c55e;
}

body {
  font-family: 'Roboto', 'Helvetica Neue', Arial, sans-serif;
}

.wgsm-hero .vc_custom_heading,
.wgsm-servicii-hero .vc_custom_heading,
.wgsm-preturi-hero .vc_custom_heading {
  font-weight: 700;
}

.wgsm-hero .vc_btn3-container,
.wgsm-servicii-hero .vc_btn3-container,
.wgsm-preturi-hero .vc_btn3-container {
  display: inline-block;
  margin-right: 14px;
  margin-top: 12px;
}

.wgsm-hero .vc_btn3.vc_btn3-size-lg {
  padding: 14px 28px;
  border-radius: 999px;
}

.wgsm-hero-badges {
  margin-top: 24px;
  font-size: 15px;
  color: #bae6fd;
}

.wgsm-hero-card {
  background: rgba(2, 6, 23, 0.55);
  padding: 24px;
  border-radius: 20px;
  color: #f8fafc;
  backdrop-filter: blur(6px);
  box-shadow: 0 25px 50px rgba(2, 6, 23, 0.45);
}

.wgsm-highlight-card,
.wgsm-service-card,
.wgsm-step-card,
.wgsm-process-card {
  border-radius: 22px;
  background: #fff;
  padding: 26px;
  box-shadow: 0 25px 45px rgba(15, 23, 42, 0.12);
  color: #0f172a;
}
.wgsm-service-grid { display: grid; gap: 22px; }
.wgsm-service-grid.columns-2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.wgsm-service-grid.columns-3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
@media(max-width: 768px) {
  .wgsm-service-grid.columns-2,
  .wgsm-service-grid.columns-3 { grid-template-columns: repeat(1,minmax(0,1fr)); }
}

.wgsm-step-card span {
  display: inline-flex;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  background: var(--wgsm-blue);
  color: #fff;
  font-weight: 700;
  margin-bottom: 10px;
}

.wgsm-service-card em {
  display: block;
  margin-top: 8px;
  color: #64748b;
  font-style: normal;
  font-size: 14px;
}
.wgsm-service-card .wgsm-service-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  line-height: 1.3;
}
.wgsm-service-card ul {
  margin: 12px 0 0;
  padding-left: 18px;
  color: #475569;
  font-size: 14px;
}
.wgsm-service-card ul li { margin-bottom: 4px; }
.wgsm-service-icon {
  display: inline-flex;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  align-items: center;
  justify-content: center;
  background: #e2e8f0;
  color: #0f172a;
  font-size: 24px;
  flex-shrink: 0;
}
.wgsm-service-btn { margin-top: 12px; }
.wgsm-service-btn .vc_btn3,
.wgsm-service-btn .vc_btn3:hover {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 28px;
  border-radius: 999px;
  font-weight: 600;
  border: none !important;
  background: #2C7CE8;
  color: #fff !important;
  text-transform: none;
  box-shadow: 0 10px 25px rgba(14,165,233,.25);
  transform: none !important;
  -webkit-transform: none !important;
  filter: none !important;
  transition: background-color .25s ease, color .25s ease;
}
.wgsm-service-btn .vc_btn3:hover {
  background: #1056B4;
}
.wgsm-service-btn .vc_btn3 .vc_btn3-text { color: inherit !important; }
.wgsm-service-icon--blue { background: #dbeafe; color: #1056b4; }
.wgsm-service-icon--amber { background: #fef3c7; color: #b45309; }
.wgsm-service-icon--violet { background: #ede9fe; color: #6d28d9; }
.wgsm-service-icon--indigo { background: #e0e7ff; color: #4338ca; }
.wgsm-service-icon--rose { background: #ffe4e6; color: #be123c; }
.wgsm-service-icon--teal { background: #ccfbf1; color: #0f766e; }
.wgsm-service-icon--red { background: #fee2e2; color: #b91c1c; }

.wgsm-call-floating {
  position: fixed;
  right: 24px;
  bottom: 28px;
  background: var(--wgsm-emerald);
  color: #fff !important;
  padding: 14px 26px;
  border-radius: 999px;
  font-weight: 600;
  z-index: 90;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  box-shadow: 0 20px 45px rgba(34, 197, 94, 0.45);
}

@media(max-width: 767px) {
  .wgsm-call-floating {
    left: 16px;
    right: 16px;
    justify-content: center;
  }
}

/* Header styles */
.wgsm-header-promo {
  background-image: linear-gradient(90deg, #b91c1c, #020617);
  color: #fff;
  text-align: center;
  padding: 8px 0;
  font-weight: 600;
}

.wgsm-header-main {
  background: rgba(2, 6, 23, 0.95);
  color: #f8fafc;
  border-bottom: 1px solid rgba(15, 23, 42, 0.15);
}

.wgsm-header-main .vc_wp_custommenu ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 20px;
  justify-content: center;
}

.wgsm-header-main .vc_wp_custommenu a {
  color: inherit;
  font-weight: 600;
}

.wgsm-header-overlay .wgsm-header-main {
  background: transparent;
  border: 0;
}

body.header-overlay .site-header:before {
  display: none;
}

body.header-overlay .site-header.is-sticky .wgsm-header-main {
  background: rgba(2, 6, 23, 0.95);
}

/* Footer */
.wgsm-footer-main {
  background: #020617;
  color: #cbd5f5;
  padding: 70px 0;
}

.wgsm-footer-main .vc_custom_heading {
  color: #fff !important;
}

.wgsm-footer-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.wgsm-footer-menu li {
  margin-bottom: 8px;
}

.wgsm-footer-bottom {
  background: #01030c;
  color: #94a3b8;
  text-align: center;
  padding: 18px 0;
}

/* Contact form */
.wgsm-form-grid label {
  font-weight: 600;
  margin: 12px 0 6px;
  display: block;
}

.wgsm-form-grid input,
.wgsm-form-grid textarea,
.wgsm-form-grid select {
  width: 100%;
  border: 1px solid #cbd5f5;
  border-radius: 16px;
  padding: 12px 16px;
}

.wgsm-form-grid .wpcf7-submit {
  background: var(--wgsm-blue);
  color: #fff;
  border: none;
  padding: 14px 30px;
  border-radius: 999px;
  font-weight: 600;
  margin-top: 18px;
}
.site-header .visible-stuck { display: none; }
.site-header.is-sticky .visible-stuck { display: inline-flex; }
.site-header.is-sticky .hidden-stuck { display: none !important; }
.wgsm-service-hero {
  color: #f8fafc;
  background-image: linear-gradient(120deg, rgba(2,6,23,0.92), rgba(14,101,150,0.55));
}
.wgsm-service-hero .vc_btn3-container { margin-right: 12px; margin-top: 12px; }
.wgsm-facts { list-style: none; margin: 0; padding: 0; }
.wgsm-facts li { margin-bottom: 6px; padding-left: 18px; position: relative; }
.wgsm-facts li:before { content: '•'; position: absolute; left: 0; color: var(--wgsm-emerald); }
.wgsm-price-table table { width: 100%; border-collapse: collapse; }
.wgsm-price-table th,
.wgsm-price-table td { border-bottom: 1px solid #e2e8f0; padding: 10px; text-align: left; }
.wgsm-price-table th { text-transform: uppercase; letter-spacing: .08em; font-size: 12px; color: #0f172a; }
.wgsm-price-table td { color: #475569; font-size: 15px; }
.wgsm-cta { text-align: center; }
.single-wgsm_service ul.meta,
.single-wgsm_service .single-share,
.single-wgsm_service .single-share-title { display: none !important; }
.single-wgsm_service .wgsm-service-hero { padding-top: 15px !important; color: #fff; }
.single-wgsm_service .wgsm-service-hero h1,
.single-wgsm_service .wgsm-service-hero h2,
.single-wgsm_service .wgsm-service-hero p { color: #fff !important; }
.wgsm-product-container { max-width: 1180px; margin: 0 auto; padding: 60px 20px; }
.wgsm-product-back { margin-bottom: 20px; }
.wgsm-product-back a { color: var(--wgsm-blue); font-weight: 600; }
.wgsm-product-hero { display: flex; flex-wrap: wrap; gap: 32px; align-items: stretch; }
.wgsm-product-media { flex: 1 1 420px; }
.wgsm-product-media__frame { position: relative; background: #fff; border-radius: 28px; padding: 24px; box-shadow: 0 15px 45px rgba(15,23,42,.15); }
.wgsm-product-media__image { width: 100%; height: auto; object-fit: contain; }
.wgsm-product-badge { position: absolute; top: 20px; right: 20px; background: linear-gradient(90deg,#b91c1c,#020617); color: #fff; font-weight: 700; padding: 8px 18px; border-radius: 999px; box-shadow: 0 15px 35px rgba(0,0,0,.25); }
.wgsm-product-summary { flex: 1 1 420px; background: #fff; border-radius: 28px; padding: 32px; box-shadow: 0 15px 45px rgba(15,23,42,.15); }
.wgsm-product-title { font-size: 32px; margin-bottom: 6px; color: #0f172a; }
.wgsm-product-subtitle { color: #475569; font-weight: 500; margin-bottom: 16px; }
.wgsm-product-prices { display: flex; align-items: baseline; gap: 14px; margin-bottom: 10px; }
.wgsm-product-price { font-weight: 600; font-size: 20px; color: #0f172a; }
.wgsm-product-price--sale { font-size: 34px; color: #0b6afa; font-weight: 700; }
.wgsm-product-price--regular { text-decoration: line-through; color: #94a3b8; }
.wgsm-product-price-note { color: #94a3b8; font-size: 14px; margin-bottom: 16px; }
.wgsm-product-specs { list-style: none; padding: 0; margin: 0 0 24px; display: flex; flex-wrap: wrap; gap: 10px; }
.wgsm-product-specs li { background: #f1f5f9; border-radius: 999px; padding: 6px 14px; font-weight: 600; font-size: 13px; color: #0f172a; }
.wgsm-product-form { margin-bottom: 18px; }
.wgsm-product-form input,
.wgsm-product-form textarea { width: 100%; border-radius: 14px; border: 1px solid #dbeafe; padding: 12px 16px; margin-bottom: 10px; }
.wgsm-product-form .wpcf7-submit,
.wgsm-btn { display: inline-flex; justify-content: center; align-items: center; gap: 8px; border-radius: 16px; font-weight: 600; padding: 14px 26px; border: none; background: #1056B4; color: #fff; text-decoration: none; }
.wgsm-product-form .wpcf7-submit { width: 100%; cursor: pointer; }
.wgsm-btn.--secondary { background: var(--wgsm-emerald); }
.wgsm-product-cta { display: flex; flex-wrap: wrap; gap: 12px; }
.wgsm-product-body { margin-top: 50px; }
.wgsm-product-features { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 14px; margin-top: 30px; }
.wgsm-product-feature { background: #f1f5f9; border-radius: 18px; padding: 16px; font-weight: 600; color: #0f172a; }
.wgsm-product-grid { display: grid; gap: 22px; }
.wgsm-product-grid.columns-2 { grid-template-columns: repeat(auto-fit,minmax(280px,1fr)); }
.wgsm-product-grid.columns-3 { grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); }
.wgsm-product-grid.columns-4 { grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); }
.wgsm-product-card { position: relative; background: #fff; border-radius: 26px; padding: 24px; box-shadow: 0 20px 45px rgba(15,23,42,.12); height: 100%; }
.wgsm-product-card__link { text-decoration: none; color: inherit; display: flex; flex-direction: column; height: 100%; }
.wgsm-product-card__media { position: relative; margin-bottom: 18px; min-height: 200px; display: flex; align-items: center; justify-content: center; }
.wgsm-product-card__image { max-height: 200px; width: auto; }
.wgsm-product-card__badge { position: absolute; top: 12px; right: 12px; background: linear-gradient(120deg,#b91c1c,#020617); color: #fff; font-weight: 700; font-size: 12px; padding: 6px 14px; border-radius: 999px; }
.wgsm-product-card__title { font-size: 18px; margin-bottom: 6px; }
.wgsm-product-card__subtitle { color: #475569; margin-bottom: 6px; }
.wgsm-product-card__spec { color: #94a3b8; font-size: 13px; margin-bottom: 10px; }
.wgsm-product-card__prices { margin-top: auto; display: flex; gap: 10px; align-items: baseline; }
.wgsm-product-card__price { font-weight: 600; color: #0f172a; }
.wgsm-product-card__price.--sale { font-size: 22px; color: #b91c1c; }
.wgsm-product-card__price.--regular { text-decoration: line-through; color: #94a3b8; }
.wgsm-product-card__price.--primary { font-size: 22px; }
.wgsm-product-grid__empty { text-align: center; color: #64748b; }

@media(max-width: 767px) {
  .wgsm-product-container { padding-top: 30px; }
  .wgsm-product-summary,
  .wgsm-product-media__frame { border-radius: 20px; }
}
