/* Native DUSTDEZIGN calculator: square frames, natural scrolling, no tracking. */
html.dd-static body[data-dd-route] #page-container .dd-calc-section:not(.dd-calc-hero) { padding: clamp(28px, 4vw, 56px) 0 !important; }
html.dd-static body[data-dd-route] #page-container .dd-calc-row { display: block !important; padding: 0 !important; }
html.dd-static body[data-dd-route] #page-container .dd-calc-column { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
html.dd-static body[data-dd-route] #page-container .dd-calc-hero { padding-top: 120px !important; padding-bottom: 20px !important; }
html.dd-static body[data-dd-route] #page-container .dd-calc-hero + .dd-calc-section { padding-top: 24px !important; }
html.dd-static body[data-dd-route] #page-container .dd-calc-masthead h1 { font-size: clamp(36px, 5.2vw, 64px) !important; margin: 0 !important; padding: 0 !important; }
html.dd-static body[data-dd-route] #page-container .dd-calc-masthead h2 { font-size: 16px !important; line-height: 1.6 !important; margin: 18px 0 0 !important; padding: 0 !important; }
html.dd-static body[data-dd-route] #page-container .dd-calc-masthead .dd-breadcrumb { margin-bottom: 24px !important; }
.dd-calc-page *, .dd-calc-callout * { box-sizing: border-box; }
.dd-calc-page [hidden], .dd-calc-callout [hidden] { display: none !important; }
.dd-calc-page :is(p, ul, ol, dl, fieldset) { margin: 0; padding: 0; }
.dd-calc-page :is(button, input, select, textarea) { font: inherit; border-radius: 0; }
.dd-calc-page :is(button, a, input, select, textarea, summary):focus-visible, .dd-calc-callout a:focus-visible { outline: 2px solid #f1f0ec; outline-offset: 5px; }
.dd-calc-page button, .dd-calc-page summary { cursor: pointer; }
.dd-calc-page button:disabled { cursor: default; opacity: .6; }
.dd-calc-trap { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.dd-calc-email-fallback { margin-top: 16px; }
.dd-calc-page :is(h2, h3) { padding: 0; }
html.dd-static body[data-dd-route] #page-container :is(.dd-calc-inputs, .dd-calc-after, .dd-calc-callout) h2 { max-width: none !important; margin: 0 0 16px; color: #f1f0ec !important; font-size: clamp(26px, 3vw, 36px) !important; line-height: 1.16; letter-spacing: -.035em; font-weight: 600; }
html.dd-static body[data-dd-route] #page-container .dd-calc-call h3 { color: #f1f0ec !important; font-size: 24px !important; margin: 12px 0; line-height: 1.2; letter-spacing: -.025em; }
.dd-calc-kicker { display: block; font-size: 10px; line-height: 1.6; letter-spacing: .14em; text-transform: uppercase; color: #9e9e98; }
.dd-calc-intro { display: flex; justify-content: space-between; gap: 20px; align-items: center; margin-bottom: 18px; }
.dd-calc-intro p { font-size: 12px; color: #a5a5a0; }
#dd-project-calculator { scroll-margin-top: 100px; }
/* Reserve the first calculator panel while its modules load. The fallback
   remains usable; initialization releases the reservation before interaction. */
html.dd-calculator-pending #dd-project-calculator { min-height: 690px; }
@media (max-width: 980px) { html.dd-calculator-pending #dd-project-calculator { min-height: 1040px; } }
@media (max-width: 600px) { html.dd-calculator-pending #dd-project-calculator { min-height: 1140px; } }
@media (max-width: 350px) { html.dd-calculator-pending #dd-project-calculator { min-height: 1280px; } }
.dd-calc-progress { display: flex; gap: 32px; list-style: none; margin-bottom: 18px !important; color: #96968e; font-size: 12px; }
.dd-calc-progress li { display: flex; gap: 12px; align-items: center; }
.dd-calc-progress li[aria-current] { color: #f0f0ec; }
.dd-calc-progress span { font-size: 10px; letter-spacing: .07em; }
.dd-calc-layout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); gap: var(--dd-panel-gap, 24px); align-items: start; }
.dd-calc-panel { min-width: 0; border: 1px solid var(--dd-table-line, #383838); background: #000; padding: clamp(24px, 3vw, 36px); }
.dd-calc-lead { color: #b0b0ab; font-size: 15px; line-height: 1.7; margin-bottom: 26px !important; text-wrap: pretty; }
.dd-calc-services { border: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.dd-calc-service { position: relative; min-width: 0; cursor: pointer; }
.dd-calc-service > input { position: absolute; top: 17px; right: 15px; width: 14px; height: 14px; margin: 0; accent-color: #f1f0ec; color-scheme: dark; cursor: pointer; }
.dd-calc-service > span { display: flex; height: 100%; min-height: 146px; flex-direction: column; border: 1px solid #383838; padding: 16px 14px; transition: border-color 250ms, background 250ms; }
.dd-calc-service > span > small { font-size: 10px; color: #999994; letter-spacing: .1em; margin-bottom: 24px; }
.dd-calc-service strong { font-size: 15px; color: #e9e9e4; font-weight: 500; line-height: 1.35; }
.dd-calc-service > span > span { margin-top: 8px; font-size: 11px; color: #959590; line-height: 1.6; }
.dd-calc-service:has(input:checked) > span { border-color: #e1e1db; background: #080808; }
.dd-calc-service:hover > span { border-color: #b5b5ae; }
.dd-calc-service:has(input:focus-visible) > span { outline: 2px solid #f1f0ec; outline-offset: 4px; }
#dd-calc-scope { margin-top: 32px; padding-top: 28px; border-top: 1px solid #303030; animation: dd-calc-appear 450ms ease; }
.dd-calc-scope-heading { margin-bottom: 24px; }
.dd-calc-scope-heading p { color: #b3b3ad; font-size: 14px; line-height: 1.6; margin-top: 6px; }
.dd-calc-field { display: block; min-width: 0; margin: 20px 0; color: #dddcd6; font-size: 13px; line-height: 1.5; }
.dd-calc-field > span { display: block; margin-bottom: 9px; }
.dd-calc-field span small { margin-left: 6px; color: #93938d; font-size: 11px; }
.dd-calc-field :is(input, select, textarea) { display: block; min-width: 0; width: 100%; padding: 14px 12px; border: 1px solid #4b4b47; background: #000; color: #f1f0ec; font-size: 15px; line-height: 1.4; color-scheme: dark; min-height: 50px; }
.dd-calc-field select { padding-right: 22px; }
.dd-calc-field option { background: #080808; color: #f1f0ec; }
.dd-calc-field textarea { resize: vertical; }
.dd-calc-field input::placeholder, .dd-calc-field textarea::placeholder { color: #888882; opacity: 1; }
.dd-calc-field > small { display: block; margin-top: 9px; font-size: 11px; line-height: 1.65; color: #979791; }
.dd-calc-context { margin: -10px 0 22px !important; color: #a9a9a2; font-size: 13px; line-height: 1.7; }
.dd-calc-package-guide { margin: 20px 0 4px; padding: 22px 20px; border: 1px solid #383838; }
.dd-calc-package-description { margin-top: 12px !important; font-size: 14px; line-height: 1.7; color: #d0d0c7; text-wrap: pretty; }
.dd-calc-best-for { margin-top: 14px !important; font-size: 12px; line-height: 1.7; color: #aaaaa1; }
.dd-calc-best-for strong { color: #dbdbd2; font-weight: 500; margin-right: 6px; }
.dd-calc-page .dd-calc-highlights { list-style: none; margin-top: 18px; padding: 15px 0 0; border-top: 1px solid #303030; }
.dd-calc-highlights li { position: relative; padding: 0 0 5px 16px; color: #bcbcb2; font-size: 12px; line-height: 1.7; }
.dd-calc-highlights li::before { content: "·"; position: absolute; left: 0; color: #e8e8dd; }
.dd-calc-compare { margin-bottom: 10px; }
.dd-calc-compare-list { display: grid; gap: 12px; }
.dd-calc-compare-item { padding: 20px; border: 1px solid #383838; }
.dd-calc-compare-item.is-selected { border-color: #9b9b92; }
html.dd-static body[data-dd-route] #page-container .dd-calc-compare-item h4 { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px; margin: 0 0 10px; padding: 0; color: #ecece1 !important; font-size: 16px !important; line-height: 1.4; }
.dd-calc-compare-item h4 span { font-size: 9px; color: #abab9f; font-weight: 400; letter-spacing: .08em; text-transform: uppercase; }
.dd-calc-compare-item > p { font-size: 13px; line-height: 1.7; color: #b6b6ab; }
.dd-calc-compare-note { margin: 16px 0 !important; color: #a5a599; font-size: 11px; line-height: 1.7; }
.dd-calc-brief-details { border-top: 1px solid #383838; border-bottom: 1px solid #383838; margin-top: 26px; }
.dd-calc-brief-details summary { color: #d4d4c9; font-size: 13px; }
.dd-calc-brief-details summary span { color: #98988e; display: inline-block; margin-left: 8px; font-size: 10px; }
.dd-calc-brief-details-content { padding-bottom: 20px; }
.dd-calc-details-welcome { margin: 0 0 22px !important; color: #b6b6aa; font-size: 13px; line-height: 1.7; }
.dd-calc-details-note { color: #989889; font-size: 11px; line-height: 1.75; }
.dd-calc-toggle { display: flex; gap: 12px; padding: 18px 0; cursor: pointer; align-items: flex-start; }
.dd-calc-toggle input { flex: 0 0 auto; width: 17px; height: 17px; margin: 3px 0 0; accent-color: #f1f0ec; }
.dd-calc-toggle strong { display: block; font-weight: 500; font-size: 14px; color: #e8e8e2; line-height: 1.5; }
.dd-calc-toggle small { display: block; color: #a5a59e; margin-top: 5px; font-size: 12px; line-height: 1.6; }
.dd-calc-included { color: #d8d8d1; font-size: 13px; line-height: 1.7; padding: 18px 0; }
.dd-calc-extras { margin-top: 8px; border-top: 1px solid #303030; }
.dd-calc-page summary { padding: 18px 0; color: #b4b4ae; font-size: 12px; line-height: 1.6; }
.dd-calc-extras > div { padding: 0 0 8px; }
.dd-calc-next { padding-top: 28px; margin-top: 18px; border-top: 1px solid #303030; }
.dd-calc-next p { margin-top: 15px; color: #92928c; font-size: 11px; line-height: 1.7; }
.dd-calc-button { display: inline-flex; min-height: 48px; justify-content: center; align-items: center; gap: 20px; padding: 14px 20px; border: 1px solid #5a5a54; background: #000; color: #e5e5de !important; font-size: 10px !important; line-height: 1.5; letter-spacing: .1em; text-transform: uppercase; transition: border-color 250ms, background-color 250ms; text-align: center; }
.dd-calc-button--primary { background: #f1f0ec; border-color: #f1f0ec; color: #101010 !important; }
.dd-calc-button:hover { border-color: #ededdf; }
.dd-calc-button:disabled { cursor: not-allowed; opacity: .4; }
.dd-calc-summary { padding: clamp(24px, 3vw, 36px) clamp(20px, 2.5vw, 30px); }
.dd-calc-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; color: #f1f0ec; font-size: clamp(38px, 4.5vw, 56px); line-height: 1.15; letter-spacing: -.055em; margin: 26px 0 12px !important; }
.dd-calc-price--message { font-size: clamp(28px, 3vw, 38px); line-height: 1.16; letter-spacing: -.035em; }
.dd-calc-from { font-size: 14px; letter-spacing: 0; color: #afafa7; }
.dd-calc-tax { font-size: 11px; line-height: 1.7; color: #a1a199; }
.dd-calc-breakdown { margin: 26px 0 0 !important; }
.dd-calc-breakdown > div { display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid #303030; padding: 16px 0; font-size: 12px; line-height: 1.6; }
.dd-calc-breakdown dt { color: #c7c7bf; }
.dd-calc-breakdown dd { margin: 0; color: #e3e3db; white-space: nowrap; }
.dd-calc-custom { padding: 18px 0; border-top: 1px solid #303030; font-size: 12px; line-height: 1.65; }
.dd-calc-custom strong { font-size: 12px; color: #d8d8ce; font-weight: 500; }
.dd-calc-page .dd-calc-custom ul, .dd-calc-deliverables ul { padding: 10px 0 0 15px; color: #aaaaa2; font-size: 12px; line-height: 1.8; }
.dd-calc-deliverables { border-top: 1px solid #303030; }
.dd-calc-assumption, .dd-calc-disclaimer { color: #aaa99f; font-size: 11px; line-height: 1.75; margin-top: 18px !important; }
.dd-calc-disclaimer { color: #95958c; }
.dd-calc-human { display: flex; gap: 16px; padding-top: 28px; margin-top: 28px; border-top: 1px solid #303030; font-size: 11px; line-height: 1.8; color: #a9a99f; }
.dd-calc-human > span { font-size: 22px; color: #e7e7dd; }
.dd-calc-welcome { padding: 24px 0 0; color: #b9b9b0; font-size: 12px; line-height: 2.4; }
.dd-calc-back { background: none; border: 0; color: #bcbcb2; padding: 0; margin-bottom: 28px; font-size: 12px !important; }
.dd-calc-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.dd-calc-call { border-top: 1px solid #303030; padding-top: 28px; margin-top: 28px; }
.dd-calc-call > p { font-size: 13px; line-height: 1.75; color: #a9a99f; }
.dd-calc-contact-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 16px; }
.dd-calc-privacy { font-size: 11px; line-height: 1.8; color: #929289; margin-top: 22px !important; }
.dd-calc-privacy a { color: #dddcd1; text-decoration: underline; }
#dd-calc-message { margin-top: 16px; color: #d1d1c7; font-size: 12px; line-height: 1.7; }
.dd-calc-after, .dd-calc-callout { text-align: center; padding: clamp(28px, 5vw, 56px) 0; }
.dd-calc-after p, .dd-calc-callout p { color: #aaa99f; font-size: 15px; line-height: 1.7; max-width: 38rem; margin: 0 auto 28px; }
.dd-calc-callout > .dd-calc-kicker { margin-bottom: 24px; }
.dd-calc-callout-note { display: block; margin-top: 18px; color: #95958e; font-size: 11px; line-height: 1.6; }
.dd-calc-offline { border: 1px solid #383838; padding: 32px; font-size: 15px; line-height: 1.7; color: #bdbdb5; }
.dd-calc-offline a { margin-top: 22px; }
.dd-calc-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@keyframes dd-calc-appear { from { opacity: 0; } to { opacity: 1; } }
@media (max-width: 980px) { .dd-calc-layout { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); } .dd-calc-services { grid-template-columns: 1fr; gap: 10px; } .dd-calc-service > span { min-height: 0; padding: 16px 42px 16px 16px; } .dd-calc-service > span > small { margin-bottom: 8px; } .dd-calc-service > span > span { margin-top: 5px; } .dd-calc-service > input { top: 18px; } .dd-calc-fields { grid-template-columns: 1fr; gap: 0; } }
@media (max-width: 767px) { .dd-calc-layout { grid-template-columns: 1fr; gap: 18px; } .dd-calc-panel { padding: 24px 20px; } .dd-calc-intro { display: block; margin-bottom: 22px; } .dd-calc-intro p { margin-top: 6px; } .dd-calc-progress { gap: 24px; } .dd-calc-button { width: 100%; } .dd-calc-service strong { font-size: 16px; } .dd-calc-field :is(input, select, textarea) { font-size: 16px; } .dd-calc-services { gap: 12px; } .dd-calc-price { font-size: 48px; } .dd-calc-price--message { font-size: 32px; } .dd-calc-lead { font-size: 16px; } .dd-calc-after p { font-size: 16px; } }
@media (max-width: 767px) {
  .dd-calc-package-guide { padding: 20px 16px; }
  .dd-calc-package-description { font-size: 15px; }
  .dd-calc-compare-item { padding: 18px 16px; }
  .dd-calc-brief-details summary span { display: block; margin: 4px 0 0 16px; }
  .dd-calc-service > span { display: grid; grid-template-columns: 20px minmax(0, 1fr); column-gap: 10px; row-gap: 4px; padding: 14px 40px 14px 14px; }
  .dd-calc-service > span > small { grid-column: 1; grid-row: 1 / span 2; margin: 3px 0 0; }
  .dd-calc-service strong { grid-column: 2; grid-row: 1; }
  .dd-calc-service > span > span { grid-column: 2; grid-row: 2; margin: 0; }
}
@media (prefers-reduced-motion: reduce) { #dd-calc-scope { animation: none; } .dd-calc-page * { scroll-behavior: auto; transition: none !important; } }
