.dpc-configurator{
	max-width:1100px;
	margin:auto;
}

.dpc-progress{
	display:flex;
	justify-content: space-between;
	margin-bottom:40px;
       position: relative;
}
.dpc-progress:after {
    content: "";
    border: solid 1px #71816d;
    position: absolute;
    width: 100%;
    top: 17px;
}
.dpc-progress .step{
	width:35px;
	height:35px;
	border-radius:50%;
	background:#ccc;
	display:flex;
	align-items:center;
	justify-content:center;
    position: relative;
    z-index: 9;
}

.dpc-progress .active{
	background:#5f6f5b;
	color:#fff;
}

.dpc-products{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:25px;
}
/* 
.dpc-product-card{
	border-radius:12px;
	background:#fff;
	padding:15px;
	cursor:pointer;
	text-align:center;
	box-shadow:0 5px 20px rgba(0,0,0,0.08);
} */

.dpc-product-card img{	
	width:100%;
	height:160px !important;
    object-position:center;
	border-radius:10px;
    object-fit:cover;
}	
	h3.dpc-product-title {
    margin: 0;
    text-align: center;
    font-size: 20px;
    margin-top: 10px;
    font-family: 'eicons';
    font-weight: 300;
    letter-spacing: 0.5px;
}

.dpc-summary-card {
	display: flex;
	align-items: start;
	justify-content: space-between;
	gap: 30px;
	background: #fff;
	border-radius: 12px;
	padding: 20px;
	border: solid 1px #71816d59;
}

.dpc-summary-image img{
	width:160px;
	border-radius:10px;
}

.dpc-summary-content{
	flex:1;
}

.dpc-summary-content h3{
	font-size:20px;
	margin-bottom:10px;
	margin-top:0px;
}

.dpc-summary-content p{
	margin:5px 0;
	color:#555;
}

.dpc-summary-price{
	text-align:right;
	font-size:18px;
}

.dpc-add-cart{
    margin-top: 20px;
    background: #f47c20;
    border: none;
    color: #fff;
    font-family: 'Outfit';
    padding: 16px 20px !important;
    font-size: 14px;
    line-height: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-radius: 10px;
    border: solid 1px #f47c20;
}

button.dpc-add-cart:hover {
    background: transparent;
    color: #000;
}

.dpc-product-card {
    cursor: pointer;
}
.dpc-navigation {
    margin-bottom: 30px;
}
button.dpc-back-btn {
    background: #71816d;
    color: #fff;
    border: solid 1px #71816d;
    font-family: 'Outfit';
    padding: 16px 20px !important;
    font-size: 14px;
    line-height: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-radius: 10px;
}
button.dpc-back-btn:hover{
	background:#50594E;
}
.dpc-summary-content p {
    margin-bottom: 0 !important;
}
.dpc-skeleton-wrapper {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 20px;
}

.dpc-skeleton-card {
  padding: 15px;
  border: 1px solid #eee;
  border-radius: 10px;
}

@keyframes shimmer {
  0% { background-position: -400px 0; }
  100% { background-position: 400px 0; }
}

.dpc-skeleton-image,
.dpc-skeleton-text,
.dpc-skeleton-button {
  background: linear-gradient(90deg, #eee 25%, #ddd 37%, #eee 63%);
  background-size: 400px 100%;
  animation: shimmer 1.2s infinite linear;
  border-radius: 6px;
}

.dpc-skeleton-image {
  width: 100%;
  height: 150px;
  margin-bottom: 10px;
}

.dpc-skeleton-text {
  height: 12px;
  margin-bottom: 8px;
}

.dpc-skeleton-text.small { width: 40%; }
.dpc-skeleton-text { width: 70%; }
.dpc-skeleton-text.wide { width: 90%; }

.dpc-skeleton-button {
  width: 100%;
  height: 35px;
  margin-top: 10px;
}


.dpc-step-wrapper h4,
 h2.dpc-step-title {
    font-size: 28px;
    font-family: 'Outfit';
    margin-top: 0;
    margin-bottom: 5px;
  color:#121110 !important;
}

.dpc-step-header {
    margin-bottom: 30px;
}
button.dpc-back-btn:focus
{
    background-color: #71816d;
}
