/* Dolce Denim quote form. Every rule is scoped under .ddq so theme styles can't leak in.
   Layout reacts to the form's own width (container queries), so it behaves inside any page builder column. */
.ddq{container-type:inline-size;--p0:#152B33;--p1:#1F434F;--p2:#2B5866;--p3:#36667A;--p4:#4C7C8E;--t1:#E4EEF0;--t2:#F2F7F8;--navy:#043F80;--navy-d:#032E5C;--g:#287F23;--g-d:#1D5F19;--ink:#182226;--err:#B3261E;--dir:1;
	display:block;width:100%;max-width:820px;margin:0 auto;min-height:320px;font:15px/1.55 Inter,"Segoe UI",Tahoma,"Noto Sans Arabic",system-ui,sans-serif;color:var(--ink);text-align:start;-webkit-text-size-adjust:100%}
.ddq[dir=rtl]{--dir:-1}
.ddq,.ddq *,.ddq *::before,.ddq *::after{box-sizing:border-box}
.ddq :where(button,input,select,textarea){margin:0;letter-spacing:normal;text-transform:none;text-shadow:none}
.ddq :where(p,ol,dl,dd,h2,h3,h4){margin:0;padding:0}
.ddq [hidden]{display:none!important}
.ddq .ddq-form{background:#fff;border:1px solid var(--t1);border-radius:16px;box-shadow:0 8px 28px rgba(21,43,51,.08);overflow:hidden}

/* ---------- Header + progress ---------- */
.ddq .ddq-head{background:var(--p0);color:#fff;padding:14px 20px 16px}
.ddq .ddq-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:13px;font-weight:600}
.ddq .ddq-pct{color:var(--t1);font-weight:500;font-variant-numeric:tabular-nums}
.ddq .ddq-bar{height:6px;border-radius:99px;background:var(--p1);overflow:hidden}
.ddq .ddq-bar i{display:block;height:100%;background:var(--g);border-radius:inherit;transition:width .45s ease}

/* Stepper: equal columns that always fit, never scrolls */
.ddq .ddq-steps{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:2px;margin:0;padding:12px 12px 10px;list-style:none;background:var(--t2);border-bottom:1px solid var(--t1)}
.ddq .ddq-steps li{min-width:0;margin:0;padding:0}
.ddq .ddq-steps button{display:flex;flex-direction:column;align-items:center;gap:5px;width:100%;min-width:0;padding:2px 0;background:none;border:0;border-radius:6px;color:var(--p4);font:500 11px/1.2 Inter,"Segoe UI",Tahoma,sans-serif;cursor:pointer;box-shadow:none}
.ddq .ddq-steps button:disabled{cursor:default;opacity:1}
.ddq .ddq-steps button:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.ddq .ddq-steps b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#fff;border:1px solid var(--p4);font-size:12px;font-weight:600;color:var(--p4)}
.ddq .ddq-steps b .ddq-i{width:13px;height:13px;stroke-width:2.6}
.ddq .ddq-steps span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ddq .ddq-steps .is-done b{background:var(--t1);border-color:var(--p2);color:var(--p2)}
.ddq .ddq-steps .is-cur b{background:var(--p2);border-color:var(--p2);color:#fff}
.ddq .ddq-steps .is-cur button{color:var(--p0);font-weight:600}

/* ---------- Body ---------- */
.ddq .ddq-step{padding:24px 24px 6px}
.ddq .ddq-anim{animation:ddq-in .3s ease both}
.ddq .ddq-anim.is-back{--dx:-14px}
@keyframes ddq-in{from{opacity:0;transform:translateX(calc(var(--dx,14px) * var(--dir)))}to{opacity:1;transform:none}}
.ddq .ddq-intro{margin-bottom:22px}
.ddq .ddq-title{margin:0;font:600 22px/1.25 "Space Grotesk",Inter,"Segoe UI",Tahoma,sans-serif;letter-spacing:0;text-transform:none;color:var(--p0);outline:0}
.ddq .ddq-intro p{margin-top:6px;font-size:14px;color:var(--p3)}
.ddq .ddq-h3{margin:0 0 18px;font:600 17px/1.3 "Space Grotesk",Inter,"Segoe UI",Tahoma,sans-serif;letter-spacing:0;text-transform:none;color:var(--p0);outline:0}
.ddq .ddq-banner{margin:0 0 16px;padding:10px 14px;background:var(--t1);border-inline-start:4px solid var(--navy);border-radius:8px;font-size:14px;font-weight:500}
.ddq .ddq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;align-items:start}
.ddq .ddq-f{display:block;min-width:0;margin:0}
.ddq .ddq-f--full{grid-column:1/-1}

/* Labels, hints, errors */
.ddq .ddq-l{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 6px;font-size:13.5px;font-weight:600;line-height:1.35;color:var(--p0)}
.ddq .ddq-l em{flex:none;font-style:normal;font-size:12px;font-weight:400;color:var(--p4)}
.ddq .ddq-h{display:block;margin-top:6px;font-size:12.5px;line-height:1.4;color:var(--p3)}
.ddq .ddq-h.is-warn{color:var(--navy);font-weight:600}
.ddq .ddq-e{display:block;margin-top:6px;font-size:12.5px;line-height:1.4;font-weight:500;color:var(--err)}

/* Inputs */
.ddq .ddq-in{display:block;width:100%;min-width:0;max-width:100%;height:46px;margin:0;padding:0 12px;font:inherit;font-size:15px;line-height:1.3;color:var(--ink);background:#fff;border:1px solid var(--p4);border-radius:10px;box-shadow:none;-webkit-appearance:none;appearance:none;transition:border-color .15s,box-shadow .15s}
.ddq textarea.ddq-in{height:auto;min-height:92px;padding:10px 12px;line-height:1.5;resize:vertical}
.ddq select.ddq-in{padding-inline-end:38px;cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234C7C8E' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center/14px}
.ddq[dir=rtl] select.ddq-in{background-position:left 12px center}
.ddq input[type=date].ddq-in{display:flex;align-items:center;min-height:46px}
.ddq input[type=date].ddq-in::-webkit-date-and-time-value{text-align:start}
.ddq input[type=number].ddq-in{-moz-appearance:textfield}
.ddq .ddq-in:focus{outline:0;border-color:var(--navy);box-shadow:0 0 0 3px var(--t1)}
.ddq .ddq-in::placeholder{color:var(--p4);opacity:1}
.ddq .ddq-ltr{direction:ltr}
.ddq[dir=rtl] .ddq-ltr{text-align:right}
.ddq .is-err .ddq-in{border-color:var(--err)}

/* Choice pills (radio + checkbox) */
.ddq .ddq-seg{display:flex;flex-wrap:wrap;gap:8px}
.ddq .ddq-seg .ddq-opt{flex:1 1 auto}
.ddq .ddq-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px}
.ddq .ddq-opt{position:relative;display:flex;margin:0;min-width:0}
.ddq .ddq-opt input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:1}
.ddq .ddq-opt span{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;padding:8px 14px;font-size:14px;line-height:1.3;text-align:center;color:var(--ink);background:#fff;border:1px solid var(--p4);border-radius:10px;transition:background .15s,border-color .15s}
.ddq .ddq-opt:hover span{background:var(--t2)}
.ddq .ddq-opt input:checked+span{border-color:var(--navy);background:var(--t1);color:var(--navy);font-weight:600;box-shadow:inset 0 0 0 1px var(--navy)}
.ddq .ddq-opt input[type=checkbox]:checked+span::before{content:"";flex:none;width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23043F80' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat}
.ddq .ddq-opt input:focus-visible+span{outline:2px solid var(--navy);outline-offset:2px}

/* Colors */
.ddq .ddq-sel{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:34px;margin-bottom:12px}
.ddq .ddq-none{font-size:13.5px;color:var(--p4)}
.ddq .ddq-chip{display:inline-flex;align-items:center;gap:8px;padding:3px 4px;padding-inline-start:12px;background:var(--t1);border:1px solid var(--p4);border-radius:99px;font-size:13.5px;line-height:1.3}
.ddq .ddq-chip i,.ddq .ddq-dot{flex:none;width:16px;height:16px;border-radius:50%;background:var(--c);border:1px solid var(--p4)}
.ddq .ddq-ic{display:grid;flex:none;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--p2);cursor:pointer;box-shadow:none}
.ddq .ddq-ic:hover{background:#fff}
.ddq .ddq-ic:disabled{opacity:.35;cursor:default}
.ddq .ddq-ic:focus-visible{outline:2px solid var(--navy)}
.ddq .ddq-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:6px}
.ddq .ddq-sw{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;min-height:44px;padding:8px 4px;font:400 12px/1.25 Inter,"Segoe UI",Tahoma,sans-serif;text-align:center;color:var(--ink);background:none;border:1px solid transparent;border-radius:10px;cursor:pointer;box-shadow:none}
.ddq .ddq-sw span:last-child{max-width:100%;overflow-wrap:anywhere}
.ddq .ddq-sw:hover{background:var(--t2)}
.ddq .ddq-sw:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.ddq .ddq-sw .ddq-dot{display:grid;place-items:center;width:36px;height:36px}
.ddq .ddq-sw .ddq-dot svg{width:18px;height:18px;opacity:0;stroke:#fff;mix-blend-mode:difference;transition:opacity .15s}
.ddq .ddq-sw.is-on{border-color:var(--navy);background:var(--t1)}
.ddq .ddq-sw.is-on .ddq-dot svg{opacity:1}

/* Size rows */
.ddq .ddq-srow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:8px;align-items:center;margin-bottom:8px}
.ddq .ddq-add{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;font:600 14px Inter,"Segoe UI",Tahoma,sans-serif;color:var(--p2);background:none;border:1px dashed var(--p4);border-radius:10px;cursor:pointer;box-shadow:none}
.ddq .ddq-add:hover{background:var(--t1)}
.ddq .ddq-add:focus-visible{outline:2px solid var(--navy);outline-offset:2px}

/* Upload */
.ddq .ddq-drop{display:flex;flex-direction:column;align-items:center;gap:4px;padding:20px 16px;font-size:14px;text-align:center;color:var(--p3);background:var(--t2);border:2px dashed var(--p4);border-radius:12px;cursor:pointer;transition:background .15s,border-color .15s}
.ddq .ddq-drop:hover,.ddq .ddq-drop.is-over,.ddq .ddq-drop:focus-visible{background:var(--t1);border-color:var(--navy);outline:0}
.ddq .ddq-drop small{font-size:12.5px}
.ddq .ddq-drop .ddq-i{width:26px;height:26px;color:var(--p3)}
.ddq .ddq-drop.has-file{flex-direction:row;gap:12px;padding:12px;text-align:start;cursor:default;border-style:solid}
.ddq .ddq-thumb{display:grid;flex:0 0 64px;place-items:center;width:64px;height:64px;overflow:hidden;background:#fff;border:1px solid var(--t1);border-radius:8px}
.ddq .ddq-thumb img{max-width:100%;max-height:100%;object-fit:contain}
.ddq .ddq-meta{flex:1;min-width:0;font-size:13.5px;color:var(--ink);overflow-wrap:anywhere}
.ddq .ddq-meta small{display:block;color:var(--p3)}
.ddq .ddq-file{display:none}
.ddq .ddq-link{padding:4px 6px;font:600 13px Inter,"Segoe UI",Tahoma,sans-serif;color:var(--navy);text-decoration:underline;background:none;border:0;cursor:pointer;box-shadow:none}
.ddq .ddq-link:hover{color:var(--navy-d)}

/* Review */
.ddq .ddq-rv{padding:14px 16px;background:var(--t2);border:1px solid var(--t1);border-radius:12px}
.ddq .ddq-rvh{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.ddq .ddq-rvh h4{margin:0;font:600 14px/1.3 "Space Grotesk",Inter,"Segoe UI",Tahoma,sans-serif;letter-spacing:0;text-transform:none;color:var(--p2)}
.ddq .ddq-rv dl{display:grid;grid-template-columns:minmax(100px,34%) minmax(0,1fr);gap:6px 14px;margin:0}
.ddq .ddq-rv dt{font-size:13px;color:var(--p3)}
.ddq .ddq-rv dd{margin:0;font-size:14px;overflow-wrap:anywhere}

/* Footer + buttons */
.ddq .ddq-foot{display:flex;align-items:center;gap:12px;padding:18px 24px 22px}
.ddq .ddq-foot .ddq-btn--go{margin-inline-start:auto}
.ddq .ddq-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 22px;font:600 15px/1 Inter,"Segoe UI",Tahoma,sans-serif;text-decoration:none;border:1px solid transparent;border-radius:10px;cursor:pointer;box-shadow:none;transition:background .15s,transform .1s}
.ddq .ddq-btn:active{transform:scale(.98)}
.ddq .ddq-btn:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.ddq .ddq-btn--go{color:#fff;background:var(--g)}
.ddq .ddq-btn--go:hover{color:#fff;background:var(--g-d)}
.ddq .ddq-btn--ghost{color:var(--p2);background:#fff;border-color:var(--p2)}
.ddq .ddq-btn--ghost:hover{background:var(--t1)}
.ddq .ddq-btn:disabled{opacity:.6;cursor:wait}
.ddq .ddq-i{flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ddq[dir=rtl] .ddq-dir{transform:scaleX(-1)}
.ddq .ddq-hp{position:absolute!important;inset-inline-start:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}

/* Custom color picker */
.ddq .ddq-custom{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:12px;padding-top:12px;border-top:1px dashed var(--p4)}
.ddq .ddq-cpl{font-size:13.5px;font-weight:600;color:var(--p0)}
.ddq .ddq-cprow{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.ddq .ddq-cp{flex:none;width:46px;height:46px;padding:3px;background:#fff;border:1px solid var(--p4);border-radius:10px;cursor:pointer}
.ddq .ddq-cp::-webkit-color-swatch-wrapper{padding:0}
.ddq .ddq-cp::-webkit-color-swatch{border:0;border-radius:6px}
.ddq .ddq-cp::-moz-color-swatch{border:0;border-radius:6px}
.ddq .ddq-cp:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.ddq .ddq-hex{min-width:68px;font:500 13px/1 ui-monospace,Menlo,Consolas,monospace;color:var(--p3)}

/* Success */
.ddq .ddq-ok{display:flex;flex-direction:column;align-items:center;padding:44px 24px 36px;text-align:center;background:#fff;border:1px solid var(--t1);border-radius:16px;box-shadow:0 8px 28px rgba(21,43,51,.08)}
.ddq .ddq-okicon{display:block;flex:none;width:88px;height:88px;margin:0 auto 18px}
.ddq .ddq-okring{fill:var(--t1);transform-origin:center;animation:ddq-pop .6s ease both}
.ddq .ddq-okdisc{fill:var(--g)}
.ddq .ddq-okicon path{fill:none;stroke:#fff;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:ddq-draw .45s .3s ease forwards}
@keyframes ddq-draw{to{stroke-dashoffset:0}}
@keyframes ddq-pop{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}
.ddq .ddq-oktitle{margin:0;font:600 22px/1.3 "Space Grotesk",Inter,"Segoe UI",Tahoma,sans-serif;letter-spacing:0;text-transform:none;color:var(--p0);outline:0}
.ddq .ddq-oktext{max-width:480px;margin:10px auto 0;font-size:14.5px;line-height:1.65;color:var(--p3)}
.ddq .ddq-okref{display:inline-flex;align-items:center;gap:8px;margin:18px 0 0;padding:6px 16px;font-size:13.5px;color:var(--p3);background:var(--t2);border:1px solid var(--t1);border-radius:99px}
.ddq .ddq-okref bdi{font-weight:600;font-size:14px;letter-spacing:.5px;color:var(--p0)}
.ddq .ddq-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:24px}
.ddq .ddq-okwa{margin:14px 0 0;font-size:13px;color:var(--p4)}

/* ---------- Responsive: based on the form's own width ---------- */
@container (max-width:720px){
	.ddq .ddq-steps span{display:none}
	.ddq .ddq-steps{padding-block:12px}
}
@container (max-width:560px){
	.ddq .ddq-head{padding:12px 16px 14px}
	.ddq .ddq-step{padding:20px 16px 4px}
	.ddq .ddq-grid{grid-template-columns:minmax(0,1fr)}
	.ddq .ddq-title{font-size:20px}
	.ddq .ddq-in,.ddq select.ddq-in{font-size:16px} /* stops iOS zoom-on-focus */
	.ddq .ddq-rv dl{grid-template-columns:minmax(0,1fr);gap:2px}
	.ddq .ddq-rv dd{margin-bottom:8px}
	.ddq .ddq-chips{grid-template-columns:repeat(2,minmax(0,1fr))}
	.ddq .ddq-foot{padding:16px}
	.ddq .ddq-foot .ddq-btn{flex:1 1 0;padding:0 14px}
	.ddq .ddq-ok{padding:32px 16px 28px}
	.ddq .ddq-oktitle{font-size:20px}
	.ddq .ddq-actions{width:100%}
	.ddq .ddq-actions .ddq-btn{flex:1 1 100%}
}
@media (prefers-reduced-motion:reduce){
	.ddq *,.ddq *::before,.ddq *::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}
}
