/* Businessbook site styling effects — driven by body classes from webDesign.siteEffects.
   Additive only: with no class present every theme keeps its own look. */

/* ---------------------------------------------------------------- gradients */

body.site-fx-gradients.site-theme-theme1 .bb1-btn--primary,
body.site-fx-gradients.site-theme-theme1 a.bb1-btn--primary {
  background-image: linear-gradient(
    135deg,
    color-mix(in srgb, var(--color-primary) 82%, #fff) 0%,
    var(--color-primary) 45%,
    color-mix(in srgb, var(--color-primary) 78%, #000) 100%
  );
  border-color: transparent;
}

body.site-fx-gradients.site-theme-theme1 .bb1-fab,
body.site-fx-gradients.site-theme-theme1 .bb1-float-btn {
  background-image: linear-gradient(
    135deg,
    color-mix(in srgb, var(--color-primary) 88%, #fff) 0%,
    var(--color-primary) 100%
  );
}

body.site-fx-gradients.site-theme-theme1 .bb1-stats__value {
  background-image: linear-gradient(
    120deg,
    var(--color-primary) 0%,
    color-mix(in srgb, var(--color-accent, var(--color-primary)) 70%, var(--color-primary)) 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

body.site-fx-gradients.site-theme-theme1 .bb1-hero,
body.site-fx-gradients.site-theme-theme2 .hero {
  background-image: linear-gradient(
    160deg,
    color-mix(in srgb, var(--color-primary) 9%, transparent) 0%,
    transparent 55%
  );
}

body.site-fx-gradients.site-theme-theme2 .btn-primary,
body.site-fx-gradients.site-theme-theme2 a.btn-primary,
body.site-fx-gradients.site-theme-theme2 .btn-yellow,
body.site-fx-gradients.site-theme-theme2 .bb2-float-btn {
  background-image: linear-gradient(
    135deg,
    color-mix(in srgb, var(--color-primary) 80%, #fff) 0%,
    var(--color-primary) 50%,
    color-mix(in srgb, var(--color-primary) 74%, #000) 100%
  );
}

/* --------------------------------------------------------------- 3D effects */

body.site-fx-3d.site-theme-theme1 .bb1-btn--primary,
body.site-fx-3d.site-theme-theme1 a.bb1-btn--primary,
body.site-fx-3d.site-theme-theme2 .btn-primary,
body.site-fx-3d.site-theme-theme2 a.btn-primary {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.28),
    inset 0 -2px 0 rgba(0, 0, 0, 0.14),
    0 10px 22px color-mix(in srgb, var(--color-primary) 34%, transparent),
    0 2px 4px rgba(12, 18, 34, 0.18);
  transform: translateY(-1px);
}

body.site-fx-3d.site-theme-theme1 .bb1-btn--primary:hover,
body.site-fx-3d.site-theme-theme1 a.bb1-btn--primary:hover,
body.site-fx-3d.site-theme-theme2 .btn-primary:hover,
body.site-fx-3d.site-theme-theme2 a.btn-primary:hover {
  transform: translateY(-3px);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.32),
    inset 0 -2px 0 rgba(0, 0, 0, 0.16),
    0 16px 30px color-mix(in srgb, var(--color-primary) 40%, transparent),
    0 3px 6px rgba(12, 18, 34, 0.2);
}

body.site-fx-3d.site-theme-theme1 .bb1-btn--primary:active,
body.site-fx-3d.site-theme-theme2 .btn-primary:active {
  transform: translateY(0);
  box-shadow:
    inset 0 2px 6px rgba(0, 0, 0, 0.22),
    0 3px 8px color-mix(in srgb, var(--color-primary) 26%, transparent);
}

body.site-fx-3d.site-theme-theme1 .bb1-card,
body.site-fx-3d.site-theme-theme1 .bb1-product,
body.site-fx-3d.site-theme-theme1 .bb1-review,
body.site-fx-3d.site-theme-theme1 .bb1-gallery__item,
body.site-fx-3d.site-theme-theme1 .bb1-stats__item {
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.7) inset,
    0 18px 38px rgba(12, 18, 34, 0.1),
    0 4px 10px rgba(12, 18, 34, 0.06);
  transition: transform 200ms ease, box-shadow 200ms ease;
}

body.site-fx-3d.site-theme-theme1 .bb1-card:hover,
body.site-fx-3d.site-theme-theme1 .bb1-product:hover,
body.site-fx-3d.site-theme-theme1 .bb1-gallery__item:hover {
  transform: translateY(-5px);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.7) inset,
    0 26px 50px rgba(12, 18, 34, 0.14),
    0 6px 14px rgba(12, 18, 34, 0.08);
}

body.site-fx-3d.site-theme-theme2 .product-card,
body.site-fx-3d.site-theme-theme2 .cat-tile,
body.site-fx-3d.site-theme-theme2 .order-box,
body.site-fx-3d.site-theme-theme2 .review-item {
  box-shadow: 6px 6px 0 var(--c-text, #14161f), 0 14px 30px rgba(12, 18, 34, 0.12);
  transition: transform 200ms ease, box-shadow 200ms ease;
}

body.site-fx-3d.site-theme-theme2 .product-card:hover,
body.site-fx-3d.site-theme-theme2 .cat-tile:hover {
  transform: translate(-3px, -3px);
  box-shadow: 10px 10px 0 var(--c-text, #14161f), 0 20px 38px rgba(12, 18, 34, 0.16);
}

/* ---------------------------------------------------------- rounded buttons */

body.site-fx-curved-btns.site-theme-theme1 {
  --t-radius: 16px;
  --t-radius-lg: 26px;
}

body.site-fx-curved-btns.site-theme-theme2 {
  --r-sm: 999px;
}

body.site-fx-curved-btns.site-theme-theme2 .btn,
body.site-fx-curved-btns.site-theme-theme2 a.btn,
body.site-fx-curved-btns.site-theme-theme2 .newsletter-input,
body.site-fx-curved-btns.site-theme-theme2 .coupon-input {
  border-radius: 999px;
}

body.site-fx-curved-btns.site-theme-theme2 .product-card,
body.site-fx-curved-btns.site-theme-theme2 .cat-tile,
body.site-fx-curved-btns.site-theme-theme2 .order-box,
body.site-fx-curved-btns.site-theme-theme2 .form-control {
  border-radius: 18px;
}