/* ══════════════════════════════════════════════════
   indigital Shop — WooCommerce Design System
   v1.0.0
══════════════════════════════════════════════════ */

:root {
  --ind-teal:      #1aafc8;
  --ind-teal-dark: #138da3;
  --ind-teal-pale: #e6f7f9;
  --ind-navy:      #0c1627;
  --ind-bg:        #f7f9fb;
  --ind-bord:      #e6ebf0;
  --ind-text:      #5b6877;
  --ind-text-l:    #9aa3ad;
  --ind-radius:    14px;
  --ind-radius-sm: 8px;
  --ind-shadow:    0 4px 20px rgba(8,15,30,.04);
  --ind-shadow-h:  0 16px 40px rgba(8,15,30,.10);
}

/* ══ Section 1: Homepage Products Grid ══════════ */
.ind-prod-sec {
  padding: 80px 20px;
  background: #fff;
}
.ind-prod-sec .container {
  max-width: 1200px;
  margin: 0 auto;
}
.ind-prod-head {
  text-align: center;
  margin-bottom: 48px;
}
.ind-tag {
  display: inline-block;
  background: var(--ind-teal-pale);
  color: var(--ind-teal);
  font-weight: 700;
  font-size: 12px;
  padding: 6px 14px;
  border-radius: 999px;
  margin-bottom: 16px;
  letter-spacing: .5px;
}
.ind-prod-head h2 {
  font-size: clamp(28px, 4vw, 44px);
  margin: 0 0 12px;
  color: var(--ind-navy);
  line-height: 1.2;
}
.ind-prod-head h2 em {
  color: var(--ind-teal);
  font-style: normal;
}
.ind-prod-head p {
  color: var(--ind-text);
  font-size: 16px;
  margin: 0;
}
.ind-prod-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
  gap: 24px;
}
.ind-pc {
  background: #fff;
  border: 1px solid var(--ind-bord);
  border-radius: var(--ind-radius);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .2s, box-shadow .2s;
}
.ind-pc:hover {
  transform: translateY(-4px);
  box-shadow: var(--ind-shadow-h);
}
.ind-pc-img {
  position: relative;
  aspect-ratio: 16/10;
  display: block;
  overflow: hidden;
  background: var(--ind-bg);
}
.ind-pc-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}
.ind-pc:hover .ind-pc-img img {
  transform: scale(1.05);
}
.ind-pc-sale {
  position: absolute;
  top: 14px;
  right: 14px;
  background: #ff6b3d;
  color: #fff;
  font-weight: 700;
  font-size: 11px;
  padding: 5px 10px;
  border-radius: 4px;
  z-index: 2;
  letter-spacing: .5px;
}
.ind-pc-body {
  padding: 22px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.ind-pc-body h3 {
  font-size: 20px;
  margin: 0 0 8px;
  line-height: 1.3;
}
.ind-pc-body h3 a {
  color: var(--ind-navy);
  text-decoration: none;
  transition: color .15s;
}
.ind-pc-body h3 a:hover {
  color: var(--ind-teal);
}
.ind-pc-body p {
  color: var(--ind-text);
  font-size: 14px;
  line-height: 1.6;
  flex: 1;
  margin: 0 0 16px;
}
.ind-pc-price {
  font-size: 26px;
  font-weight: 800;
  color: var(--ind-navy);
  margin-bottom: 16px;
  line-height: 1;
}
.ind-pc-price del {
  font-size: 15px;
  color: var(--ind-text-l);
  margin-left: 8px;
  font-weight: 500;
}
.ind-pc-price ins {
  text-decoration: none;
  color: var(--ind-teal);
}
.ind-pc-cta {
  display: flex;
  gap: 10px;
}
.ind-btn-buy {
  flex: 1;
  background: var(--ind-teal);
  color: #fff !important;
  text-align: center;
  padding: 12px 16px;
  font-weight: 700;
  font-size: 14px;
  text-decoration: none;
  border-radius: var(--ind-radius-sm);
  transition: background .15s, transform .15s;
}
.ind-btn-buy:hover {
  background: var(--ind-navy);
  transform: translateY(-1px);
}
.ind-btn-info {
  background: transparent;
  color: var(--ind-text) !important;
  border: 1px solid var(--ind-bord);
  padding: 12px 16px;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  border-radius: var(--ind-radius-sm);
  transition: all .15s;
}
.ind-btn-info:hover {
  border-color: var(--ind-teal);
  color: var(--ind-teal) !important;
}

/* ══ Section 2: Cart + Checkout backgrounds ══════ */
.woocommerce-cart,
.woocommerce-checkout,
.woocommerce-order-received {
  background: var(--ind-bg);
}
.woocommerce-cart .container,
.woocommerce-checkout .container,
.woocommerce-cart main,
.woocommerce-checkout main,
.woocommerce-order-received main {
  padding: 60px 20px !important;
  max-width: 1100px;
  margin: 0 auto;
}
.woocommerce h1.entry-title,
.woocommerce-page h1.entry-title {
  font-size: clamp(28px, 4vw, 42px) !important;
  text-align: center;
  margin-bottom: 40px !important;
  color: var(--ind-navy);
  font-weight: 800;
}
.woocommerce h3 {
  font-size: 20px;
  color: var(--ind-navy);
  margin-bottom: 18px;
}

/* ══ Cart Table ══════════════════════════════════ */
.woocommerce table.shop_table {
  background: #fff;
  border: 1px solid var(--ind-bord);
  border-radius: var(--ind-radius);
  overflow: hidden;
  border-collapse: separate !important;
  box-shadow: var(--ind-shadow);
  margin-bottom: 24px !important;
}
.woocommerce table.shop_table th {
  background: var(--ind-navy);
  color: #fff;
  padding: 16px !important;
  font-weight: 700;
  font-size: 14px;
  border: none !important;
}
.woocommerce table.shop_table td {
  padding: 18px 16px !important;
  vertical-align: middle;
  border-top: 1px solid var(--ind-bord);
}
.woocommerce table.shop_table .product-thumbnail img {
  width: 70px;
  height: 70px;
  object-fit: cover;
  border-radius: var(--ind-radius-sm);
}
.woocommerce table.shop_table .product-name a {
  color: var(--ind-navy);
  font-weight: 600;
  text-decoration: none;
}
.woocommerce table.shop_table .product-name a:hover {
  color: var(--ind-teal);
}
.woocommerce .quantity input.qty {
  width: 70px;
  padding: 8px;
  border: 1px solid var(--ind-bord);
  border-radius: var(--ind-radius-sm);
  text-align: center;
  font-size: 15px;
}
.woocommerce a.remove {
  color: var(--ind-text-l) !important;
  font-size: 22px !important;
  width: 28px;
  height: 28px;
  line-height: 24px;
}
.woocommerce a.remove:hover {
  background: #fee !important;
  color: #c33 !important;
}

/* ══ Universal Buttons ═══════════════════════════ */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-page a.button,
.woocommerce-page button.button,
.woocommerce-page input.button,
.woocommerce #place_order {
  background: var(--ind-teal) !important;
  color: #fff !important;
  padding: 14px 28px !important;
  border-radius: var(--ind-radius-sm) !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  border: none !important;
  transition: background .15s, transform .15s !important;
  text-shadow: none !important;
  text-decoration: none !important;
  box-shadow: none !important;
  line-height: 1.4 !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #place_order:hover {
  background: var(--ind-navy) !important;
  transform: translateY(-1px);
  color: #fff !important;
}

.woocommerce .button.alt,
.woocommerce button.button.alt,
.woocommerce .checkout-button {
  background: var(--ind-navy) !important;
}
.woocommerce .checkout-button:hover {
  background: var(--ind-teal) !important;
}

/* "המשך לקופה" — extra prominent */
.wc-proceed-to-checkout .checkout-button {
  display: block !important;
  text-align: center;
  font-size: 17px !important;
  padding: 18px !important;
  width: 100%;
  margin-top: 14px;
}

/* ══ Cart Totals + Order Review boxes ════════════ */
.cart_totals,
.woocommerce-checkout-review-order {
  background: #fff;
  border: 1px solid var(--ind-bord);
  border-radius: var(--ind-radius);
  padding: 28px !important;
  box-shadow: var(--ind-shadow);
}
.cart_totals h2,
.woocommerce-checkout-review-order h3 {
  font-size: 22px;
  color: var(--ind-navy);
  border-bottom: 2px solid var(--ind-teal);
  padding-bottom: 12px;
  margin-bottom: 18px;
  margin-top: 0;
}
.cart_totals table,
.woocommerce-checkout-review-order table {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
.cart_totals table th,
.cart_totals table td,
.woocommerce-checkout-review-order table th,
.woocommerce-checkout-review-order table td {
  background: transparent !important;
  border-top: 1px solid var(--ind-bord) !important;
  padding: 12px 0 !important;
  color: var(--ind-text);
}
.cart_totals .order-total,
.woocommerce-checkout-review-order .order-total {
  font-size: 18px;
}
.cart_totals .order-total .amount,
.woocommerce-checkout-review-order .order-total .amount {
  color: var(--ind-teal);
  font-size: 24px;
  font-weight: 800;
}

/* ══ Checkout 2-column layout ════════════════════ */
.woocommerce-checkout form.checkout {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 30px;
  align-items: start;
}
@media (max-width: 860px) {
  .woocommerce-checkout form.checkout {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.woocommerce-checkout #customer_details {
  margin: 0 !important;
}
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
  width: 100% !important;
  float: none !important;
}
.woocommerce-billing-fields {
  background: #fff;
  border: 1px solid var(--ind-bord);
  border-radius: var(--ind-radius);
  padding: 28px;
  box-shadow: var(--ind-shadow);
}
.woocommerce-billing-fields h3 {
  margin-top: 0 !important;
  border-bottom: 2px solid var(--ind-teal);
  padding-bottom: 12px;
  margin-bottom: 20px;
}

/* ══ Form Fields ═════════════════════════════════ */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-page form .form-row input.input-text {
  padding: 14px 16px !important;
  border: 1px solid var(--ind-bord) !important;
  border-radius: var(--ind-radius-sm) !important;
  font-size: 15px !important;
  width: 100%;
  transition: border-color .15s, box-shadow .15s;
  background: #fff !important;
  font-family: inherit;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  border-color: var(--ind-teal) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(26,175,200,.15);
}
.woocommerce form .form-row label {
  font-weight: 600;
  color: var(--ind-navy);
  font-size: 14px;
  margin-bottom: 6px;
  display: block;
}
.woocommerce form .form-row .required {
  color: var(--ind-teal);
  text-decoration: none;
}

/* ══ Coupon (collapsed) ══════════════════════════ */
.woocommerce-form-coupon-toggle .woocommerce-info {
  background: transparent !important;
  border: 1px dashed var(--ind-bord) !important;
  color: var(--ind-text) !important;
  padding: 14px 18px !important;
  border-radius: var(--ind-radius-sm) !important;
  margin-bottom: 16px !important;
}
.woocommerce-form-coupon-toggle .woocommerce-info::before {
  display: none !important;
}
.woocommerce-form-coupon-toggle a {
  color: var(--ind-teal) !important;
  font-weight: 700;
  text-decoration: none;
}
.woocommerce-form-coupon-toggle a:hover {
  text-decoration: underline;
}
.checkout_coupon {
  background: #fff;
  border: 1px solid var(--ind-bord);
  padding: 20px;
  border-radius: var(--ind-radius-sm);
  margin-bottom: 20px;
}

/* ══ Payment methods ═════════════════════════════ */
.woocommerce-checkout #payment {
  background: transparent !important;
  border-radius: 0 !important;
  margin-top: 20px;
}
.woocommerce-checkout #payment ul.payment_methods {
  background: #fff !important;
  padding: 20px !important;
  border-radius: var(--ind-radius-sm);
  border: 1px solid var(--ind-bord) !important;
  margin-bottom: 16px !important;
}
.woocommerce-checkout #payment ul.payment_methods li {
  padding: 14px !important;
  border-radius: var(--ind-radius-sm);
  border: 1px solid transparent;
  transition: background .15s;
  margin-bottom: 6px;
}
.woocommerce-checkout #payment ul.payment_methods li:hover {
  background: var(--ind-bg);
}
.woocommerce-checkout #payment ul.payment_methods li label {
  font-weight: 600;
  color: var(--ind-navy);
}
.woocommerce-checkout #payment div.payment_box {
  background: var(--ind-bg) !important;
  margin-top: 12px !important;
  padding: 16px !important;
  border-radius: var(--ind-radius-sm) !important;
}
.woocommerce-checkout #payment div.payment_box::before {
  display: none !important;
}

/* ══ Trust Badges ════════════════════════════════ */
.ind-trust {
  margin-top: 18px;
  padding: 16px;
  background: linear-gradient(135deg, #f0fbfd 0%, #fff 100%);
  border-radius: var(--ind-radius-sm);
  border: 1px solid #d6f0f4;
}
.ind-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
  font-size: 13px;
  color: var(--ind-navy);
  font-weight: 600;
}

/* ══ Notices (cleaner) ═══════════════════════════ */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-NoticeGroup .woocommerce-error {
  border-radius: var(--ind-radius-sm) !important;
  padding: 14px 18px !important;
  border-top: none !important;
  border: 1px solid transparent !important;
  background-color: #fff !important;
  margin-bottom: 20px !important;
}
.woocommerce-message {
  background: #e8f8ec !important;
  color: #1a6e30 !important;
  border-color: #b8e6c2 !important;
}
.woocommerce-message::before {
  color: #1a6e30 !important;
  top: 14px !important;
}
.woocommerce-info {
  background: var(--ind-teal-pale) !important;
  color: var(--ind-teal-dark) !important;
  border-color: #b8e3eb !important;
}
.woocommerce-info::before {
  color: var(--ind-teal) !important;
}
.woocommerce-error {
  background: #fdeeee !important;
  color: #b03030 !important;
  border-color: #f5c6c6 !important;
}

/* ══ Terms & Conditions checkbox highlight ═══════ */
.woocommerce-terms-and-conditions-wrapper {
  background: #fff7e6;
  border: 1px solid #ffd980;
  padding: 14px 18px;
  border-radius: var(--ind-radius-sm);
  margin-bottom: 16px;
}
.woocommerce-terms-and-conditions-wrapper a {
  color: var(--ind-teal);
  font-weight: 700;
}
.woocommerce-terms-and-conditions-wrapper label {
  font-weight: 600;
  color: var(--ind-navy);
}

/* ══ Thank You Page ══════════════════════════════ */
.woocommerce-order-received .entry-content {
  text-align: center;
}
.woocommerce-thankyou-order-received {
  font-size: 22px !important;
  color: var(--ind-navy);
  background: linear-gradient(135deg, var(--ind-teal-pale) 0%, #fff 100%);
  padding: 40px 30px;
  border-radius: var(--ind-radius);
  border: 2px solid var(--ind-teal);
  margin-bottom: 30px !important;
  font-weight: 700;
}
.woocommerce-order-overview {
  background: #fff;
  border: 1px solid var(--ind-bord);
  border-radius: var(--ind-radius);
  padding: 24px !important;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  gap: 28px;
  margin: 0 0 30px !important;
  box-shadow: var(--ind-shadow);
}
.woocommerce-order-overview li {
  border: none !important;
  padding: 0 !important;
  flex: 0 0 auto;
  min-width: 140px;
  text-align: center;
  font-size: 13px;
  color: var(--ind-text);
  text-transform: uppercase;
  letter-spacing: .5px;
}
.woocommerce-order-overview li strong {
  display: block;
  margin-top: 6px;
  font-size: 16px;
  color: var(--ind-navy);
  text-transform: none;
  letter-spacing: 0;
}

/* ══ Buy Now (express) buttons ═══════════════════ */
.ind-buy-now,
.ind-buy-now-single {
  display: inline-block;
  background: linear-gradient(135deg, #ff6b3d 0%, #ff8a3d 100%) !important;
  color: #fff !important;
  padding: 14px 28px !important;
  border-radius: var(--ind-radius-sm) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  margin-top: 10px;
  transition: transform .15s, box-shadow .15s !important;
  border: none !important;
  font-size: 15px !important;
}
.ind-buy-now:hover,
.ind-buy-now-single:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(255,107,61,.3);
  color: #fff !important;
}
.ind-buy-price {
  margin-right: 8px;
  opacity: .9;
  font-weight: 800;
}

/* ══ Mobile tweaks ═══════════════════════════════ */
@media (max-width: 600px) {
  .ind-prod-grid { grid-template-columns: 1fr; }
  .ind-prod-sec { padding: 50px 16px; }
  .woocommerce table.shop_table { font-size: 13px; }
  .woocommerce table.shop_table .product-thumbnail img { width: 50px; height: 50px; }
  .ind-trust-row { flex-direction: column; gap: 8px; text-align: center; }
}
