.dg-dpd-root, .dg-dpd-root *{box-sizing:border-box;}
.dg-dpd-root{
	display:flex;align-items:flex-start;gap:60px;
	max-width:1280px;margin:0 auto;padding:0;
}

/* ---------------- Gallery (left column) ---------------- */
.dg-dpd-gallery{flex:0 0 580px;max-width:580px;}

.dg-dpd-main-image-wrap{
	position:relative;width:580px;height:500px;max-width:100%;
	border-radius:12px;overflow:hidden;background:#F5F7FA; border: 1px solid #E6E7EB;
}
.dg-dpd-main-image-track{position:relative;width:100%;height:100%;}
.dg-dpd-main-image{
	position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
	opacity:0;visibility:hidden;transition:opacity .3s ease;
}
.dg-dpd-main-image.is-active{opacity:1;visibility:visible;}
.dg-dpd-main-image img{width:100%;height:100%;object-fit:cover;}

.dg-dpd-nav{
	position:absolute;top:50%;transform:translateY(-50%);
	width:40px;height:40px;border-radius:50%;border:0;
	background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.12);
	display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;
	outline:none;-webkit-tap-highlight-color:transparent;padding: 5px;
}
.dg-dpd-nav:hover,.dg-dpd-nav:active,.dg-dpd-nav:focus,.dg-dpd-nav:focus-visible{
	background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.12);outline:none;
}
.dg-dpd-nav-prev{left:16px;}
.dg-dpd-nav-next{right:16px;}
.dg-dpd-nav svg{width:20px;height:20px;}
.dg-dpd-flip svg{transform:scaleX(-1);display:block;}

.dg-dpd-thumbs{
	display:flex;gap:12px;margin-top:16px;overflow-x:auto;
	scroll-behavior:smooth;padding-bottom:4px;
	scrollbar-width:none;-ms-overflow-style:none;
}
.dg-dpd-thumbs::-webkit-scrollbar{display:none;}
.dg-dpd-thumb{
	flex:0 0 136px;width:136px;height:112px;padding:0;
	border-radius:8px;border:2px solid transparent;overflow:hidden;
	background:#F5F7FA;cursor:pointer;
	outline:none;-webkit-tap-highlight-color:transparent;
}
.dg-dpd-thumb:hover,.dg-dpd-thumb:focus,.dg-dpd-thumb:active{
	border-color:transparent;background:#F5F7FA;outline:none;
}
.dg-dpd-thumb.is-active,
.dg-dpd-thumb.is-active:hover,
.dg-dpd-thumb.is-active:focus,
.dg-dpd-thumb.is-active:active{
	border-color:var(--dpd-accent,#E81F25);background:#F5F7FA;
}
.dg-dpd-thumb img{width:100%;height:100%;object-fit:contain;display:block;}

/* ---------------- Info (right column) ---------------- */
.dg-dpd-info{flex:1 1 0;min-width:0;width:100%;}

.dg-dpd-top-badge{
	display:inline-block;padding:6px 12px;border:1px solid #243A5E;border-radius:6px;
	font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#243A5E;
	margin-bottom:12px;background: #E9F0F8;
}

.dg-dpd-title{
	font-weight:800;font-size:40px;line-height:120%;letter-spacing:0;
	color:#1B2D4F;margin:0 0 16px;
}

.dg-dpd-desc{
	font-weight:500;font-size:14px;line-height:21px;letter-spacing:0;
	color:#6B7280;margin-bottom:12px;
}
.dg-dpd-desc p{margin:0 0 12px;}
.dg-dpd-desc p:last-child{margin-bottom:0;}

.dg-dpd-checklist{list-style:none;margin:0 0 28px;padding:0;display:flex;flex-direction:row;flex-wrap:wrap;gap:12px 12px;}
.dg-dpd-checklist li{display:flex;align-items:center;gap:4px;}
.dg-dpd-check-icon{display:flex;flex:0 0 auto;width:18px;height:18px;}
.dg-dpd-check-icon svg{width:18px;height:18px;display:block;}
.dg-dpd-check-label{font-weight:700;font-size:14px;line-height:150%;letter-spacing:0;color:#243A5E;}

.dg-dpd-specs{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:28px;}
.dg-dpd-spec-badge{
	display:inline-flex;align-items:center;gap:8px;
	padding:5px 14px;border-radius:8px;
	border:1px solid var(--dpd-spec-color,#71717A);
	background:var(--dpd-spec-bg,transparent);
	font-size:13px;font-weight:600;color:#1C1C1C;
}
.dg-dpd-spec-badge strong{font-weight:800;color:#1C1C1C;}

.dg-dpd-variant-heading{
	font-weight:700;font-size:16px;line-height:150%;letter-spacing:0;
	color:#1C1C1C;margin:0 0 16px;
}

.dg-dpd-packaging{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:28px;}
.dg-dpd-pkg-box{
	flex:0 0 auto;min-width:150px;padding:14px 18px;border-radius:10px;
	border:1px solid #E5E7EB;background:#fff;cursor:pointer;text-align:center;
	display:flex;flex-direction:column;gap:4px;
	outline:none;-webkit-tap-highlight-color:transparent;justify-content: center;min-height: 76px;
}
.dg-dpd-pkg-box:hover,.dg-dpd-pkg-box:focus,.dg-dpd-pkg-box:active{
	border-color:#E5E7EB;background:#fff;outline:none;
}
.dg-dpd-pkg-box.is-active,
.dg-dpd-pkg-box.is-active:hover,
.dg-dpd-pkg-box.is-active:focus,
.dg-dpd-pkg-box.is-active:active{
	border-color:#1B2D4F;background:#F4F6FA;
}
.dg-dpd-pkg-title{
	font-weight:800;font-size:16px;line-height:150%;letter-spacing:0;text-align:center;color:#1B2D4F;
}
.dg-dpd-pkg-subtitle{
	font-weight:500;font-size:12px;line-height:150%;letter-spacing:0;text-align:center;color:#71717A;
}

.dg-dpd-quote-btn{
	display:inline-flex;align-items:center;justify-content:center;gap:10px;
	width:195px;height:52px;border-radius:8px;border:0;cursor:pointer;
	background:var(--dpd-accent,#E81F25);color:#fff;
	font-weight:700;font-size:16px;line-height:150%;letter-spacing:0;text-align:center;
	outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent;
}
.dg-dpd-quote-btn:hover,
.dg-dpd-quote-btn:active,
.dg-dpd-quote-btn:focus,
.dg-dpd-quote-btn:focus-visible{
	background:var(--dpd-accent,#E81F25);color:#fff;outline:none;box-shadow:none;
}
.dg-dpd-quote-btn svg{width:14px;height:10px;}

/* ---------------- Popup ---------------- */
.dg-dpd-popup-overlay{
	position:fixed;inset:0;z-index:99998;
	background:rgba(17,24,39,.5);
	display:flex;align-items:center;justify-content:center;padding:20px;
	transition:opacity .25s ease, visibility .25s ease;
}
.dg-dpd-popup-overlay.is-open{visibility:visible !important;opacity:1 !important;pointer-events:auto !important;}

.dg-dpd-popup{
	background:#fff;border-radius:14px;max-width:460px;width:100%;
	max-height:90vh;overflow-y:auto;padding:28px;position:relative;
}
.dg-dpd-popup-close{
	position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;
	border:0;background:#F3F4F6;font-size:20px;line-height:1;cursor:pointer;color:#374151;
	outline:none;-webkit-tap-highlight-color:transparent;
	    display: flex;
    justify-content: center;
    align-items: center;
}
.dg-dpd-popup-close:hover,.dg-dpd-popup-close:active,.dg-dpd-popup-close:focus,.dg-dpd-popup-close:focus-visible{
	background:#F3F4F6;color:#374151;outline:none;
}
.dg-dpd-popup-title{font-weight:800;font-size:20px;margin:0 0 18px;color:#1B2D4F;}

.dg-dpd-form-row{margin-bottom:14px;}
.dg-dpd-form-row label{display:block;font-size:13px;font-weight:600;margin-bottom:5px;color:#374151;}
.dg-dpd-form-row input,.dg-dpd-form-row textarea{
	width:100%;padding:10px 12px;border:1px solid #E5E7EB;border-radius:8px;font-size:14px;
	font-family:inherit;
}
.dg-dpd-readonly-row input{background:#F3F4F6;color:#6B7280;}
.dg-dpd-form-error{color:#DC2626;font-size:13px;margin:0 0 12px;}

.dg-dpd-form-submit{
	width:100%;height:48px;border:0;border-radius:8px;cursor:pointer;
	background:var(--dpd-accent,#E81F25);color:#fff;
	font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px;
	outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent;
}
.dg-dpd-form-submit:hover,
.dg-dpd-form-submit:active,
.dg-dpd-form-submit:focus,
.dg-dpd-form-submit:focus-visible{
	background:var(--dpd-accent,#E81F25);color:#fff;outline:none;box-shadow:none;
}
.dg-dpd-form-submit[disabled]{opacity:.6;cursor:default;}
.dg-dpd-form-submit svg{width:14px;height:10px;}
.dg-dpd-form-success p{font-size:14px;color:#1C1C1C;text-align:center;padding:20px 0;}

/* ---------------- Mobile ---------------- */
@media (max-width: 782px){
	.dg-dpd-root{flex-direction:column;gap:24px;padding:0;}
	.dg-dpd-gallery{flex:0 0 auto;max-width:100%;width:100%;}
	.dg-dpd-main-image-wrap{width:360px;height:360px;max-width:100%;margin:0 auto;}
	.dg-dpd-thumbs{display:none;}
	.dg-dpd-title{font-size:18px;}

	.dg-dpd-specs{
		flex-wrap:nowrap;overflow-x:auto;
		scrollbar-width:none;-ms-overflow-style:none;gap: 10px;    margin-bottom: 20px;
	}
	.dg-dpd-specs::-webkit-scrollbar{display:none;}

	.dg-dpd-packaging{
		flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;
		margin:0;padding:0 0 20px 0px;
		scrollbar-width:none;-ms-overflow-style:none;gap: 8px;
	}
	.dg-dpd-packaging::-webkit-scrollbar{display:none;}
	.dg-dpd-pkg-box{scroll-snap-align:start; min-height: 60px;    padding: 5px 16px;}
	.dg-dpd-quote-btn{width:100%;}
	.dg-dpd-top-badge{
	font-size: 10px;
    font-weight: 600;
		    padding: 2px 12px;
	}
	.dg-dpd-checklist{flex-direction: column;}
	.dg-dpd-checklist{    margin: 0 0 20px;}
	.dg-dpd-spec-badge{font-size: 10px;}
	.dg-dpd-variant-heading{font-size: 14px;}
	.dg-dpd-pkg-title{font-size: 12px;}
	.dg-dpd-quote-btn{    height: 37px;}
}
