.dj-quote-calculator{--blue:#0b4c8c;--light:#f6f9fc;--line:#d6e4f2;--text:#17324d;--muted:#6b7f93;--warn:#fff7e6;color:var(--text);font-family:Arial,Helvetica,sans-serif;max-width:1180px;margin:0 auto;padding:20px 10px 105px}.dj-quote-calculator *{box-sizing:border-box}.djqc-stepper{display:flex;justify-content:center;gap:10px;margin-bottom:24px;flex-wrap:wrap}.djqc-step{display:flex;align-items:center;gap:8px;color:var(--muted);font-weight:700;font-size:14px}.djqc-step span{width:28px;height:28px;border-radius:50%;display:inline-grid;place-items:center;border:1px solid var(--line);background:#fff}.djqc-step.active{color:var(--blue)}.djqc-step.active span{background:var(--blue);color:#fff;border-color:var(--blue)}.djqc-hero{text-align:center;margin-bottom:28px}.djqc-hero h2{margin:0 0 8px;font-size:clamp(30px,5vw,48px);color:var(--blue)}.djqc-hero p{margin:0 auto;max-width:760px;color:var(--muted);font-size:17px;line-height:1.5}.djqc-guide{margin:14px auto 0;display:inline-block;padding:9px 14px;background:#fff;border:1px solid var(--line);border-radius:999px;font-size:14px}.djqc-screen{display:none}.djqc-screen.active{display:block}.djqc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.djqc-card,.djqc-panel{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 7px 24px rgba(19,58,94,.05)}.djqc-card{padding:18px;display:grid;grid-template-columns:160px 1fr;gap:18px;align-items:center}.djqc-card img{width:100%;height:125px;object-fit:cover;border-radius:13px;border:1px solid #e8eef5}.djqc-card h3,.djqc-panel h3{margin:0 0 8px;color:var(--blue);font-size:22px}.djqc-card p{margin:0 0 14px;color:var(--muted);line-height:1.35;min-height:38px}.djqc-counter{display:inline-flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:999px;padding:5px;background:#fbfdff}.djqc-counter button{width:40px;height:40px;border:none;border-radius:50%;background:var(--blue);color:#fff;font-size:25px;cursor:pointer}.djqc-count{min-width:28px;text-align:center;font-size:20px;font-weight:700}.djqc-panel{margin-top:22px;padding:22px}.djqc-panel>p{margin:0;color:var(--muted);line-height:1.5}.djqc-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.djqc-choice,.djqc-multi-choice{border:1px solid var(--line);background:#fff;padding:14px;border-radius:14px;cursor:pointer;font-weight:700;color:var(--text);text-align:left}.djqc-choice.active,.djqc-multi-choice.active{background:var(--blue);color:#fff;border-color:var(--blue)}.djqc-choice small,.djqc-multi-choice small{display:block;font-weight:400;margin-top:4px;opacity:.8;line-height:1.35}.djqc-subtle{color:var(--muted);font-size:14px}.djqc-rule{height:1px;background:var(--line);margin:22px 0}.djqc-warning{margin-top:14px;padding:13px 15px;background:var(--warn);border:1px solid #f1dbad;border-radius:12px;color:#6a531d;font-size:14px}.djqc-conditional{display:none;margin-top:18px;padding:18px;background:#f8fbfe;border:1px solid var(--line);border-radius:14px}.djqc-conditional.show{display:block}.djqc-choice-row{display:flex;gap:12px;margin-top:14px;flex-wrap:wrap}.djqc-pill{border:1px solid var(--line);background:#fff;padding:11px 18px;border-radius:999px;cursor:pointer;font-weight:700}.djqc-pill.active{background:var(--blue);color:#fff;border-color:var(--blue)}.djqc-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.djqc-plan-card{border:2px solid var(--line);border-radius:18px;padding:22px;cursor:pointer;background:#fff;text-align:left}.djqc-plan-card.active{border-color:var(--blue);background:#f4f9fe}.djqc-plan-card h3{margin:0 0 8px;color:var(--blue);font-size:23px}.djqc-plan-card p{margin:0;color:var(--muted)}.djqc-frequency-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.djqc-frequency{border:1px solid var(--line);border-radius:14px;padding:16px;text-align:center;background:#fff;cursor:pointer;font-weight:700}.djqc-frequency.active{background:var(--blue);color:#fff;border-color:var(--blue)}.djqc-estimate-box{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 10px 30px rgba(19,58,94,.07);text-align:center}.djqc-estimate-label{color:var(--muted);font-weight:700;font-size:15px;margin-bottom:8px}.djqc-estimate-price{font-size:clamp(42px,8vw,68px);font-weight:800;color:var(--blue);line-height:1}.djqc-estimate-sub{margin-top:10px;color:var(--muted);line-height:1.5}.djqc-regular-breakdown{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.djqc-price-card{border:1px solid var(--line);border-radius:16px;padding:18px;background:#f9fbfd}.djqc-price-card strong{display:block;color:var(--blue);font-size:26px;margin-top:6px}.djqc-price-card span{color:var(--muted);font-size:13px}.djqc-quote-flag{display:none;margin-top:18px;padding:14px 16px;border-radius:14px;background:var(--warn);border:1px solid #f1dbad;color:#6a531d;text-align:left;line-height:1.45}.djqc-quote-flag.show{display:block}.djqc-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.djqc-summary-item{background:#f8fbfe;border:1px solid var(--line);border-radius:14px;padding:14px;text-align:left}.djqc-summary-item b{display:block;color:var(--blue);margin-bottom:5px}.djqc-enquiry-form{margin-top:22px;text-align:left}.djqc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.djqc-field label{display:block;font-weight:700;margin-bottom:6px;color:var(--text)}.djqc-field input,.djqc-field select,.djqc-field textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px 13px;font:inherit;background:#fff;color:var(--text)}.djqc-field textarea{min-height:90px;resize:vertical}.djqc-full{grid-column:1/-1}.djqc-submit-row{margin-top:16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.djqc-submit-clean{border:none;border-radius:999px;padding:14px 22px;background:var(--blue);color:#fff;font-weight:700;font-size:16px;cursor:pointer}.djqc-success,.djqc-error,.djqc-contact-warning{display:none;margin-top:14px;padding:14px;border-radius:12px}.djqc-success.show{display:block;background:#eaf7ee;border:1px solid #bfe3ca;color:#245c33}.djqc-error.show,.djqc-contact-warning.show{display:block;background:#fff0f0;border:1px solid #efc2c2;color:#7d2828}.djqc-smallprint{margin-top:14px;color:var(--muted);font-size:12px;line-height:1.45}.djqc-hp{position:absolute!important;left:-9999px!important}.djqc-navbar{position:fixed;left:0;right:0;bottom:0;z-index:999;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-top:1px solid var(--line);padding:13px 18px;box-shadow:0 -8px 25px rgba(19,58,94,.08)}.djqc-nav-inner{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:14px}.djqc-nav-summary strong{display:block;font-size:19px;color:var(--blue)}.djqc-nav-summary span{font-size:13px;color:var(--muted)}.djqc-nav-buttons{display:flex;gap:10px}.djqc-btn{border:none;border-radius:999px;padding:14px 22px;font-weight:700;font-size:16px;cursor:pointer}.djqc-btn.primary{background:var(--blue);color:#fff}.djqc-btn.secondary{background:#fff;color:var(--blue);border:1px solid var(--line)}.djqc-btn:disabled{opacity:.45;cursor:not-allowed}@media(max-width:900px){.djqc-choice-grid,.djqc-frequency-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.djqc-grid,.djqc-plan-grid,.djqc-regular-breakdown,.djqc-summary-grid,.djqc-form-grid{grid-template-columns:1fr}.djqc-card{grid-template-columns:125px 1fr;padding:14px}.djqc-card img{height:105px}}@media(max-width:520px){.dj-quote-calculator{padding-left:4px;padding-right:4px}.djqc-choice-grid,.djqc-frequency-grid{grid-template-columns:1fr}.djqc-card{grid-template-columns:105px 1fr;gap:12px}.djqc-card img{height:95px}.djqc-btn{padding:12px 16px}.djqc-nav-summary strong{font-size:16px}}
.djqc-privacy label{display:flex;align-items:flex-start;gap:9px;font-weight:400;line-height:1.45}.djqc-privacy input{width:auto;margin-top:3px}.djqc-privacy a{color:var(--blue);font-weight:700}

/* Dream Jetting layout hardening for Elementor/theme overrides */
@media (min-width: 761px) {
  .dj-quote-calculator .djqc-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
    width: 100% !important;
    align-items: stretch !important;
  }
  .dj-quote-calculator .djqc-grid > .djqc-card {
    display: grid !important;
    grid-template-columns: 160px minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    float: none !important;
  }
}
@media (max-width: 760px) {
  .dj-quote-calculator .djqc-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
    width: 100% !important;
  }
  .dj-quote-calculator .djqc-grid > .djqc-card {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    float: none !important;
  }
}


/* Internal cleaning add-on */
.djqc-internal-options{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:16px
}
.djqc-internal-option{
  border:1px solid var(--line);
  background:#fff;
  border-radius:15px;
  padding:16px;
  text-align:left;
  cursor:pointer;
  color:var(--text)
}
.djqc-internal-option strong{display:block;font-size:16px;color:var(--blue);margin-bottom:5px}
.djqc-internal-option small{display:block;color:var(--muted);line-height:1.4}
.djqc-internal-option.active{background:var(--blue);border-color:var(--blue);color:#fff}
.djqc-internal-option.active strong,.djqc-internal-option.active small{color:#fff}
.djqc-internal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.djqc-internal-row{
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid var(--line);
  background:#fff;
  border-radius:13px;
  padding:12px 14px
}
.djqc-internal-row strong{display:block;color:var(--text)}
.djqc-internal-row small{display:block;color:var(--muted);margin-top:3px}
.djqc-internal-counter{
  display:inline-flex;
  align-items:center;
  gap:10px;
  border:1px solid var(--line);
  border-radius:999px;
  padding:4px;
  flex:0 0 auto
}
.djqc-internal-counter button{
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  background:var(--blue);
  color:#fff;
  font-size:21px;
  cursor:pointer
}
.djqc-internal-count{min-width:25px;text-align:center;font-weight:800}
.djqc-internal-note{
  margin-top:14px;
  padding:13px 15px;
  background:#eef7ff;
  border:1px solid #cfe3f5;
  border-radius:12px;
  color:#315b7d;
  line-height:1.45
}
.djqc-internal-addon-box{
  display:none;
  margin-top:16px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:15px;
  background:#f8fbfe
}
.djqc-internal-addon-box.show{display:block}
.djqc-internal-addon-box span{display:block;color:var(--muted);font-size:13px}
.djqc-internal-addon-box strong{display:block;color:var(--blue);font-size:25px;margin:4px 0}
.djqc-internal-addon-box small{display:block;color:var(--muted);line-height:1.4}
@media(max-width:760px){
  .djqc-internal-options,.djqc-internal-grid{grid-template-columns:1fr}
}


/* Quote feedback */
.djqc-feedback-panel{
  margin-top:22px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  padding:22px;
  box-shadow:0 7px 24px rgba(19,58,94,.04)
}
.djqc-feedback-kicker{
  color:var(--blue);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:5px
}
.djqc-feedback-panel h3{margin:0 0 7px;color:var(--blue);font-size:22px}
.djqc-feedback-panel p{margin:0;color:var(--muted);line-height:1.5}
.djqc-feedback-options{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:15px
}
.djqc-feedback-options button{
  border:1px solid var(--line);
  background:#fff;
  color:var(--text);
  padding:11px 14px;
  border-radius:999px;
  font:inherit;
  font-weight:700;
  cursor:pointer
}
.djqc-feedback-options button.active{
  background:var(--blue);
  color:#fff;
  border-color:var(--blue)
}
.djqc-feedback-status{
  min-height:20px;
  margin-top:10px;
  color:var(--muted);
  font-size:13px
}
@media(max-width:620px){
  .djqc-feedback-options{display:grid;grid-template-columns:1fr}
  .djqc-feedback-options button{border-radius:12px;text-align:left}
}
