:root{--r:18px;--p1:#7c3aed;--p2:#ec4899;--d:#111827;--m:#6c757d;--b:#e5e7eb}
a{text-decoration:none}
.card,.btn,.form-control,.form-select{border-radius:var(--r)}
.btn{font-weight:800;letter-spacing:.2px;border-radius:16px}
.form-control,.form-select{border:1px solid #e5e5e5;padding:.6rem .75rem}
.form-control:focus,.form-select:focus{border-color:var(--p1);box-shadow:0 0 0 .15rem rgba(124,58,237,.14)}
.text-muted{color:var(--m)!important}

/* HERO */
.hero{border-radius:28px;overflow:hidden;position:relative;border:1px solid var(--b);box-shadow:0 22px 50px rgba(17,24,39,.10);
background:radial-gradient(900px 500px at 10% 10%, rgba(124,58,237,.20), transparent 60%),
radial-gradient(900px 500px at 90% 20%, rgba(236,72,153,.16), transparent 60%),
linear-gradient(180deg,#fff 0%,#f7f7fb 100%)}
.hero::after{content:"";position:absolute;inset:-2px;pointer-events:none;background:radial-gradient(500px 240px at 20% 0%, rgba(255,255,255,.65), transparent 55%);opacity:.55}
.hero h1{letter-spacing:-.2px;line-height:1.15}
.hero p{font-size:15.5px;line-height:1.55}

/* MAIN CTA BUTTON (Explore Designs) */
.hero .btn-dark{background:linear-gradient(135deg,var(--p1),var(--p2))!important;border:none!important;color:#fff!important;
padding:12px 18px;box-shadow:0 12px 26px rgba(124,58,237,.22);transition:.15s}
.hero .btn-dark:hover{filter:brightness(.98);transform:translateY(-1px);box-shadow:0 16px 32px rgba(124,58,237,.30)}

/* RIGHT CARD: thin gradient line + badges gradient */
.hero .p-3.bg-white.rounded-4.border{
  position:relative;
  border-radius:24px!important;
  border:1px solid var(--b)!important;
  background:#fff!important;
  box-shadow:0 16px 40px rgba(17,24,39,.08);
  overflow:hidden;
}
.hero .p-3.bg-white.rounded-4.border::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:3px;
  background:linear-gradient(135deg,var(--p1),var(--p2));
}

/* BADGES INSIDE RIGHT CARD = SAME GRADIENT */
.hero .p-3.bg-white.rounded-4.border .badge-soft{
  background:linear-gradient(135deg,var(--p1),var(--p2))!important;
  color:#fff!important;
  border:none!important;
  border-radius:999px;
  padding:.45rem .8rem;
  font-weight:800;
  font-size:12.5px;
  box-shadow:0 6px 18px rgba(124,58,237,.22);
}

/* PRODUCT CARDS */
.product-card{transition:.18s}
.product-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(17,24,39,.10)}
.product-card img{aspect-ratio:4/5;object-fit:cover;width:100%;border-radius:18px}

/* STICKY BAR */
.sticky-bottom-bar{position:sticky;bottom:0;background:rgba(255,255,255,.96);border-top:1px solid #eee;padding:.75rem;backdrop-filter:blur(8px);z-index:999}

/* MOBILE */
@media(max-width:768px){.hero{border-radius:18px}.sticky-bottom-bar{padding:.5rem}}
@media(max-width:576px){.hero{border-radius:22px}.hero h1{font-size:26px}.hero p{font-size:14.5px}}
